import { storageManager } from "@/libs/storage-manager"; import { usePaymentStore } from "@/store/payment-store/use-payment-store"; import type { ITourPaymentPayload } from "../types/tour-payment.types"; export const usePayment = () => { const { setModuleData, paymentState } = usePaymentStore(); const setBookingData = ( payload: Pick< ITourPaymentPayload, | "cartId" | "searchId" | "transactionId" | "preSaleAgreementText" | "saleAgreementText" | "reservationNote" >, ) => { storageManager.set("core-payment", { moduleName: "Tour", payload: { ...payload, paymentStatus: "payment" }, }); setModuleData({ moduleName: "Tour", payload: { ...payload, paymentStatus: "payment" }, }); }; const setPaymentState = (paymentStatus: string) => { storageManager.set("core-payment", { moduleName: "Hotel", payload: { ...paymentState, paymentStatus }, }); setModuleData({ moduleName: "Hotel", payload: { ...paymentState, paymentStatus }, }); }; return { setBookingData, setPaymentState, isReady: paymentState.status === "done", paymentState: paymentState.data as { moduleName: "Tour"; payload: ITourPaymentPayload; }, }; };