feat: wip receipt mail preview

This commit is contained in:
Ahmed Bouhuolia
2024-11-18 15:52:13 +02:00
parent 7df316aa56
commit 7df6aa4110
18 changed files with 225 additions and 291 deletions

View File

@@ -0,0 +1,55 @@
import React, { createContext, useContext } from 'react';
import { Spinner } from '@blueprintjs/core';
import { useDrawerContext } from '@/components/Drawer/DrawerProvider';
import { useSaleReceiptMailState } from '@/hooks/query';
interface ReceiptSendMailBootValues {
receiptId: number;
receiptMailState: any;
isReceiptMailState: boolean;
}
interface ReceiptSendMailBootProps {
children: React.ReactNode;
}
const ReceiptSendMailContentBootContext =
createContext<ReceiptSendMailBootValues>({} as ReceiptSendMailBootValues);
export const ReceiptSendMailBoot = ({
children,
}: ReceiptSendMailBootProps) => {
const {
payload: { receiptId },
} = useDrawerContext();
// Receipt mail options.
const { data: receiptMailState, isLoading: isReceiptMailState } =
useSaleReceiptMailState(receiptId);
const isLoading = isReceiptMailState;
if (isLoading) {
return <Spinner size={20} />;
}
const value = {
receiptId,
// # Receipt mail options
isReceiptMailState,
receiptMailState,
};
return (
<ReceiptSendMailContentBootContext.Provider value={value}>
{children}
</ReceiptSendMailContentBootContext.Provider>
);
};
ReceiptSendMailBoot.displayName = 'ReceiptSendMailBoot';
export const useReceiptSendMailBoot = () => {
return useContext<ReceiptSendMailBootValues>(
ReceiptSendMailContentBootContext,
);
};