UNPKG

autumn-js

Version:

Autumn JS Library

84 lines (80 loc) 2.1 kB
"use client"; import { useDialog } from "./chunk-4QPHNIQ7.mjs"; import { useCustomerBase } from "./chunk-OEIUKLFH.mjs"; // src/libraries/react/BaseAutumnProvider.tsx import { useState } from "react"; import { jsx, jsxs } from "react/jsx-runtime"; function BaseAutumnProvider({ client, children, AutumnContext }) { const [components, setComponents] = useState({}); const [paywallProps, setPaywallProps, paywallOpen, setPaywallOpen] = useDialog(components.paywallDialog); const [ productChangeProps, setProductChangeProps, productChangeOpen, setProductChangeOpen ] = useDialog(components.productChangeDialog); useCustomerBase({ client, params: { errorOnNotFound: false } }); return /* @__PURE__ */ jsxs( AutumnContext.Provider, { value: { initialized: true, client, paywallDialog: { props: paywallProps, setProps: setPaywallProps, open: paywallOpen, setOpen: setPaywallOpen, setComponent: (component) => { setComponents({ ...components, paywallDialog: component }); } }, attachDialog: { props: productChangeProps, setProps: setProductChangeProps, open: productChangeOpen, setOpen: setProductChangeOpen, setComponent: (component) => { setComponents({ ...components, productChangeDialog: component }); } } }, children: [ components.paywallDialog && /* @__PURE__ */ jsx( components.paywallDialog, { open: paywallOpen, setOpen: setPaywallOpen, ...paywallProps } ), components.productChangeDialog && /* @__PURE__ */ jsx( components.productChangeDialog, { open: productChangeOpen, setOpen: setProductChangeOpen, ...productChangeProps } ), children ] } ); } export { BaseAutumnProvider };