Files
cozsweet-frontend-nextjs/src/app/characters/[characterSlug]/tip/page.tsx
T

36 lines
1014 B
TypeScript

import {
getFirstPaymentSearchParam,
parsePaymentReturnSearchParams,
type PaymentSearchParams,
} from "@/lib/payment/payment_search_params";
import {
normalizeTipGiftParam,
TIP_GIFT_CATEGORY_PARAM,
TIP_GIFT_PLAN_ID_PARAM,
} from "@/lib/tip/tip_gift";
import { TipScreen } from "@/app/tip/tip-screen";
export default async function CharacterTipPage({
searchParams,
}: {
searchParams: Promise<PaymentSearchParams>;
}) {
const query = await searchParams;
const paymentReturn = parsePaymentReturnSearchParams(query);
const initialCategory = normalizeTipGiftParam(
getFirstPaymentSearchParam(query[TIP_GIFT_CATEGORY_PARAM]),
);
const initialPlanId = normalizeTipGiftParam(
getFirstPaymentSearchParam(query[TIP_GIFT_PLAN_ID_PARAM]),
);
return (
<TipScreen
initialCategory={initialCategory}
initialPlanId={initialPlanId}
shouldResumePendingOrder={paymentReturn.shouldResumePendingOrder}
initialPayChannel={paymentReturn.initialPayChannel}
/>
);
}