{"version":3,"file":"StytchClientContext.mjs","sources":["../../../../../../../web/src/adminPortal/StytchClientContext.ts"],"sourcesContent":["import { StytchProjectConfiguration, StytchProjectConfigurationInput } from '@stytch/core/public';\nimport React, { useContext } from 'react';\n\nimport { StytchB2BClient } from '../b2b/StytchB2BClient';\nimport { AdminPortalMemberManagementUIConfig } from './memberManagement/AdminPortalMemberManagementContainer';\nimport { AdminPortalOrgUIConfig } from './settings/AdminPortalOrgSettingsContainer';\nimport { AdminPortalSSOUIConfig } from './sso/AdminPortalSSOContainer';\n\nexport type AdminPortalContext<TProjectConfiguration extends StytchProjectConfigurationInput, TAdminPortalConfig> = {\n  client: StytchB2BClient<TProjectConfiguration> | null;\n  config?: TAdminPortalConfig;\n};\n\nexport const StytchClientContext = React.createContext<AdminPortalContext<StytchProjectConfiguration, unknown>>({\n  client: null,\n});\n\nexport const useAdminPortalContext = <T>() =>\n  useContext(StytchClientContext as React.Context<AdminPortalContext<StytchProjectConfiguration, T>>);\nexport const useAdminPortalUIConfig = <T>() => useAdminPortalContext<T>().config;\n\nexport const useAdminPortalOrgUIConfig = useAdminPortalUIConfig<AdminPortalOrgUIConfig>;\nexport const useAdminPortalMemberManagementUIConfig = useAdminPortalUIConfig<AdminPortalMemberManagementUIConfig>;\n\nexport const useAdminPortalSSOUIConfig = useAdminPortalUIConfig<AdminPortalSSOUIConfig>;\n"],"names":["StytchClientContext","React","createContext","client","useAdminPortalContext","useContext","useAdminPortalUIConfig","config","useAdminPortalOrgUIConfig","useAdminPortalMemberManagementUIConfig","useAdminPortalSSOUIConfig"],"mappings":";;;AAaO,MAAMA,mBAAAA,GAAsBC,EAAAA,CAAMC,aAAa,CAA0D;IAC9GC,MAAAA,EAAQ;AACV,CAAA;AAEO,MAAMC,qBAAAA,GAAwB,IACnCC,CAAAA,CAAWL,mBAAAA;AACN,MAAMM,sBAAAA,GAAyB,IAASF,qBAAAA,EAAAA,CAA2BG;AAEnE,MAAMC,4BAA4BF;AAClC,MAAMG,yCAAyCH;AAE/C,MAAMI,4BAA4BJ;;;;"}