{"version":3,"file":"internal.mjs","sources":["../../../../../../../web/src/utils/internal.ts"],"sourcesContent":["import { INetworkClient, SearchDataManager } from '@stytch/core';\nimport { B2BState, ConsumerState, StytchProjectConfigurationInput } from '@stytch/core/public';\n\nimport { B2BOneTapProvider } from '../b2b/oneTap/B2BOneTapProvider';\nimport type { StytchB2BClient } from '../b2b/StytchB2BClient';\nimport { IBootstrapData } from '../BootstrapDataManager';\nimport { CaptchaProvider } from '../CaptchaProvider';\nimport { ClientsideServicesProvider } from '../ClientsideServicesProvider';\nimport { OneTapProvider } from '../oneTap/OneTapProvider';\nimport type { StytchClient } from '../StytchClient';\nimport { SubscriptionDataLayer } from '../SubscriptionService';\n\ntype Internals = {\n  // Internal Utilities\n  bootstrap: IBootstrapData;\n  publicToken: string;\n  searchManager: SearchDataManager;\n  networkClient: INetworkClient;\n  clientsideServices: ClientsideServicesProvider;\n};\n\nexport type B2BInternals = Internals & {\n  dataLayer: SubscriptionDataLayer<B2BState>;\n  networkClient: INetworkClient;\n  oneTap: B2BOneTapProvider;\n};\n\nexport type B2CInternals = Internals & {\n  captcha: CaptchaProvider;\n  oneTap: OneTapProvider;\n  dataLayer: SubscriptionDataLayer<ConsumerState>;\n};\n\nexport const internalSymB2B = Symbol.for('stytch__internal_b2b');\nexport const internalSymB2C = Symbol.for('stytch__internal_b2c');\n\nexport const writeB2BInternals = (obj: StytchB2BClient<StytchProjectConfigurationInput>, internals: B2BInternals) => {\n  Object.assign(obj, {\n    [internalSymB2B]: internals,\n  });\n};\n\nexport const readB2BInternals = (obj: StytchB2BClient<StytchProjectConfigurationInput>): B2BInternals => {\n  const casted = obj as { [internalSymB2B]?: B2BInternals };\n  if (!casted[internalSymB2B]) {\n    throw Error('Internals not found!');\n  }\n  return casted[internalSymB2B];\n};\n\nexport const writeB2CInternals = (obj: StytchClient<StytchProjectConfigurationInput>, internals: B2CInternals) => {\n  Object.assign(obj, {\n    [internalSymB2C]: internals,\n  });\n};\n\nexport const readB2CInternals = (obj: StytchClient<StytchProjectConfigurationInput>): B2CInternals => {\n  const casted = obj as { [internalSymB2C]?: B2CInternals };\n  if (!casted[internalSymB2C]) {\n    throw Error('Internals not found!');\n  }\n  return casted[internalSymB2C];\n};\n"],"names":["internalSymB2B","Symbol","for","internalSymB2C","writeB2BInternals","obj","internals","Object","assign","readB2BInternals","casted","Error","writeB2CInternals","readB2CInternals"],"mappings":"AAiCO,MAAMA,cAAAA,GAAiBC,MAAAA,CAAOC,GAAG,CAAC,sBAAA;AAClC,MAAMC,cAAAA,GAAiBF,MAAAA,CAAOC,GAAG,CAAC,sBAAA;AAElC,MAAME,iBAAAA,GAAoB,CAACC,GAAAA,EAAuDC,SAAAA,GAAAA;IACvFC,MAAAA,CAAOC,MAAM,CAACH,GAAAA,EAAK;AACjB,QAAA,CAACL,iBAAiBM;AACpB,KAAA,CAAA;AACF;AAEO,MAAMG,mBAAmB,CAACJ,GAAAA,GAAAA;AAC/B,IAAA,MAAMK,MAAAA,GAASL,GAAAA;AACf,IAAA,IAAI,CAACK,MAAM,CAACV,cAAAA,CAAe,EAAE;AAC3B,QAAA,MAAMW,KAAAA,CAAM,sBAAA,CAAA;AACd,IAAA;IACA,OAAOD,MAAM,CAACV,cAAAA,CAAe;AAC/B;AAEO,MAAMY,iBAAAA,GAAoB,CAACP,GAAAA,EAAoDC,SAAAA,GAAAA;IACpFC,MAAAA,CAAOC,MAAM,CAACH,GAAAA,EAAK;AACjB,QAAA,CAACF,iBAAiBG;AACpB,KAAA,CAAA;AACF;AAEO,MAAMO,mBAAmB,CAACR,GAAAA,GAAAA;AAC/B,IAAA,MAAMK,MAAAA,GAASL,GAAAA;AACf,IAAA,IAAI,CAACK,MAAM,CAACP,cAAAA,CAAe,EAAE;AAC3B,QAAA,MAAMQ,KAAAA,CAAM,sBAAA,CAAA;AACd,IAAA;IACA,OAAOD,MAAM,CAACP,cAAAA,CAAe;AAC/B;;;;"}