2023-03-02 11:01:17 +00:00
|
|
|
import { useAppBridge } from "@saleor/app-sdk/app-bridge";
|
|
|
|
import { PropsWithChildren } from "react";
|
|
|
|
import { Provider } from "urql";
|
|
|
|
|
|
|
|
import { createClient } from "../lib/graphql";
|
|
|
|
|
2023-04-05 18:27:23 +00:00
|
|
|
export function GraphQLProvider(props: PropsWithChildren<{}>) {
|
2023-03-02 11:01:17 +00:00
|
|
|
const { appBridgeState } = useAppBridge();
|
|
|
|
|
|
|
|
if (!appBridgeState?.saleorApiUrl) {
|
|
|
|
return <div {...props}></div>;
|
|
|
|
}
|
|
|
|
|
|
|
|
const client = createClient(appBridgeState?.saleorApiUrl, async () =>
|
|
|
|
Promise.resolve({ token: appBridgeState?.token! })
|
|
|
|
);
|
|
|
|
|
|
|
|
return <Provider value={client} {...props} />;
|
|
|
|
}
|