@corbado/observe 1.9.1 → 1.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/analysis/client.mjs +183 -4
- package/dist/analysis/config.mjs +4 -1
- package/dist/analysis/cross-origin-session.mjs +422 -0
- package/dist/analysis/queue.mjs +9 -0
- package/dist/analysis/readers/page.mjs +4 -0
- package/dist/analysis/version.mjs +1 -1
- package/dist/cdn/script.global.js +4 -4
- package/dist/index.d.mts +125 -3
- package/dist/index.d.ts +125 -3
- package/dist/index.js +4 -4
- package/dist/index.mjs +4 -4
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -487,6 +487,12 @@ interface EventBatchMeta {
|
|
|
487
487
|
* fields of the server config (`pmd`) are ignored. Omitted otherwise.
|
|
488
488
|
*/
|
|
489
489
|
fixedData?: boolean;
|
|
490
|
+
/**
|
|
491
|
+
* Set while `fixedDataConfig.crossOriginSession` is active on the page: `"adopted"` when this page load
|
|
492
|
+
* took the batch's session from the shared cross-origin cookie (another origin started it), `"own"`
|
|
493
|
+
* when the session is this origin's own. Omitted when the option is off or unusable on the page.
|
|
494
|
+
*/
|
|
495
|
+
crossOriginSession?: "adopted" | "own";
|
|
490
496
|
}
|
|
491
497
|
interface EventMeta {
|
|
492
498
|
initiator?: LowEventInitiator;
|
|
@@ -725,6 +731,59 @@ interface FixedDataConfig {
|
|
|
725
731
|
* without `fixedDataConfig`). When false, nothing is detected, read or written for it.
|
|
726
732
|
*/
|
|
727
733
|
privateMode?: boolean;
|
|
734
|
+
/**
|
|
735
|
+
* Cross-origin session continuity under a shared parent domain. Off when omitted (no cookie is read or
|
|
736
|
+
* written). Setting it fixes `pmd` and `privateMode` like any `fixedDataConfig`; pass both explicitly.
|
|
737
|
+
* See {@link CrossOriginSessionConfig}.
|
|
738
|
+
*/
|
|
739
|
+
crossOriginSession?: CrossOriginSessionConfig;
|
|
740
|
+
}
|
|
741
|
+
/**
|
|
742
|
+
* Opt-in cross-origin session continuity (`fixedDataConfig.crossOriginSession`).
|
|
743
|
+
*
|
|
744
|
+
* @remarks
|
|
745
|
+
* Origins under one parent domain (e.g. `login.example.com` and `app.example.com`) do not share
|
|
746
|
+
* localStorage, so each would report its own Observe session. With this option the tracker keeps a small
|
|
747
|
+
* first-party cookie `cbo_xs_<projectId>` on `cookieDomain`:
|
|
748
|
+
* `1.<sessionId>.<lastActiveAtMs>.<seqMark>[.<context>]` with `Path=/`, `SameSite=Lax`, `Secure` and a
|
|
749
|
+
* `Max-Age` of the session inactivity window. It holds the random session id, its last activity, a
|
|
750
|
+
* sequence reservation mark and the optional integration context (see
|
|
751
|
+
* {@link CorbadoTracker.setCrossOriginContext}); no personal data.
|
|
752
|
+
*
|
|
753
|
+
* The browser sends this cookie with every request to every subdomain of `cookieDomain` (it is a regular
|
|
754
|
+
* first-party cookie, readable by scripts); the session id in it is the one every batch already sends to
|
|
755
|
+
* Corbado. List it in your cookie notice like other analytics cookies. It is unrelated to
|
|
756
|
+
* `TrackerOptions.storage: "cookie"` / `TrackerOptions.cookieDomain`, which only move the SDK's own
|
|
757
|
+
* per-origin state into cookies and do not share a session across origins.
|
|
758
|
+
*
|
|
759
|
+
* At init, a tracker on another origin under the domain adopts the cookie's session when its own session
|
|
760
|
+
* was just created or was last active before the cookie's, and continues its sequence numbers at or above
|
|
761
|
+
* the mark, so the journey stays one session with unique sequence numbers. Its own session wins when it
|
|
762
|
+
* was active more recently. Only init, {@link CorbadoTracker.resetSession} and
|
|
763
|
+
* {@link CorbadoTracker.setCrossOriginContext} take the cookie over from another session; tracking never
|
|
764
|
+
* does, so a page still open on an older session cannot undo a newer one. Batches report the outcome in
|
|
765
|
+
* `meta.crossOriginSession` (`"adopted"` / `"own"`).
|
|
766
|
+
*
|
|
767
|
+
* Sessions merge across tabs: without the server's `sessionContinuity` switch each tab normally has its
|
|
768
|
+
* own session, but with this option every new tab (on any participating origin, including the same one)
|
|
769
|
+
* adopts the session of the cookie while it is active, so tabs opened within the inactivity window report
|
|
770
|
+
* into one session, as with `sessionContinuity`.
|
|
771
|
+
*
|
|
772
|
+
* The feature turns itself off for the page (tracking continues as without it) when the domain is not
|
|
773
|
+
* the page's host or a parent of it, the page is not served over HTTPS, or the cookie cannot be stored
|
|
774
|
+
* (blocked cookies, sandboxed or cross-site frames). It is fixed by the integration only and never taken
|
|
775
|
+
* from the server config.
|
|
776
|
+
*
|
|
777
|
+
* Like every `fixedDataConfig`, enabling it fixes BOTH data switches: `pmd` resolves to `false` and
|
|
778
|
+
* `privateMode` to `true` unless given, and the server's values are ignored (`meta.fixedData: true`). Set
|
|
779
|
+
* both explicitly next to it, e.g. `fixedDataConfig: { pmd: true, privateMode: true, crossOriginSession }`.
|
|
780
|
+
*/
|
|
781
|
+
interface CrossOriginSessionConfig {
|
|
782
|
+
/**
|
|
783
|
+
* The parent domain every participating origin shares, e.g. `".example.com"` (a leading dot is
|
|
784
|
+
* optional). Must be the page's host name or a parent of it.
|
|
785
|
+
*/
|
|
786
|
+
cookieDomain: string;
|
|
728
787
|
}
|
|
729
788
|
/** Query handling for `meta.trackingSourcePath`; see {@link SdkReliabilityConfig.sourcePathQuery}. */
|
|
730
789
|
type SourcePathQueryMode = "all" | "allowlist";
|
|
@@ -1949,6 +2008,10 @@ declare class CorbadoTracker {
|
|
|
1949
2008
|
private readonly probeSeqs;
|
|
1950
2009
|
private windowObserver?;
|
|
1951
2010
|
private passwordManagerSampler?;
|
|
2011
|
+
/** Cross-origin session cookie (`fixedDataConfig.crossOriginSession`); undefined when off. */
|
|
2012
|
+
private crossOrigin?;
|
|
2013
|
+
/** The session this load took from the cross-origin cookie, if any (`meta.crossOriginSession`). */
|
|
2014
|
+
private crossOriginAdoptedId?;
|
|
1952
2015
|
/** @internal Shared passive page observation and per-operation context registration. */
|
|
1953
2016
|
getWindowObserver(): SharedWindowObserver;
|
|
1954
2017
|
constructor(options: TrackerOptions);
|
|
@@ -2020,6 +2083,26 @@ declare class CorbadoTracker {
|
|
|
2020
2083
|
*/
|
|
2021
2084
|
private resolveExperiments;
|
|
2022
2085
|
private isTrackingBlocked;
|
|
2086
|
+
/** The cross-origin session cookie when `fixedDataConfig.crossOriginSession` is set and usable here. */
|
|
2087
|
+
private createCrossOriginSession;
|
|
2088
|
+
/**
|
|
2089
|
+
* Last activity of the local session records BEFORE this load rewrites them (both paths, by id), so the
|
|
2090
|
+
* cross-origin boot can tell a session that was active here from one this load just created.
|
|
2091
|
+
*/
|
|
2092
|
+
private readLocalSessionActivity;
|
|
2093
|
+
/**
|
|
2094
|
+
* Reconcile the session this load resolved locally with the cross-origin cookie before the first event:
|
|
2095
|
+
* adopt the cookie's session (and persist it locally, so reloads and same-origin tabs follow) or keep
|
|
2096
|
+
* the local one, and continue the seq at or above the cookie's mark. Never throws.
|
|
2097
|
+
*/
|
|
2098
|
+
private bootCrossOriginSession;
|
|
2099
|
+
/**
|
|
2100
|
+
* Resolve the session of this load: locally ({@link resolveSessionId}), then reconciled with the
|
|
2101
|
+
* cross-origin cookie when that option is on. Used at boot and by the recovery in `getSessionId`.
|
|
2102
|
+
*/
|
|
2103
|
+
private resolveSession;
|
|
2104
|
+
/** `meta.crossOriginSession` of a batch of `sessionId`; undefined while the option is off on this page. */
|
|
2105
|
+
private crossOriginSessionMeta;
|
|
2023
2106
|
private resolveSessionId;
|
|
2024
2107
|
/**
|
|
2025
2108
|
* Resolve the session id from localStorage so it survives reloads and is shared across tabs of the
|
|
@@ -2715,6 +2798,36 @@ declare class CorbadoTracker {
|
|
|
2715
2798
|
* ```
|
|
2716
2799
|
*/
|
|
2717
2800
|
getSessionId(): string | undefined;
|
|
2801
|
+
/**
|
|
2802
|
+
* Store an opaque context string with the cross-origin session, for the integration's own use on the
|
|
2803
|
+
* next origin (e.g. a journey id and stage). Requires `fixedDataConfig.crossOriginSession`.
|
|
2804
|
+
*
|
|
2805
|
+
* @remarks
|
|
2806
|
+
* The value travels in the shared cookie only (see {@link CrossOriginSessionConfig}): it is never sent
|
|
2807
|
+
* to Corbado, but the browser sends the cookie with every request to every subdomain of the configured
|
|
2808
|
+
* domain. It belongs to the current session: a tracker that adopts the session reads it with
|
|
2809
|
+
* {@link CorbadoTracker.getCrossOriginContext}, and a new session (inactivity, `resetSession`) starts
|
|
2810
|
+
* without it. At most 128 characters of `A-Z a-z 0-9 . _ ~ -`; never put personal data in it.
|
|
2811
|
+
* `null`, `undefined` or `""` clears it.
|
|
2812
|
+
*
|
|
2813
|
+
* Never throws.
|
|
2814
|
+
*
|
|
2815
|
+
* @param context - The value to store; `null`, `undefined` or `""` clears it.
|
|
2816
|
+
* @returns `true` when the value was accepted and written; `false` when it is invalid or the feature
|
|
2817
|
+
* is off on this page (not configured, cookie blocked, domain mismatch, not HTTPS).
|
|
2818
|
+
*
|
|
2819
|
+
* @example
|
|
2820
|
+
* ```typescript
|
|
2821
|
+
* tracker.setCrossOriginContext(`v1.${journeyId}.passkey.b`);
|
|
2822
|
+
* ```
|
|
2823
|
+
*/
|
|
2824
|
+
setCrossOriginContext(context: string | null | undefined): boolean;
|
|
2825
|
+
/**
|
|
2826
|
+
* The context string stored with the current cross-origin session (see
|
|
2827
|
+
* {@link CorbadoTracker.setCrossOriginContext}), or `undefined` when none is set, the session has no
|
|
2828
|
+
* context, or the feature is off on this page. Never throws.
|
|
2829
|
+
*/
|
|
2830
|
+
getCrossOriginContext(): string | undefined;
|
|
2718
2831
|
/** @internal */
|
|
2719
2832
|
resetSession(): string;
|
|
2720
2833
|
}
|
|
@@ -2791,6 +2904,11 @@ interface QueueOptions {
|
|
|
2791
2904
|
* integration or the build, so the server's data flags are ignored. Omitted (no meta field) when false.
|
|
2792
2905
|
*/
|
|
2793
2906
|
fixedData?: boolean;
|
|
2907
|
+
/**
|
|
2908
|
+
* Returns `meta.crossOriginSession` for a batch of the given session (`"adopted"` / `"own"`), or
|
|
2909
|
+
* undefined (no meta field) while the cross-origin session option is off. Read at send time.
|
|
2910
|
+
*/
|
|
2911
|
+
getCrossOriginSession?: (sessionId: string) => "adopted" | "own" | undefined;
|
|
2794
2912
|
/**
|
|
2795
2913
|
* Called with the events of every event batch right before it is sent (async and unload flushes),
|
|
2796
2914
|
* before the batch's telemetry is taken. The tracker uses it to attach a device info snapshot that
|
|
@@ -2876,6 +2994,7 @@ declare class RequestQueue {
|
|
|
2876
2994
|
private readonly requestConfig;
|
|
2877
2995
|
private readonly onConfigReceived?;
|
|
2878
2996
|
private readonly getDataPolicy?;
|
|
2997
|
+
private readonly getCrossOriginSession?;
|
|
2879
2998
|
private readonly fixedData;
|
|
2880
2999
|
private readonly beforeEventBatchSend?;
|
|
2881
3000
|
private readonly standaloneDeviceInfo?;
|
|
@@ -3141,7 +3260,9 @@ declare function parseReliabilityConfig(raw: unknown): SdkReliabilityConfig | nu
|
|
|
3141
3260
|
/** Resolve init overrides over validated server policy, then defaults, including individual retry fields. */
|
|
3142
3261
|
declare function resolveReliabilityConfig(serverConfig: SdkReliabilityConfig | undefined, overrides?: SdkReliabilityConfigOverrides): SdkReliabilityConfig;
|
|
3143
3262
|
/** Effective fixed data switches; every field resolved. */
|
|
3144
|
-
type ResolvedFixedDataConfig = Required<FixedDataConfig
|
|
3263
|
+
type ResolvedFixedDataConfig = Required<Omit<FixedDataConfig, "crossOriginSession">> & {
|
|
3264
|
+
/** Cross-origin session option as given (domain not yet checked against the page); absent when not set. */
|
|
3265
|
+
crossOriginSession?: CrossOriginSessionConfig;
|
|
3145
3266
|
/**
|
|
3146
3267
|
* Whether `pmd` was set explicitly (a boolean). Only an explicit `pmd` gates the DOM password-manager
|
|
3147
3268
|
* scan (`pa-1`..`pa-6`); an omitted `pmd` turns the extension probes off but leaves the scan on.
|
|
@@ -3152,7 +3273,8 @@ type ResolvedFixedDataConfig = Required<FixedDataConfig> & {
|
|
|
3152
3273
|
* Resolve `init({ fixedDataConfig })`. Returns `undefined` (not fixed: server-driven, today's behaviour)
|
|
3153
3274
|
* unless the option is an object. A missing or non-boolean `pmd` resolves to `false` (not the built-in
|
|
3154
3275
|
* default and not `sdkConfig.pmd`: a fixed config collects only what it names) with `pmdExplicit: false`;
|
|
3155
|
-
* a missing or non-boolean `privateMode` resolves to on.
|
|
3276
|
+
* a missing or non-boolean `privateMode` resolves to on. `crossOriginSession` is kept only with a string
|
|
3277
|
+
* `cookieDomain` (checked against the page later). Never throws.
|
|
3156
3278
|
*
|
|
3157
3279
|
* @internal
|
|
3158
3280
|
*/
|
|
@@ -3339,4 +3461,4 @@ declare function logInfo(message: string): void;
|
|
|
3339
3461
|
declare function logError(message: string): void;
|
|
3340
3462
|
declare function destroy(): Promise<void>;
|
|
3341
3463
|
|
|
3342
|
-
export { type AppConfirmationOperationCeremonyTypedError, type AppConfirmationOperationConfig, AppConfirmationOperationFull, type AppConfirmationOperationRetryReason, type AppConfirmationOperationSpecType, type AppConfirmationOperationStart, type AuthDecisionFinished, type AuthDecisionStarted, AuthEventName, type AuthMethodDecisionFinished, type AuthMethodDecisionStarted, type AuthMethodType, type BaseEvent, CEREMONY_LOW_EVENT_TAIL_MS, CONFIG_BOUNDS, CONFIG_CACHE_STORAGE_KEY, CONFIG_REQUEST_HEADER, CONFIG_STORAGE_KEY, type CaptchaOperationConfig, CaptchaOperationFull, type CaptchaOperationSpecType, type ClientCapabilities, type ClientEnvHandleMeta, type ClientEnvHandleMetaSource, type ConfigCacheRecord, type Conversion, CookieStorage, CorbadoTracker, type CreateLoggerOptions, type CustomEvent, DEFAULT_DEVICE_INFO_COLLECTOR_TIMEOUT_MS, DEFAULT_FLUSH_INTERVAL_MS, DEFAULT_MAX_ENTRIES, DEFAULT_MAX_SERIALIZED_LENGTH, DEFAULT_RELIABILITY_CONFIG, DEFAULT_SEQ_LOCK_TIMEOUT_MS, DEFAULT_SESSION_INACTIVITY_MS, type DeviceInfo, type DeviceInfoCollectionError, type DeviceInfoDataWeb, type DeviceType, type EmailLinkContinuationConfig, EmailLinkContinuationOperation, type EmailLinkOperationConfig, EmailLinkOperationFull, type EmailLinkOperationPostResponseStart, type EmailLinkOperationSendStart, type EmailLinkOperationSpecType, type EmailOTPOperationConfig, type EmailOTPOperationPostResponseStart, type EmailOTPOperationSendOTPStart, type EmailOTPOperationSpecType, EmailOtpOperationFull, type ErrorStepOptions, type Event, type EventBatch, type EventBatchMeta, type EventMeta, EventStore, type EventType, type FixedDataConfig, type FlowAutoFinished, type FlowDecided, type FlowFinished, type FlowHandle, type FlowReset, type FlowStarted, type FlowType, type FlushReason, type FormOperationConfig, FormOperationFull, type HandoffStepHelper, type JavaScriptHighEntropy, type KeyOperationConfig, KeyRegistrationOperationFull, KeySigningOperationFull, LocalStorage, type Logger, type LowEvent, type LowEventFieldRole, type LowEventInitiator, type LowEventInputEffect, type LowEventSourceKind, type MultiFlowReset, type MultiFlowStarted, NamespacedStorage, type NormalizedError, OUTBOX_LOCK_NAME, OUTBOX_STORAGE_KEY, type ObserveSdkConfigSnapshot, OperationFull, OperationFullProvideIdentifierWithCUI, type OperationFullProvideIdentifierWithCUIConfig, type OutboxEntry, PROBE_BATCH_MAX_BYTES, PROBE_BATCH_MAX_ITEMS, PROBE_PAYLOAD_MAX_BYTES, PROBE_QUEUE_MAX_BYTES, PROBE_QUEUE_MAX_ITEMS, type PasskeyDeletionDeletionTypedError, type PasskeyDeletionOperationConfig, PasskeyDeletionOperationFull, type PasskeyDeletionUserConfirmationTypedError, type PasskeyEnrollmentCeremonyFinished, type PasskeyEnrollmentCeremonyStart, type PasskeyEnrollmentGetOptionsFinished, type PasskeyEnrollmentGetOptionsStart, type PasskeyEnrollmentOperationConfig, PasskeyEnrollmentOperationFull, type PasskeyEnrollmentPostResponseStart, type PasskeyLoginCUIGetOptionsFinished, type PasskeyLoginCUIGetOptionsStart, type PasskeyLoginCUISpecType, type PasskeyLoginCeremonyFinished, type PasskeyLoginCeremonyStart, type PasskeyLoginClientError, type PasskeyLoginFinish, type PasskeyLoginGetOptionsFinished, type PasskeyLoginGetOptionsStart, type PasskeyLoginOperationConfig, PasskeyLoginOperationFull, type PasskeyLoginPostResponseStart, type PasskeyLoginStartable, type PasskeyLoginSubmitted, type PasskeyOperationEnrollmentExplicitSpecType, type PasskeyOperationLoginExplicitSpecType, type PasswordEnrollmentConfig, PasswordEnrollmentOperationFull, type PasswordEnrollmentTypedError, type PasswordLoginCUICeremonyStart, type PasswordLoginCUIGetOptionsFinished, type PasswordLoginCUIGetOptionsStart, type PasswordLoginCUISpecType, type PasswordLoginCUITypedError, type PasswordLoginConfig, type PasswordLoginExplicitSpecType, PasswordLoginOperationFull, type PasswordLoginTypedError, type PasswordManagerExtension, type PasswordManagerExtensionName, type PredefinedEvent, type ProbeContext, type ProbeEntry, type ProbeInput, type ProvideDataOperationConfig, ProvideDataOperationFull, type ProvideDataOperationPostResponseStart, type ProvideDataOperationSpecType, type ProvideDataOperationStart, type ProvideIdentifierError, type ProvideIdentifierFinish, type ProvideIdentifierPostResponseStart, type ProvideIdentifierSpecType, type ProvideIdentifierStart, type QueueOptions, RAW_ERROR_BOUNDS, READER_EXPOSURES, type RawErrorEnvelope, type ReaderDataConfigKey, type ReaderExposure, type ReaderField, type ReaderMeta, type ReaderOrigin, type ReaderTransform, RequestQueue, type ResolvedFixedDataConfig, SDK_NAME, SDK_VERSION, type SdkInfo, type SdkInputHandoff, type SdkReliabilityConfig, type SdkReliabilityConfigOverrides, type SdkRetryConfig, type SdkWebAuthnError, type SdkWebAuthnPayload, type SerializeRawErrorOptions, SessionStorage, type SetFlowTagsOptions, type SmsOTPOperationConfig, type SmsOTPOperationPostResponseStart, type SmsOTPOperationSpecType, SmsOtpOperationFull, type SocialLoginEntry, type SocialLoginExchangeCodeFinished, type SocialLoginExchangeCodeStart, type SocialLoginGetRedirectUrlFinished, type SocialLoginGetRedirectUrlStart, type SocialLoginOperationConfig, SocialLoginOperationFull, type SocialLoginProviderType, type SocialLoginSpecType, type SourcePathQueryMode, type SsoLoginExchangeCodeFinished, type SsoLoginExchangeCodeStart, type SsoLoginGetRedirectUrlFinished, type SsoLoginGetRedirectUrlStart, type SsoLoginOperationConfig, SsoLoginOperationFull, type SsoLoginSpecType, type StandaloneDeviceInfoSource, type StepHelper, type StepIdentifier, type StepOptions, type StorageEngine, type SubflowTrigger, type SubflowType, type TelemetryEntry, type TelemetryLevel, type TelemetrySink, type TotpOperationConfig, TotpOperationFull, type TotpOperationPostResponseStart, type TotpOperationSpecType, type TrackerOptions, type Transport, type TransportMakeRequestResponse, type TransportOptions, type TrustedDeviceBindingMetadata, type TrustedDeviceCheckConfig, TrustedDeviceCheckOperationFull, type TrustedDeviceCheckResult, type TrustedDeviceCheckStepResult, type TrustedDeviceCheckTypedError, TrustedDeviceEnrollmentOperationFull, type TrustedDeviceEnrollmentResult, type TrustedDeviceOperationConfig, type TrustedDevicePurpose, type TrustedDeviceStorage, UNLOAD_BUDGET_BYTES, UNLOAD_PROBE_MAX_BYTES, type UserReference, type WebAuthnIdentifierProjector, type WebAuthnIdentifierProjectors, type WithHandoffs, cacheConfigRecord, clearExperiment, clearExperiments, createLogger, destroy, detectPasswordManagerExtensions, getExperiments, getSessionId, getTracker, init, loadCachedConfig, loadConfigRecord, logError, logInfo, namespacedKey, parseReliabilityConfig, resetSession, resolveFixedDataConfig, resolveRawErrorLimits, resolveReliabilityConfig, sanitizeAssertionResponse, sanitizeCreationOptions, sanitizeCreationResponse, sanitizeRequestOptions, serializeRawError, setExperiment, setExperiments, setFlowTags, setUser, telemetry, utf8Length };
|
|
3464
|
+
export { type AppConfirmationOperationCeremonyTypedError, type AppConfirmationOperationConfig, AppConfirmationOperationFull, type AppConfirmationOperationRetryReason, type AppConfirmationOperationSpecType, type AppConfirmationOperationStart, type AuthDecisionFinished, type AuthDecisionStarted, AuthEventName, type AuthMethodDecisionFinished, type AuthMethodDecisionStarted, type AuthMethodType, type BaseEvent, CEREMONY_LOW_EVENT_TAIL_MS, CONFIG_BOUNDS, CONFIG_CACHE_STORAGE_KEY, CONFIG_REQUEST_HEADER, CONFIG_STORAGE_KEY, type CaptchaOperationConfig, CaptchaOperationFull, type CaptchaOperationSpecType, type ClientCapabilities, type ClientEnvHandleMeta, type ClientEnvHandleMetaSource, type ConfigCacheRecord, type Conversion, CookieStorage, CorbadoTracker, type CreateLoggerOptions, type CrossOriginSessionConfig, type CustomEvent, DEFAULT_DEVICE_INFO_COLLECTOR_TIMEOUT_MS, DEFAULT_FLUSH_INTERVAL_MS, DEFAULT_MAX_ENTRIES, DEFAULT_MAX_SERIALIZED_LENGTH, DEFAULT_RELIABILITY_CONFIG, DEFAULT_SEQ_LOCK_TIMEOUT_MS, DEFAULT_SESSION_INACTIVITY_MS, type DeviceInfo, type DeviceInfoCollectionError, type DeviceInfoDataWeb, type DeviceType, type EmailLinkContinuationConfig, EmailLinkContinuationOperation, type EmailLinkOperationConfig, EmailLinkOperationFull, type EmailLinkOperationPostResponseStart, type EmailLinkOperationSendStart, type EmailLinkOperationSpecType, type EmailOTPOperationConfig, type EmailOTPOperationPostResponseStart, type EmailOTPOperationSendOTPStart, type EmailOTPOperationSpecType, EmailOtpOperationFull, type ErrorStepOptions, type Event, type EventBatch, type EventBatchMeta, type EventMeta, EventStore, type EventType, type FixedDataConfig, type FlowAutoFinished, type FlowDecided, type FlowFinished, type FlowHandle, type FlowReset, type FlowStarted, type FlowType, type FlushReason, type FormOperationConfig, FormOperationFull, type HandoffStepHelper, type JavaScriptHighEntropy, type KeyOperationConfig, KeyRegistrationOperationFull, KeySigningOperationFull, LocalStorage, type Logger, type LowEvent, type LowEventFieldRole, type LowEventInitiator, type LowEventInputEffect, type LowEventSourceKind, type MultiFlowReset, type MultiFlowStarted, NamespacedStorage, type NormalizedError, OUTBOX_LOCK_NAME, OUTBOX_STORAGE_KEY, type ObserveSdkConfigSnapshot, OperationFull, OperationFullProvideIdentifierWithCUI, type OperationFullProvideIdentifierWithCUIConfig, type OutboxEntry, PROBE_BATCH_MAX_BYTES, PROBE_BATCH_MAX_ITEMS, PROBE_PAYLOAD_MAX_BYTES, PROBE_QUEUE_MAX_BYTES, PROBE_QUEUE_MAX_ITEMS, type PasskeyDeletionDeletionTypedError, type PasskeyDeletionOperationConfig, PasskeyDeletionOperationFull, type PasskeyDeletionUserConfirmationTypedError, type PasskeyEnrollmentCeremonyFinished, type PasskeyEnrollmentCeremonyStart, type PasskeyEnrollmentGetOptionsFinished, type PasskeyEnrollmentGetOptionsStart, type PasskeyEnrollmentOperationConfig, PasskeyEnrollmentOperationFull, type PasskeyEnrollmentPostResponseStart, type PasskeyLoginCUIGetOptionsFinished, type PasskeyLoginCUIGetOptionsStart, type PasskeyLoginCUISpecType, type PasskeyLoginCeremonyFinished, type PasskeyLoginCeremonyStart, type PasskeyLoginClientError, type PasskeyLoginFinish, type PasskeyLoginGetOptionsFinished, type PasskeyLoginGetOptionsStart, type PasskeyLoginOperationConfig, PasskeyLoginOperationFull, type PasskeyLoginPostResponseStart, type PasskeyLoginStartable, type PasskeyLoginSubmitted, type PasskeyOperationEnrollmentExplicitSpecType, type PasskeyOperationLoginExplicitSpecType, type PasswordEnrollmentConfig, PasswordEnrollmentOperationFull, type PasswordEnrollmentTypedError, type PasswordLoginCUICeremonyStart, type PasswordLoginCUIGetOptionsFinished, type PasswordLoginCUIGetOptionsStart, type PasswordLoginCUISpecType, type PasswordLoginCUITypedError, type PasswordLoginConfig, type PasswordLoginExplicitSpecType, PasswordLoginOperationFull, type PasswordLoginTypedError, type PasswordManagerExtension, type PasswordManagerExtensionName, type PredefinedEvent, type ProbeContext, type ProbeEntry, type ProbeInput, type ProvideDataOperationConfig, ProvideDataOperationFull, type ProvideDataOperationPostResponseStart, type ProvideDataOperationSpecType, type ProvideDataOperationStart, type ProvideIdentifierError, type ProvideIdentifierFinish, type ProvideIdentifierPostResponseStart, type ProvideIdentifierSpecType, type ProvideIdentifierStart, type QueueOptions, RAW_ERROR_BOUNDS, READER_EXPOSURES, type RawErrorEnvelope, type ReaderDataConfigKey, type ReaderExposure, type ReaderField, type ReaderMeta, type ReaderOrigin, type ReaderTransform, RequestQueue, type ResolvedFixedDataConfig, SDK_NAME, SDK_VERSION, type SdkInfo, type SdkInputHandoff, type SdkReliabilityConfig, type SdkReliabilityConfigOverrides, type SdkRetryConfig, type SdkWebAuthnError, type SdkWebAuthnPayload, type SerializeRawErrorOptions, SessionStorage, type SetFlowTagsOptions, type SmsOTPOperationConfig, type SmsOTPOperationPostResponseStart, type SmsOTPOperationSpecType, SmsOtpOperationFull, type SocialLoginEntry, type SocialLoginExchangeCodeFinished, type SocialLoginExchangeCodeStart, type SocialLoginGetRedirectUrlFinished, type SocialLoginGetRedirectUrlStart, type SocialLoginOperationConfig, SocialLoginOperationFull, type SocialLoginProviderType, type SocialLoginSpecType, type SourcePathQueryMode, type SsoLoginExchangeCodeFinished, type SsoLoginExchangeCodeStart, type SsoLoginGetRedirectUrlFinished, type SsoLoginGetRedirectUrlStart, type SsoLoginOperationConfig, SsoLoginOperationFull, type SsoLoginSpecType, type StandaloneDeviceInfoSource, type StepHelper, type StepIdentifier, type StepOptions, type StorageEngine, type SubflowTrigger, type SubflowType, type TelemetryEntry, type TelemetryLevel, type TelemetrySink, type TotpOperationConfig, TotpOperationFull, type TotpOperationPostResponseStart, type TotpOperationSpecType, type TrackerOptions, type Transport, type TransportMakeRequestResponse, type TransportOptions, type TrustedDeviceBindingMetadata, type TrustedDeviceCheckConfig, TrustedDeviceCheckOperationFull, type TrustedDeviceCheckResult, type TrustedDeviceCheckStepResult, type TrustedDeviceCheckTypedError, TrustedDeviceEnrollmentOperationFull, type TrustedDeviceEnrollmentResult, type TrustedDeviceOperationConfig, type TrustedDevicePurpose, type TrustedDeviceStorage, UNLOAD_BUDGET_BYTES, UNLOAD_PROBE_MAX_BYTES, type UserReference, type WebAuthnIdentifierProjector, type WebAuthnIdentifierProjectors, type WithHandoffs, cacheConfigRecord, clearExperiment, clearExperiments, createLogger, destroy, detectPasswordManagerExtensions, getExperiments, getSessionId, getTracker, init, loadCachedConfig, loadConfigRecord, logError, logInfo, namespacedKey, parseReliabilityConfig, resetSession, resolveFixedDataConfig, resolveRawErrorLimits, resolveReliabilityConfig, sanitizeAssertionResponse, sanitizeCreationOptions, sanitizeCreationResponse, sanitizeRequestOptions, serializeRawError, setExperiment, setExperiments, setFlowTags, setUser, telemetry, utf8Length };
|
package/dist/index.d.ts
CHANGED
|
@@ -487,6 +487,12 @@ interface EventBatchMeta {
|
|
|
487
487
|
* fields of the server config (`pmd`) are ignored. Omitted otherwise.
|
|
488
488
|
*/
|
|
489
489
|
fixedData?: boolean;
|
|
490
|
+
/**
|
|
491
|
+
* Set while `fixedDataConfig.crossOriginSession` is active on the page: `"adopted"` when this page load
|
|
492
|
+
* took the batch's session from the shared cross-origin cookie (another origin started it), `"own"`
|
|
493
|
+
* when the session is this origin's own. Omitted when the option is off or unusable on the page.
|
|
494
|
+
*/
|
|
495
|
+
crossOriginSession?: "adopted" | "own";
|
|
490
496
|
}
|
|
491
497
|
interface EventMeta {
|
|
492
498
|
initiator?: LowEventInitiator;
|
|
@@ -725,6 +731,59 @@ interface FixedDataConfig {
|
|
|
725
731
|
* without `fixedDataConfig`). When false, nothing is detected, read or written for it.
|
|
726
732
|
*/
|
|
727
733
|
privateMode?: boolean;
|
|
734
|
+
/**
|
|
735
|
+
* Cross-origin session continuity under a shared parent domain. Off when omitted (no cookie is read or
|
|
736
|
+
* written). Setting it fixes `pmd` and `privateMode` like any `fixedDataConfig`; pass both explicitly.
|
|
737
|
+
* See {@link CrossOriginSessionConfig}.
|
|
738
|
+
*/
|
|
739
|
+
crossOriginSession?: CrossOriginSessionConfig;
|
|
740
|
+
}
|
|
741
|
+
/**
|
|
742
|
+
* Opt-in cross-origin session continuity (`fixedDataConfig.crossOriginSession`).
|
|
743
|
+
*
|
|
744
|
+
* @remarks
|
|
745
|
+
* Origins under one parent domain (e.g. `login.example.com` and `app.example.com`) do not share
|
|
746
|
+
* localStorage, so each would report its own Observe session. With this option the tracker keeps a small
|
|
747
|
+
* first-party cookie `cbo_xs_<projectId>` on `cookieDomain`:
|
|
748
|
+
* `1.<sessionId>.<lastActiveAtMs>.<seqMark>[.<context>]` with `Path=/`, `SameSite=Lax`, `Secure` and a
|
|
749
|
+
* `Max-Age` of the session inactivity window. It holds the random session id, its last activity, a
|
|
750
|
+
* sequence reservation mark and the optional integration context (see
|
|
751
|
+
* {@link CorbadoTracker.setCrossOriginContext}); no personal data.
|
|
752
|
+
*
|
|
753
|
+
* The browser sends this cookie with every request to every subdomain of `cookieDomain` (it is a regular
|
|
754
|
+
* first-party cookie, readable by scripts); the session id in it is the one every batch already sends to
|
|
755
|
+
* Corbado. List it in your cookie notice like other analytics cookies. It is unrelated to
|
|
756
|
+
* `TrackerOptions.storage: "cookie"` / `TrackerOptions.cookieDomain`, which only move the SDK's own
|
|
757
|
+
* per-origin state into cookies and do not share a session across origins.
|
|
758
|
+
*
|
|
759
|
+
* At init, a tracker on another origin under the domain adopts the cookie's session when its own session
|
|
760
|
+
* was just created or was last active before the cookie's, and continues its sequence numbers at or above
|
|
761
|
+
* the mark, so the journey stays one session with unique sequence numbers. Its own session wins when it
|
|
762
|
+
* was active more recently. Only init, {@link CorbadoTracker.resetSession} and
|
|
763
|
+
* {@link CorbadoTracker.setCrossOriginContext} take the cookie over from another session; tracking never
|
|
764
|
+
* does, so a page still open on an older session cannot undo a newer one. Batches report the outcome in
|
|
765
|
+
* `meta.crossOriginSession` (`"adopted"` / `"own"`).
|
|
766
|
+
*
|
|
767
|
+
* Sessions merge across tabs: without the server's `sessionContinuity` switch each tab normally has its
|
|
768
|
+
* own session, but with this option every new tab (on any participating origin, including the same one)
|
|
769
|
+
* adopts the session of the cookie while it is active, so tabs opened within the inactivity window report
|
|
770
|
+
* into one session, as with `sessionContinuity`.
|
|
771
|
+
*
|
|
772
|
+
* The feature turns itself off for the page (tracking continues as without it) when the domain is not
|
|
773
|
+
* the page's host or a parent of it, the page is not served over HTTPS, or the cookie cannot be stored
|
|
774
|
+
* (blocked cookies, sandboxed or cross-site frames). It is fixed by the integration only and never taken
|
|
775
|
+
* from the server config.
|
|
776
|
+
*
|
|
777
|
+
* Like every `fixedDataConfig`, enabling it fixes BOTH data switches: `pmd` resolves to `false` and
|
|
778
|
+
* `privateMode` to `true` unless given, and the server's values are ignored (`meta.fixedData: true`). Set
|
|
779
|
+
* both explicitly next to it, e.g. `fixedDataConfig: { pmd: true, privateMode: true, crossOriginSession }`.
|
|
780
|
+
*/
|
|
781
|
+
interface CrossOriginSessionConfig {
|
|
782
|
+
/**
|
|
783
|
+
* The parent domain every participating origin shares, e.g. `".example.com"` (a leading dot is
|
|
784
|
+
* optional). Must be the page's host name or a parent of it.
|
|
785
|
+
*/
|
|
786
|
+
cookieDomain: string;
|
|
728
787
|
}
|
|
729
788
|
/** Query handling for `meta.trackingSourcePath`; see {@link SdkReliabilityConfig.sourcePathQuery}. */
|
|
730
789
|
type SourcePathQueryMode = "all" | "allowlist";
|
|
@@ -1949,6 +2008,10 @@ declare class CorbadoTracker {
|
|
|
1949
2008
|
private readonly probeSeqs;
|
|
1950
2009
|
private windowObserver?;
|
|
1951
2010
|
private passwordManagerSampler?;
|
|
2011
|
+
/** Cross-origin session cookie (`fixedDataConfig.crossOriginSession`); undefined when off. */
|
|
2012
|
+
private crossOrigin?;
|
|
2013
|
+
/** The session this load took from the cross-origin cookie, if any (`meta.crossOriginSession`). */
|
|
2014
|
+
private crossOriginAdoptedId?;
|
|
1952
2015
|
/** @internal Shared passive page observation and per-operation context registration. */
|
|
1953
2016
|
getWindowObserver(): SharedWindowObserver;
|
|
1954
2017
|
constructor(options: TrackerOptions);
|
|
@@ -2020,6 +2083,26 @@ declare class CorbadoTracker {
|
|
|
2020
2083
|
*/
|
|
2021
2084
|
private resolveExperiments;
|
|
2022
2085
|
private isTrackingBlocked;
|
|
2086
|
+
/** The cross-origin session cookie when `fixedDataConfig.crossOriginSession` is set and usable here. */
|
|
2087
|
+
private createCrossOriginSession;
|
|
2088
|
+
/**
|
|
2089
|
+
* Last activity of the local session records BEFORE this load rewrites them (both paths, by id), so the
|
|
2090
|
+
* cross-origin boot can tell a session that was active here from one this load just created.
|
|
2091
|
+
*/
|
|
2092
|
+
private readLocalSessionActivity;
|
|
2093
|
+
/**
|
|
2094
|
+
* Reconcile the session this load resolved locally with the cross-origin cookie before the first event:
|
|
2095
|
+
* adopt the cookie's session (and persist it locally, so reloads and same-origin tabs follow) or keep
|
|
2096
|
+
* the local one, and continue the seq at or above the cookie's mark. Never throws.
|
|
2097
|
+
*/
|
|
2098
|
+
private bootCrossOriginSession;
|
|
2099
|
+
/**
|
|
2100
|
+
* Resolve the session of this load: locally ({@link resolveSessionId}), then reconciled with the
|
|
2101
|
+
* cross-origin cookie when that option is on. Used at boot and by the recovery in `getSessionId`.
|
|
2102
|
+
*/
|
|
2103
|
+
private resolveSession;
|
|
2104
|
+
/** `meta.crossOriginSession` of a batch of `sessionId`; undefined while the option is off on this page. */
|
|
2105
|
+
private crossOriginSessionMeta;
|
|
2023
2106
|
private resolveSessionId;
|
|
2024
2107
|
/**
|
|
2025
2108
|
* Resolve the session id from localStorage so it survives reloads and is shared across tabs of the
|
|
@@ -2715,6 +2798,36 @@ declare class CorbadoTracker {
|
|
|
2715
2798
|
* ```
|
|
2716
2799
|
*/
|
|
2717
2800
|
getSessionId(): string | undefined;
|
|
2801
|
+
/**
|
|
2802
|
+
* Store an opaque context string with the cross-origin session, for the integration's own use on the
|
|
2803
|
+
* next origin (e.g. a journey id and stage). Requires `fixedDataConfig.crossOriginSession`.
|
|
2804
|
+
*
|
|
2805
|
+
* @remarks
|
|
2806
|
+
* The value travels in the shared cookie only (see {@link CrossOriginSessionConfig}): it is never sent
|
|
2807
|
+
* to Corbado, but the browser sends the cookie with every request to every subdomain of the configured
|
|
2808
|
+
* domain. It belongs to the current session: a tracker that adopts the session reads it with
|
|
2809
|
+
* {@link CorbadoTracker.getCrossOriginContext}, and a new session (inactivity, `resetSession`) starts
|
|
2810
|
+
* without it. At most 128 characters of `A-Z a-z 0-9 . _ ~ -`; never put personal data in it.
|
|
2811
|
+
* `null`, `undefined` or `""` clears it.
|
|
2812
|
+
*
|
|
2813
|
+
* Never throws.
|
|
2814
|
+
*
|
|
2815
|
+
* @param context - The value to store; `null`, `undefined` or `""` clears it.
|
|
2816
|
+
* @returns `true` when the value was accepted and written; `false` when it is invalid or the feature
|
|
2817
|
+
* is off on this page (not configured, cookie blocked, domain mismatch, not HTTPS).
|
|
2818
|
+
*
|
|
2819
|
+
* @example
|
|
2820
|
+
* ```typescript
|
|
2821
|
+
* tracker.setCrossOriginContext(`v1.${journeyId}.passkey.b`);
|
|
2822
|
+
* ```
|
|
2823
|
+
*/
|
|
2824
|
+
setCrossOriginContext(context: string | null | undefined): boolean;
|
|
2825
|
+
/**
|
|
2826
|
+
* The context string stored with the current cross-origin session (see
|
|
2827
|
+
* {@link CorbadoTracker.setCrossOriginContext}), or `undefined` when none is set, the session has no
|
|
2828
|
+
* context, or the feature is off on this page. Never throws.
|
|
2829
|
+
*/
|
|
2830
|
+
getCrossOriginContext(): string | undefined;
|
|
2718
2831
|
/** @internal */
|
|
2719
2832
|
resetSession(): string;
|
|
2720
2833
|
}
|
|
@@ -2791,6 +2904,11 @@ interface QueueOptions {
|
|
|
2791
2904
|
* integration or the build, so the server's data flags are ignored. Omitted (no meta field) when false.
|
|
2792
2905
|
*/
|
|
2793
2906
|
fixedData?: boolean;
|
|
2907
|
+
/**
|
|
2908
|
+
* Returns `meta.crossOriginSession` for a batch of the given session (`"adopted"` / `"own"`), or
|
|
2909
|
+
* undefined (no meta field) while the cross-origin session option is off. Read at send time.
|
|
2910
|
+
*/
|
|
2911
|
+
getCrossOriginSession?: (sessionId: string) => "adopted" | "own" | undefined;
|
|
2794
2912
|
/**
|
|
2795
2913
|
* Called with the events of every event batch right before it is sent (async and unload flushes),
|
|
2796
2914
|
* before the batch's telemetry is taken. The tracker uses it to attach a device info snapshot that
|
|
@@ -2876,6 +2994,7 @@ declare class RequestQueue {
|
|
|
2876
2994
|
private readonly requestConfig;
|
|
2877
2995
|
private readonly onConfigReceived?;
|
|
2878
2996
|
private readonly getDataPolicy?;
|
|
2997
|
+
private readonly getCrossOriginSession?;
|
|
2879
2998
|
private readonly fixedData;
|
|
2880
2999
|
private readonly beforeEventBatchSend?;
|
|
2881
3000
|
private readonly standaloneDeviceInfo?;
|
|
@@ -3141,7 +3260,9 @@ declare function parseReliabilityConfig(raw: unknown): SdkReliabilityConfig | nu
|
|
|
3141
3260
|
/** Resolve init overrides over validated server policy, then defaults, including individual retry fields. */
|
|
3142
3261
|
declare function resolveReliabilityConfig(serverConfig: SdkReliabilityConfig | undefined, overrides?: SdkReliabilityConfigOverrides): SdkReliabilityConfig;
|
|
3143
3262
|
/** Effective fixed data switches; every field resolved. */
|
|
3144
|
-
type ResolvedFixedDataConfig = Required<FixedDataConfig
|
|
3263
|
+
type ResolvedFixedDataConfig = Required<Omit<FixedDataConfig, "crossOriginSession">> & {
|
|
3264
|
+
/** Cross-origin session option as given (domain not yet checked against the page); absent when not set. */
|
|
3265
|
+
crossOriginSession?: CrossOriginSessionConfig;
|
|
3145
3266
|
/**
|
|
3146
3267
|
* Whether `pmd` was set explicitly (a boolean). Only an explicit `pmd` gates the DOM password-manager
|
|
3147
3268
|
* scan (`pa-1`..`pa-6`); an omitted `pmd` turns the extension probes off but leaves the scan on.
|
|
@@ -3152,7 +3273,8 @@ type ResolvedFixedDataConfig = Required<FixedDataConfig> & {
|
|
|
3152
3273
|
* Resolve `init({ fixedDataConfig })`. Returns `undefined` (not fixed: server-driven, today's behaviour)
|
|
3153
3274
|
* unless the option is an object. A missing or non-boolean `pmd` resolves to `false` (not the built-in
|
|
3154
3275
|
* default and not `sdkConfig.pmd`: a fixed config collects only what it names) with `pmdExplicit: false`;
|
|
3155
|
-
* a missing or non-boolean `privateMode` resolves to on.
|
|
3276
|
+
* a missing or non-boolean `privateMode` resolves to on. `crossOriginSession` is kept only with a string
|
|
3277
|
+
* `cookieDomain` (checked against the page later). Never throws.
|
|
3156
3278
|
*
|
|
3157
3279
|
* @internal
|
|
3158
3280
|
*/
|
|
@@ -3339,4 +3461,4 @@ declare function logInfo(message: string): void;
|
|
|
3339
3461
|
declare function logError(message: string): void;
|
|
3340
3462
|
declare function destroy(): Promise<void>;
|
|
3341
3463
|
|
|
3342
|
-
export { type AppConfirmationOperationCeremonyTypedError, type AppConfirmationOperationConfig, AppConfirmationOperationFull, type AppConfirmationOperationRetryReason, type AppConfirmationOperationSpecType, type AppConfirmationOperationStart, type AuthDecisionFinished, type AuthDecisionStarted, AuthEventName, type AuthMethodDecisionFinished, type AuthMethodDecisionStarted, type AuthMethodType, type BaseEvent, CEREMONY_LOW_EVENT_TAIL_MS, CONFIG_BOUNDS, CONFIG_CACHE_STORAGE_KEY, CONFIG_REQUEST_HEADER, CONFIG_STORAGE_KEY, type CaptchaOperationConfig, CaptchaOperationFull, type CaptchaOperationSpecType, type ClientCapabilities, type ClientEnvHandleMeta, type ClientEnvHandleMetaSource, type ConfigCacheRecord, type Conversion, CookieStorage, CorbadoTracker, type CreateLoggerOptions, type CustomEvent, DEFAULT_DEVICE_INFO_COLLECTOR_TIMEOUT_MS, DEFAULT_FLUSH_INTERVAL_MS, DEFAULT_MAX_ENTRIES, DEFAULT_MAX_SERIALIZED_LENGTH, DEFAULT_RELIABILITY_CONFIG, DEFAULT_SEQ_LOCK_TIMEOUT_MS, DEFAULT_SESSION_INACTIVITY_MS, type DeviceInfo, type DeviceInfoCollectionError, type DeviceInfoDataWeb, type DeviceType, type EmailLinkContinuationConfig, EmailLinkContinuationOperation, type EmailLinkOperationConfig, EmailLinkOperationFull, type EmailLinkOperationPostResponseStart, type EmailLinkOperationSendStart, type EmailLinkOperationSpecType, type EmailOTPOperationConfig, type EmailOTPOperationPostResponseStart, type EmailOTPOperationSendOTPStart, type EmailOTPOperationSpecType, EmailOtpOperationFull, type ErrorStepOptions, type Event, type EventBatch, type EventBatchMeta, type EventMeta, EventStore, type EventType, type FixedDataConfig, type FlowAutoFinished, type FlowDecided, type FlowFinished, type FlowHandle, type FlowReset, type FlowStarted, type FlowType, type FlushReason, type FormOperationConfig, FormOperationFull, type HandoffStepHelper, type JavaScriptHighEntropy, type KeyOperationConfig, KeyRegistrationOperationFull, KeySigningOperationFull, LocalStorage, type Logger, type LowEvent, type LowEventFieldRole, type LowEventInitiator, type LowEventInputEffect, type LowEventSourceKind, type MultiFlowReset, type MultiFlowStarted, NamespacedStorage, type NormalizedError, OUTBOX_LOCK_NAME, OUTBOX_STORAGE_KEY, type ObserveSdkConfigSnapshot, OperationFull, OperationFullProvideIdentifierWithCUI, type OperationFullProvideIdentifierWithCUIConfig, type OutboxEntry, PROBE_BATCH_MAX_BYTES, PROBE_BATCH_MAX_ITEMS, PROBE_PAYLOAD_MAX_BYTES, PROBE_QUEUE_MAX_BYTES, PROBE_QUEUE_MAX_ITEMS, type PasskeyDeletionDeletionTypedError, type PasskeyDeletionOperationConfig, PasskeyDeletionOperationFull, type PasskeyDeletionUserConfirmationTypedError, type PasskeyEnrollmentCeremonyFinished, type PasskeyEnrollmentCeremonyStart, type PasskeyEnrollmentGetOptionsFinished, type PasskeyEnrollmentGetOptionsStart, type PasskeyEnrollmentOperationConfig, PasskeyEnrollmentOperationFull, type PasskeyEnrollmentPostResponseStart, type PasskeyLoginCUIGetOptionsFinished, type PasskeyLoginCUIGetOptionsStart, type PasskeyLoginCUISpecType, type PasskeyLoginCeremonyFinished, type PasskeyLoginCeremonyStart, type PasskeyLoginClientError, type PasskeyLoginFinish, type PasskeyLoginGetOptionsFinished, type PasskeyLoginGetOptionsStart, type PasskeyLoginOperationConfig, PasskeyLoginOperationFull, type PasskeyLoginPostResponseStart, type PasskeyLoginStartable, type PasskeyLoginSubmitted, type PasskeyOperationEnrollmentExplicitSpecType, type PasskeyOperationLoginExplicitSpecType, type PasswordEnrollmentConfig, PasswordEnrollmentOperationFull, type PasswordEnrollmentTypedError, type PasswordLoginCUICeremonyStart, type PasswordLoginCUIGetOptionsFinished, type PasswordLoginCUIGetOptionsStart, type PasswordLoginCUISpecType, type PasswordLoginCUITypedError, type PasswordLoginConfig, type PasswordLoginExplicitSpecType, PasswordLoginOperationFull, type PasswordLoginTypedError, type PasswordManagerExtension, type PasswordManagerExtensionName, type PredefinedEvent, type ProbeContext, type ProbeEntry, type ProbeInput, type ProvideDataOperationConfig, ProvideDataOperationFull, type ProvideDataOperationPostResponseStart, type ProvideDataOperationSpecType, type ProvideDataOperationStart, type ProvideIdentifierError, type ProvideIdentifierFinish, type ProvideIdentifierPostResponseStart, type ProvideIdentifierSpecType, type ProvideIdentifierStart, type QueueOptions, RAW_ERROR_BOUNDS, READER_EXPOSURES, type RawErrorEnvelope, type ReaderDataConfigKey, type ReaderExposure, type ReaderField, type ReaderMeta, type ReaderOrigin, type ReaderTransform, RequestQueue, type ResolvedFixedDataConfig, SDK_NAME, SDK_VERSION, type SdkInfo, type SdkInputHandoff, type SdkReliabilityConfig, type SdkReliabilityConfigOverrides, type SdkRetryConfig, type SdkWebAuthnError, type SdkWebAuthnPayload, type SerializeRawErrorOptions, SessionStorage, type SetFlowTagsOptions, type SmsOTPOperationConfig, type SmsOTPOperationPostResponseStart, type SmsOTPOperationSpecType, SmsOtpOperationFull, type SocialLoginEntry, type SocialLoginExchangeCodeFinished, type SocialLoginExchangeCodeStart, type SocialLoginGetRedirectUrlFinished, type SocialLoginGetRedirectUrlStart, type SocialLoginOperationConfig, SocialLoginOperationFull, type SocialLoginProviderType, type SocialLoginSpecType, type SourcePathQueryMode, type SsoLoginExchangeCodeFinished, type SsoLoginExchangeCodeStart, type SsoLoginGetRedirectUrlFinished, type SsoLoginGetRedirectUrlStart, type SsoLoginOperationConfig, SsoLoginOperationFull, type SsoLoginSpecType, type StandaloneDeviceInfoSource, type StepHelper, type StepIdentifier, type StepOptions, type StorageEngine, type SubflowTrigger, type SubflowType, type TelemetryEntry, type TelemetryLevel, type TelemetrySink, type TotpOperationConfig, TotpOperationFull, type TotpOperationPostResponseStart, type TotpOperationSpecType, type TrackerOptions, type Transport, type TransportMakeRequestResponse, type TransportOptions, type TrustedDeviceBindingMetadata, type TrustedDeviceCheckConfig, TrustedDeviceCheckOperationFull, type TrustedDeviceCheckResult, type TrustedDeviceCheckStepResult, type TrustedDeviceCheckTypedError, TrustedDeviceEnrollmentOperationFull, type TrustedDeviceEnrollmentResult, type TrustedDeviceOperationConfig, type TrustedDevicePurpose, type TrustedDeviceStorage, UNLOAD_BUDGET_BYTES, UNLOAD_PROBE_MAX_BYTES, type UserReference, type WebAuthnIdentifierProjector, type WebAuthnIdentifierProjectors, type WithHandoffs, cacheConfigRecord, clearExperiment, clearExperiments, createLogger, destroy, detectPasswordManagerExtensions, getExperiments, getSessionId, getTracker, init, loadCachedConfig, loadConfigRecord, logError, logInfo, namespacedKey, parseReliabilityConfig, resetSession, resolveFixedDataConfig, resolveRawErrorLimits, resolveReliabilityConfig, sanitizeAssertionResponse, sanitizeCreationOptions, sanitizeCreationResponse, sanitizeRequestOptions, serializeRawError, setExperiment, setExperiments, setFlowTags, setUser, telemetry, utf8Length };
|
|
3464
|
+
export { type AppConfirmationOperationCeremonyTypedError, type AppConfirmationOperationConfig, AppConfirmationOperationFull, type AppConfirmationOperationRetryReason, type AppConfirmationOperationSpecType, type AppConfirmationOperationStart, type AuthDecisionFinished, type AuthDecisionStarted, AuthEventName, type AuthMethodDecisionFinished, type AuthMethodDecisionStarted, type AuthMethodType, type BaseEvent, CEREMONY_LOW_EVENT_TAIL_MS, CONFIG_BOUNDS, CONFIG_CACHE_STORAGE_KEY, CONFIG_REQUEST_HEADER, CONFIG_STORAGE_KEY, type CaptchaOperationConfig, CaptchaOperationFull, type CaptchaOperationSpecType, type ClientCapabilities, type ClientEnvHandleMeta, type ClientEnvHandleMetaSource, type ConfigCacheRecord, type Conversion, CookieStorage, CorbadoTracker, type CreateLoggerOptions, type CrossOriginSessionConfig, type CustomEvent, DEFAULT_DEVICE_INFO_COLLECTOR_TIMEOUT_MS, DEFAULT_FLUSH_INTERVAL_MS, DEFAULT_MAX_ENTRIES, DEFAULT_MAX_SERIALIZED_LENGTH, DEFAULT_RELIABILITY_CONFIG, DEFAULT_SEQ_LOCK_TIMEOUT_MS, DEFAULT_SESSION_INACTIVITY_MS, type DeviceInfo, type DeviceInfoCollectionError, type DeviceInfoDataWeb, type DeviceType, type EmailLinkContinuationConfig, EmailLinkContinuationOperation, type EmailLinkOperationConfig, EmailLinkOperationFull, type EmailLinkOperationPostResponseStart, type EmailLinkOperationSendStart, type EmailLinkOperationSpecType, type EmailOTPOperationConfig, type EmailOTPOperationPostResponseStart, type EmailOTPOperationSendOTPStart, type EmailOTPOperationSpecType, EmailOtpOperationFull, type ErrorStepOptions, type Event, type EventBatch, type EventBatchMeta, type EventMeta, EventStore, type EventType, type FixedDataConfig, type FlowAutoFinished, type FlowDecided, type FlowFinished, type FlowHandle, type FlowReset, type FlowStarted, type FlowType, type FlushReason, type FormOperationConfig, FormOperationFull, type HandoffStepHelper, type JavaScriptHighEntropy, type KeyOperationConfig, KeyRegistrationOperationFull, KeySigningOperationFull, LocalStorage, type Logger, type LowEvent, type LowEventFieldRole, type LowEventInitiator, type LowEventInputEffect, type LowEventSourceKind, type MultiFlowReset, type MultiFlowStarted, NamespacedStorage, type NormalizedError, OUTBOX_LOCK_NAME, OUTBOX_STORAGE_KEY, type ObserveSdkConfigSnapshot, OperationFull, OperationFullProvideIdentifierWithCUI, type OperationFullProvideIdentifierWithCUIConfig, type OutboxEntry, PROBE_BATCH_MAX_BYTES, PROBE_BATCH_MAX_ITEMS, PROBE_PAYLOAD_MAX_BYTES, PROBE_QUEUE_MAX_BYTES, PROBE_QUEUE_MAX_ITEMS, type PasskeyDeletionDeletionTypedError, type PasskeyDeletionOperationConfig, PasskeyDeletionOperationFull, type PasskeyDeletionUserConfirmationTypedError, type PasskeyEnrollmentCeremonyFinished, type PasskeyEnrollmentCeremonyStart, type PasskeyEnrollmentGetOptionsFinished, type PasskeyEnrollmentGetOptionsStart, type PasskeyEnrollmentOperationConfig, PasskeyEnrollmentOperationFull, type PasskeyEnrollmentPostResponseStart, type PasskeyLoginCUIGetOptionsFinished, type PasskeyLoginCUIGetOptionsStart, type PasskeyLoginCUISpecType, type PasskeyLoginCeremonyFinished, type PasskeyLoginCeremonyStart, type PasskeyLoginClientError, type PasskeyLoginFinish, type PasskeyLoginGetOptionsFinished, type PasskeyLoginGetOptionsStart, type PasskeyLoginOperationConfig, PasskeyLoginOperationFull, type PasskeyLoginPostResponseStart, type PasskeyLoginStartable, type PasskeyLoginSubmitted, type PasskeyOperationEnrollmentExplicitSpecType, type PasskeyOperationLoginExplicitSpecType, type PasswordEnrollmentConfig, PasswordEnrollmentOperationFull, type PasswordEnrollmentTypedError, type PasswordLoginCUICeremonyStart, type PasswordLoginCUIGetOptionsFinished, type PasswordLoginCUIGetOptionsStart, type PasswordLoginCUISpecType, type PasswordLoginCUITypedError, type PasswordLoginConfig, type PasswordLoginExplicitSpecType, PasswordLoginOperationFull, type PasswordLoginTypedError, type PasswordManagerExtension, type PasswordManagerExtensionName, type PredefinedEvent, type ProbeContext, type ProbeEntry, type ProbeInput, type ProvideDataOperationConfig, ProvideDataOperationFull, type ProvideDataOperationPostResponseStart, type ProvideDataOperationSpecType, type ProvideDataOperationStart, type ProvideIdentifierError, type ProvideIdentifierFinish, type ProvideIdentifierPostResponseStart, type ProvideIdentifierSpecType, type ProvideIdentifierStart, type QueueOptions, RAW_ERROR_BOUNDS, READER_EXPOSURES, type RawErrorEnvelope, type ReaderDataConfigKey, type ReaderExposure, type ReaderField, type ReaderMeta, type ReaderOrigin, type ReaderTransform, RequestQueue, type ResolvedFixedDataConfig, SDK_NAME, SDK_VERSION, type SdkInfo, type SdkInputHandoff, type SdkReliabilityConfig, type SdkReliabilityConfigOverrides, type SdkRetryConfig, type SdkWebAuthnError, type SdkWebAuthnPayload, type SerializeRawErrorOptions, SessionStorage, type SetFlowTagsOptions, type SmsOTPOperationConfig, type SmsOTPOperationPostResponseStart, type SmsOTPOperationSpecType, SmsOtpOperationFull, type SocialLoginEntry, type SocialLoginExchangeCodeFinished, type SocialLoginExchangeCodeStart, type SocialLoginGetRedirectUrlFinished, type SocialLoginGetRedirectUrlStart, type SocialLoginOperationConfig, SocialLoginOperationFull, type SocialLoginProviderType, type SocialLoginSpecType, type SourcePathQueryMode, type SsoLoginExchangeCodeFinished, type SsoLoginExchangeCodeStart, type SsoLoginGetRedirectUrlFinished, type SsoLoginGetRedirectUrlStart, type SsoLoginOperationConfig, SsoLoginOperationFull, type SsoLoginSpecType, type StandaloneDeviceInfoSource, type StepHelper, type StepIdentifier, type StepOptions, type StorageEngine, type SubflowTrigger, type SubflowType, type TelemetryEntry, type TelemetryLevel, type TelemetrySink, type TotpOperationConfig, TotpOperationFull, type TotpOperationPostResponseStart, type TotpOperationSpecType, type TrackerOptions, type Transport, type TransportMakeRequestResponse, type TransportOptions, type TrustedDeviceBindingMetadata, type TrustedDeviceCheckConfig, TrustedDeviceCheckOperationFull, type TrustedDeviceCheckResult, type TrustedDeviceCheckStepResult, type TrustedDeviceCheckTypedError, TrustedDeviceEnrollmentOperationFull, type TrustedDeviceEnrollmentResult, type TrustedDeviceOperationConfig, type TrustedDevicePurpose, type TrustedDeviceStorage, UNLOAD_BUDGET_BYTES, UNLOAD_PROBE_MAX_BYTES, type UserReference, type WebAuthnIdentifierProjector, type WebAuthnIdentifierProjectors, type WithHandoffs, cacheConfigRecord, clearExperiment, clearExperiments, createLogger, destroy, detectPasswordManagerExtensions, getExperiments, getSessionId, getTracker, init, loadCachedConfig, loadConfigRecord, logError, logInfo, namespacedKey, parseReliabilityConfig, resetSession, resolveFixedDataConfig, resolveRawErrorLimits, resolveReliabilityConfig, sanitizeAssertionResponse, sanitizeCreationOptions, sanitizeCreationResponse, sanitizeRequestOptions, serializeRawError, setExperiment, setExperiments, setFlowTags, setUser, telemetry, utf8Length };
|