import { cache } from "react"; import { getFunnel } from "./api"; import type { FunnelRequest } from "./types"; export const loadFunnel = cache((payload: FunnelRequest) => getFunnel(payload)); export const loadFunnelData = cache((payload: FunnelRequest) => loadFunnel(payload).then(d => d.data) ); export const loadFunnelStatus = cache((payload: FunnelRequest) => loadFunnel(payload).then(d => d.status) ); export const loadFunnelCurrency = cache((payload: FunnelRequest) => loadFunnelData(payload).then(d => d.currency) ); export const loadFunnelLocale = cache((payload: FunnelRequest) => loadFunnelData(payload).then(d => d.locale) ); export const loadFunnelPayment = cache((payload: FunnelRequest) => loadFunnelData(payload).then(d => d.payment) ); export const loadFunnelPaymentById = cache( (payload: FunnelRequest, paymentId: string) => loadFunnelData(payload).then(d => d.payment[paymentId]) ); // export const loadFunnelProducts = cache( // (payload: FunnelRequest, paymentId: string) => // loadFunnelPaymentById(payload, paymentId).then(d => d?.variants ?? []) // ); // export const loadFunnelProperties = cache( // (payload: FunnelRequest, paymentId: string) => // loadFunnelPaymentById(payload, paymentId).then(d => d?.properties ?? []) // );