import { ProvidersResolver } from "@/modules/providers/providers-resolver"; import { trpcClient } from "@/modules/trpc/trpc-client"; import { AppHeader } from "@/modules/ui/app-header"; import { Breadcrumbs, Layout, SkeletonLayout } from "@saleor/apps-ui"; import { Box, Text } from "@saleor/macaw-ui/next"; import { NextPage } from "next"; import { useRouter } from "next/router"; import { useMemo } from "react"; const EditProviderPage: NextPage = () => { const { push, query } = useRouter(); const configId = query["configId"] as string; const { data, isLoading, isFetched } = trpcClient.providersConfigs.getOne.useQuery( { id: configId, }, { enabled: !!configId, }, ); const provider = useMemo(() => { return data ? ProvidersResolver.createProviderMeta(data.type) : null; }, [data]); if (isLoading) { return ; } if (isFetched && !data) { push("/404"); return null; } if (!provider) { return ; } const EditForm = ProvidersResolver.getEditProviderFormComponent(provider.type); return ( Edit Provider, {provider?.displayName}, {data?.configName}, ]} /> {provider.formSideInfo && {provider.formSideInfo}} } > ); }; export default EditProviderPage;