@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":"common.js","names":[],"sources":["../../../src/lib/stack-app/common.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//===========================================\nimport { ProviderType } from \"@stackframe/stack-shared/dist/utils/oauth\";\nimport type { GenericQueryCtx, UserIdentity } from \"convex/server\";\nexport type {\n DefaultHandlerUrlTarget,\n HandlerPageUrls,\n HandlerRedirectUrls,\n HandlerUrlOptions,\n HandlerUrlTarget,\n HandlerUrls,\n ResolvedHandlerUrls,\n} from \"@stackframe/stack-shared/dist/interface/handler-urls\";\n\nexport type RedirectToOptions = {\n replace?: boolean,\n noRedirectBack?: boolean,\n};\n\nexport type AsyncStoreProperty<Name extends string, Args extends any[], Value, IsMultiple extends boolean> =\n & { [key in `${IsMultiple extends true ? \"list\" : \"get\"}${Capitalize<Name>}`]: (...args: Args) => Promise<Value> }\n\nexport type EmailConfig = {\n host: string,\n port: number,\n username: string,\n password: string,\n senderEmail: string,\n senderName: string,\n}\n\nexport type RedirectMethod = \"window\"\n | \"none\"\n | {\n useNavigate: () => (to: string) => void,\n navigate?: (to: string) => void,\n }\n\n\nexport type GetCurrentUserOptions<HasTokenStore> =\n & {\n or?: 'redirect' | 'throw' | 'return-null' | 'anonymous' | /** @deprecated */ 'anonymous-if-exists[deprecated]',\n /**\n * Whether to include restricted users (users who haven't completed onboarding requirements like email verification).\n * By default, restricted users are filtered out (treated similar to anonymous users).\n *\n * Note: This option cannot be set to false when `or: 'anonymous'` is used, as all anonymous users are also restricted.\n *\n * @default false\n */\n includeRestricted?: boolean,\n tokenStore?: TokenStoreInit,\n }\n & (HasTokenStore extends false ? {\n tokenStore: TokenStoreInit,\n } : {});\n\nexport type ConvexCtx =\n| GenericQueryCtx<any>\n| { auth: { getUserIdentity: () => Promise<UserIdentity | null> } };\n\nexport type GetCurrentPartialUserOptions<HasTokenStore> =\n & {\n or?: 'return-null' | 'anonymous-if-exists', // note: unlike normal getUser, 'anonymous' still returns null sometimes (eg. if no token is present)\n tokenStore?: TokenStoreInit,\n }\n & (\n | {\n from: 'token',\n }\n | {\n from: 'convex',\n ctx: ConvexCtx,\n }\n )\n & (HasTokenStore extends false ? {\n tokenStore: TokenStoreInit,\n } : {});\n\nexport type RequestLike = {\n headers:\n | {\n get: (name: string) => string | null,\n }\n | Record<string, string | null>,\n};\n\nexport type TokenStoreInit<HasTokenStore extends boolean = boolean> =\n HasTokenStore extends true ? (\n | \"cookie\"\n | \"nextjs-cookie\"\n | \"memory\"\n | RequestLike\n | { accessToken: string, refreshToken: string }\n )\n : HasTokenStore extends false ? null\n : TokenStoreInit<true> | TokenStoreInit<false>;\n\nexport type OAuthScopesOnSignIn = {\n [key in ProviderType]: string[];\n};\n\n/**\n * Contains the authentication methods without session-related fields.\n * Used for apps that have token storage capabilities.\n */\nexport type AuthLike<ExtraOptions = {}> = {\n signOut(options?: { redirectUrl?: URL | string } & ExtraOptions): Promise<void>,\n signOut(options?: { redirectUrl?: URL | string }): Promise<void>,\n\n /**\n * Returns the current access token, or null if the user is not signed in.\n *\n * The access token is a short-lived JWT that can be used to authenticate requests to external servers.\n * It will be automatically refreshed when it expires.\n */\n getAccessToken(options?: {} & ExtraOptions): Promise<string | null>,\n\n /**\n * Returns the current refresh token, or null if the user is not signed in.\n *\n * The refresh token is a long-lived token that can be used to obtain new access tokens.\n * It should be kept secret and never exposed to the client.\n */\n getRefreshToken(options?: {} & ExtraOptions): Promise<string | null>,\n\n /**\n * Returns the value for the HTTP `Authorization` header for authenticated requests to external servers.\n * Most commonly used in cross-origin requests. Similar to `getAuthJson`, but specifically for HTTP requests.\n *\n * If you are using `tokenStore: \"cookie\"`, you don't need this for same-origin requests. However, most\n * browsers now disable third-party cookies by default, so we must pass authentication tokens by header instead\n * if the client and server are on different origins.\n *\n * This function returns the header value in this format:\n * `Bearer stackauth_<base64(getAuthJson())>`, or `null` if the user is not signed in.\n * You can use this with `fetch` or other HTTP request libraries to send authenticated requests.\n *\n * On the server, you can then pass in the `Request` object to the `tokenStore` option\n * of your Stack app. Please note that CORS does not allow most headers by default, so you\n * must include `authorization` in the [`Access-Control-Allow-Headers` header](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Headers)\n * of the CORS preflight response.\n *\n * If you are not using HTTP (and hence cannot set headers), use `getAuthJson()` instead.\n *\n * Example:\n *\n * ```ts\n * // client\n * const authorizationHeader = await stackApp.getAuthorizationHeader();\n * const res = await fetch(\"https://api.example.com\", {\n * headers: {\n * ...(authorizationHeader ? { Authorization: authorizationHeader } : {})\n * // you can also add your own headers here\n * },\n * });\n *\n * // server\n * function handleRequest(req: Request) {\n * const user = await stackServerApp.getUser({ tokenStore: req });\n * return new Response(\"Welcome, \" + user.displayName);\n * }\n * ```\n */\n getAuthorizationHeader(options?: {} & ExtraOptions): Promise<string | null>,\n\n /**\n * @deprecated Use `getAuthorizationHeader()` instead.\n *\n * Returns the legacy `x-stack-auth` headers for authenticated HTTP requests. This remains for backwards\n * compatibility with existing integrations.\n */\n getAuthHeaders(options?: {} & ExtraOptions): Promise<{ \"x-stack-auth\": string }>,\n /** @deprecated Use `useAuthorizationHeader()` instead. */\n\n /**\n * Creates a JSON-serializable object containing the information to authenticate a user on an external server.\n * Similar to `getAuthorizationHeader`, but returns an object that can be sent over any protocol instead of just\n * HTTP headers.\n *\n * While `getAuthorizationHeader` is the recommended way to send authentication tokens over HTTP, your app may use\n * a different protocol, for example WebSockets or gRPC. This function returns a token object that can be JSON-serialized and sent to the server in any way you like.\n *\n * On the server, you can pass in this token object into the `tokenStore` option to fetch user details.\n *\n * Example:\n *\n * ```ts\n * // client\n * const res = await rpcCall(rpcEndpoint, {\n * data: {\n * auth: await stackApp.getAuthJson(),\n * },\n * });\n *\n * // server\n * function handleRequest(data) {\n * const user = await stackServerApp.getUser({ tokenStore: data.auth });\n * return new Response(\"Welcome, \" + user.displayName);\n * }\n * ```\n */\n getAuthJson(options?: {} & ExtraOptions): Promise<{ accessToken: string | null, refreshToken: string | null }>,\n};\n\n/** @internal */\nexport const stackAppInternalsSymbol = Symbol.for(\"StackAuth--DO-NOT-USE-OR-YOU-WILL-BE-FIRED--StackAppInternals\");\n"],"mappings":";;;;AAgNA,MAAa,0BAA0B,OAAO,IAAI,gEAAgE"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { KnownErrors } from "@hexclave/shared";
|
|
2
|
+
import { Result } from "@hexclave/shared/dist/utils/results";
|
|
3
|
+
|
|
4
|
+
//#region src/lib/stack-app/connected-accounts/index.d.ts
|
|
5
|
+
type Connection = {
|
|
6
|
+
/**
|
|
7
|
+
* @deprecated Use `provider` instead. This field returns the provider for backward compatibility.
|
|
8
|
+
*/
|
|
9
|
+
id: string; /** Provider config ID (e.g., "google", "github") */
|
|
10
|
+
provider: string; /** Account ID from the OAuth provider (e.g., Google user ID) */
|
|
11
|
+
providerAccountId: string;
|
|
12
|
+
};
|
|
13
|
+
type OAuthConnection = {
|
|
14
|
+
/**
|
|
15
|
+
* Get an OAuth access token for this connected account.
|
|
16
|
+
*
|
|
17
|
+
* Returns `{ status: "ok", data: { accessToken } }` on success, or
|
|
18
|
+
* `{ status: "error", error: KnownErrors["OAuthAccessTokenNotAvailable"] }` if the
|
|
19
|
+
* refresh token has been revoked/expired or the requested scopes are not available.
|
|
20
|
+
*
|
|
21
|
+
* @param options.scopes - If provided, only returns a token that has all of these scopes.
|
|
22
|
+
*/
|
|
23
|
+
getAccessToken(options?: {
|
|
24
|
+
scopes?: string[];
|
|
25
|
+
}): Promise<Result<{
|
|
26
|
+
accessToken: string;
|
|
27
|
+
}, KnownErrors["OAuthAccessTokenNotAvailable"]>>;
|
|
28
|
+
} & Connection;
|
|
29
|
+
/**
|
|
30
|
+
* @deprecated Used by legacy `getConnectedAccount(providerId)`. Use `OAuthConnection` instead,
|
|
31
|
+
* which returns a `Result` from `getAccessToken`/`useAccessToken` instead of throwing.
|
|
32
|
+
*/
|
|
33
|
+
type DeprecatedOAuthConnection = {
|
|
34
|
+
getAccessToken(): Promise<{
|
|
35
|
+
accessToken: string;
|
|
36
|
+
}>;
|
|
37
|
+
} & Connection;
|
|
38
|
+
//#endregion
|
|
39
|
+
export { Connection, DeprecatedOAuthConnection, OAuthConnection };
|
|
40
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../../src/lib/stack-app/connected-accounts/index.ts"],"mappings":";;;;KAOY,UAAA;;AAAZ;;EAIE,EAAA,UAJoB;EAMpB,QAAA;EAEA,iBAAA;AAAA;AAAA,KAGU,eAAA;EAAA;;;;;;;;;EAUV,cAAA,CAAe,OAAA;IAAY,MAAA;EAAA,IAAsB,OAAA,CAAQ,MAAA;IAAS,WAAA;EAAA,GAAuB,WAAA;AAAA,IAUvF,UAAA;;;;;KAMQ,yBAAA;EACV,cAAA,IAAkB,OAAA;IAAU,WAAA;EAAA;AAAA,IAC1B,UAAA"}
|
|
File without changes
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { ContactChannelsCrud } from "@hexclave/shared/dist/interface/crud/contact-channels";
|
|
2
|
+
|
|
3
|
+
//#region src/lib/stack-app/contact-channels/index.d.ts
|
|
4
|
+
type ContactChannel = {
|
|
5
|
+
id: string;
|
|
6
|
+
value: string;
|
|
7
|
+
type: 'email';
|
|
8
|
+
isPrimary: boolean;
|
|
9
|
+
isVerified: boolean;
|
|
10
|
+
usedForAuth: boolean;
|
|
11
|
+
sendVerificationEmail(options?: {
|
|
12
|
+
callbackUrl?: string;
|
|
13
|
+
}): Promise<void>;
|
|
14
|
+
update(data: ContactChannelUpdateOptions): Promise<void>;
|
|
15
|
+
delete(): Promise<void>;
|
|
16
|
+
};
|
|
17
|
+
type ContactChannelCreateOptions = {
|
|
18
|
+
value: string;
|
|
19
|
+
type: 'email';
|
|
20
|
+
usedForAuth: boolean;
|
|
21
|
+
isPrimary?: boolean;
|
|
22
|
+
};
|
|
23
|
+
declare function contactChannelCreateOptionsToCrud(userId: string, options: ContactChannelCreateOptions): ContactChannelsCrud["Client"]["Create"];
|
|
24
|
+
type ContactChannelUpdateOptions = {
|
|
25
|
+
usedForAuth?: boolean;
|
|
26
|
+
value?: string;
|
|
27
|
+
isPrimary?: boolean;
|
|
28
|
+
};
|
|
29
|
+
declare function contactChannelUpdateOptionsToCrud(options: ContactChannelUpdateOptions): ContactChannelsCrud["Client"]["Update"];
|
|
30
|
+
type ServerContactChannel = ContactChannel & {
|
|
31
|
+
update(data: ServerContactChannelUpdateOptions): Promise<void>;
|
|
32
|
+
};
|
|
33
|
+
type ServerContactChannelUpdateOptions = ContactChannelUpdateOptions & {
|
|
34
|
+
isVerified?: boolean;
|
|
35
|
+
};
|
|
36
|
+
declare function serverContactChannelUpdateOptionsToCrud(options: ServerContactChannelUpdateOptions): ContactChannelsCrud["Server"]["Update"];
|
|
37
|
+
type ServerContactChannelCreateOptions = ContactChannelCreateOptions & {
|
|
38
|
+
isVerified?: boolean;
|
|
39
|
+
};
|
|
40
|
+
declare function serverContactChannelCreateOptionsToCrud(userId: string, options: ServerContactChannelCreateOptions): ContactChannelsCrud["Server"]["Create"];
|
|
41
|
+
//#endregion
|
|
42
|
+
export { ContactChannel, ContactChannelCreateOptions, ContactChannelUpdateOptions, ServerContactChannel, ServerContactChannelCreateOptions, ServerContactChannelUpdateOptions, contactChannelCreateOptionsToCrud, contactChannelUpdateOptionsToCrud, serverContactChannelCreateOptionsToCrud, serverContactChannelUpdateOptionsToCrud };
|
|
43
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../../src/lib/stack-app/contact-channels/index.ts"],"mappings":";;;KAOY,cAAA;EACV,EAAA;EACA,KAAA;EACA,IAAA;EACA,SAAA;EACA,UAAA;EACA,WAAA;EAEA,qBAAA,CAAsB,OAAA;IAAY,WAAA;EAAA,IAAyB,OAAA;EAC3D,MAAA,CAAO,IAAA,EAAM,2BAAA,GAA8B,OAAA;EAC3C,MAAA,IAAU,OAAA;AAAA;AAAA,KAGA,2BAAA;EACV,KAAA;EACA,IAAA;EACA,WAAA;EACA,SAAA;AAAA;AAAA,iBAGc,iCAAA,CAAkC,MAAA,UAAgB,OAAA,EAAS,2BAAA,GAA8B,mBAAA;AAAA,KAU7F,2BAAA;EACV,WAAA;EACA,KAAA;EACA,SAAA;AAAA;AAAA,iBAGc,iCAAA,CAAkC,OAAA,EAAS,2BAAA,GAA8B,mBAAA;AAAA,KAQ7E,oBAAA,GAAuB,cAAA;EACjC,MAAA,CAAO,IAAA,EAAM,iCAAA,GAAoC,OAAA;AAAA;AAAA,KAEvC,iCAAA,GAAoC,2BAAA;EAC9C,UAAA;AAAA;AAAA,iBAGc,uCAAA,CAAwC,OAAA,EAAS,iCAAA,GAAoC,mBAAA;AAAA,KASzF,iCAAA,GAAoC,2BAAA;EAC9C,UAAA;AAAA;AAAA,iBAEc,uCAAA,CAAwC,MAAA,UAAgB,OAAA,EAAS,iCAAA,GAAoC,mBAAA"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
+
|
|
3
|
+
//#region src/lib/stack-app/contact-channels/index.ts
|
|
4
|
+
function contactChannelCreateOptionsToCrud(userId, options) {
|
|
5
|
+
return {
|
|
6
|
+
value: options.value,
|
|
7
|
+
type: options.type,
|
|
8
|
+
used_for_auth: options.usedForAuth,
|
|
9
|
+
is_primary: options.isPrimary,
|
|
10
|
+
user_id: userId
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
function contactChannelUpdateOptionsToCrud(options) {
|
|
14
|
+
return {
|
|
15
|
+
value: options.value,
|
|
16
|
+
used_for_auth: options.usedForAuth,
|
|
17
|
+
is_primary: options.isPrimary
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
function serverContactChannelUpdateOptionsToCrud(options) {
|
|
21
|
+
return {
|
|
22
|
+
value: options.value,
|
|
23
|
+
is_verified: options.isVerified,
|
|
24
|
+
used_for_auth: options.usedForAuth,
|
|
25
|
+
is_primary: options.isPrimary
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
function serverContactChannelCreateOptionsToCrud(userId, options) {
|
|
29
|
+
return {
|
|
30
|
+
type: options.type,
|
|
31
|
+
value: options.value,
|
|
32
|
+
is_verified: options.isVerified,
|
|
33
|
+
user_id: userId,
|
|
34
|
+
used_for_auth: options.usedForAuth,
|
|
35
|
+
is_primary: options.isPrimary
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
//#endregion
|
|
40
|
+
exports.contactChannelCreateOptionsToCrud = contactChannelCreateOptionsToCrud;
|
|
41
|
+
exports.contactChannelUpdateOptionsToCrud = contactChannelUpdateOptionsToCrud;
|
|
42
|
+
exports.serverContactChannelCreateOptionsToCrud = serverContactChannelCreateOptionsToCrud;
|
|
43
|
+
exports.serverContactChannelUpdateOptionsToCrud = serverContactChannelUpdateOptionsToCrud;
|
|
44
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../src/lib/stack-app/contact-channels/index.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//===========================================\nimport { ContactChannelsCrud } from \"@stackframe/stack-shared/dist/interface/crud/contact-channels\";\n\n\nexport type ContactChannel = {\n id: string,\n value: string,\n type: 'email',\n isPrimary: boolean,\n isVerified: boolean,\n usedForAuth: boolean,\n\n sendVerificationEmail(options?: { callbackUrl?: string }): Promise<void>,\n update(data: ContactChannelUpdateOptions): Promise<void>,\n delete(): Promise<void>,\n}\n\nexport type ContactChannelCreateOptions = {\n value: string,\n type: 'email',\n usedForAuth: boolean,\n isPrimary?: boolean,\n}\n\nexport function contactChannelCreateOptionsToCrud(userId: string, options: ContactChannelCreateOptions): ContactChannelsCrud[\"Client\"][\"Create\"] {\n return {\n value: options.value,\n type: options.type,\n used_for_auth: options.usedForAuth,\n is_primary: options.isPrimary,\n user_id: userId,\n };\n}\n\nexport type ContactChannelUpdateOptions = {\n usedForAuth?: boolean,\n value?: string,\n isPrimary?: boolean,\n}\n\nexport function contactChannelUpdateOptionsToCrud(options: ContactChannelUpdateOptions): ContactChannelsCrud[\"Client\"][\"Update\"] {\n return {\n value: options.value,\n used_for_auth: options.usedForAuth,\n is_primary: options.isPrimary,\n };\n}\n\nexport type ServerContactChannel = ContactChannel & {\n update(data: ServerContactChannelUpdateOptions): Promise<void>,\n}\nexport type ServerContactChannelUpdateOptions = ContactChannelUpdateOptions & {\n isVerified?: boolean,\n}\n\nexport function serverContactChannelUpdateOptionsToCrud(options: ServerContactChannelUpdateOptions): ContactChannelsCrud[\"Server\"][\"Update\"] {\n return {\n value: options.value,\n is_verified: options.isVerified,\n used_for_auth: options.usedForAuth,\n is_primary: options.isPrimary,\n };\n}\n\nexport type ServerContactChannelCreateOptions = ContactChannelCreateOptions & {\n isVerified?: boolean,\n}\nexport function serverContactChannelCreateOptionsToCrud(userId: string, options: ServerContactChannelCreateOptions): ContactChannelsCrud[\"Server\"][\"Create\"] {\n return {\n type: options.type,\n value: options.value,\n is_verified: options.isVerified,\n user_id: userId,\n used_for_auth: options.usedForAuth,\n is_primary: options.isPrimary,\n };\n}\n"],"mappings":";;;AA2BA,SAAgB,kCAAkC,QAAgB,SAA+E;AAC/I,QAAO;EACL,OAAO,QAAQ;EACf,MAAM,QAAQ;EACd,eAAe,QAAQ;EACvB,YAAY,QAAQ;EACpB,SAAS;EACV;;AASH,SAAgB,kCAAkC,SAA+E;AAC/H,QAAO;EACL,OAAO,QAAQ;EACf,eAAe,QAAQ;EACvB,YAAY,QAAQ;EACrB;;AAUH,SAAgB,wCAAwC,SAAqF;AAC3I,QAAO;EACL,OAAO,QAAQ;EACf,aAAa,QAAQ;EACrB,eAAe,QAAQ;EACvB,YAAY,QAAQ;EACrB;;AAMH,SAAgB,wCAAwC,QAAgB,SAAqF;AAC3J,QAAO;EACL,MAAM,QAAQ;EACd,OAAO,QAAQ;EACf,aAAa,QAAQ;EACrB,SAAS;EACT,eAAe,QAAQ;EACvB,YAAY,QAAQ;EACrB"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { AsyncStoreProperty } from "../common.js";
|
|
2
|
+
import { inlineProductSchema } from "@hexclave/shared/dist/schema-fields";
|
|
3
|
+
import * as yup from "yup";
|
|
4
|
+
|
|
5
|
+
//#region src/lib/stack-app/customers/index.d.ts
|
|
6
|
+
type InlineProduct = yup.InferType<typeof inlineProductSchema>;
|
|
7
|
+
type Item = {
|
|
8
|
+
displayName: string;
|
|
9
|
+
/**
|
|
10
|
+
* May be negative.
|
|
11
|
+
*/
|
|
12
|
+
quantity: number;
|
|
13
|
+
/**
|
|
14
|
+
* Equal to Math.max(0, quantity).
|
|
15
|
+
*/
|
|
16
|
+
nonNegativeQuantity: number;
|
|
17
|
+
};
|
|
18
|
+
type ServerItem = Item & {
|
|
19
|
+
increaseQuantity(amount: number): Promise<void>;
|
|
20
|
+
/**
|
|
21
|
+
* Decreases the quantity by the given amount.
|
|
22
|
+
*
|
|
23
|
+
* Note that you may want to use tryDecreaseQuantity instead, as it will prevent the quantity from going below 0 in a race-condition-free way.
|
|
24
|
+
*/
|
|
25
|
+
decreaseQuantity(amount: number): Promise<void>;
|
|
26
|
+
/**
|
|
27
|
+
* Decreases the quantity by the given amount and returns true if the result is non-negative; returns false and does nothing if the result would be negative.
|
|
28
|
+
*
|
|
29
|
+
* Most useful for pre-paid credits.
|
|
30
|
+
*/
|
|
31
|
+
tryDecreaseQuantity(amount: number): Promise<boolean>;
|
|
32
|
+
};
|
|
33
|
+
type CustomerProduct = {
|
|
34
|
+
id: string | null;
|
|
35
|
+
quantity: number;
|
|
36
|
+
displayName: string;
|
|
37
|
+
customerType: "user" | "team" | "custom";
|
|
38
|
+
isServerOnly: boolean;
|
|
39
|
+
stackable: boolean; /** @deprecated Product ownership is independent of purchase type. Will be removed in a future version. */
|
|
40
|
+
type?: "one_time" | "subscription";
|
|
41
|
+
subscription: null | {
|
|
42
|
+
subscriptionId: string | null;
|
|
43
|
+
currentPeriodEnd: Date | null;
|
|
44
|
+
cancelAtPeriodEnd: boolean;
|
|
45
|
+
isCancelable: boolean;
|
|
46
|
+
};
|
|
47
|
+
switchOptions?: Array<{
|
|
48
|
+
productId: string;
|
|
49
|
+
displayName: string;
|
|
50
|
+
prices: InlineProduct["prices"];
|
|
51
|
+
}>;
|
|
52
|
+
};
|
|
53
|
+
type CustomerProductsList = CustomerProduct[] & {
|
|
54
|
+
nextCursor: string | null;
|
|
55
|
+
};
|
|
56
|
+
type CustomerProductsListOptions = {
|
|
57
|
+
cursor?: string;
|
|
58
|
+
limit?: number;
|
|
59
|
+
};
|
|
60
|
+
type CustomerProductsRequestOptions = ({
|
|
61
|
+
userId: string;
|
|
62
|
+
} & CustomerProductsListOptions) | ({
|
|
63
|
+
teamId: string;
|
|
64
|
+
} & CustomerProductsListOptions) | ({
|
|
65
|
+
customCustomerId: string;
|
|
66
|
+
} & CustomerProductsListOptions);
|
|
67
|
+
type CustomerInvoiceStatus = "draft" | "open" | "paid" | "uncollectible" | "void" | null;
|
|
68
|
+
type CustomerInvoice = {
|
|
69
|
+
createdAt: Date;
|
|
70
|
+
status: CustomerInvoiceStatus;
|
|
71
|
+
amountTotal: number;
|
|
72
|
+
hostedInvoiceUrl: string | null;
|
|
73
|
+
};
|
|
74
|
+
type CustomerInvoicesList = CustomerInvoice[] & {
|
|
75
|
+
nextCursor: string | null;
|
|
76
|
+
};
|
|
77
|
+
type CustomerInvoicesListOptions = {
|
|
78
|
+
cursor?: string;
|
|
79
|
+
limit?: number;
|
|
80
|
+
};
|
|
81
|
+
type CustomerInvoicesRequestOptions = ({
|
|
82
|
+
userId: string;
|
|
83
|
+
} & CustomerInvoicesListOptions) | ({
|
|
84
|
+
teamId: string;
|
|
85
|
+
} & CustomerInvoicesListOptions);
|
|
86
|
+
type CustomerDefaultPaymentMethod = {
|
|
87
|
+
id: string;
|
|
88
|
+
brand: string | null;
|
|
89
|
+
last4: string | null;
|
|
90
|
+
exp_month: number | null;
|
|
91
|
+
exp_year: number | null;
|
|
92
|
+
} | null;
|
|
93
|
+
type CustomerBilling = {
|
|
94
|
+
hasCustomer: boolean;
|
|
95
|
+
defaultPaymentMethod: CustomerDefaultPaymentMethod;
|
|
96
|
+
};
|
|
97
|
+
type CustomerPaymentMethodSetupIntent = {
|
|
98
|
+
clientSecret: string;
|
|
99
|
+
stripeAccountId: string;
|
|
100
|
+
};
|
|
101
|
+
type Customer<IsServer extends boolean = false> = {
|
|
102
|
+
readonly id: string;
|
|
103
|
+
createCheckoutUrl(options: ({
|
|
104
|
+
productId: string;
|
|
105
|
+
returnUrl?: string;
|
|
106
|
+
} | (IsServer extends true ? {
|
|
107
|
+
product: InlineProduct;
|
|
108
|
+
returnUrl?: string;
|
|
109
|
+
} : never))): Promise<string>;
|
|
110
|
+
createPaymentMethodSetupIntent(): Promise<CustomerPaymentMethodSetupIntent>;
|
|
111
|
+
setDefaultPaymentMethodFromSetupIntent(setupIntentId: string): Promise<CustomerDefaultPaymentMethod>;
|
|
112
|
+
switchSubscription(options: {
|
|
113
|
+
fromProductId: string;
|
|
114
|
+
toProductId: string;
|
|
115
|
+
priceId?: string;
|
|
116
|
+
quantity?: number;
|
|
117
|
+
}): Promise<void>;
|
|
118
|
+
} & AsyncStoreProperty<"billing", [], CustomerBilling, false> & AsyncStoreProperty<"item", [itemId: string], IsServer extends true ? ServerItem : Item, false> & AsyncStoreProperty<"products", [options?: CustomerProductsListOptions], CustomerProductsList, true> & AsyncStoreProperty<"invoices", [options?: CustomerInvoicesListOptions], CustomerInvoicesList, true> & (IsServer extends true ? {
|
|
119
|
+
grantProduct(product: {
|
|
120
|
+
productId: string;
|
|
121
|
+
quantity?: number;
|
|
122
|
+
} | {
|
|
123
|
+
product: InlineProduct;
|
|
124
|
+
quantity?: number;
|
|
125
|
+
}): Promise<void>;
|
|
126
|
+
} : {});
|
|
127
|
+
//#endregion
|
|
128
|
+
export { Customer, CustomerBilling, CustomerDefaultPaymentMethod, CustomerInvoice, CustomerInvoiceStatus, CustomerInvoicesList, CustomerInvoicesListOptions, CustomerInvoicesRequestOptions, CustomerPaymentMethodSetupIntent, CustomerProduct, CustomerProductsList, CustomerProductsListOptions, CustomerProductsRequestOptions, InlineProduct, Item, ServerItem };
|
|
129
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../../src/lib/stack-app/customers/index.ts"],"mappings":";;;;;KAQY,aAAA,GAAgB,GAAA,CAAI,SAAA,QAAiB,mBAAA;AAAA,KAErC,IAAA;EACV,WAAA;EAHuB;;;EAOvB,QAAA;EAP8B;;;EAW9B,mBAAA;AAAA;AAAA,KAGU,UAAA,GAAa,IAAA;EACvB,gBAAA,CAAiB,MAAA,WAAiB,OAAA;EAbpB;;;;;EAmBd,gBAAA,CAAiB,MAAA,WAAiB,OAAA;EAPxB;;;;;EAaV,mBAAA,CAAoB,MAAA,WAAiB,OAAA;AAAA;AAAA,KAG3B,eAAA;EACV,EAAA;EACA,QAAA;EACA,WAAA;EACA,YAAA;EACA,YAAA;EACA,SAAA,WAfiB;EAiBjB,IAAA;EACA,YAAA;IACE,cAAA;IACA,gBAAA,EAAkB,IAAA;IAClB,iBAAA;IACA,YAAA;EAAA;EAEF,aAAA,GAAgB,KAAA;IACd,SAAA;IACA,WAAA;IACA,MAAA,EAAQ,aAAA;EAAA;AAAA;AAAA,KAIA,oBAAA,GAAuB,eAAA;EACjC,UAAA;AAAA;AAAA,KAGU,2BAAA;EACV,MAAA;EACA,KAAA;AAAA;AAAA,KAGU,8BAAA;EACL,MAAA;AAAA,IAAmB,2BAAA;EACnB,MAAA;AAAA,IAAmB,2BAAA;EACnB,gBAAA;AAAA,IAA6B,2BAAA;AAAA,KAExB,qBAAA;AAAA,KAEA,eAAA;EACV,SAAA,EAAW,IAAA;EACX,MAAA,EAAQ,qBAAA;EACR,WAAA;EACA,gBAAA;AAAA;AAAA,KAGU,oBAAA,GAAuB,eAAA;EACjC,UAAA;AAAA;AAAA,KAGU,2BAAA;EACV,MAAA;EACA,KAAA;AAAA;AAAA,KAGU,8BAAA;EACL,MAAA;AAAA,IAAmB,2BAAA;EACnB,MAAA;AAAA,IAAmB,2BAAA;AAAA,KAEd,4BAAA;EACV,EAAA;EACA,KAAA;EACA,KAAA;EACA,SAAA;EACA,QAAA;AAAA;AAAA,KAGU,eAAA;EACV,WAAA;EACA,oBAAA,EAAsB,4BAAA;AAAA;AAAA,KAGZ,gCAAA;EACV,YAAA;EACA,eAAA;AAAA;AAAA,KAGU,QAAA;EAAA,SAEC,EAAA;EAET,iBAAA,CAAkB,OAAA;IACZ,SAAA;IAAmB,SAAA;EAAA,KACpB,QAAA;IAA0B,OAAA,EAAS,aAAA;IAAe,SAAA;EAAA,cACnD,OAAA;EAEJ,8BAAA,IAAkC,OAAA,CAAQ,gCAAA;EAE1C,sCAAA,CAAuC,aAAA,WAAwB,OAAA,CAAQ,4BAAA;EAEvE,kBAAA,CAAmB,OAAA;IAAW,aAAA;IAAuB,WAAA;IAAqB,OAAA;IAAkB,QAAA;EAAA,IAAsB,OAAA;AAAA,IAElH,kBAAA,gBAGA,eAAA,WAGA,kBAAA,UAEC,MAAA,WACD,QAAA,gBAAwB,UAAA,GAAa,IAAA,WAGrC,kBAAA,cAEC,OAAA,GAAU,2BAAA,GACX,oBAAA,UAGA,kBAAA,cAEC,OAAA,GAAU,2BAAA,GACX,oBAAA,WAGC,QAAA;EACD,YAAA,CACE,OAAA;IAAW,SAAA;IAAmB,QAAA;EAAA;IAAwB,OAAA,EAAS,aAAA;IAAe,QAAA;EAAA,IAC7E,OAAA;AAAA"}
|
|
File without changes
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { AsyncStoreProperty } from "../common.js";
|
|
2
|
+
|
|
3
|
+
//#region src/lib/stack-app/data-vault/index.d.ts
|
|
4
|
+
type DataVaultStore = {
|
|
5
|
+
id: string;
|
|
6
|
+
setValue: (key: string, value: string, options: {
|
|
7
|
+
secret: string;
|
|
8
|
+
}) => Promise<void>;
|
|
9
|
+
} & AsyncStoreProperty<"value", [key: string, options: {
|
|
10
|
+
secret: string;
|
|
11
|
+
}], string | null, false>;
|
|
12
|
+
//#endregion
|
|
13
|
+
export { DataVaultStore };
|
|
14
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../../src/lib/stack-app/data-vault/index.ts"],"mappings":";;;KAMY,cAAA;EAER,EAAA;EACA,QAAA,GAAW,GAAA,UAAa,KAAA,UAAe,OAAA;IAAW,MAAA;EAAA,MAAqB,OAAA;AAAA,IAExE,kBAAA,WAA6B,GAAA,UAAa,OAAA;EAAW,MAAA;AAAA"}
|
|
File without changes
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
import { Json } from "@hexclave/shared/dist/utils/json";
|
|
2
|
+
import { XOR } from "@hexclave/shared/dist/utils/types";
|
|
3
|
+
|
|
4
|
+
//#region src/lib/stack-app/email/index.d.ts
|
|
5
|
+
type AdminSentEmail = {
|
|
6
|
+
id: string;
|
|
7
|
+
to: string[];
|
|
8
|
+
subject: string;
|
|
9
|
+
recipient: string;
|
|
10
|
+
sentAt: Date;
|
|
11
|
+
error?: unknown;
|
|
12
|
+
};
|
|
13
|
+
type AdminEmailOutboxRecipient = {
|
|
14
|
+
type: "user-primary-email";
|
|
15
|
+
userId: string;
|
|
16
|
+
} | {
|
|
17
|
+
type: "user-custom-emails";
|
|
18
|
+
userId: string;
|
|
19
|
+
emails: string[];
|
|
20
|
+
} | {
|
|
21
|
+
type: "custom-emails";
|
|
22
|
+
emails: string[];
|
|
23
|
+
};
|
|
24
|
+
type AdminEmailOutboxStatus = "paused" | "preparing" | "rendering" | "render-error" | "scheduled" | "queued" | "sending" | "server-error" | "skipped" | "bounced" | "delivery-delayed" | "sent" | "opened" | "clicked" | "marked-as-spam";
|
|
25
|
+
type AdminEmailOutboxSimpleStatus = "in-progress" | "ok" | "error";
|
|
26
|
+
type AdminEmailOutboxCreatedWith = "draft" | "programmatic-call";
|
|
27
|
+
type AdminSendAttemptError = {
|
|
28
|
+
attemptNumber: number;
|
|
29
|
+
timestamp: string;
|
|
30
|
+
externalMessage: string;
|
|
31
|
+
externalDetails: Record<string, unknown>;
|
|
32
|
+
internalMessage: string;
|
|
33
|
+
internalDetails: Record<string, unknown>;
|
|
34
|
+
};
|
|
35
|
+
type AdminEmailOutboxBase = {
|
|
36
|
+
id: string;
|
|
37
|
+
createdAt: Date;
|
|
38
|
+
updatedAt: Date;
|
|
39
|
+
tsxSource: string;
|
|
40
|
+
themeId: string | null;
|
|
41
|
+
to: AdminEmailOutboxRecipient;
|
|
42
|
+
scheduledAt: Date;
|
|
43
|
+
createdWith: AdminEmailOutboxCreatedWith;
|
|
44
|
+
emailDraftId: string | null;
|
|
45
|
+
emailProgrammaticCallTemplateId: string | null;
|
|
46
|
+
variables: Record<string, Json>;
|
|
47
|
+
isPaused: false;
|
|
48
|
+
hasRendered: false;
|
|
49
|
+
hasDelivered: false;
|
|
50
|
+
sendRetries: number;
|
|
51
|
+
nextSendRetryAt: Date | null;
|
|
52
|
+
sendAttemptErrors: AdminSendAttemptError[] | null;
|
|
53
|
+
};
|
|
54
|
+
type AdminEmailOutboxRenderedFields = Omit<AdminEmailOutboxBase, "hasRendered"> & {
|
|
55
|
+
hasRendered: true;
|
|
56
|
+
startedRenderingAt: Date;
|
|
57
|
+
renderedAt: Date;
|
|
58
|
+
subject: string;
|
|
59
|
+
html: string | null;
|
|
60
|
+
text: string | null;
|
|
61
|
+
isTransactional: boolean;
|
|
62
|
+
isHighPriority: boolean;
|
|
63
|
+
notificationCategoryId: string | null;
|
|
64
|
+
};
|
|
65
|
+
type AdminEmailOutboxStartedSendingFields = AdminEmailOutboxRenderedFields & {
|
|
66
|
+
startedSendingAt: Date;
|
|
67
|
+
};
|
|
68
|
+
type AdminEmailOutboxFinishedDeliveringFields = Omit<AdminEmailOutboxStartedSendingFields, "hasDelivered"> & {
|
|
69
|
+
hasDelivered: true;
|
|
70
|
+
deliveredAt: Date;
|
|
71
|
+
};
|
|
72
|
+
type AdminEmailOutboxPaused = Omit<AdminEmailOutboxBase, "isPaused"> & {
|
|
73
|
+
status: "paused";
|
|
74
|
+
simpleStatus: "in-progress";
|
|
75
|
+
isPaused: true;
|
|
76
|
+
};
|
|
77
|
+
type AdminEmailOutboxPreparing = AdminEmailOutboxBase & {
|
|
78
|
+
status: "preparing";
|
|
79
|
+
simpleStatus: "in-progress";
|
|
80
|
+
};
|
|
81
|
+
type AdminEmailOutboxRendering = AdminEmailOutboxBase & {
|
|
82
|
+
status: "rendering";
|
|
83
|
+
simpleStatus: "in-progress";
|
|
84
|
+
startedRenderingAt: Date;
|
|
85
|
+
};
|
|
86
|
+
type AdminEmailOutboxRenderError = AdminEmailOutboxBase & {
|
|
87
|
+
status: "render-error";
|
|
88
|
+
simpleStatus: "error";
|
|
89
|
+
startedRenderingAt: Date;
|
|
90
|
+
renderedAt: Date;
|
|
91
|
+
renderError: string;
|
|
92
|
+
};
|
|
93
|
+
type AdminEmailOutboxScheduled = AdminEmailOutboxRenderedFields & {
|
|
94
|
+
status: "scheduled";
|
|
95
|
+
simpleStatus: "in-progress";
|
|
96
|
+
};
|
|
97
|
+
type AdminEmailOutboxQueued = AdminEmailOutboxRenderedFields & {
|
|
98
|
+
status: "queued";
|
|
99
|
+
simpleStatus: "in-progress";
|
|
100
|
+
};
|
|
101
|
+
type AdminEmailOutboxSending = AdminEmailOutboxStartedSendingFields & {
|
|
102
|
+
status: "sending";
|
|
103
|
+
simpleStatus: "in-progress";
|
|
104
|
+
};
|
|
105
|
+
type AdminEmailOutboxServerError = AdminEmailOutboxStartedSendingFields & {
|
|
106
|
+
status: "server-error";
|
|
107
|
+
simpleStatus: "error";
|
|
108
|
+
errorAt: Date;
|
|
109
|
+
serverError: string;
|
|
110
|
+
};
|
|
111
|
+
type AdminEmailOutboxSkipped = Omit<AdminEmailOutboxBase, "hasRendered"> & {
|
|
112
|
+
status: "skipped";
|
|
113
|
+
simpleStatus: "ok";
|
|
114
|
+
hasRendered: boolean;
|
|
115
|
+
skippedAt: Date;
|
|
116
|
+
skippedReason: string;
|
|
117
|
+
skippedDetails: Record<string, unknown>;
|
|
118
|
+
startedRenderingAt?: Date;
|
|
119
|
+
renderedAt?: Date;
|
|
120
|
+
subject?: string;
|
|
121
|
+
html?: string | null;
|
|
122
|
+
text?: string | null;
|
|
123
|
+
isTransactional?: boolean;
|
|
124
|
+
isHighPriority?: boolean;
|
|
125
|
+
notificationCategoryId?: string | null;
|
|
126
|
+
startedSendingAt?: Date;
|
|
127
|
+
};
|
|
128
|
+
type AdminEmailOutboxBounced = AdminEmailOutboxStartedSendingFields & {
|
|
129
|
+
status: "bounced";
|
|
130
|
+
simpleStatus: "error";
|
|
131
|
+
bouncedAt: Date;
|
|
132
|
+
};
|
|
133
|
+
type AdminEmailOutboxDeliveryDelayed = AdminEmailOutboxStartedSendingFields & {
|
|
134
|
+
status: "delivery-delayed";
|
|
135
|
+
simpleStatus: "ok";
|
|
136
|
+
deliveryDelayedAt: Date;
|
|
137
|
+
};
|
|
138
|
+
type AdminEmailOutboxSent = AdminEmailOutboxFinishedDeliveringFields & {
|
|
139
|
+
status: "sent";
|
|
140
|
+
simpleStatus: "ok";
|
|
141
|
+
canHaveDeliveryInfo: boolean;
|
|
142
|
+
};
|
|
143
|
+
type AdminEmailOutboxOpened = AdminEmailOutboxFinishedDeliveringFields & {
|
|
144
|
+
status: "opened";
|
|
145
|
+
simpleStatus: "ok";
|
|
146
|
+
openedAt: Date;
|
|
147
|
+
canHaveDeliveryInfo: true;
|
|
148
|
+
};
|
|
149
|
+
type AdminEmailOutboxClicked = AdminEmailOutboxFinishedDeliveringFields & {
|
|
150
|
+
status: "clicked";
|
|
151
|
+
simpleStatus: "ok";
|
|
152
|
+
clickedAt: Date;
|
|
153
|
+
canHaveDeliveryInfo: true;
|
|
154
|
+
};
|
|
155
|
+
type AdminEmailOutboxMarkedAsSpam = AdminEmailOutboxFinishedDeliveringFields & {
|
|
156
|
+
status: "marked-as-spam";
|
|
157
|
+
simpleStatus: "ok";
|
|
158
|
+
markedAsSpamAt: Date;
|
|
159
|
+
canHaveDeliveryInfo: true;
|
|
160
|
+
};
|
|
161
|
+
type AdminEmailOutbox = AdminEmailOutboxPaused | AdminEmailOutboxPreparing | AdminEmailOutboxRendering | AdminEmailOutboxRenderError | AdminEmailOutboxScheduled | AdminEmailOutboxQueued | AdminEmailOutboxSending | AdminEmailOutboxServerError | AdminEmailOutboxSkipped | AdminEmailOutboxBounced | AdminEmailOutboxDeliveryDelayed | AdminEmailOutboxSent | AdminEmailOutboxOpened | AdminEmailOutboxClicked | AdminEmailOutboxMarkedAsSpam;
|
|
162
|
+
type SendEmailOptionsBase = {
|
|
163
|
+
themeId?: string | null | false;
|
|
164
|
+
subject?: string;
|
|
165
|
+
notificationCategoryName?: string;
|
|
166
|
+
scheduledAt?: Date;
|
|
167
|
+
variables?: Record<string, unknown>;
|
|
168
|
+
};
|
|
169
|
+
type SendEmailOptions = SendEmailOptionsBase & XOR<[{
|
|
170
|
+
userIds: string[];
|
|
171
|
+
}, {
|
|
172
|
+
allUsers: true;
|
|
173
|
+
}]> & XOR<[{
|
|
174
|
+
html: string;
|
|
175
|
+
}, {
|
|
176
|
+
templateId: string;
|
|
177
|
+
}, {
|
|
178
|
+
draftId: string;
|
|
179
|
+
}]>;
|
|
180
|
+
type EmailDeliveryWindowStats = {
|
|
181
|
+
sent: number;
|
|
182
|
+
bounced: number;
|
|
183
|
+
marked_as_spam: number;
|
|
184
|
+
};
|
|
185
|
+
type EmailDeliveryStats = {
|
|
186
|
+
hour: EmailDeliveryWindowStats;
|
|
187
|
+
day: EmailDeliveryWindowStats;
|
|
188
|
+
week: EmailDeliveryWindowStats;
|
|
189
|
+
month: EmailDeliveryWindowStats;
|
|
190
|
+
};
|
|
191
|
+
type EmailDeliveryCapacity = {
|
|
192
|
+
rate_per_second: number;
|
|
193
|
+
boost_multiplier: number;
|
|
194
|
+
penalty_factor: number;
|
|
195
|
+
is_boost_active: boolean;
|
|
196
|
+
boost_expires_at: string | null;
|
|
197
|
+
};
|
|
198
|
+
type EmailDeliveryInfo = {
|
|
199
|
+
stats: EmailDeliveryStats;
|
|
200
|
+
capacity: EmailDeliveryCapacity;
|
|
201
|
+
};
|
|
202
|
+
//#endregion
|
|
203
|
+
export { AdminEmailOutbox, AdminEmailOutboxBounced, AdminEmailOutboxClicked, AdminEmailOutboxCreatedWith, AdminEmailOutboxDeliveryDelayed, AdminEmailOutboxMarkedAsSpam, AdminEmailOutboxOpened, AdminEmailOutboxPaused, AdminEmailOutboxPreparing, AdminEmailOutboxQueued, AdminEmailOutboxRecipient, AdminEmailOutboxRenderError, AdminEmailOutboxRendering, AdminEmailOutboxScheduled, AdminEmailOutboxSending, AdminEmailOutboxSent, AdminEmailOutboxServerError, AdminEmailOutboxSimpleStatus, AdminEmailOutboxSkipped, AdminEmailOutboxStatus, AdminSendAttemptError, AdminSentEmail, EmailDeliveryCapacity, EmailDeliveryInfo, EmailDeliveryStats, EmailDeliveryWindowStats, SendEmailOptions };
|
|
204
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../../src/lib/stack-app/email/index.ts"],"mappings":"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"}
|
|
File without changes
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { EmailTemplateCrud, EmailTemplateType } from "@hexclave/shared/dist/interface/crud/email-templates";
|
|
2
|
+
|
|
3
|
+
//#region src/lib/stack-app/email-templates/index.d.ts
|
|
4
|
+
type AdminEmailTemplate = {
|
|
5
|
+
type: EmailTemplateType;
|
|
6
|
+
subject: string;
|
|
7
|
+
content: any;
|
|
8
|
+
isDefault: boolean;
|
|
9
|
+
};
|
|
10
|
+
type AdminEmailTemplateUpdateOptions = {
|
|
11
|
+
subject?: string;
|
|
12
|
+
content?: any;
|
|
13
|
+
};
|
|
14
|
+
declare function adminEmailTemplateUpdateOptionsToCrud(options: AdminEmailTemplateUpdateOptions): EmailTemplateCrud['Admin']['Update'];
|
|
15
|
+
//#endregion
|
|
16
|
+
export { AdminEmailTemplate, AdminEmailTemplateUpdateOptions, adminEmailTemplateUpdateOptionsToCrud };
|
|
17
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../../src/lib/stack-app/email-templates/index.ts"],"mappings":";;;KAOY,kBAAA;EACV,IAAA,EAAM,iBAAA;EACN,OAAA;EACA,OAAA;EACA,SAAA;AAAA;AAAA,KAGU,+BAAA;EACV,OAAA;EACA,OAAA;AAAA;AAAA,iBAEc,qCAAA,CAAsC,OAAA,EAAS,+BAAA,GAAkC,iBAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
+
|
|
3
|
+
//#region src/lib/stack-app/email-templates/index.ts
|
|
4
|
+
function adminEmailTemplateUpdateOptionsToCrud(options) {
|
|
5
|
+
return {
|
|
6
|
+
subject: options.subject,
|
|
7
|
+
content: options.content
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
//#endregion
|
|
12
|
+
exports.adminEmailTemplateUpdateOptionsToCrud = adminEmailTemplateUpdateOptionsToCrud;
|
|
13
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../src/lib/stack-app/email-templates/index.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//===========================================\nimport { EmailTemplateCrud, EmailTemplateType } from \"@stackframe/stack-shared/dist/interface/crud/email-templates\";\n\n\nexport type AdminEmailTemplate = {\n type: EmailTemplateType,\n subject: string,\n content: any,\n isDefault: boolean,\n}\n\nexport type AdminEmailTemplateUpdateOptions = {\n subject?: string,\n content?: any,\n};\nexport function adminEmailTemplateUpdateOptionsToCrud(options: AdminEmailTemplateUpdateOptions): EmailTemplateCrud['Admin']['Update'] {\n return {\n subject: options.subject,\n content: options.content,\n };\n}\n"],"mappings":";;;AAkBA,SAAgB,sCAAsC,SAAgF;AACpI,QAAO;EACL,SAAS,QAAQ;EACjB,SAAS,QAAQ;EAClB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { GetCurrentUserOptions, HandlerUrlOptions, HandlerUrls, OAuthScopesOnSignIn, ResolvedHandlerUrls, stackAppInternalsSymbol } from "./common.js";
|
|
2
|
+
import { AdminEmailOutbox, AdminEmailOutboxRecipient, AdminEmailOutboxSimpleStatus, AdminEmailOutboxStatus, AdminSendAttemptError, AdminSentEmail } from "./email/index.js";
|
|
3
|
+
import { InternalApiKey, InternalApiKeyBase, InternalApiKeyBaseCrudRead, InternalApiKeyCreateOptions, InternalApiKeyFirstView } from "./internal-api-keys/index.js";
|
|
4
|
+
import { AdminProjectPermission, AdminProjectPermissionDefinition, AdminProjectPermissionDefinitionCreateOptions, AdminProjectPermissionDefinitionUpdateOptions, AdminTeamPermission, AdminTeamPermissionDefinition, AdminTeamPermissionDefinitionCreateOptions, AdminTeamPermissionDefinitionUpdateOptions } from "./permissions/index.js";
|
|
5
|
+
import { Connection, OAuthConnection } from "./connected-accounts/index.js";
|
|
6
|
+
import { ContactChannel, ServerContactChannel } from "./contact-channels/index.js";
|
|
7
|
+
import { Auth, CurrentInternalServerUser, CurrentInternalUser, CurrentServerUser, CurrentUser, OAuthProvider, ServerOAuthProvider, ServerUser, User } from "./users/index.js";
|
|
8
|
+
import { EditableTeamMemberProfile, ReceivedTeamInvitation, SentTeamInvitation, ServerListUsersOptions, ServerTeam, ServerTeamCreateOptions, ServerTeamMemberProfile, ServerTeamUpdateOptions, ServerTeamUser, Team, TeamCreateOptions, TeamInvitation, TeamMemberProfile, TeamUpdateOptions, TeamUser } from "./teams/index.js";
|
|
9
|
+
import { HexclaveServerApp, HexclaveServerAppConstructor, HexclaveServerAppConstructorOptions, StackServerApp, StackServerAppConstructor, StackServerAppConstructorOptions } from "./apps/interfaces/server-app.js";
|
|
10
|
+
import { EmailOutboxListOptions, EmailOutboxListResult, EmailOutboxUpdateOptions, HexclaveAdminApp, HexclaveAdminAppConstructor, HexclaveAdminAppConstructorOptions, StackAdminApp, StackAdminAppConstructor, StackAdminAppConstructorOptions } from "./apps/interfaces/admin-app.js";
|
|
11
|
+
import { AdminDomainConfig, AdminEmailConfig, AdminOAuthProviderConfig, AdminProjectConfig, AdminProjectConfigUpdateOptions, OAuthProviderConfig, ProjectConfig } from "./project-configs/index.js";
|
|
12
|
+
import { AdminOwnedProject, AdminProject, AdminProjectCreateOptions, AdminProjectUpdateOptions, Project, PushedConfigSource } from "./projects/index.js";
|
|
13
|
+
import { HexclaveClientApp, HexclaveClientAppConstructor, HexclaveClientAppConstructorOptions, HexclaveClientAppJson, StackClientApp, StackClientAppConstructor, StackClientAppConstructorOptions, StackClientAppJson } from "./apps/interfaces/client-app.js";
|
|
14
|
+
import { getPagePrompt } from "./url-targets.js";
|
|
15
|
+
export { type AdminDomainConfig, type AdminEmailConfig, type AdminEmailOutbox, type AdminEmailOutboxRecipient, type AdminEmailOutboxSimpleStatus, type AdminEmailOutboxStatus, type AdminOAuthProviderConfig, type AdminOwnedProject, type AdminProject, type AdminProjectConfig, type AdminProjectConfigUpdateOptions, type AdminProjectCreateOptions, type AdminProjectPermission, type AdminProjectPermissionDefinition, type AdminProjectPermissionDefinitionCreateOptions, type AdminProjectPermissionDefinitionUpdateOptions, type AdminProjectUpdateOptions, type AdminSendAttemptError, type AdminSentEmail, type AdminTeamPermission, type AdminTeamPermissionDefinition, type AdminTeamPermissionDefinitionCreateOptions, type AdminTeamPermissionDefinitionUpdateOptions, type Auth, type Connection, type ContactChannel, type CurrentInternalServerUser, type CurrentInternalUser, type CurrentServerUser, type CurrentUser, type EditableTeamMemberProfile, type EmailOutboxListOptions, type EmailOutboxListResult, type EmailOutboxUpdateOptions, type GetCurrentUserOptions, type GetCurrentUserOptions as GetUserOptions, type HandlerUrlOptions, type HandlerUrls, HexclaveAdminApp, type HexclaveAdminAppConstructor, type HexclaveAdminAppConstructorOptions, HexclaveClientApp, type HexclaveClientAppConstructor, type HexclaveClientAppConstructorOptions, type HexclaveClientAppJson, HexclaveServerApp, type HexclaveServerAppConstructor, type HexclaveServerAppConstructorOptions, type InternalApiKey, type InternalApiKeyBase, type InternalApiKeyBaseCrudRead, type InternalApiKeyCreateOptions, type InternalApiKeyFirstView, type OAuthConnection, type OAuthProvider, type OAuthProviderConfig, type OAuthScopesOnSignIn, type Project, type ProjectConfig, type PushedConfigSource, type ReceivedTeamInvitation, type ResolvedHandlerUrls, type SentTeamInvitation, type ServerContactChannel, type ServerListUsersOptions, type ServerOAuthProvider, type ServerTeam, type ServerTeamCreateOptions, type ServerTeamMemberProfile, type ServerTeamUpdateOptions, type ServerTeamUser, type ServerUser, StackAdminApp, type StackAdminAppConstructor, type StackAdminAppConstructorOptions, StackClientApp, type StackClientAppConstructor, type StackClientAppConstructorOptions, type StackClientAppJson, StackServerApp, type StackServerAppConstructor, type StackServerAppConstructorOptions, type Team, type TeamCreateOptions, type TeamInvitation, type TeamMemberProfile, type TeamUpdateOptions, type TeamUser, type User, getPagePrompt, stackAppInternalsSymbol };
|