@hexclave/js 1.0.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/LICENSE +7 -0
- package/README.md +26 -0
- package/dist/chunk-BE-pF4vm.js +34 -0
- package/dist/dev-tool/dev-tool-core.d.ts +7 -0
- package/dist/dev-tool/dev-tool-core.d.ts.map +1 -0
- package/dist/dev-tool/dev-tool-core.js +2116 -0
- package/dist/dev-tool/dev-tool-core.js.map +1 -0
- package/dist/dev-tool/dev-tool-styles.d.ts +5 -0
- package/dist/dev-tool/dev-tool-styles.d.ts.map +1 -0
- package/dist/dev-tool/dev-tool-styles.js +2757 -0
- package/dist/dev-tool/dev-tool-styles.js.map +1 -0
- package/dist/dev-tool/dev-tool-trigger-position.d.ts +36 -0
- package/dist/dev-tool/dev-tool-trigger-position.d.ts.map +1 -0
- package/dist/dev-tool/dev-tool-trigger-position.js +70 -0
- package/dist/dev-tool/dev-tool-trigger-position.js.map +1 -0
- package/dist/dev-tool/dev-tool-trigger-position.test.d.ts +1 -0
- package/dist/dev-tool/dev-tool-trigger-position.test.js +155 -0
- package/dist/dev-tool/dev-tool-trigger-position.test.js.map +1 -0
- package/dist/dev-tool/index.d.ts +19 -0
- package/dist/dev-tool/index.d.ts.map +1 -0
- package/dist/dev-tool/index.js +119 -0
- package/dist/dev-tool/index.js.map +1 -0
- package/dist/esm/dev-tool/dev-tool-core.d.ts +7 -0
- package/dist/esm/dev-tool/dev-tool-core.d.ts.map +1 -0
- package/dist/esm/dev-tool/dev-tool-core.js +2114 -0
- package/dist/esm/dev-tool/dev-tool-core.js.map +1 -0
- package/dist/esm/dev-tool/dev-tool-styles.d.ts +5 -0
- package/dist/esm/dev-tool/dev-tool-styles.d.ts.map +1 -0
- package/dist/esm/dev-tool/dev-tool-styles.js +2755 -0
- package/dist/esm/dev-tool/dev-tool-styles.js.map +1 -0
- package/dist/esm/dev-tool/dev-tool-trigger-position.d.ts +36 -0
- package/dist/esm/dev-tool/dev-tool-trigger-position.d.ts.map +1 -0
- package/dist/esm/dev-tool/dev-tool-trigger-position.js +65 -0
- package/dist/esm/dev-tool/dev-tool-trigger-position.js.map +1 -0
- package/dist/esm/dev-tool/dev-tool-trigger-position.test.d.ts +1 -0
- package/dist/esm/dev-tool/dev-tool-trigger-position.test.js +155 -0
- package/dist/esm/dev-tool/dev-tool-trigger-position.test.js.map +1 -0
- package/dist/esm/dev-tool/index.d.ts +19 -0
- package/dist/esm/dev-tool/index.d.ts.map +1 -0
- package/dist/esm/dev-tool/index.js +117 -0
- package/dist/esm/dev-tool/index.js.map +1 -0
- package/dist/esm/index.d.ts +4 -0
- package/dist/esm/index.js +7 -0
- package/dist/esm/integrations/convex/component/convex.config.d.ts +7 -0
- package/dist/esm/integrations/convex/component/convex.config.d.ts.map +1 -0
- package/dist/esm/integrations/convex/component/convex.config.js +8 -0
- package/dist/esm/integrations/convex/component/convex.config.js.map +1 -0
- package/dist/esm/integrations/convex.d.ts +13 -0
- package/dist/esm/integrations/convex.d.ts.map +1 -0
- package/dist/esm/integrations/convex.js +23 -0
- package/dist/esm/integrations/convex.js.map +1 -0
- package/dist/esm/internal/deprecation-warning.d.ts +1 -0
- package/dist/esm/internal/deprecation-warning.js +24 -0
- package/dist/esm/internal/deprecation-warning.js.map +1 -0
- package/dist/esm/lib/auth.d.ts +31 -0
- package/dist/esm/lib/auth.d.ts.map +1 -0
- package/dist/esm/lib/auth.js +108 -0
- package/dist/esm/lib/auth.js.map +1 -0
- package/dist/esm/lib/auth.test.d.ts +1 -0
- package/dist/esm/lib/auth.test.js +60 -0
- package/dist/esm/lib/auth.test.js.map +1 -0
- package/dist/esm/lib/cookie.d.ts +42 -0
- package/dist/esm/lib/cookie.d.ts.map +1 -0
- package/dist/esm/lib/cookie.js +287 -0
- package/dist/esm/lib/cookie.js.map +1 -0
- package/dist/esm/lib/env.d.ts +42 -0
- package/dist/esm/lib/env.d.ts.map +1 -0
- package/dist/esm/lib/env.js +93 -0
- package/dist/esm/lib/env.js.map +1 -0
- package/dist/esm/lib/stack-app/api-keys/index.d.ts +53 -0
- package/dist/esm/lib/stack-app/api-keys/index.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/api-keys/index.js +22 -0
- package/dist/esm/lib/stack-app/api-keys/index.js.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/admin-app-impl.d.ts +364 -0
- package/dist/esm/lib/stack-app/apps/implementations/admin-app-impl.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/admin-app-impl.js +924 -0
- package/dist/esm/lib/stack-app/apps/implementations/admin-app-impl.js.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/client-app-impl.cross-domain.test.d.ts +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/client-app-impl.cross-domain.test.js +55 -0
- package/dist/esm/lib/stack-app/apps/implementations/client-app-impl.cross-domain.test.js.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/client-app-impl.d.ts +542 -0
- package/dist/esm/lib/stack-app/apps/implementations/client-app-impl.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/client-app-impl.js +2504 -0
- package/dist/esm/lib/stack-app/apps/implementations/client-app-impl.js.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/client-app-impl.oauth-prefetch.test.d.ts +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/client-app-impl.oauth-prefetch.test.js +32 -0
- package/dist/esm/lib/stack-app/apps/implementations/client-app-impl.oauth-prefetch.test.js.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/common.d.ts +65 -0
- package/dist/esm/lib/stack-app/apps/implementations/common.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/common.js +127 -0
- package/dist/esm/lib/stack-app/apps/implementations/common.js.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/event-tracker.d.ts +42 -0
- package/dist/esm/lib/stack-app/apps/implementations/event-tracker.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/event-tracker.js +211 -0
- package/dist/esm/lib/stack-app/apps/implementations/event-tracker.js.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/event-tracker.test.d.ts +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/event-tracker.test.js +87 -0
- package/dist/esm/lib/stack-app/apps/implementations/event-tracker.test.js.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/index.d.ts +9 -0
- package/dist/esm/lib/stack-app/apps/implementations/index.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/index.js +27 -0
- package/dist/esm/lib/stack-app/apps/implementations/index.js.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/redirect-page-urls.d.ts +35 -0
- package/dist/esm/lib/stack-app/apps/implementations/redirect-page-urls.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/redirect-page-urls.js +197 -0
- package/dist/esm/lib/stack-app/apps/implementations/redirect-page-urls.js.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/server-app-impl.d.ts +203 -0
- package/dist/esm/lib/stack-app/apps/implementations/server-app-impl.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/server-app-impl.js +1094 -0
- package/dist/esm/lib/stack-app/apps/implementations/server-app-impl.js.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/session-refresh-subscription.d.ts +28 -0
- package/dist/esm/lib/stack-app/apps/implementations/session-refresh-subscription.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/session-refresh-subscription.js +31 -0
- package/dist/esm/lib/stack-app/apps/implementations/session-refresh-subscription.js.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/session-refresh-subscription.test.d.ts +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/session-refresh-subscription.test.js +82 -0
- package/dist/esm/lib/stack-app/apps/implementations/session-refresh-subscription.test.js.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/session-replay.d.ts +111 -0
- package/dist/esm/lib/stack-app/apps/implementations/session-replay.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/session-replay.js +241 -0
- package/dist/esm/lib/stack-app/apps/implementations/session-replay.js.map +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/session-replay.test.d.ts +1 -0
- package/dist/esm/lib/stack-app/apps/implementations/session-replay.test.js +29 -0
- package/dist/esm/lib/stack-app/apps/implementations/session-replay.test.js.map +1 -0
- package/dist/esm/lib/stack-app/apps/index.d.ts +4 -0
- package/dist/esm/lib/stack-app/apps/index.js +5 -0
- package/dist/esm/lib/stack-app/apps/interfaces/admin-app.d.ts +244 -0
- package/dist/esm/lib/stack-app/apps/interfaces/admin-app.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/apps/interfaces/admin-app.js +9 -0
- package/dist/esm/lib/stack-app/apps/interfaces/admin-app.js.map +1 -0
- package/dist/esm/lib/stack-app/apps/interfaces/client-app.d.ts +208 -0
- package/dist/esm/lib/stack-app/apps/interfaces/client-app.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/apps/interfaces/client-app.js +9 -0
- package/dist/esm/lib/stack-app/apps/interfaces/client-app.js.map +1 -0
- package/dist/esm/lib/stack-app/apps/interfaces/server-app.d.ts +116 -0
- package/dist/esm/lib/stack-app/apps/interfaces/server-app.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/apps/interfaces/server-app.js +9 -0
- package/dist/esm/lib/stack-app/apps/interfaces/server-app.js.map +1 -0
- package/dist/esm/lib/stack-app/common.d.ts +174 -0
- package/dist/esm/lib/stack-app/common.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/common.js +7 -0
- package/dist/esm/lib/stack-app/common.js.map +1 -0
- package/dist/esm/lib/stack-app/connected-accounts/index.d.ts +40 -0
- package/dist/esm/lib/stack-app/connected-accounts/index.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/connected-accounts/index.js +1 -0
- package/dist/esm/lib/stack-app/contact-channels/index.d.ts +43 -0
- package/dist/esm/lib/stack-app/contact-channels/index.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/contact-channels/index.js +39 -0
- package/dist/esm/lib/stack-app/contact-channels/index.js.map +1 -0
- package/dist/esm/lib/stack-app/customers/index.d.ts +129 -0
- package/dist/esm/lib/stack-app/customers/index.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/customers/index.js +1 -0
- package/dist/esm/lib/stack-app/data-vault/index.d.ts +14 -0
- package/dist/esm/lib/stack-app/data-vault/index.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/data-vault/index.js +1 -0
- package/dist/esm/lib/stack-app/email/index.d.ts +204 -0
- package/dist/esm/lib/stack-app/email/index.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/email/index.js +1 -0
- package/dist/esm/lib/stack-app/email-templates/index.d.ts +17 -0
- package/dist/esm/lib/stack-app/email-templates/index.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/email-templates/index.js +11 -0
- package/dist/esm/lib/stack-app/email-templates/index.js.map +1 -0
- package/dist/esm/lib/stack-app/index.d.ts +14 -0
- package/dist/esm/lib/stack-app/index.js +5 -0
- package/dist/esm/lib/stack-app/internal-api-keys/index.d.ts +42 -0
- package/dist/esm/lib/stack-app/internal-api-keys/index.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/internal-api-keys/index.js +14 -0
- package/dist/esm/lib/stack-app/internal-api-keys/index.js.map +1 -0
- package/dist/esm/lib/stack-app/notification-categories/index.d.ts +11 -0
- package/dist/esm/lib/stack-app/notification-categories/index.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/notification-categories/index.js +1 -0
- package/dist/esm/lib/stack-app/permissions/index.d.ts +43 -0
- package/dist/esm/lib/stack-app/permissions/index.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/permissions/index.js +31 -0
- package/dist/esm/lib/stack-app/permissions/index.js.map +1 -0
- package/dist/esm/lib/stack-app/project-configs/index.d.ts +99 -0
- package/dist/esm/lib/stack-app/project-configs/index.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/project-configs/index.js +1 -0
- package/dist/esm/lib/stack-app/projects/index.d.ts +145 -0
- package/dist/esm/lib/stack-app/projects/index.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/projects/index.js +66 -0
- package/dist/esm/lib/stack-app/projects/index.js.map +1 -0
- package/dist/esm/lib/stack-app/session-replays/index.d.ts +66 -0
- package/dist/esm/lib/stack-app/session-replays/index.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/session-replays/index.js +1 -0
- package/dist/esm/lib/stack-app/teams/index.d.ts +160 -0
- package/dist/esm/lib/stack-app/teams/index.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/teams/index.js +35 -0
- package/dist/esm/lib/stack-app/teams/index.js.map +1 -0
- package/dist/esm/lib/stack-app/url-targets.d.ts +39 -0
- package/dist/esm/lib/stack-app/url-targets.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/url-targets.js +266 -0
- package/dist/esm/lib/stack-app/url-targets.js.map +1 -0
- package/dist/esm/lib/stack-app/url-targets.test.d.ts +1 -0
- package/dist/esm/lib/stack-app/url-targets.test.js +213 -0
- package/dist/esm/lib/stack-app/url-targets.test.js.map +1 -0
- package/dist/esm/lib/stack-app/users/index.d.ts +357 -0
- package/dist/esm/lib/stack-app/users/index.d.ts.map +1 -0
- package/dist/esm/lib/stack-app/users/index.js +71 -0
- package/dist/esm/lib/stack-app/users/index.js.map +1 -0
- package/dist/esm/utils/url.d.ts +5 -0
- package/dist/esm/utils/url.d.ts.map +1 -0
- package/dist/esm/utils/url.js +16 -0
- package/dist/esm/utils/url.js.map +1 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.js +31 -0
- package/dist/integrations/convex/component/convex.config.d.ts +61 -0
- package/dist/integrations/convex/component/convex.config.d.ts.map +1 -0
- package/dist/integrations/convex/component/convex.config.js +9 -0
- package/dist/integrations/convex/component/convex.config.js.map +1 -0
- package/dist/integrations/convex.d.ts +13 -0
- package/dist/integrations/convex.d.ts.map +1 -0
- package/dist/integrations/convex.js +25 -0
- package/dist/integrations/convex.js.map +1 -0
- package/dist/internal/deprecation-warning.d.ts +1 -0
- package/dist/internal/deprecation-warning.js +24 -0
- package/dist/internal/deprecation-warning.js.map +1 -0
- package/dist/lib/auth.d.ts +31 -0
- package/dist/lib/auth.d.ts.map +1 -0
- package/dist/lib/auth.js +111 -0
- package/dist/lib/auth.js.map +1 -0
- package/dist/lib/auth.test.d.ts +1 -0
- package/dist/lib/auth.test.js +60 -0
- package/dist/lib/auth.test.js.map +1 -0
- package/dist/lib/cookie.d.ts +42 -0
- package/dist/lib/cookie.d.ts.map +1 -0
- package/dist/lib/cookie.js +305 -0
- package/dist/lib/cookie.js.map +1 -0
- package/dist/lib/env.d.ts +42 -0
- package/dist/lib/env.d.ts.map +1 -0
- package/dist/lib/env.js +95 -0
- package/dist/lib/env.js.map +1 -0
- package/dist/lib/stack-app/api-keys/index.d.ts +53 -0
- package/dist/lib/stack-app/api-keys/index.d.ts.map +1 -0
- package/dist/lib/stack-app/api-keys/index.js +25 -0
- package/dist/lib/stack-app/api-keys/index.js.map +1 -0
- package/dist/lib/stack-app/apps/implementations/admin-app-impl.d.ts +362 -0
- package/dist/lib/stack-app/apps/implementations/admin-app-impl.d.ts.map +1 -0
- package/dist/lib/stack-app/apps/implementations/admin-app-impl.js +926 -0
- package/dist/lib/stack-app/apps/implementations/admin-app-impl.js.map +1 -0
- package/dist/lib/stack-app/apps/implementations/client-app-impl.cross-domain.test.d.ts +1 -0
- package/dist/lib/stack-app/apps/implementations/client-app-impl.cross-domain.test.js +55 -0
- package/dist/lib/stack-app/apps/implementations/client-app-impl.cross-domain.test.js.map +1 -0
- package/dist/lib/stack-app/apps/implementations/client-app-impl.d.ts +541 -0
- package/dist/lib/stack-app/apps/implementations/client-app-impl.d.ts.map +1 -0
- package/dist/lib/stack-app/apps/implementations/client-app-impl.js +2507 -0
- package/dist/lib/stack-app/apps/implementations/client-app-impl.js.map +1 -0
- package/dist/lib/stack-app/apps/implementations/client-app-impl.oauth-prefetch.test.d.ts +1 -0
- package/dist/lib/stack-app/apps/implementations/client-app-impl.oauth-prefetch.test.js +32 -0
- package/dist/lib/stack-app/apps/implementations/client-app-impl.oauth-prefetch.test.js.map +1 -0
- package/dist/lib/stack-app/apps/implementations/common.d.ts +65 -0
- package/dist/lib/stack-app/apps/implementations/common.d.ts.map +1 -0
- package/dist/lib/stack-app/apps/implementations/common.js +144 -0
- package/dist/lib/stack-app/apps/implementations/common.js.map +1 -0
- package/dist/lib/stack-app/apps/implementations/event-tracker.d.ts +42 -0
- package/dist/lib/stack-app/apps/implementations/event-tracker.d.ts.map +1 -0
- package/dist/lib/stack-app/apps/implementations/event-tracker.js +213 -0
- package/dist/lib/stack-app/apps/implementations/event-tracker.js.map +1 -0
- package/dist/lib/stack-app/apps/implementations/event-tracker.test.d.ts +1 -0
- package/dist/lib/stack-app/apps/implementations/event-tracker.test.js +87 -0
- package/dist/lib/stack-app/apps/implementations/event-tracker.test.js.map +1 -0
- package/dist/lib/stack-app/apps/implementations/index.d.ts +9 -0
- package/dist/lib/stack-app/apps/implementations/index.d.ts.map +1 -0
- package/dist/lib/stack-app/apps/implementations/index.js +31 -0
- package/dist/lib/stack-app/apps/implementations/index.js.map +1 -0
- package/dist/lib/stack-app/apps/implementations/redirect-page-urls.d.ts +35 -0
- package/dist/lib/stack-app/apps/implementations/redirect-page-urls.d.ts.map +1 -0
- package/dist/lib/stack-app/apps/implementations/redirect-page-urls.js +201 -0
- package/dist/lib/stack-app/apps/implementations/redirect-page-urls.js.map +1 -0
- package/dist/lib/stack-app/apps/implementations/server-app-impl.d.ts +203 -0
- package/dist/lib/stack-app/apps/implementations/server-app-impl.d.ts.map +1 -0
- package/dist/lib/stack-app/apps/implementations/server-app-impl.js +1096 -0
- package/dist/lib/stack-app/apps/implementations/server-app-impl.js.map +1 -0
- package/dist/lib/stack-app/apps/implementations/session-refresh-subscription.d.ts +28 -0
- package/dist/lib/stack-app/apps/implementations/session-refresh-subscription.d.ts.map +1 -0
- package/dist/lib/stack-app/apps/implementations/session-refresh-subscription.js +33 -0
- package/dist/lib/stack-app/apps/implementations/session-refresh-subscription.js.map +1 -0
- package/dist/lib/stack-app/apps/implementations/session-refresh-subscription.test.d.ts +1 -0
- package/dist/lib/stack-app/apps/implementations/session-refresh-subscription.test.js +82 -0
- package/dist/lib/stack-app/apps/implementations/session-refresh-subscription.test.js.map +1 -0
- package/dist/lib/stack-app/apps/implementations/session-replay.d.ts +111 -0
- package/dist/lib/stack-app/apps/implementations/session-replay.d.ts.map +1 -0
- package/dist/lib/stack-app/apps/implementations/session-replay.js +250 -0
- package/dist/lib/stack-app/apps/implementations/session-replay.js.map +1 -0
- package/dist/lib/stack-app/apps/implementations/session-replay.test.d.ts +1 -0
- package/dist/lib/stack-app/apps/implementations/session-replay.test.js +29 -0
- package/dist/lib/stack-app/apps/implementations/session-replay.test.js.map +1 -0
- package/dist/lib/stack-app/apps/index.d.ts +4 -0
- package/dist/lib/stack-app/apps/index.js +42 -0
- package/dist/lib/stack-app/apps/interfaces/admin-app.d.ts +244 -0
- package/dist/lib/stack-app/apps/interfaces/admin-app.d.ts.map +1 -0
- package/dist/lib/stack-app/apps/interfaces/admin-app.js +12 -0
- package/dist/lib/stack-app/apps/interfaces/admin-app.js.map +1 -0
- package/dist/lib/stack-app/apps/interfaces/client-app.d.ts +208 -0
- package/dist/lib/stack-app/apps/interfaces/client-app.d.ts.map +1 -0
- package/dist/lib/stack-app/apps/interfaces/client-app.js +12 -0
- package/dist/lib/stack-app/apps/interfaces/client-app.js.map +1 -0
- package/dist/lib/stack-app/apps/interfaces/server-app.d.ts +116 -0
- package/dist/lib/stack-app/apps/interfaces/server-app.d.ts.map +1 -0
- package/dist/lib/stack-app/apps/interfaces/server-app.js +12 -0
- package/dist/lib/stack-app/apps/interfaces/server-app.js.map +1 -0
- package/dist/lib/stack-app/common.d.ts +174 -0
- package/dist/lib/stack-app/common.d.ts.map +1 -0
- package/dist/lib/stack-app/common.js +9 -0
- package/dist/lib/stack-app/common.js.map +1 -0
- package/dist/lib/stack-app/connected-accounts/index.d.ts +40 -0
- package/dist/lib/stack-app/connected-accounts/index.d.ts.map +1 -0
- package/dist/lib/stack-app/connected-accounts/index.js +0 -0
- package/dist/lib/stack-app/contact-channels/index.d.ts +43 -0
- package/dist/lib/stack-app/contact-channels/index.d.ts.map +1 -0
- package/dist/lib/stack-app/contact-channels/index.js +44 -0
- package/dist/lib/stack-app/contact-channels/index.js.map +1 -0
- package/dist/lib/stack-app/customers/index.d.ts +129 -0
- package/dist/lib/stack-app/customers/index.d.ts.map +1 -0
- package/dist/lib/stack-app/customers/index.js +0 -0
- package/dist/lib/stack-app/data-vault/index.d.ts +14 -0
- package/dist/lib/stack-app/data-vault/index.d.ts.map +1 -0
- package/dist/lib/stack-app/data-vault/index.js +0 -0
- package/dist/lib/stack-app/email/index.d.ts +204 -0
- package/dist/lib/stack-app/email/index.d.ts.map +1 -0
- package/dist/lib/stack-app/email/index.js +0 -0
- package/dist/lib/stack-app/email-templates/index.d.ts +17 -0
- package/dist/lib/stack-app/email-templates/index.d.ts.map +1 -0
- package/dist/lib/stack-app/email-templates/index.js +13 -0
- package/dist/lib/stack-app/email-templates/index.js.map +1 -0
- package/dist/lib/stack-app/index.d.ts +15 -0
- package/dist/lib/stack-app/index.js +54 -0
- package/dist/lib/stack-app/internal-api-keys/index.d.ts +42 -0
- package/dist/lib/stack-app/internal-api-keys/index.d.ts.map +1 -0
- package/dist/lib/stack-app/internal-api-keys/index.js +16 -0
- package/dist/lib/stack-app/internal-api-keys/index.js.map +1 -0
- package/dist/lib/stack-app/notification-categories/index.d.ts +11 -0
- package/dist/lib/stack-app/notification-categories/index.d.ts.map +1 -0
- package/dist/lib/stack-app/notification-categories/index.js +0 -0
- package/dist/lib/stack-app/permissions/index.d.ts +43 -0
- package/dist/lib/stack-app/permissions/index.d.ts.map +1 -0
- package/dist/lib/stack-app/permissions/index.js +36 -0
- package/dist/lib/stack-app/permissions/index.js.map +1 -0
- package/dist/lib/stack-app/project-configs/index.d.ts +99 -0
- package/dist/lib/stack-app/project-configs/index.d.ts.map +1 -0
- package/dist/lib/stack-app/project-configs/index.js +0 -0
- package/dist/lib/stack-app/projects/index.d.ts +145 -0
- package/dist/lib/stack-app/projects/index.d.ts.map +1 -0
- package/dist/lib/stack-app/projects/index.js +69 -0
- package/dist/lib/stack-app/projects/index.js.map +1 -0
- package/dist/lib/stack-app/session-replays/index.d.ts +66 -0
- package/dist/lib/stack-app/session-replays/index.d.ts.map +1 -0
- package/dist/lib/stack-app/session-replays/index.js +0 -0
- package/dist/lib/stack-app/teams/index.d.ts +160 -0
- package/dist/lib/stack-app/teams/index.d.ts.map +1 -0
- package/dist/lib/stack-app/teams/index.js +40 -0
- package/dist/lib/stack-app/teams/index.js.map +1 -0
- package/dist/lib/stack-app/url-targets.d.ts +39 -0
- package/dist/lib/stack-app/url-targets.d.ts.map +1 -0
- package/dist/lib/stack-app/url-targets.js +274 -0
- package/dist/lib/stack-app/url-targets.js.map +1 -0
- package/dist/lib/stack-app/url-targets.test.d.ts +1 -0
- package/dist/lib/stack-app/url-targets.test.js +213 -0
- package/dist/lib/stack-app/url-targets.test.js.map +1 -0
- package/dist/lib/stack-app/users/index.d.ts +357 -0
- package/dist/lib/stack-app/users/index.d.ts.map +1 -0
- package/dist/lib/stack-app/users/index.js +76 -0
- package/dist/lib/stack-app/users/index.js.map +1 -0
- package/dist/storage-CKsyME2q.d.ts +1912 -0
- package/dist/storage-CKsyME2q.d.ts.map +1 -0
- package/dist/utils/url.d.ts +5 -0
- package/dist/utils/url.d.ts.map +1 -0
- package/dist/utils/url.js +18 -0
- package/dist/utils/url.js.map +1 -0
- package/package.json +88 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.test.js","names":["vi","HexclaveClientInterface"],"sources":["../../src/lib/auth.test.ts"],"sourcesContent":["\n//===========================================\n// THIS FILE IS AUTO-GENERATED FROM TEMPLATE. DO NOT EDIT IT DIRECTLY, INSTEAD EDIT THE CORRESPONDING FILE IN packages/template\n//===========================================\n// @vitest-environment jsdom\n\nimport { HexclaveClientInterface } from \"@stackframe/stack-shared\";\nimport { describe, expect, it, vi } from \"vitest\";\nimport { getNewOAuthProviderOrScopeUrl } from \"./auth\";\n\nvi.mock(\"./cookie\", async (importOriginal) => {\n const actual = await importOriginal<typeof import(\"./cookie\")>();\n return {\n ...actual,\n saveVerifierAndState: async () => ({\n codeChallenge: \"<stripped code challenge>\",\n state: \"<stripped state>\",\n }),\n };\n});\n\ndescribe(\"getNewOAuthProviderOrScopeUrl\", () => {\n it(\"returns the OAuth URL without performing navigation\", async () => {\n window.history.replaceState({}, \"\", \"/account?after_auth_return_to=%2Fsettings\");\n\n const iface = new HexclaveClientInterface({\n clientVersion: \"test\",\n getBaseUrl: () => \"https://api.example.com\",\n getApiUrls: () => [\"https://api.example.com\"],\n extraRequestHeaders: {},\n projectId: \"00000000-0000-4000-8000-000000000000\",\n publishableClientKey: \"pck_test\",\n });\n const session = iface.createSession({ refreshToken: null, accessToken: null });\n\n const location = await getNewOAuthProviderOrScopeUrl(\n iface,\n {\n provider: \"github\",\n redirectUrl: \"/handler/oauth-callback\",\n errorRedirectUrl: \"/handler/error\",\n providerScope: \"repo user\",\n },\n session,\n );\n\n const url = new URL(location);\n expect(`${url.origin}${url.pathname}`).toBe(\"https://api.example.com/api/v1/auth/oauth/authorize/github\");\n expect(Object.fromEntries(url.searchParams.entries())).toMatchInlineSnapshot(`\n {\n \"after_callback_redirect_url\": \"http://localhost:3000/account?after_auth_return_to=%2Fsettings\",\n \"client_id\": \"00000000-0000-4000-8000-000000000000\",\n \"client_secret\": \"pck_test\",\n \"code_challenge\": \"<stripped code challenge>\",\n \"code_challenge_method\": \"S256\",\n \"error_redirect_url\": \"http://localhost:3000/handler/error?after_auth_return_to=%2Fsettings\",\n \"grant_type\": \"authorization_code\",\n \"provider_scope\": \"repo user\",\n \"redirect_uri\": \"http://localhost:3000/handler/oauth-callback?after_auth_return_to=%2Fsettings\",\n \"response_type\": \"code\",\n \"scope\": \"legacy\",\n \"state\": \"<stripped state>\",\n \"type\": \"link\",\n }\n `);\n });\n});\n"],"mappings":";;;;;;;AAUAA,UAAG,KAAK,YAAY,OAAO,mBAAmB;AAE5C,QAAO;EACL,GAFa,MAAM,gBAA2C;EAG9D,sBAAsB,aAAa;GACjC,eAAe;GACf,OAAO;GACR;EACF;EACD;qBAEO,uCAAuC;AAC9C,gBAAG,uDAAuD,YAAY;AACpE,SAAO,QAAQ,aAAa,EAAE,EAAE,IAAI,4CAA4C;EAEhF,MAAM,QAAQ,IAAIC,iDAAwB;GACxC,eAAe;GACf,kBAAkB;GAClB,kBAAkB,CAAC,0BAA0B;GAC7C,qBAAqB,EAAE;GACvB,WAAW;GACX,sBAAsB;GACvB,CAAC;EAGF,MAAM,WAAW,mDACf,OACA;GACE,UAAU;GACV,aAAa;GACb,kBAAkB;GAClB,eAAe;GAChB,EATa,MAAM,cAAc;GAAE,cAAc;GAAM,aAAa;GAAM,CAAC,CAW7E;EAED,MAAM,MAAM,IAAI,IAAI,SAAS;AAC7B,qBAAO,GAAG,IAAI,SAAS,IAAI,WAAW,CAAC,KAAK,6DAA6D;AACzG,qBAAO,OAAO,YAAY,IAAI,aAAa,SAAS,CAAC,CAAC,CAAC,sBAAsB;;;;;;;;;;;;;;;;MAgB3E;GACF;EACF"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
//#region src/lib/cookie.d.ts
|
|
2
|
+
type SetCookieOptions = {
|
|
3
|
+
maxAge: number | "session";
|
|
4
|
+
noOpIfServerComponent?: boolean;
|
|
5
|
+
domain?: string;
|
|
6
|
+
secure?: boolean;
|
|
7
|
+
};
|
|
8
|
+
type DeleteCookieOptions = {
|
|
9
|
+
noOpIfServerComponent?: boolean;
|
|
10
|
+
domain?: string;
|
|
11
|
+
};
|
|
12
|
+
type CookieHelper = {
|
|
13
|
+
get: (name: string) => string | null;
|
|
14
|
+
getAll: () => Record<string, string>;
|
|
15
|
+
set: (name: string, value: string, options: SetCookieOptions) => void;
|
|
16
|
+
setOrDelete: (name: string, value: string | null, options: SetCookieOptions & DeleteCookieOptions) => void;
|
|
17
|
+
delete: (name: string, options: DeleteCookieOptions) => void;
|
|
18
|
+
};
|
|
19
|
+
declare function createPlaceholderCookieHelper(): Promise<CookieHelper>;
|
|
20
|
+
declare function createCookieHelper(): Promise<CookieHelper>;
|
|
21
|
+
declare function createCookieHelperSync(): CookieHelper;
|
|
22
|
+
declare function createBrowserCookieHelper(): CookieHelper;
|
|
23
|
+
declare function getCookieClient(name: string): string | null;
|
|
24
|
+
declare function getAllCookiesClient(): Record<string, string>;
|
|
25
|
+
declare function getCookie(name: string): Promise<string | null>;
|
|
26
|
+
declare function isSecure(): Promise<boolean>;
|
|
27
|
+
declare function setOrDeleteCookieClient(name: string, value: string | null, options: SetCookieOptions & DeleteCookieOptions): void;
|
|
28
|
+
declare function setOrDeleteCookie(name: string, value: string | null, options: SetCookieOptions & DeleteCookieOptions): Promise<void>;
|
|
29
|
+
declare function deleteCookieClient(name: string, options: DeleteCookieOptions): void;
|
|
30
|
+
declare function deleteCookie(name: string, options: DeleteCookieOptions): Promise<void>;
|
|
31
|
+
declare function setCookieClient(name: string, value: string, options: SetCookieOptions): void;
|
|
32
|
+
declare function setCookie(name: string, value: string, options: SetCookieOptions): Promise<void>;
|
|
33
|
+
declare function saveVerifierAndState(): Promise<{
|
|
34
|
+
codeChallenge: string;
|
|
35
|
+
state: string;
|
|
36
|
+
}>;
|
|
37
|
+
declare function consumeVerifierAndStateCookie(state: string): {
|
|
38
|
+
codeVerifier: string;
|
|
39
|
+
} | null;
|
|
40
|
+
//#endregion
|
|
41
|
+
export { CookieHelper, consumeVerifierAndStateCookie, createBrowserCookieHelper, createCookieHelper, createCookieHelperSync, createPlaceholderCookieHelper, deleteCookie, deleteCookieClient, getAllCookiesClient, getCookie, getCookieClient, isSecure, saveVerifierAndState, setCookie, setCookieClient, setOrDeleteCookie, setOrDeleteCookieClient };
|
|
42
|
+
//# sourceMappingURL=cookie.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cookie.d.ts","names":[],"sources":["../../src/lib/cookie.ts"],"mappings":";KAqEK,gBAAA;EAAqB,MAAA;EAA4B,qBAAA;EAAiC,MAAA;EAAiB,MAAA;AAAA;AAAA,KACnG,mBAAA;EAAwB,qBAAA;EAAiC,MAAA;AAAA;AAAA,KASlD,YAAA;EACV,GAAA,GAAM,IAAA;EACN,MAAA,QAAc,MAAA;EACd,GAAA,GAAM,IAAA,UAAc,KAAA,UAAe,OAAA,EAAS,gBAAA;EAC5C,WAAA,GAAc,IAAA,UAAc,KAAA,iBAAsB,OAAA,EAAS,gBAAA,GAAmB,mBAAA;EAC9E,MAAA,GAAS,IAAA,UAAc,OAAA,EAAS,mBAAA;AAAA;AAAA,iBAIZ,6BAAA,CAAA,GAAiC,OAAA,CAAQ,YAAA;AAAA,iBAuBzC,kBAAA,CAAA,GAAsB,OAAA,CAAQ,YAAA;AAAA,iBAQpC,sBAAA,CAAA,GAA0B,YAAA;AAAA,iBAiB1B,yBAAA,CAAA,GAA6B,YAAA;AAAA,iBAuB7B,eAAA,CAAgB,IAAA;AAAA,iBAKhB,mBAAA,CAAA,GAAuB,MAAA;AAAA,iBASjB,SAAA,CAAU,IAAA,WAAe,OAAA;AAAA,iBAKzB,QAAA,CAAA,GAAY,OAAA;AAAA,iBAqFlB,uBAAA,CAAwB,IAAA,UAAc,KAAA,iBAAsB,OAAA,EAAS,gBAAA,GAAmB,mBAAA;AAAA,iBASlF,iBAAA,CAAkB,IAAA,UAAc,KAAA,iBAAsB,OAAA,EAAS,gBAAA,GAAmB,mBAAA,GAAmB,OAAA;AAAA,iBAK3G,kBAAA,CAAmB,IAAA,UAAc,OAAA,EAAS,mBAAA;AAAA,iBAKpC,YAAA,CAAa,IAAA,UAAc,OAAA,EAAS,mBAAA,GAAmB,OAAA;AAAA,iBAK7D,eAAA,CAAgB,IAAA,UAAc,KAAA,UAAe,OAAA,EAAS,gBAAA;AAAA,iBAKhD,SAAA,CAAU,IAAA,UAAc,KAAA,UAAe,OAAA,EAAS,gBAAA,GAAgB,OAAA;AAAA,iBAKhE,oBAAA,CAAA,GAAoB,OAAA;;;;iBAe1B,6BAAA,CAA8B,KAAA;EAAA,YAAA;AAAA"}
|
|
@@ -0,0 +1,305 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
+
const require_chunk = require('../chunk-BE-pF4vm.js');
|
|
3
|
+
let _stackframe_stack_shared_dist_utils_errors = require("@hexclave/shared/dist/utils/errors");
|
|
4
|
+
let _stackframe_stack_shared_dist_utils_env = require("@hexclave/shared/dist/utils/env");
|
|
5
|
+
let js_cookie = require("js-cookie");
|
|
6
|
+
js_cookie = require_chunk.__toESM(js_cookie);
|
|
7
|
+
|
|
8
|
+
//#region ../../node_modules/.pnpm/oauth4webapi@3.8.3/node_modules/oauth4webapi/build/index.js
|
|
9
|
+
let USER_AGENT;
|
|
10
|
+
if (typeof navigator === "undefined" || !navigator.userAgent?.startsWith?.("Mozilla/5.0 ")) USER_AGENT = `oauth4webapi/v3.8.3`;
|
|
11
|
+
const ERR_INVALID_ARG_VALUE = "ERR_INVALID_ARG_VALUE";
|
|
12
|
+
const ERR_INVALID_ARG_TYPE = "ERR_INVALID_ARG_TYPE";
|
|
13
|
+
function CodedTypeError(message, code, cause) {
|
|
14
|
+
const err = new TypeError(message, { cause });
|
|
15
|
+
Object.assign(err, { code });
|
|
16
|
+
return err;
|
|
17
|
+
}
|
|
18
|
+
const encoder = new TextEncoder();
|
|
19
|
+
const decoder = new TextDecoder();
|
|
20
|
+
function buf(input) {
|
|
21
|
+
if (typeof input === "string") return encoder.encode(input);
|
|
22
|
+
return decoder.decode(input);
|
|
23
|
+
}
|
|
24
|
+
let encodeBase64Url;
|
|
25
|
+
if (Uint8Array.prototype.toBase64) encodeBase64Url = (input) => {
|
|
26
|
+
if (input instanceof ArrayBuffer) input = new Uint8Array(input);
|
|
27
|
+
return input.toBase64({
|
|
28
|
+
alphabet: "base64url",
|
|
29
|
+
omitPadding: true
|
|
30
|
+
});
|
|
31
|
+
};
|
|
32
|
+
else {
|
|
33
|
+
const CHUNK_SIZE = 32768;
|
|
34
|
+
encodeBase64Url = (input) => {
|
|
35
|
+
if (input instanceof ArrayBuffer) input = new Uint8Array(input);
|
|
36
|
+
const arr = [];
|
|
37
|
+
for (let i = 0; i < input.byteLength; i += CHUNK_SIZE) arr.push(String.fromCharCode.apply(null, input.subarray(i, i + CHUNK_SIZE)));
|
|
38
|
+
return btoa(arr.join("")).replace(/=/g, "").replace(/\+/g, "-").replace(/\//g, "_");
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
let decodeBase64Url;
|
|
42
|
+
if (Uint8Array.fromBase64) decodeBase64Url = (input) => {
|
|
43
|
+
try {
|
|
44
|
+
return Uint8Array.fromBase64(input, { alphabet: "base64url" });
|
|
45
|
+
} catch (cause) {
|
|
46
|
+
throw CodedTypeError("The input to be decoded is not correctly encoded.", ERR_INVALID_ARG_VALUE, cause);
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
else decodeBase64Url = (input) => {
|
|
50
|
+
try {
|
|
51
|
+
const binary = atob(input.replace(/-/g, "+").replace(/_/g, "/").replace(/\s/g, ""));
|
|
52
|
+
const bytes = new Uint8Array(binary.length);
|
|
53
|
+
for (let i = 0; i < binary.length; i++) bytes[i] = binary.charCodeAt(i);
|
|
54
|
+
return bytes;
|
|
55
|
+
} catch (cause) {
|
|
56
|
+
throw CodedTypeError("The input to be decoded is not correctly encoded.", ERR_INVALID_ARG_VALUE, cause);
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
function b64u(input) {
|
|
60
|
+
if (typeof input === "string") return decodeBase64Url(input);
|
|
61
|
+
return encodeBase64Url(input);
|
|
62
|
+
}
|
|
63
|
+
var OperationProcessingError = class extends Error {
|
|
64
|
+
code;
|
|
65
|
+
constructor(message, options) {
|
|
66
|
+
super(message, options);
|
|
67
|
+
this.name = this.constructor.name;
|
|
68
|
+
if (options?.code) this.code = options?.code;
|
|
69
|
+
Error.captureStackTrace?.(this, this.constructor);
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
function OPE(message, code, cause) {
|
|
73
|
+
return new OperationProcessingError(message, {
|
|
74
|
+
code,
|
|
75
|
+
cause
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
function assertString(input, it, code, cause) {
|
|
79
|
+
try {
|
|
80
|
+
if (typeof input !== "string") throw CodedTypeError(`${it} must be a string`, ERR_INVALID_ARG_TYPE, cause);
|
|
81
|
+
if (input.length === 0) throw CodedTypeError(`${it} must not be empty`, ERR_INVALID_ARG_VALUE, cause);
|
|
82
|
+
} catch (err) {
|
|
83
|
+
if (code) throw OPE(err.message, code, cause);
|
|
84
|
+
throw err;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
function randomBytes() {
|
|
88
|
+
return b64u(crypto.getRandomValues(new Uint8Array(32)));
|
|
89
|
+
}
|
|
90
|
+
function generateRandomCodeVerifier() {
|
|
91
|
+
return randomBytes();
|
|
92
|
+
}
|
|
93
|
+
function generateRandomState() {
|
|
94
|
+
return randomBytes();
|
|
95
|
+
}
|
|
96
|
+
async function calculatePKCECodeChallenge(codeVerifier) {
|
|
97
|
+
assertString(codeVerifier, "codeVerifier");
|
|
98
|
+
return b64u(await crypto.subtle.digest("SHA-256", buf(codeVerifier)));
|
|
99
|
+
}
|
|
100
|
+
const URLParse = URL.parse ? (url, base) => URL.parse(url, base) : (url, base) => {
|
|
101
|
+
try {
|
|
102
|
+
return new URL(url, base);
|
|
103
|
+
} catch {
|
|
104
|
+
return null;
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
const tokenMatch = "[a-zA-Z0-9!#$%&\\'\\*\\+\\-\\.\\^_`\\|~]+";
|
|
108
|
+
const token68Match = "[a-zA-Z0-9\\-\\._\\~\\+\\/]+={0,2}";
|
|
109
|
+
const quotedParamMatcher = "(" + tokenMatch + ")\\s*=\\s*\"((?:[^\"\\\\]|\\\\[\\s\\S])*)\"";
|
|
110
|
+
const paramMatcher = "(" + tokenMatch + ")\\s*=\\s*([a-zA-Z0-9!#$%&\\'\\*\\+\\-\\.\\^_`\\|~]+)";
|
|
111
|
+
const schemeRE = new RegExp("^[,\\s]*(" + tokenMatch + ")");
|
|
112
|
+
const quotedParamRE = new RegExp("^[,\\s]*" + quotedParamMatcher + "[,\\s]*(.*)");
|
|
113
|
+
const unquotedParamRE = new RegExp("^[,\\s]*" + paramMatcher + "[,\\s]*(.*)");
|
|
114
|
+
const token68ParamRE = new RegExp("^(" + token68Match + ")(?:$|[,\\s])(.*)");
|
|
115
|
+
|
|
116
|
+
//#endregion
|
|
117
|
+
//#region src/lib/cookie.ts
|
|
118
|
+
function ensureClient() {
|
|
119
|
+
if (!(0, _stackframe_stack_shared_dist_utils_env.isBrowserLike)()) throw new Error("cookieClient functions can only be called in a browser environment, yet window is undefined");
|
|
120
|
+
}
|
|
121
|
+
async function createPlaceholderCookieHelper() {
|
|
122
|
+
function throwError() {
|
|
123
|
+
throw new _stackframe_stack_shared_dist_utils_errors.HexclaveAssertionError("Throwing cookie helper is just a placeholder. This should never be called");
|
|
124
|
+
}
|
|
125
|
+
return {
|
|
126
|
+
get: throwError,
|
|
127
|
+
getAll: throwError,
|
|
128
|
+
set: throwError,
|
|
129
|
+
setOrDelete: throwError,
|
|
130
|
+
delete: throwError
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
function requiresSecureAttribute(name) {
|
|
134
|
+
return name.startsWith("__Host-");
|
|
135
|
+
}
|
|
136
|
+
function validateCookieOptions(name, options) {
|
|
137
|
+
if (requiresSecureAttribute(name) && options.domain !== void 0) throw new _stackframe_stack_shared_dist_utils_errors.HexclaveAssertionError("__Host- cookies must not specify a Domain attribute");
|
|
138
|
+
}
|
|
139
|
+
async function createCookieHelper() {
|
|
140
|
+
if ((0, _stackframe_stack_shared_dist_utils_env.isBrowserLike)()) return createBrowserCookieHelper();
|
|
141
|
+
else return await createPlaceholderCookieHelper();
|
|
142
|
+
}
|
|
143
|
+
function createCookieHelperSync() {
|
|
144
|
+
if ((0, _stackframe_stack_shared_dist_utils_env.isBrowserLike)()) return createBrowserCookieHelper();
|
|
145
|
+
function throwError() {
|
|
146
|
+
throw new _stackframe_stack_shared_dist_utils_errors.HexclaveAssertionError("Synchronous server cookie helpers are not available on this platform");
|
|
147
|
+
}
|
|
148
|
+
return {
|
|
149
|
+
get: throwError,
|
|
150
|
+
getAll: throwError,
|
|
151
|
+
set: throwError,
|
|
152
|
+
setOrDelete: throwError,
|
|
153
|
+
delete: throwError
|
|
154
|
+
};
|
|
155
|
+
}
|
|
156
|
+
function createBrowserCookieHelper() {
|
|
157
|
+
return {
|
|
158
|
+
get: getCookieClient,
|
|
159
|
+
getAll: getAllCookiesClient,
|
|
160
|
+
set: setCookieClient,
|
|
161
|
+
setOrDelete: setOrDeleteCookieClient,
|
|
162
|
+
delete: deleteCookieClient
|
|
163
|
+
};
|
|
164
|
+
}
|
|
165
|
+
function getCookieClient(name) {
|
|
166
|
+
return getAllCookiesClient()[name] ?? null;
|
|
167
|
+
}
|
|
168
|
+
function getAllCookiesClient() {
|
|
169
|
+
ensureClient();
|
|
170
|
+
js_cookie.default.set("hexclave-is-https", "true", {
|
|
171
|
+
secure: true,
|
|
172
|
+
expires: new Date(Date.now() + 1e3 * 60 * 60 * 24 * 365)
|
|
173
|
+
});
|
|
174
|
+
js_cookie.default.set("stack-is-https", "true", {
|
|
175
|
+
secure: true,
|
|
176
|
+
expires: new Date(Date.now() + 1e3 * 60 * 60 * 24 * 365)
|
|
177
|
+
});
|
|
178
|
+
return js_cookie.default.get();
|
|
179
|
+
}
|
|
180
|
+
async function getCookie(name) {
|
|
181
|
+
return (await createCookieHelper()).get(name);
|
|
182
|
+
}
|
|
183
|
+
async function isSecure() {
|
|
184
|
+
if ((0, _stackframe_stack_shared_dist_utils_env.isBrowserLike)()) return determineSecureFromClientContext();
|
|
185
|
+
return false;
|
|
186
|
+
}
|
|
187
|
+
function determineSecureFromClientContext() {
|
|
188
|
+
return typeof window !== "undefined" && window.location.protocol === "https:";
|
|
189
|
+
}
|
|
190
|
+
let _shouldSetPartitionedClientCache = void 0;
|
|
191
|
+
function shouldSetPartitionedClient() {
|
|
192
|
+
return _shouldSetPartitionedClientCache ??= _internalShouldSetPartitionedClient();
|
|
193
|
+
}
|
|
194
|
+
function _internalShouldSetPartitionedClient() {
|
|
195
|
+
ensureClient();
|
|
196
|
+
if (!determineSecureFromClientContext()) return false;
|
|
197
|
+
const cookie1Name = "__Host-stack-temporary-chips-test-" + Math.random().toString(36).substring(2, 15);
|
|
198
|
+
document.cookie = `${cookie1Name}=value1; Secure; path=/`;
|
|
199
|
+
const cookies1 = document.cookie.split("; ");
|
|
200
|
+
document.cookie = `${cookie1Name}=delete1; Secure; path=/; expires=Thu, 01 Jan 1970 00:00:00 UTC;`;
|
|
201
|
+
if (cookies1.some((c) => c.startsWith(cookie1Name + "="))) return false;
|
|
202
|
+
const cookie2Name = "__Host-stack-temporary-chips-test-" + Math.random().toString(36).substring(2, 15);
|
|
203
|
+
document.cookie = `${cookie2Name}=delete1; Secure; SameSite=None; Partitioned; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/`;
|
|
204
|
+
document.cookie = `${cookie2Name}=delete2; Secure; SameSite=None; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/`;
|
|
205
|
+
document.cookie = `${cookie2Name}=set1; Secure; SameSite=None; Partitioned; path=/`;
|
|
206
|
+
document.cookie = `${cookie2Name}=set2; Secure; SameSite=None; path=/`;
|
|
207
|
+
const numberOfCookiesWithThisName = document.cookie.split("; ").filter((c) => c.startsWith(cookie2Name + "=")).length;
|
|
208
|
+
document.cookie = `${cookie2Name}=delete3; Secure; SameSite=None; Partitioned; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/`;
|
|
209
|
+
document.cookie = `${cookie2Name}=delete4; Secure; SameSite=None; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/`;
|
|
210
|
+
return numberOfCookiesWithThisName === 2;
|
|
211
|
+
}
|
|
212
|
+
function setCookieClientInternal(name, value, options) {
|
|
213
|
+
validateCookieOptions(name, options);
|
|
214
|
+
const secure = requiresSecureAttribute(name) || (options.secure ?? determineSecureFromClientContext());
|
|
215
|
+
const partitioned = shouldSetPartitionedClient();
|
|
216
|
+
js_cookie.default.set(name, value, {
|
|
217
|
+
expires: options.maxAge === "session" ? void 0 : new Date(Date.now() + options.maxAge * 1e3),
|
|
218
|
+
domain: options.domain,
|
|
219
|
+
secure,
|
|
220
|
+
path: "/",
|
|
221
|
+
sameSite: "Lax",
|
|
222
|
+
...partitioned ? {
|
|
223
|
+
partitioned,
|
|
224
|
+
sameSite: "None"
|
|
225
|
+
} : {}
|
|
226
|
+
});
|
|
227
|
+
}
|
|
228
|
+
function deleteCookieClientInternal(name, options) {
|
|
229
|
+
validateCookieOptions(name, options);
|
|
230
|
+
for (const partitioned of [true, false]) {
|
|
231
|
+
if (options.domain !== void 0) js_cookie.default.remove(name, {
|
|
232
|
+
domain: options.domain,
|
|
233
|
+
secure: determineSecureFromClientContext(),
|
|
234
|
+
partitioned,
|
|
235
|
+
path: "/"
|
|
236
|
+
});
|
|
237
|
+
js_cookie.default.remove(name, {
|
|
238
|
+
secure: requiresSecureAttribute(name) || determineSecureFromClientContext(),
|
|
239
|
+
partitioned,
|
|
240
|
+
path: "/"
|
|
241
|
+
});
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
function setOrDeleteCookieClient(name, value, options) {
|
|
245
|
+
ensureClient();
|
|
246
|
+
if (value === null) deleteCookieClientInternal(name, options);
|
|
247
|
+
else setCookieClientInternal(name, value, options);
|
|
248
|
+
}
|
|
249
|
+
async function setOrDeleteCookie(name, value, options) {
|
|
250
|
+
(await createCookieHelper()).setOrDelete(name, value, options);
|
|
251
|
+
}
|
|
252
|
+
function deleteCookieClient(name, options) {
|
|
253
|
+
ensureClient();
|
|
254
|
+
deleteCookieClientInternal(name, options);
|
|
255
|
+
}
|
|
256
|
+
async function deleteCookie(name, options) {
|
|
257
|
+
(await createCookieHelper()).delete(name, options);
|
|
258
|
+
}
|
|
259
|
+
function setCookieClient(name, value, options) {
|
|
260
|
+
ensureClient();
|
|
261
|
+
setCookieClientInternal(name, value, options);
|
|
262
|
+
}
|
|
263
|
+
async function setCookie(name, value, options) {
|
|
264
|
+
(await createCookieHelper()).set(name, value, options);
|
|
265
|
+
}
|
|
266
|
+
async function saveVerifierAndState() {
|
|
267
|
+
const codeVerifier = generateRandomCodeVerifier();
|
|
268
|
+
const codeChallenge = await calculatePKCECodeChallenge(codeVerifier);
|
|
269
|
+
const state = generateRandomState();
|
|
270
|
+
await setCookie("hexclave-oauth-outer-" + state, codeVerifier, { maxAge: 3600 });
|
|
271
|
+
await setCookie("stack-oauth-outer-" + state, codeVerifier, { maxAge: 3600 });
|
|
272
|
+
return {
|
|
273
|
+
codeChallenge,
|
|
274
|
+
state
|
|
275
|
+
};
|
|
276
|
+
}
|
|
277
|
+
function consumeVerifierAndStateCookie(state) {
|
|
278
|
+
ensureClient();
|
|
279
|
+
const hexclaveCookieName = "hexclave-oauth-outer-" + state;
|
|
280
|
+
const stackCookieName = "stack-oauth-outer-" + state;
|
|
281
|
+
const codeVerifier = getCookieClient(hexclaveCookieName) ?? getCookieClient(stackCookieName);
|
|
282
|
+
if (!codeVerifier) return null;
|
|
283
|
+
deleteCookieClient(hexclaveCookieName, {});
|
|
284
|
+
deleteCookieClient(stackCookieName, {});
|
|
285
|
+
return { codeVerifier };
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
//#endregion
|
|
289
|
+
exports.consumeVerifierAndStateCookie = consumeVerifierAndStateCookie;
|
|
290
|
+
exports.createBrowserCookieHelper = createBrowserCookieHelper;
|
|
291
|
+
exports.createCookieHelper = createCookieHelper;
|
|
292
|
+
exports.createCookieHelperSync = createCookieHelperSync;
|
|
293
|
+
exports.createPlaceholderCookieHelper = createPlaceholderCookieHelper;
|
|
294
|
+
exports.deleteCookie = deleteCookie;
|
|
295
|
+
exports.deleteCookieClient = deleteCookieClient;
|
|
296
|
+
exports.getAllCookiesClient = getAllCookiesClient;
|
|
297
|
+
exports.getCookie = getCookie;
|
|
298
|
+
exports.getCookieClient = getCookieClient;
|
|
299
|
+
exports.isSecure = isSecure;
|
|
300
|
+
exports.saveVerifierAndState = saveVerifierAndState;
|
|
301
|
+
exports.setCookie = setCookie;
|
|
302
|
+
exports.setCookieClient = setCookieClient;
|
|
303
|
+
exports.setOrDeleteCookie = setOrDeleteCookie;
|
|
304
|
+
exports.setOrDeleteCookieClient = setOrDeleteCookieClient;
|
|
305
|
+
//# sourceMappingURL=cookie.js.map
|