"use client"; import { useState } from "react"; import { useQuery } from "@tanstack/react-query"; import { useTenantId } from "@/hooks/useTenantId"; import { experienceApi } from "@/modules/experience/services/experience-api"; import { ExperiencePageLoader, ExperiencePageError } from "@/modules/experience/pages/shared"; import { ExperienceBreadcrumbs } from "@/modules/experience/components/ExperienceBreadcrumbs"; import { PageHeader, Card, CardContent, Badge, FormField, Select } from "@/components/ds"; export const EmbedPreviewPage = function ExperienceEmbedPreview() { const { tenantId } = useTenantId(); const [instanceId, setInstanceId] = useState(""); const defsQ = useQuery({ queryKey: ["experience", tenantId, "widget-defs"], queryFn: () => experienceApi.widgetDefinitions.list(tenantId!), enabled: !!tenantId, }); const instancesQ = useQuery({ queryKey: ["experience", tenantId, "widget-instances"], queryFn: () => experienceApi.widgetInstances.list(tenantId!), enabled: !!tenantId, }); const selected = instancesQ.data?.find((i) => String(i.id) === instanceId); const publishId = selected ? String(selected.id) : "—"; const embedSnippet = selected ? `` : "یک نمونه ویجت انتخاب کنید"; if (!tenantId || defsQ.isLoading || instancesQ.isLoading) return ; if (instancesQ.error) return instancesQ.refetch()} />; return ( setInstanceId(e.target.value)}> انتخاب… {(instancesQ.data ?? []).map((i) => ( {String(i.embed_ref ?? i.id)} ))} publish_id موقت: {publishId} {embedSnippet} تعاریف ویجت: {defsQ.data?.length ?? 0} — پس از FE-11.6+ publish_id رسمی از registry خواهد آمد. ); }; export default EmbedPreviewPage;
{embedSnippet}
تعاریف ویجت: {defsQ.data?.length ?? 0} — پس از FE-11.6+ publish_id رسمی از registry خواهد آمد.