feat: Edit stripe payment integation drawer

This commit is contained in:
Ahmed Bouhuolia
2024-09-22 12:52:59 +02:00
parent e04f5d26a3
commit c0a4c965f0
13 changed files with 399 additions and 13 deletions

View File

@@ -0,0 +1,41 @@
import React, { createContext, useContext } from 'react';
import { Spinner } from '@blueprintjs/core';
import { useAccounts } from '@/hooks/query';
interface StripeIntegrationEditContextType {
accounts: any;
isAccountsLoading: boolean;
}
const StripeIntegrationEditContext =
createContext<StripeIntegrationEditContextType>(
{} as StripeIntegrationEditContextType,
);
export const useStripeIntegrationEditBoot = () => {
const context = useContext<StripeIntegrationEditContextType>(
StripeIntegrationEditContext,
);
if (!context) {
throw new Error(
'useStripeIntegrationEditContext must be used within a StripeIntegrationEditProvider',
);
}
return context;
};
export const StripeIntegrationEditBoot: React.FC = ({ children }) => {
const { data: accounts, isLoading: isAccountsLoading } = useAccounts({}, {});
const value = { accounts, isAccountsLoading };
const isLoading = isAccountsLoading;
if (isLoading) {
return <Spinner size={20} />;
}
return (
<StripeIntegrationEditContext.Provider value={value}>
{children}
</StripeIntegrationEditContext.Provider>
);
};