import { ProvidersResolver } from "@/modules/providers/providers-resolver";
import { trpcClient } from "@/modules/trpc/trpc-client";
import { AppHeader } from "@/modules/ui/app-header";
import { AppSection } from "@/modules/ui/app-section";
import { Skeleton } from "@/modules/ui/skeleton";
import { Breadcrumbs } 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},
]}
/>
}
sideContent={
{provider.formSideInfo && {provider.formSideInfo}}
}
/>
);
};
export default EditProviderPage;