import { defineConfig } from "astro/config";
import tailwindcss from "@tailwindcss/vite";
export default defineConfig({
site: "https://example.com",
integrations: [sitemap(), mdx()],
vite: { plugins: [tailwindcss()] },
});
export async function POST({ request }: APIContext) {
const body = await request.json();
const user = await db.user.findUnique({ where: { id: body.userId } });
if (!user) return new Response("Not found", { status: 404 });
return Response.json({ ok: true, user });
}
const subscription = await stripe.subscriptions.create({
customer: customerId,
items: [{ price: plan.stripePriceIdMonthly }],
payment_behavior: "default_incomplete",
expand: ["latest_invoice.payment_intent"],
});
client.on("interactionCreate", async (interaction) => {
if (!interaction.isChatInputCommand()) return;
const cmd = commands.get(interaction.commandName);
if (!cmd) return;
try { await cmd.execute(interaction); }
catch (err) { logger.error(err); }
});
RegisterNetEvent("qb-banking:server:deposit", function(amount)
local src = source
local Player = QBCore.Functions.GetPlayer(src)
if not Player or amount <= 0 then return end
Player.Functions.RemoveMoney("cash", amount)
Player.Functions.AddMoney("bank", amount)
end)
export function useDebouncedValue<T>(value: T, delay = 250) {
const [v, setV] = useState(value);
useEffect(() => {
const id = setTimeout(() => setV(value), delay);
return () => clearTimeout(id);
}, [value, delay]);
return v;
}
import { defineConfig } from "astro/config";
import tailwindcss from "@tailwindcss/vite";
export default defineConfig({
site: "https://example.com",
integrations: [sitemap(), mdx()],
vite: { plugins: [tailwindcss()] },
});
export async function POST({ request }: APIContext) {
const body = await request.json();
const user = await db.user.findUnique({ where: { id: body.userId } });
if (!user) return new Response("Not found", { status: 404 });
return Response.json({ ok: true, user });
}
const subscription = await stripe.subscriptions.create({
customer: customerId,
items: [{ price: plan.stripePriceIdMonthly }],
payment_behavior: "default_incomplete",
expand: ["latest_invoice.payment_intent"],
});
client.on("interactionCreate", async (interaction) => {
if (!interaction.isChatInputCommand()) return;
const cmd = commands.get(interaction.commandName);
if (!cmd) return;
try { await cmd.execute(interaction); }
catch (err) { logger.error(err); }
});
RegisterNetEvent("qb-banking:server:deposit", function(amount)
local src = source
local Player = QBCore.Functions.GetPlayer(src)
if not Player or amount <= 0 then return end
Player.Functions.RemoveMoney("cash", amount)
Player.Functions.AddMoney("bank", amount)
end)
export function useDebouncedValue<T>(value: T, delay = 250) {
const [v, setV] = useState(value);
useEffect(() => {
const id = setTimeout(() => setV(value), delay);
return () => clearTimeout(id);
}, [value, delay]);
return v;
}
import { defineConfig } from "astro/config";
import tailwindcss from "@tailwindcss/vite";
export default defineConfig({
site: "https://example.com",
integrations: [sitemap(), mdx()],
vite: { plugins: [tailwindcss()] },
});
export async function POST({ request }: APIContext) {
const body = await request.json();
const user = await db.user.findUnique({ where: { id: body.userId } });
if (!user) return new Response("Not found", { status: 404 });
return Response.json({ ok: true, user });
}
const subscription = await stripe.subscriptions.create({
customer: customerId,
items: [{ price: plan.stripePriceIdMonthly }],
payment_behavior: "default_incomplete",
expand: ["latest_invoice.payment_intent"],
});
client.on("interactionCreate", async (interaction) => {
if (!interaction.isChatInputCommand()) return;
const cmd = commands.get(interaction.commandName);
if (!cmd) return;
try { await cmd.execute(interaction); }
catch (err) { logger.error(err); }
});
RegisterNetEvent("qb-banking:server:deposit", function(amount)
local src = source
local Player = QBCore.Functions.GetPlayer(src)
if not Player or amount <= 0 then return end
Player.Functions.RemoveMoney("cash", amount)
Player.Functions.AddMoney("bank", amount)
end)
export function useDebouncedValue<T>(value: T, delay = 250) {
const [v, setV] = useState(value);
useEffect(() => {
const id = setTimeout(() => setV(value), delay);
return () => clearTimeout(id);
}, [value, delay]);
return v;
}
import { defineConfig } from "astro/config";
import tailwindcss from "@tailwindcss/vite";
export default defineConfig({
site: "https://example.com",
integrations: [sitemap(), mdx()],
vite: { plugins: [tailwindcss()] },
});
export async function POST({ request }: APIContext) {
const body = await request.json();
const user = await db.user.findUnique({ where: { id: body.userId } });
if (!user) return new Response("Not found", { status: 404 });
return Response.json({ ok: true, user });
}
const subscription = await stripe.subscriptions.create({
customer: customerId,
items: [{ price: plan.stripePriceIdMonthly }],
payment_behavior: "default_incomplete",
expand: ["latest_invoice.payment_intent"],
});
client.on("interactionCreate", async (interaction) => {
if (!interaction.isChatInputCommand()) return;
const cmd = commands.get(interaction.commandName);
if (!cmd) return;
try { await cmd.execute(interaction); }
catch (err) { logger.error(err); }
});
RegisterNetEvent("qb-banking:server:deposit", function(amount)
local src = source
local Player = QBCore.Functions.GetPlayer(src)
if not Player or amount <= 0 then return end
Player.Functions.RemoveMoney("cash", amount)
Player.Functions.AddMoney("bank", amount)
end)
export function useDebouncedValue<T>(value: T, delay = 250) {
const [v, setV] = useState(value);
useEffect(() => {
const id = setTimeout(() => setV(value), delay);
return () => clearTimeout(id);
}, [value, delay]);
return v;
}