w-lab-app/src/components/domains/palmistry/PalmistryResultPage/PalmistryResultPage.tsx
gofnnp 67f4dfdf3d main
compatibility & palm generations & add zustand & config prettier eslint
2025-06-23 00:46:11 +04:00

41 lines
985 B
TypeScript

"use client";
import { useTranslations } from "next-intl";
import { Spinner, Toast, Typography } from "@/components/ui";
import { useGenerationPolling } from "@/hooks/generation/useGenerationPolling";
import styles from "./PalmistryResultPage.module.scss";
interface PalmistryResultPageProps {
id: string;
}
export default function PalmistryResultPage({ id }: PalmistryResultPageProps) {
const t = useTranslations("PalmistryResult");
const { data, error, isLoading } = useGenerationPolling(id);
if (isLoading) {
return (
<div className={styles.loadingContainer}>
<Spinner />
</div>
);
}
if (error) {
return <Toast variant="error">{t("error")}</Toast>;
}
return (
<>
<Typography as="h1" size="xl" weight="semiBold" className={styles.title}>
{t("title")}
</Typography>
<Typography as="p" size="lg" align="left" className={styles.description}>
{data?.result}
</Typography>
</>
);
}