@stackframe/stack-shared 2.8.8 → 2.8.11
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/CHANGELOG.md +14 -0
- package/dist/config/format.d.cts +39 -0
- package/dist/config/format.d.ts +14 -13
- package/dist/config/format.js +147 -206
- package/dist/config/format.js.map +1 -0
- package/dist/config/schema.d.cts +729 -0
- package/dist/config/schema.d.ts +59 -51
- package/dist/config/schema.js +232 -172
- package/dist/config/schema.js.map +1 -0
- package/dist/crud.d.cts +102 -0
- package/dist/crud.d.ts +15 -13
- package/dist/crud.js +83 -128
- package/dist/crud.js.map +1 -0
- package/dist/esm/config/format.js +135 -0
- package/dist/esm/config/format.js.map +1 -0
- package/dist/esm/config/schema.js +201 -0
- package/dist/esm/config/schema.js.map +1 -0
- package/dist/esm/crud.js +60 -0
- package/dist/esm/crud.js.map +1 -0
- package/dist/esm/global.d.js +1 -0
- package/dist/esm/global.d.js.map +1 -0
- package/dist/esm/helpers/password.js +17 -0
- package/dist/esm/helpers/password.js.map +1 -0
- package/dist/esm/helpers/production-mode.js +50 -0
- package/dist/esm/helpers/production-mode.js.map +1 -0
- package/dist/esm/hooks/use-async-callback.js +38 -0
- package/dist/esm/hooks/use-async-callback.js.map +1 -0
- package/dist/esm/hooks/use-async-external-store.js +23 -0
- package/dist/esm/hooks/use-async-external-store.js.map +1 -0
- package/dist/esm/hooks/use-hash.js +17 -0
- package/dist/esm/hooks/use-hash.js.map +1 -0
- package/dist/esm/hooks/use-strict-memo.js +61 -0
- package/dist/esm/hooks/use-strict-memo.js.map +1 -0
- package/dist/esm/index.js +22 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/interface/adminInterface.js +244 -0
- package/dist/esm/interface/adminInterface.js.map +1 -0
- package/dist/esm/interface/clientInterface.js +2041 -0
- package/dist/esm/interface/clientInterface.js.map +1 -0
- package/dist/esm/interface/crud/contact-channels.js +77 -0
- package/dist/esm/interface/crud/contact-channels.js.map +1 -0
- package/dist/esm/interface/crud/current-user.js +65 -0
- package/dist/esm/interface/crud/current-user.js.map +1 -0
- package/dist/esm/interface/crud/email-templates.js +52 -0
- package/dist/esm/interface/crud/email-templates.js.map +1 -0
- package/dist/esm/interface/crud/emails.js +20 -0
- package/dist/esm/interface/crud/emails.js.map +1 -0
- package/dist/esm/interface/crud/internal-api-keys.js +69 -0
- package/dist/esm/interface/crud/internal-api-keys.js.map +1 -0
- package/dist/esm/interface/crud/oauth.js +24 -0
- package/dist/esm/interface/crud/oauth.js.map +1 -0
- package/dist/esm/interface/crud/project-api-keys.js +93 -0
- package/dist/esm/interface/crud/project-api-keys.js.map +1 -0
- package/dist/esm/interface/crud/project-permissions.js +113 -0
- package/dist/esm/interface/crud/project-permissions.js.map +1 -0
- package/dist/esm/interface/crud/projects.js +180 -0
- package/dist/esm/interface/crud/projects.js.map +1 -0
- package/dist/esm/interface/crud/sessions.js +62 -0
- package/dist/esm/interface/crud/sessions.js.map +1 -0
- package/dist/esm/interface/crud/svix-token.js +22 -0
- package/dist/esm/interface/crud/svix-token.js.map +1 -0
- package/dist/esm/interface/crud/team-invitation-details.js +23 -0
- package/dist/esm/interface/crud/team-invitation-details.js.map +1 -0
- package/dist/esm/interface/crud/team-invitation.js +36 -0
- package/dist/esm/interface/crud/team-invitation.js.map +1 -0
- package/dist/esm/interface/crud/team-member-profiles.js +62 -0
- package/dist/esm/interface/crud/team-member-profiles.js.map +1 -0
- package/dist/esm/interface/crud/team-memberships.js +60 -0
- package/dist/esm/interface/crud/team-memberships.js.map +1 -0
- package/dist/esm/interface/crud/team-permissions.js +114 -0
- package/dist/esm/interface/crud/team-permissions.js.map +1 -0
- package/dist/esm/interface/crud/teams.js +143 -0
- package/dist/esm/interface/crud/teams.js.map +1 -0
- package/dist/esm/interface/crud/users.js +139 -0
- package/dist/esm/interface/crud/users.js.map +1 -0
- package/dist/esm/interface/serverInterface.js +485 -0
- package/dist/esm/interface/serverInterface.js.map +1 -0
- package/dist/esm/interface/webhooks.js +21 -0
- package/dist/esm/interface/webhooks.js.map +1 -0
- package/dist/esm/known-errors.js +1238 -0
- package/dist/esm/known-errors.js.map +1 -0
- package/dist/esm/schema-fields.js +484 -0
- package/dist/esm/schema-fields.js.map +1 -0
- package/dist/esm/sessions.js +168 -0
- package/dist/esm/sessions.js.map +1 -0
- package/dist/esm/utils/api-keys.js +79 -0
- package/dist/esm/utils/api-keys.js.map +1 -0
- package/dist/esm/utils/arrays.js +78 -0
- package/dist/esm/utils/arrays.js.map +1 -0
- package/dist/esm/utils/base64.js +18 -0
- package/dist/esm/utils/base64.js.map +1 -0
- package/dist/esm/utils/booleans.js +12 -0
- package/dist/esm/utils/booleans.js.map +1 -0
- package/dist/esm/utils/browser-compat.js +21 -0
- package/dist/esm/utils/browser-compat.js.map +1 -0
- package/dist/esm/utils/bytes.js +160 -0
- package/dist/esm/utils/bytes.js.map +1 -0
- package/dist/esm/utils/caches.js +167 -0
- package/dist/esm/utils/caches.js.map +1 -0
- package/dist/esm/utils/compile-time.js +11 -0
- package/dist/esm/utils/compile-time.js.map +1 -0
- package/dist/esm/utils/crypto.js +25 -0
- package/dist/esm/utils/crypto.js.map +1 -0
- package/dist/esm/utils/dates.js +64 -0
- package/dist/esm/utils/dates.js.map +1 -0
- package/dist/esm/utils/dom.js +11 -0
- package/dist/esm/utils/dom.js.map +1 -0
- package/dist/esm/utils/env.js +58 -0
- package/dist/esm/utils/env.js.map +1 -0
- package/dist/esm/utils/errors.js +174 -0
- package/dist/esm/utils/errors.js.map +1 -0
- package/dist/esm/utils/fs.js +37 -0
- package/dist/esm/utils/fs.js.map +1 -0
- package/dist/esm/utils/functions.js +12 -0
- package/dist/esm/utils/functions.js.map +1 -0
- package/dist/esm/utils/geo.js +15 -0
- package/dist/esm/utils/geo.js.map +1 -0
- package/dist/esm/utils/globals.js +18 -0
- package/dist/esm/utils/globals.js.map +1 -0
- package/dist/esm/utils/hashes.js +55 -0
- package/dist/esm/utils/hashes.js.map +1 -0
- package/dist/esm/utils/html.js +13 -0
- package/dist/esm/utils/html.js.map +1 -0
- package/dist/esm/utils/http.js +60 -0
- package/dist/esm/utils/http.js.map +1 -0
- package/dist/esm/utils/ips.js +15 -0
- package/dist/esm/utils/ips.js.map +1 -0
- package/dist/esm/utils/json.js +31 -0
- package/dist/esm/utils/json.js.map +1 -0
- package/dist/esm/utils/jwt.js +87 -0
- package/dist/esm/utils/jwt.js.map +1 -0
- package/dist/esm/utils/locks.js +57 -0
- package/dist/esm/utils/locks.js.map +1 -0
- package/dist/esm/utils/maps.js +181 -0
- package/dist/esm/utils/maps.js.map +1 -0
- package/dist/esm/utils/math.js +8 -0
- package/dist/esm/utils/math.js.map +1 -0
- package/dist/esm/utils/node-http.js +42 -0
- package/dist/esm/utils/node-http.js.map +1 -0
- package/dist/esm/utils/numbers.js +32 -0
- package/dist/esm/utils/numbers.js.map +1 -0
- package/dist/esm/utils/oauth.js +10 -0
- package/dist/esm/utils/oauth.js.map +1 -0
- package/dist/esm/utils/objects.js +177 -0
- package/dist/esm/utils/objects.js.map +1 -0
- package/dist/esm/utils/passkey.js +1 -0
- package/dist/esm/utils/passkey.js.map +1 -0
- package/dist/esm/utils/promises.js +233 -0
- package/dist/esm/utils/promises.js.map +1 -0
- package/dist/esm/utils/proxies.js +128 -0
- package/dist/esm/utils/proxies.js.map +1 -0
- package/dist/esm/utils/react.js +78 -0
- package/dist/esm/utils/react.js.map +1 -0
- package/dist/esm/utils/results.js +141 -0
- package/dist/esm/utils/results.js.map +1 -0
- package/dist/esm/utils/sentry.js +20 -0
- package/dist/esm/utils/sentry.js.map +1 -0
- package/dist/esm/utils/stores.js +195 -0
- package/dist/esm/utils/stores.js.map +1 -0
- package/dist/esm/utils/strings.js +295 -0
- package/dist/esm/utils/strings.js.map +1 -0
- package/dist/esm/utils/strings.nicify.test.js +222 -0
- package/dist/esm/utils/strings.nicify.test.js.map +1 -0
- package/dist/esm/utils/types.js +1 -0
- package/dist/esm/utils/types.js.map +1 -0
- package/dist/esm/utils/unicode.js +11 -0
- package/dist/esm/utils/unicode.js.map +1 -0
- package/dist/esm/utils/urls.js +53 -0
- package/dist/esm/utils/urls.js.map +1 -0
- package/dist/esm/utils/uuids.js +16 -0
- package/dist/esm/utils/uuids.js.map +1 -0
- package/dist/global.d.d.cts +1 -0
- package/dist/global.d.d.ts +1 -0
- package/dist/global.d.js +2 -0
- package/dist/global.d.js.map +1 -0
- package/dist/helpers/password.d.cts +11 -0
- package/dist/helpers/password.d.ts +11 -2
- package/dist/helpers/password.js +41 -11
- package/dist/helpers/password.js.map +1 -0
- package/dist/helpers/production-mode.d.cts +12 -0
- package/dist/helpers/production-mode.d.ts +9 -3
- package/dist/helpers/production-mode.js +72 -45
- package/dist/helpers/production-mode.js.map +1 -0
- package/dist/hooks/use-async-callback.d.cts +6 -0
- package/dist/hooks/use-async-callback.d.ts +6 -3
- package/dist/hooks/use-async-callback.js +72 -30
- package/dist/hooks/use-async-callback.js.map +1 -0
- package/dist/hooks/use-async-external-store.d.cts +7 -0
- package/dist/hooks/use-async-external-store.d.ts +5 -2
- package/dist/hooks/use-async-external-store.js +47 -19
- package/dist/hooks/use-async-external-store.js.map +1 -0
- package/dist/hooks/use-hash.d.cts +3 -0
- package/dist/hooks/use-hash.d.ts +3 -1
- package/dist/hooks/use-hash.js +41 -8
- package/dist/hooks/use-hash.js.map +1 -0
- package/dist/hooks/use-strict-memo.d.cts +8 -0
- package/dist/hooks/use-strict-memo.d.ts +3 -1
- package/dist/hooks/use-strict-memo.js +78 -131
- package/dist/hooks/use-strict-memo.js.map +1 -0
- package/dist/index.d.cts +30 -0
- package/dist/index.d.ts +30 -4
- package/dist/index.js +42 -4
- package/dist/index.js.map +1 -0
- package/dist/interface/adminInterface.d.cts +94 -0
- package/dist/interface/adminInterface.d.ts +38 -15
- package/dist/interface/adminInterface.js +269 -174
- package/dist/interface/adminInterface.js.map +1 -0
- package/dist/interface/clientInterface.d.cts +260 -0
- package/dist/interface/clientInterface.d.ts +25 -18
- package/dist/interface/clientInterface.js +2054 -995
- package/dist/interface/clientInterface.js.map +1 -0
- package/dist/interface/crud/contact-channels.d.cts +180 -0
- package/dist/interface/crud/contact-channels.d.ts +30 -25
- package/dist/interface/crud/contact-channels.js +101 -59
- package/dist/interface/crud/contact-channels.js.map +1 -0
- package/dist/interface/crud/current-user.d.cts +205 -0
- package/dist/interface/crud/current-user.d.ts +17 -12
- package/dist/interface/crud/current-user.js +86 -56
- package/dist/interface/crud/current-user.js.map +1 -0
- package/dist/interface/crud/email-templates.d.cts +84 -0
- package/dist/interface/crud/email-templates.d.ts +24 -19
- package/dist/interface/crud/email-templates.js +77 -37
- package/dist/interface/crud/email-templates.js.map +1 -0
- package/dist/interface/crud/emails.d.cts +69 -0
- package/dist/interface/crud/emails.d.ts +12 -7
- package/dist/interface/crud/emails.js +54 -12
- package/dist/interface/crud/emails.js.map +1 -0
- package/dist/interface/crud/internal-api-keys.d.cts +139 -0
- package/dist/interface/crud/internal-api-keys.d.ts +22 -17
- package/dist/interface/crud/internal-api-keys.js +92 -54
- package/dist/interface/crud/internal-api-keys.js.map +1 -0
- package/dist/interface/crud/oauth.d.cts +34 -0
- package/dist/interface/crud/oauth.d.ts +16 -11
- package/dist/interface/crud/oauth.js +48 -14
- package/dist/interface/crud/oauth.js.map +1 -0
- package/dist/interface/crud/project-api-keys.d.cts +196 -0
- package/dist/interface/crud/project-api-keys.d.ts +20 -12
- package/dist/interface/crud/project-api-keys.js +121 -74
- package/dist/interface/crud/project-api-keys.js.map +1 -0
- package/dist/interface/crud/project-permissions.d.cts +160 -0
- package/dist/interface/crud/project-permissions.d.ts +38 -33
- package/dist/interface/crud/project-permissions.js +148 -90
- package/dist/interface/crud/project-permissions.js.map +1 -0
- package/dist/interface/crud/projects.d.cts +627 -0
- package/dist/interface/crud/projects.d.ts +43 -51
- package/dist/interface/crud/projects.js +210 -156
- package/dist/interface/crud/projects.js.map +1 -0
- package/dist/interface/crud/sessions.d.cts +149 -0
- package/dist/interface/crud/sessions.d.ts +21 -16
- package/dist/interface/crud/sessions.js +86 -50
- package/dist/interface/crud/sessions.js.map +1 -0
- package/dist/interface/crud/svix-token.d.cts +26 -0
- package/dist/interface/crud/svix-token.d.ts +14 -9
- package/dist/interface/crud/svix-token.js +46 -12
- package/dist/interface/crud/svix-token.js.map +1 -0
- package/dist/interface/crud/team-invitation-details.d.cts +30 -0
- package/dist/interface/crud/team-invitation-details.d.ts +12 -7
- package/dist/interface/crud/team-invitation-details.js +57 -15
- package/dist/interface/crud/team-invitation-details.js.map +1 -0
- package/dist/interface/crud/team-invitation.d.cts +49 -0
- package/dist/interface/crud/team-invitation.d.ts +13 -8
- package/dist/interface/crud/team-invitation.js +69 -27
- package/dist/interface/crud/team-invitation.js.map +1 -0
- package/dist/interface/crud/team-member-profiles.d.cts +229 -0
- package/dist/interface/crud/team-member-profiles.d.ts +20 -15
- package/dist/interface/crud/team-member-profiles.js +95 -49
- package/dist/interface/crud/team-member-profiles.js.map +1 -0
- package/dist/interface/crud/team-memberships.d.cts +74 -0
- package/dist/interface/crud/team-memberships.d.ts +22 -17
- package/dist/interface/crud/team-memberships.js +85 -45
- package/dist/interface/crud/team-memberships.js.map +1 -0
- package/dist/interface/crud/team-permissions.d.cts +168 -0
- package/dist/interface/crud/team-permissions.d.ts +38 -33
- package/dist/interface/crud/team-permissions.js +149 -91
- package/dist/interface/crud/team-permissions.js.map +1 -0
- package/dist/interface/crud/teams.d.cts +298 -0
- package/dist/interface/crud/teams.d.ts +45 -40
- package/dist/interface/crud/teams.js +177 -119
- package/dist/interface/crud/teams.js.map +1 -0
- package/dist/interface/crud/users.d.cts +469 -0
- package/dist/interface/crud/users.d.ts +31 -26
- package/dist/interface/crud/users.js +172 -118
- package/dist/interface/crud/users.js.map +1 -0
- package/dist/interface/serverInterface.d.cts +128 -0
- package/dist/interface/serverInterface.d.ts +29 -17
- package/dist/interface/serverInterface.js +506 -339
- package/dist/interface/serverInterface.js.map +1 -0
- package/dist/interface/webhooks.d.cts +292 -0
- package/dist/interface/webhooks.d.ts +6 -3
- package/dist/interface/webhooks.js +45 -15
- package/dist/interface/webhooks.js.map +1 -0
- package/dist/known-errors.d.cts +447 -0
- package/dist/known-errors.d.ts +15 -9
- package/dist/known-errors.js +1104 -562
- package/dist/known-errors.js.map +1 -0
- package/dist/schema-fields.d.cts +163 -0
- package/dist/schema-fields.d.ts +116 -114
- package/dist/schema-fields.js +593 -427
- package/dist/schema-fields.js.map +1 -0
- package/dist/sessions.d.cts +109 -0
- package/dist/sessions.d.ts +6 -3
- package/dist/sessions.js +201 -172
- package/dist/sessions.js.map +1 -0
- package/dist/utils/api-keys.d.cts +24 -0
- package/dist/utils/api-keys.d.ts +5 -4
- package/dist/utils/api-keys.js +106 -66
- package/dist/utils/api-keys.js.map +1 -0
- package/dist/utils/arrays.d.cts +18 -0
- package/dist/utils/arrays.d.ts +15 -13
- package/dist/utils/arrays.js +101 -168
- package/dist/utils/arrays.js.map +1 -0
- package/dist/utils/base64.d.cts +4 -0
- package/dist/utils/base64.d.ts +4 -2
- package/dist/utils/base64.js +41 -20
- package/dist/utils/base64.js.map +1 -0
- package/dist/utils/booleans.d.cts +6 -0
- package/dist/utils/booleans.d.ts +6 -4
- package/dist/utils/booleans.js +35 -27
- package/dist/utils/booleans.js.map +1 -0
- package/dist/utils/browser-compat.d.cts +8 -0
- package/dist/utils/browser-compat.d.ts +3 -1
- package/dist/utils/browser-compat.js +45 -16
- package/dist/utils/browser-compat.js.map +1 -0
- package/dist/utils/bytes.d.cts +15 -0
- package/dist/utils/bytes.d.ts +15 -13
- package/dist/utils/bytes.js +182 -270
- package/dist/utils/bytes.js.map +1 -0
- package/dist/utils/caches.d.cts +98 -0
- package/dist/utils/caches.d.ts +17 -14
- package/dist/utils/caches.js +188 -193
- package/dist/utils/caches.js.map +1 -0
- package/dist/utils/compile-time.d.cts +8 -0
- package/dist/utils/compile-time.d.ts +3 -1
- package/dist/utils/compile-time.js +35 -10
- package/dist/utils/compile-time.js.map +1 -0
- package/dist/utils/crypto.d.cts +8 -0
- package/dist/utils/crypto.d.ts +4 -2
- package/dist/utils/crypto.js +49 -21
- package/dist/utils/crypto.js.map +1 -0
- package/dist/utils/dates.d.cts +15 -0
- package/dist/utils/dates.d.ts +6 -4
- package/dist/utils/dates.js +83 -105
- package/dist/utils/dates.js.map +1 -0
- package/dist/utils/dom.d.cts +3 -0
- package/dist/utils/dom.d.ts +3 -1
- package/dist/utils/dom.js +35 -7
- package/dist/utils/dom.js.map +1 -0
- package/dist/utils/env.d.cts +9 -0
- package/dist/utils/env.d.ts +6 -4
- package/dist/utils/env.js +70 -43
- package/dist/utils/env.js.map +1 -0
- package/dist/utils/errors.d.cts +223 -0
- package/dist/utils/errors.d.ts +14 -11
- package/dist/utils/errors.js +148 -126
- package/dist/utils/errors.js.map +1 -0
- package/dist/utils/fs.d.cts +7 -0
- package/dist/utils/fs.d.ts +5 -3
- package/dist/utils/fs.js +70 -27
- package/dist/utils/fs.js.map +1 -0
- package/dist/utils/functions.d.cts +4 -0
- package/dist/utils/functions.d.ts +4 -2
- package/dist/utils/functions.js +35 -18
- package/dist/utils/functions.js.map +1 -0
- package/dist/utils/geo.d.cts +22 -0
- package/dist/utils/geo.d.ts +6 -3
- package/dist/utils/geo.js +39 -9
- package/dist/utils/geo.js.map +1 -0
- package/dist/utils/globals.d.cts +5 -0
- package/dist/utils/globals.d.ts +4 -2
- package/dist/utils/globals.js +41 -14
- package/dist/utils/globals.js.map +1 -0
- package/dist/utils/hashes.d.cts +7 -0
- package/dist/utils/hashes.d.ts +7 -5
- package/dist/utils/hashes.js +87 -41
- package/dist/utils/hashes.js.map +1 -0
- package/dist/utils/html.d.cts +4 -0
- package/dist/utils/html.d.ts +4 -2
- package/dist/utils/html.js +36 -37
- package/dist/utils/html.js.map +1 -0
- package/dist/utils/http.d.cts +43 -0
- package/dist/utils/http.d.ts +6 -4
- package/dist/utils/http.js +83 -83
- package/dist/utils/http.js.map +1 -0
- package/dist/utils/ips.d.cts +6 -0
- package/dist/utils/ips.d.ts +6 -4
- package/dist/utils/ips.js +48 -35
- package/dist/utils/ips.js.map +1 -0
- package/dist/utils/json.d.cts +13 -0
- package/dist/utils/json.d.ts +9 -6
- package/dist/utils/json.js +54 -157
- package/dist/utils/json.js.map +1 -0
- package/dist/utils/jwt.d.cts +44 -0
- package/dist/utils/jwt.d.ts +14 -11
- package/dist/utils/jwt.js +119 -84
- package/dist/utils/jwt.js.map +1 -0
- package/dist/utils/locks.d.cts +15 -0
- package/dist/utils/locks.d.ts +3 -2
- package/dist/utils/locks.js +76 -56
- package/dist/utils/locks.js.map +1 -0
- package/dist/utils/maps.d.cts +59 -0
- package/dist/utils/maps.d.ts +6 -4
- package/dist/utils/maps.js +207 -343
- package/dist/utils/maps.js.map +1 -0
- package/dist/utils/math.d.cts +6 -0
- package/dist/utils/math.d.ts +3 -1
- package/dist/utils/math.js +31 -16
- package/dist/utils/math.js.map +1 -0
- package/dist/utils/node-http.d.cts +15 -0
- package/dist/utils/node-http.d.ts +5 -5
- package/dist/utils/node-http.js +65 -36
- package/dist/utils/node-http.js.map +1 -0
- package/dist/utils/numbers.d.cts +5 -0
- package/dist/utils/numbers.d.ts +5 -3
- package/dist/utils/numbers.js +53 -66
- package/dist/utils/numbers.js.map +1 -0
- package/dist/utils/oauth.d.cts +8 -0
- package/dist/utils/oauth.d.ts +8 -6
- package/dist/utils/oauth.js +37 -4
- package/dist/utils/oauth.js.map +1 -0
- package/dist/utils/objects.d.cts +69 -0
- package/dist/utils/objects.d.ts +37 -32
- package/dist/utils/objects.js +224 -374
- package/dist/utils/objects.js.map +1 -0
- package/dist/utils/passkey.d.cts +1 -0
- package/dist/utils/passkey.d.ts +1 -1
- package/dist/utils/passkey.js +19 -1
- package/dist/utils/passkey.js.map +1 -0
- package/dist/utils/promises.d.cts +74 -0
- package/dist/utils/promises.d.ts +20 -18
- package/dist/utils/promises.js +252 -393
- package/dist/utils/promises.js.map +1 -0
- package/dist/utils/proxies.d.cts +4 -0
- package/dist/utils/proxies.d.ts +4 -2
- package/dist/utils/proxies.js +150 -161
- package/dist/utils/proxies.js.map +1 -0
- package/dist/utils/react.d.cts +25 -0
- package/dist/utils/react.d.ts +9 -6
- package/dist/utils/react.js +88 -134
- package/dist/utils/react.js.map +1 -0
- package/dist/utils/results.d.cts +78 -0
- package/dist/utils/results.d.ts +10 -9
- package/dist/utils/results.js +143 -324
- package/dist/utils/results.js.map +1 -0
- package/dist/utils/sentry.d.cts +5 -0
- package/dist/utils/sentry.d.ts +5 -2
- package/dist/utils/sentry.js +44 -14
- package/dist/utils/sentry.js.map +1 -0
- package/dist/utils/stores.d.cts +102 -0
- package/dist/utils/stores.d.ts +12 -9
- package/dist/utils/stores.js +219 -189
- package/dist/utils/stores.js.map +1 -0
- package/dist/utils/strings.d.cts +72 -0
- package/dist/utils/strings.d.ts +22 -20
- package/dist/utils/strings.js +300 -580
- package/dist/utils/strings.js.map +1 -0
- package/dist/utils/strings.nicify.test.d.cts +2 -0
- package/dist/utils/strings.nicify.test.d.ts +2 -1
- package/dist/utils/strings.nicify.test.js +168 -158
- package/dist/utils/strings.nicify.test.js.map +1 -0
- package/dist/utils/types.d.cts +23 -0
- package/dist/utils/types.d.ts +8 -6
- package/dist/utils/types.js +19 -1
- package/dist/utils/types.js.map +1 -0
- package/dist/utils/unicode.d.cts +3 -0
- package/dist/utils/unicode.d.ts +3 -1
- package/dist/utils/unicode.js +34 -21
- package/dist/utils/unicode.js.map +1 -0
- package/dist/utils/urls.d.cts +20 -0
- package/dist/utils/urls.d.ts +10 -8
- package/dist/utils/urls.js +76 -165
- package/dist/utils/urls.js.map +1 -0
- package/dist/utils/uuids.d.cts +4 -0
- package/dist/utils/uuids.d.ts +4 -2
- package/dist/utils/uuids.js +39 -35
- package/dist/utils/uuids.js.map +1 -0
- package/package.json +5 -5
|
@@ -0,0 +1,1238 @@
|
|
|
1
|
+
// src/known-errors.tsx
|
|
2
|
+
import { StackAssertionError, StatusError, throwErr } from "./utils/errors";
|
|
3
|
+
import { identityArgs } from "./utils/functions";
|
|
4
|
+
import { deindent } from "./utils/strings";
|
|
5
|
+
var KnownError = class extends StatusError {
|
|
6
|
+
constructor(statusCode, humanReadableMessage, details) {
|
|
7
|
+
super(
|
|
8
|
+
statusCode,
|
|
9
|
+
humanReadableMessage
|
|
10
|
+
);
|
|
11
|
+
this.statusCode = statusCode;
|
|
12
|
+
this.humanReadableMessage = humanReadableMessage;
|
|
13
|
+
this.details = details;
|
|
14
|
+
this.name = "KnownError";
|
|
15
|
+
}
|
|
16
|
+
getBody() {
|
|
17
|
+
return new TextEncoder().encode(JSON.stringify(this.toDescriptiveJson(), void 0, 2));
|
|
18
|
+
}
|
|
19
|
+
getHeaders() {
|
|
20
|
+
return {
|
|
21
|
+
"Content-Type": ["application/json; charset=utf-8"],
|
|
22
|
+
"X-Stack-Known-Error": [this.errorCode]
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
toDescriptiveJson() {
|
|
26
|
+
return {
|
|
27
|
+
code: this.errorCode,
|
|
28
|
+
...this.details ? { details: this.details } : {},
|
|
29
|
+
error: this.humanReadableMessage
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
get errorCode() {
|
|
33
|
+
return this.constructor.errorCode ?? throwErr(`Can't find error code for this KnownError. Is its constructor a KnownErrorConstructor? ${this}`);
|
|
34
|
+
}
|
|
35
|
+
static constructorArgsFromJson(json) {
|
|
36
|
+
return [
|
|
37
|
+
400,
|
|
38
|
+
json.message,
|
|
39
|
+
json
|
|
40
|
+
];
|
|
41
|
+
}
|
|
42
|
+
static fromJson(json) {
|
|
43
|
+
for (const [_, KnownErrorType] of Object.entries(KnownErrors)) {
|
|
44
|
+
if (json.code === KnownErrorType.prototype.errorCode) {
|
|
45
|
+
const constructorArgs = KnownErrorType.constructorArgsFromJson(json);
|
|
46
|
+
return new KnownErrorType(
|
|
47
|
+
...constructorArgs
|
|
48
|
+
);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
throw new Error(`Unknown KnownError code. You may need to update your version of Stack to see more detailed information. ${json.code}: ${json.message}`);
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
var knownErrorConstructorErrorCodeSentinel = Symbol("knownErrorConstructorErrorCodeSentinel");
|
|
55
|
+
function createKnownErrorConstructor(SuperClass, errorCode, create, constructorArgsFromJson) {
|
|
56
|
+
const createFn = create === "inherit" ? identityArgs : create;
|
|
57
|
+
const constructorArgsFromJsonFn = constructorArgsFromJson === "inherit" ? SuperClass.constructorArgsFromJson : constructorArgsFromJson;
|
|
58
|
+
class KnownErrorImpl extends SuperClass {
|
|
59
|
+
constructor(...args) {
|
|
60
|
+
super(...createFn(...args));
|
|
61
|
+
this.name = `KnownError<${errorCode}>`;
|
|
62
|
+
this.constructorArgs = args;
|
|
63
|
+
}
|
|
64
|
+
static constructorArgsFromJson(json) {
|
|
65
|
+
return constructorArgsFromJsonFn(json.details);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
KnownErrorImpl.errorCode = errorCode;
|
|
69
|
+
;
|
|
70
|
+
return KnownErrorImpl;
|
|
71
|
+
}
|
|
72
|
+
var UnsupportedError = createKnownErrorConstructor(
|
|
73
|
+
KnownError,
|
|
74
|
+
"UNSUPPORTED_ERROR",
|
|
75
|
+
(originalErrorCode) => [
|
|
76
|
+
500,
|
|
77
|
+
`An error occurred that is not currently supported (possibly because it was added in a version of Stack that is newer than this client). The original unsupported error code was: ${originalErrorCode}`,
|
|
78
|
+
{
|
|
79
|
+
originalErrorCode
|
|
80
|
+
}
|
|
81
|
+
],
|
|
82
|
+
(json) => [
|
|
83
|
+
json?.originalErrorCode ?? throwErr("originalErrorCode not found in UnsupportedError details")
|
|
84
|
+
]
|
|
85
|
+
);
|
|
86
|
+
var BodyParsingError = createKnownErrorConstructor(
|
|
87
|
+
KnownError,
|
|
88
|
+
"BODY_PARSING_ERROR",
|
|
89
|
+
(message) => [
|
|
90
|
+
400,
|
|
91
|
+
message
|
|
92
|
+
],
|
|
93
|
+
(json) => [json.message]
|
|
94
|
+
);
|
|
95
|
+
var SchemaError = createKnownErrorConstructor(
|
|
96
|
+
KnownError,
|
|
97
|
+
"SCHEMA_ERROR",
|
|
98
|
+
(message) => [
|
|
99
|
+
400,
|
|
100
|
+
message || throwErr("SchemaError requires a message"),
|
|
101
|
+
{
|
|
102
|
+
message
|
|
103
|
+
}
|
|
104
|
+
],
|
|
105
|
+
(json) => [json.message]
|
|
106
|
+
);
|
|
107
|
+
var AllOverloadsFailed = createKnownErrorConstructor(
|
|
108
|
+
KnownError,
|
|
109
|
+
"ALL_OVERLOADS_FAILED",
|
|
110
|
+
(overloadErrors) => [
|
|
111
|
+
400,
|
|
112
|
+
deindent`
|
|
113
|
+
This endpoint has multiple overloads, but they all failed to process the request.
|
|
114
|
+
|
|
115
|
+
${overloadErrors.map((e, i) => deindent`
|
|
116
|
+
Overload ${i + 1}: ${JSON.stringify(e, void 0, 2)}
|
|
117
|
+
`).join("\n\n")}
|
|
118
|
+
`,
|
|
119
|
+
{
|
|
120
|
+
overload_errors: overloadErrors
|
|
121
|
+
}
|
|
122
|
+
],
|
|
123
|
+
(json) => [
|
|
124
|
+
json?.overload_errors ?? throwErr("overload_errors not found in AllOverloadsFailed details")
|
|
125
|
+
]
|
|
126
|
+
);
|
|
127
|
+
var ProjectAuthenticationError = createKnownErrorConstructor(
|
|
128
|
+
KnownError,
|
|
129
|
+
"PROJECT_AUTHENTICATION_ERROR",
|
|
130
|
+
"inherit",
|
|
131
|
+
"inherit"
|
|
132
|
+
);
|
|
133
|
+
var InvalidProjectAuthentication = createKnownErrorConstructor(
|
|
134
|
+
ProjectAuthenticationError,
|
|
135
|
+
"INVALID_PROJECT_AUTHENTICATION",
|
|
136
|
+
"inherit",
|
|
137
|
+
"inherit"
|
|
138
|
+
);
|
|
139
|
+
var ProjectKeyWithoutAccessType = createKnownErrorConstructor(
|
|
140
|
+
InvalidProjectAuthentication,
|
|
141
|
+
"PROJECT_KEY_WITHOUT_ACCESS_TYPE",
|
|
142
|
+
() => [
|
|
143
|
+
400,
|
|
144
|
+
"Either an API key or an admin access token was provided, but the x-stack-access-type header is missing. Set it to 'client', 'server', or 'admin' as appropriate."
|
|
145
|
+
],
|
|
146
|
+
() => []
|
|
147
|
+
);
|
|
148
|
+
var InvalidAccessType = createKnownErrorConstructor(
|
|
149
|
+
InvalidProjectAuthentication,
|
|
150
|
+
"INVALID_ACCESS_TYPE",
|
|
151
|
+
(accessType) => [
|
|
152
|
+
400,
|
|
153
|
+
`The x-stack-access-type header must be 'client', 'server', or 'admin', but was '${accessType}'.`
|
|
154
|
+
],
|
|
155
|
+
(json) => [
|
|
156
|
+
json?.accessType ?? throwErr("accessType not found in InvalidAccessType details")
|
|
157
|
+
]
|
|
158
|
+
);
|
|
159
|
+
var AccessTypeWithoutProjectId = createKnownErrorConstructor(
|
|
160
|
+
InvalidProjectAuthentication,
|
|
161
|
+
"ACCESS_TYPE_WITHOUT_PROJECT_ID",
|
|
162
|
+
(accessType) => [
|
|
163
|
+
400,
|
|
164
|
+
deindent`
|
|
165
|
+
The x-stack-access-type header was '${accessType}', but the x-stack-project-id header was not provided.
|
|
166
|
+
|
|
167
|
+
For more information, see the docs on REST API authentication: https://docs.stack-auth.com/rest-api/overview#authentication
|
|
168
|
+
`,
|
|
169
|
+
{
|
|
170
|
+
request_type: accessType
|
|
171
|
+
}
|
|
172
|
+
],
|
|
173
|
+
(json) => [json.request_type]
|
|
174
|
+
);
|
|
175
|
+
var AccessTypeRequired = createKnownErrorConstructor(
|
|
176
|
+
InvalidProjectAuthentication,
|
|
177
|
+
"ACCESS_TYPE_REQUIRED",
|
|
178
|
+
() => [
|
|
179
|
+
400,
|
|
180
|
+
deindent`
|
|
181
|
+
You must specify an access level for this Stack project. Make sure project API keys are provided (eg. x-stack-publishable-client-key) and you set the x-stack-access-type header to 'client', 'server', or 'admin'.
|
|
182
|
+
|
|
183
|
+
For more information, see the docs on REST API authentication: https://docs.stack-auth.com/rest-api/overview#authentication
|
|
184
|
+
`
|
|
185
|
+
],
|
|
186
|
+
() => []
|
|
187
|
+
);
|
|
188
|
+
var InsufficientAccessType = createKnownErrorConstructor(
|
|
189
|
+
InvalidProjectAuthentication,
|
|
190
|
+
"INSUFFICIENT_ACCESS_TYPE",
|
|
191
|
+
(actualAccessType, allowedAccessTypes) => [
|
|
192
|
+
401,
|
|
193
|
+
`The x-stack-access-type header must be ${allowedAccessTypes.map((s) => `'${s}'`).join(" or ")}, but was '${actualAccessType}'.`,
|
|
194
|
+
{
|
|
195
|
+
actual_access_type: actualAccessType,
|
|
196
|
+
allowed_access_types: allowedAccessTypes
|
|
197
|
+
}
|
|
198
|
+
],
|
|
199
|
+
(json) => [
|
|
200
|
+
json.actual_access_type,
|
|
201
|
+
json.allowed_access_types
|
|
202
|
+
]
|
|
203
|
+
);
|
|
204
|
+
var InvalidPublishableClientKey = createKnownErrorConstructor(
|
|
205
|
+
InvalidProjectAuthentication,
|
|
206
|
+
"INVALID_PUBLISHABLE_CLIENT_KEY",
|
|
207
|
+
(projectId) => [
|
|
208
|
+
401,
|
|
209
|
+
`The publishable key is not valid for the project ${JSON.stringify(projectId)}. Does the project and/or the key exist?`,
|
|
210
|
+
{
|
|
211
|
+
project_id: projectId
|
|
212
|
+
}
|
|
213
|
+
],
|
|
214
|
+
(json) => [json.project_id]
|
|
215
|
+
);
|
|
216
|
+
var InvalidSecretServerKey = createKnownErrorConstructor(
|
|
217
|
+
InvalidProjectAuthentication,
|
|
218
|
+
"INVALID_SECRET_SERVER_KEY",
|
|
219
|
+
(projectId) => [
|
|
220
|
+
401,
|
|
221
|
+
`The secret server key is not valid for the project ${JSON.stringify(projectId)}. Does the project and/or the key exist?`,
|
|
222
|
+
{
|
|
223
|
+
project_id: projectId
|
|
224
|
+
}
|
|
225
|
+
],
|
|
226
|
+
(json) => [json.project_id]
|
|
227
|
+
);
|
|
228
|
+
var InvalidSuperSecretAdminKey = createKnownErrorConstructor(
|
|
229
|
+
InvalidProjectAuthentication,
|
|
230
|
+
"INVALID_SUPER_SECRET_ADMIN_KEY",
|
|
231
|
+
(projectId) => [
|
|
232
|
+
401,
|
|
233
|
+
`The super secret admin key is not valid for the project ${JSON.stringify(projectId)}. Does the project and/or the key exist?`,
|
|
234
|
+
{
|
|
235
|
+
project_id: projectId
|
|
236
|
+
}
|
|
237
|
+
],
|
|
238
|
+
(json) => [json.project_id]
|
|
239
|
+
);
|
|
240
|
+
var InvalidAdminAccessToken = createKnownErrorConstructor(
|
|
241
|
+
InvalidProjectAuthentication,
|
|
242
|
+
"INVALID_ADMIN_ACCESS_TOKEN",
|
|
243
|
+
"inherit",
|
|
244
|
+
"inherit"
|
|
245
|
+
);
|
|
246
|
+
var UnparsableAdminAccessToken = createKnownErrorConstructor(
|
|
247
|
+
InvalidAdminAccessToken,
|
|
248
|
+
"UNPARSABLE_ADMIN_ACCESS_TOKEN",
|
|
249
|
+
() => [
|
|
250
|
+
401,
|
|
251
|
+
"Admin access token is not parsable."
|
|
252
|
+
],
|
|
253
|
+
() => []
|
|
254
|
+
);
|
|
255
|
+
var AdminAccessTokenExpired = createKnownErrorConstructor(
|
|
256
|
+
InvalidAdminAccessToken,
|
|
257
|
+
"ADMIN_ACCESS_TOKEN_EXPIRED",
|
|
258
|
+
(expiredAt) => [
|
|
259
|
+
401,
|
|
260
|
+
`Admin access token has expired. Please refresh it and try again.${expiredAt ? ` (The access token expired at ${expiredAt.toISOString()}.)` : ""}`,
|
|
261
|
+
{ expired_at_millis: expiredAt?.getTime() ?? null }
|
|
262
|
+
],
|
|
263
|
+
(json) => [json.expired_at_millis ?? void 0]
|
|
264
|
+
);
|
|
265
|
+
var InvalidProjectForAdminAccessToken = createKnownErrorConstructor(
|
|
266
|
+
InvalidAdminAccessToken,
|
|
267
|
+
"INVALID_PROJECT_FOR_ADMIN_ACCESS_TOKEN",
|
|
268
|
+
() => [
|
|
269
|
+
401,
|
|
270
|
+
"Admin access tokens must be created on the internal project."
|
|
271
|
+
],
|
|
272
|
+
() => []
|
|
273
|
+
);
|
|
274
|
+
var AdminAccessTokenIsNotAdmin = createKnownErrorConstructor(
|
|
275
|
+
InvalidAdminAccessToken,
|
|
276
|
+
"ADMIN_ACCESS_TOKEN_IS_NOT_ADMIN",
|
|
277
|
+
() => [
|
|
278
|
+
401,
|
|
279
|
+
"Admin access token does not have the required permissions to access this project."
|
|
280
|
+
],
|
|
281
|
+
() => []
|
|
282
|
+
);
|
|
283
|
+
var ProjectAuthenticationRequired = createKnownErrorConstructor(
|
|
284
|
+
ProjectAuthenticationError,
|
|
285
|
+
"PROJECT_AUTHENTICATION_REQUIRED",
|
|
286
|
+
"inherit",
|
|
287
|
+
"inherit"
|
|
288
|
+
);
|
|
289
|
+
var ClientAuthenticationRequired = createKnownErrorConstructor(
|
|
290
|
+
ProjectAuthenticationRequired,
|
|
291
|
+
"CLIENT_AUTHENTICATION_REQUIRED",
|
|
292
|
+
() => [
|
|
293
|
+
401,
|
|
294
|
+
"The publishable client key must be provided."
|
|
295
|
+
],
|
|
296
|
+
() => []
|
|
297
|
+
);
|
|
298
|
+
var ServerAuthenticationRequired = createKnownErrorConstructor(
|
|
299
|
+
ProjectAuthenticationRequired,
|
|
300
|
+
"SERVER_AUTHENTICATION_REQUIRED",
|
|
301
|
+
() => [
|
|
302
|
+
401,
|
|
303
|
+
"The secret server key must be provided."
|
|
304
|
+
],
|
|
305
|
+
() => []
|
|
306
|
+
);
|
|
307
|
+
var ClientOrServerAuthenticationRequired = createKnownErrorConstructor(
|
|
308
|
+
ProjectAuthenticationRequired,
|
|
309
|
+
"CLIENT_OR_SERVER_AUTHENTICATION_REQUIRED",
|
|
310
|
+
() => [
|
|
311
|
+
401,
|
|
312
|
+
"Either the publishable client key or the secret server key must be provided."
|
|
313
|
+
],
|
|
314
|
+
() => []
|
|
315
|
+
);
|
|
316
|
+
var ClientOrAdminAuthenticationRequired = createKnownErrorConstructor(
|
|
317
|
+
ProjectAuthenticationRequired,
|
|
318
|
+
"CLIENT_OR_ADMIN_AUTHENTICATION_REQUIRED",
|
|
319
|
+
() => [
|
|
320
|
+
401,
|
|
321
|
+
"Either the publishable client key or the super secret admin key must be provided."
|
|
322
|
+
],
|
|
323
|
+
() => []
|
|
324
|
+
);
|
|
325
|
+
var ClientOrServerOrAdminAuthenticationRequired = createKnownErrorConstructor(
|
|
326
|
+
ProjectAuthenticationRequired,
|
|
327
|
+
"CLIENT_OR_SERVER_OR_ADMIN_AUTHENTICATION_REQUIRED",
|
|
328
|
+
() => [
|
|
329
|
+
401,
|
|
330
|
+
"Either the publishable client key, the secret server key, or the super secret admin key must be provided."
|
|
331
|
+
],
|
|
332
|
+
() => []
|
|
333
|
+
);
|
|
334
|
+
var AdminAuthenticationRequired = createKnownErrorConstructor(
|
|
335
|
+
ProjectAuthenticationRequired,
|
|
336
|
+
"ADMIN_AUTHENTICATION_REQUIRED",
|
|
337
|
+
() => [
|
|
338
|
+
401,
|
|
339
|
+
"The super secret admin key must be provided."
|
|
340
|
+
],
|
|
341
|
+
() => []
|
|
342
|
+
);
|
|
343
|
+
var ExpectedInternalProject = createKnownErrorConstructor(
|
|
344
|
+
ProjectAuthenticationError,
|
|
345
|
+
"EXPECTED_INTERNAL_PROJECT",
|
|
346
|
+
() => [
|
|
347
|
+
401,
|
|
348
|
+
"The project ID is expected to be internal."
|
|
349
|
+
],
|
|
350
|
+
() => []
|
|
351
|
+
);
|
|
352
|
+
var SessionAuthenticationError = createKnownErrorConstructor(
|
|
353
|
+
KnownError,
|
|
354
|
+
"SESSION_AUTHENTICATION_ERROR",
|
|
355
|
+
"inherit",
|
|
356
|
+
"inherit"
|
|
357
|
+
);
|
|
358
|
+
var InvalidSessionAuthentication = createKnownErrorConstructor(
|
|
359
|
+
SessionAuthenticationError,
|
|
360
|
+
"INVALID_SESSION_AUTHENTICATION",
|
|
361
|
+
"inherit",
|
|
362
|
+
"inherit"
|
|
363
|
+
);
|
|
364
|
+
var InvalidAccessToken = createKnownErrorConstructor(
|
|
365
|
+
InvalidSessionAuthentication,
|
|
366
|
+
"INVALID_ACCESS_TOKEN",
|
|
367
|
+
"inherit",
|
|
368
|
+
"inherit"
|
|
369
|
+
);
|
|
370
|
+
var UnparsableAccessToken = createKnownErrorConstructor(
|
|
371
|
+
InvalidAccessToken,
|
|
372
|
+
"UNPARSABLE_ACCESS_TOKEN",
|
|
373
|
+
() => [
|
|
374
|
+
401,
|
|
375
|
+
"Access token is not parsable."
|
|
376
|
+
],
|
|
377
|
+
() => []
|
|
378
|
+
);
|
|
379
|
+
var AccessTokenExpired = createKnownErrorConstructor(
|
|
380
|
+
InvalidAccessToken,
|
|
381
|
+
"ACCESS_TOKEN_EXPIRED",
|
|
382
|
+
(expiredAt) => [
|
|
383
|
+
401,
|
|
384
|
+
`Access token has expired. Please refresh it and try again.${expiredAt ? ` (The access token expired at ${expiredAt.toISOString()}.)` : ""}`,
|
|
385
|
+
{ expired_at_millis: expiredAt?.getTime() ?? null }
|
|
386
|
+
],
|
|
387
|
+
(json) => [json.expired_at_millis ? new Date(json.expired_at_millis) : void 0]
|
|
388
|
+
);
|
|
389
|
+
var InvalidProjectForAccessToken = createKnownErrorConstructor(
|
|
390
|
+
InvalidAccessToken,
|
|
391
|
+
"INVALID_PROJECT_FOR_ACCESS_TOKEN",
|
|
392
|
+
(expectedProjectId, actualProjectId) => [
|
|
393
|
+
401,
|
|
394
|
+
`Access token not valid for this project. Expected project ID ${JSON.stringify(expectedProjectId)}, but the token is for project ID ${JSON.stringify(actualProjectId)}.`,
|
|
395
|
+
{
|
|
396
|
+
expected_project_id: expectedProjectId,
|
|
397
|
+
actual_project_id: actualProjectId
|
|
398
|
+
}
|
|
399
|
+
],
|
|
400
|
+
(json) => [json.expected_project_id, json.actual_project_id]
|
|
401
|
+
);
|
|
402
|
+
var RefreshTokenError = createKnownErrorConstructor(
|
|
403
|
+
KnownError,
|
|
404
|
+
"REFRESH_TOKEN_ERROR",
|
|
405
|
+
"inherit",
|
|
406
|
+
"inherit"
|
|
407
|
+
);
|
|
408
|
+
var RefreshTokenNotFoundOrExpired = createKnownErrorConstructor(
|
|
409
|
+
RefreshTokenError,
|
|
410
|
+
"REFRESH_TOKEN_NOT_FOUND_OR_EXPIRED",
|
|
411
|
+
() => [
|
|
412
|
+
401,
|
|
413
|
+
"Refresh token not found for this project, or the session has expired/been revoked."
|
|
414
|
+
],
|
|
415
|
+
() => []
|
|
416
|
+
);
|
|
417
|
+
var CannotDeleteCurrentSession = createKnownErrorConstructor(
|
|
418
|
+
RefreshTokenError,
|
|
419
|
+
"CANNOT_DELETE_CURRENT_SESSION",
|
|
420
|
+
() => [
|
|
421
|
+
400,
|
|
422
|
+
"Cannot delete the current session."
|
|
423
|
+
],
|
|
424
|
+
() => []
|
|
425
|
+
);
|
|
426
|
+
var ProviderRejected = createKnownErrorConstructor(
|
|
427
|
+
RefreshTokenError,
|
|
428
|
+
"PROVIDER_REJECTED",
|
|
429
|
+
() => [
|
|
430
|
+
401,
|
|
431
|
+
"The provider refused to refresh their token. This usually means that the provider used to authenticate the user no longer regards this session as valid, and the user must re-authenticate."
|
|
432
|
+
],
|
|
433
|
+
() => []
|
|
434
|
+
);
|
|
435
|
+
var UserWithEmailAlreadyExists = createKnownErrorConstructor(
|
|
436
|
+
KnownError,
|
|
437
|
+
"USER_EMAIL_ALREADY_EXISTS",
|
|
438
|
+
(email) => [
|
|
439
|
+
409,
|
|
440
|
+
`A user with email ${JSON.stringify(email)} already exists.`,
|
|
441
|
+
{
|
|
442
|
+
email
|
|
443
|
+
}
|
|
444
|
+
],
|
|
445
|
+
(json) => [json.email]
|
|
446
|
+
);
|
|
447
|
+
var EmailNotVerified = createKnownErrorConstructor(
|
|
448
|
+
KnownError,
|
|
449
|
+
"EMAIL_NOT_VERIFIED",
|
|
450
|
+
() => [
|
|
451
|
+
400,
|
|
452
|
+
"The email is not verified."
|
|
453
|
+
],
|
|
454
|
+
() => []
|
|
455
|
+
);
|
|
456
|
+
var CannotGetOwnUserWithoutUser = createKnownErrorConstructor(
|
|
457
|
+
KnownError,
|
|
458
|
+
"CANNOT_GET_OWN_USER_WITHOUT_USER",
|
|
459
|
+
() => [
|
|
460
|
+
400,
|
|
461
|
+
"You have specified 'me' as a userId, but did not provide authentication for a user."
|
|
462
|
+
],
|
|
463
|
+
() => []
|
|
464
|
+
);
|
|
465
|
+
var UserIdDoesNotExist = createKnownErrorConstructor(
|
|
466
|
+
KnownError,
|
|
467
|
+
"USER_ID_DOES_NOT_EXIST",
|
|
468
|
+
(userId) => [
|
|
469
|
+
400,
|
|
470
|
+
`The given user with the ID ${userId} does not exist.`,
|
|
471
|
+
{
|
|
472
|
+
user_id: userId
|
|
473
|
+
}
|
|
474
|
+
],
|
|
475
|
+
(json) => [json.user_id]
|
|
476
|
+
);
|
|
477
|
+
var UserNotFound = createKnownErrorConstructor(
|
|
478
|
+
KnownError,
|
|
479
|
+
"USER_NOT_FOUND",
|
|
480
|
+
() => [
|
|
481
|
+
404,
|
|
482
|
+
"User not found."
|
|
483
|
+
],
|
|
484
|
+
() => []
|
|
485
|
+
);
|
|
486
|
+
var ProjectNotFound = createKnownErrorConstructor(
|
|
487
|
+
KnownError,
|
|
488
|
+
"PROJECT_NOT_FOUND",
|
|
489
|
+
(projectId) => {
|
|
490
|
+
if (typeof projectId !== "string") throw new StackAssertionError("projectId of KnownErrors.ProjectNotFound must be a string");
|
|
491
|
+
return [
|
|
492
|
+
404,
|
|
493
|
+
`Project ${projectId} not found or is not accessible with the current user.`,
|
|
494
|
+
{
|
|
495
|
+
project_id: projectId
|
|
496
|
+
}
|
|
497
|
+
];
|
|
498
|
+
},
|
|
499
|
+
(json) => [json.project_id]
|
|
500
|
+
);
|
|
501
|
+
var SignUpNotEnabled = createKnownErrorConstructor(
|
|
502
|
+
KnownError,
|
|
503
|
+
"SIGN_UP_NOT_ENABLED",
|
|
504
|
+
() => [
|
|
505
|
+
400,
|
|
506
|
+
"Creation of new accounts is not enabled for this project. Please ask the project owner to enable it."
|
|
507
|
+
],
|
|
508
|
+
() => []
|
|
509
|
+
);
|
|
510
|
+
var PasswordAuthenticationNotEnabled = createKnownErrorConstructor(
|
|
511
|
+
KnownError,
|
|
512
|
+
"PASSWORD_AUTHENTICATION_NOT_ENABLED",
|
|
513
|
+
() => [
|
|
514
|
+
400,
|
|
515
|
+
"Password authentication is not enabled for this project."
|
|
516
|
+
],
|
|
517
|
+
() => []
|
|
518
|
+
);
|
|
519
|
+
var PasskeyAuthenticationNotEnabled = createKnownErrorConstructor(
|
|
520
|
+
KnownError,
|
|
521
|
+
"PASSKEY_AUTHENTICATION_NOT_ENABLED",
|
|
522
|
+
() => [
|
|
523
|
+
400,
|
|
524
|
+
"Passkey authentication is not enabled for this project."
|
|
525
|
+
],
|
|
526
|
+
() => []
|
|
527
|
+
);
|
|
528
|
+
var AnonymousAccountsNotEnabled = createKnownErrorConstructor(
|
|
529
|
+
KnownError,
|
|
530
|
+
"ANONYMOUS_ACCOUNTS_NOT_ENABLED",
|
|
531
|
+
() => [
|
|
532
|
+
400,
|
|
533
|
+
"Anonymous accounts are not enabled for this project."
|
|
534
|
+
],
|
|
535
|
+
() => []
|
|
536
|
+
);
|
|
537
|
+
var EmailPasswordMismatch = createKnownErrorConstructor(
|
|
538
|
+
KnownError,
|
|
539
|
+
"EMAIL_PASSWORD_MISMATCH",
|
|
540
|
+
() => [
|
|
541
|
+
400,
|
|
542
|
+
"Wrong e-mail or password."
|
|
543
|
+
],
|
|
544
|
+
() => []
|
|
545
|
+
);
|
|
546
|
+
var RedirectUrlNotWhitelisted = createKnownErrorConstructor(
|
|
547
|
+
KnownError,
|
|
548
|
+
"REDIRECT_URL_NOT_WHITELISTED",
|
|
549
|
+
() => [
|
|
550
|
+
400,
|
|
551
|
+
"Redirect URL not whitelisted. Did you forget to add this domain to the trusted domains list on the Stack Auth dashboard?"
|
|
552
|
+
],
|
|
553
|
+
() => []
|
|
554
|
+
);
|
|
555
|
+
var PasswordRequirementsNotMet = createKnownErrorConstructor(
|
|
556
|
+
KnownError,
|
|
557
|
+
"PASSWORD_REQUIREMENTS_NOT_MET",
|
|
558
|
+
"inherit",
|
|
559
|
+
"inherit"
|
|
560
|
+
);
|
|
561
|
+
var PasswordTooShort = createKnownErrorConstructor(
|
|
562
|
+
PasswordRequirementsNotMet,
|
|
563
|
+
"PASSWORD_TOO_SHORT",
|
|
564
|
+
(minLength) => [
|
|
565
|
+
400,
|
|
566
|
+
`Password too short. Minimum length is ${minLength}.`,
|
|
567
|
+
{
|
|
568
|
+
min_length: minLength
|
|
569
|
+
}
|
|
570
|
+
],
|
|
571
|
+
(json) => [
|
|
572
|
+
json?.min_length ?? throwErr("min_length not found in PasswordTooShort details")
|
|
573
|
+
]
|
|
574
|
+
);
|
|
575
|
+
var PasswordTooLong = createKnownErrorConstructor(
|
|
576
|
+
PasswordRequirementsNotMet,
|
|
577
|
+
"PASSWORD_TOO_LONG",
|
|
578
|
+
(maxLength) => [
|
|
579
|
+
400,
|
|
580
|
+
`Password too long. Maximum length is ${maxLength}.`,
|
|
581
|
+
{
|
|
582
|
+
maxLength
|
|
583
|
+
}
|
|
584
|
+
],
|
|
585
|
+
(json) => [
|
|
586
|
+
json?.maxLength ?? throwErr("maxLength not found in PasswordTooLong details")
|
|
587
|
+
]
|
|
588
|
+
);
|
|
589
|
+
var UserDoesNotHavePassword = createKnownErrorConstructor(
|
|
590
|
+
KnownError,
|
|
591
|
+
"USER_DOES_NOT_HAVE_PASSWORD",
|
|
592
|
+
() => [
|
|
593
|
+
400,
|
|
594
|
+
"This user does not have password authentication enabled."
|
|
595
|
+
],
|
|
596
|
+
() => []
|
|
597
|
+
);
|
|
598
|
+
var VerificationCodeError = createKnownErrorConstructor(
|
|
599
|
+
KnownError,
|
|
600
|
+
"VERIFICATION_ERROR",
|
|
601
|
+
"inherit",
|
|
602
|
+
"inherit"
|
|
603
|
+
);
|
|
604
|
+
var VerificationCodeNotFound = createKnownErrorConstructor(
|
|
605
|
+
VerificationCodeError,
|
|
606
|
+
"VERIFICATION_CODE_NOT_FOUND",
|
|
607
|
+
() => [
|
|
608
|
+
404,
|
|
609
|
+
"The verification code does not exist for this project."
|
|
610
|
+
],
|
|
611
|
+
() => []
|
|
612
|
+
);
|
|
613
|
+
var VerificationCodeExpired = createKnownErrorConstructor(
|
|
614
|
+
VerificationCodeError,
|
|
615
|
+
"VERIFICATION_CODE_EXPIRED",
|
|
616
|
+
() => [
|
|
617
|
+
400,
|
|
618
|
+
"The verification code has expired."
|
|
619
|
+
],
|
|
620
|
+
() => []
|
|
621
|
+
);
|
|
622
|
+
var VerificationCodeAlreadyUsed = createKnownErrorConstructor(
|
|
623
|
+
VerificationCodeError,
|
|
624
|
+
"VERIFICATION_CODE_ALREADY_USED",
|
|
625
|
+
() => [
|
|
626
|
+
409,
|
|
627
|
+
"The verification link has already been used."
|
|
628
|
+
],
|
|
629
|
+
() => []
|
|
630
|
+
);
|
|
631
|
+
var VerificationCodeMaxAttemptsReached = createKnownErrorConstructor(
|
|
632
|
+
VerificationCodeError,
|
|
633
|
+
"VERIFICATION_CODE_MAX_ATTEMPTS_REACHED",
|
|
634
|
+
() => [
|
|
635
|
+
400,
|
|
636
|
+
"The verification code nonce has reached the maximum number of attempts. This code is not valid anymore."
|
|
637
|
+
],
|
|
638
|
+
() => []
|
|
639
|
+
);
|
|
640
|
+
var PasswordConfirmationMismatch = createKnownErrorConstructor(
|
|
641
|
+
KnownError,
|
|
642
|
+
"PASSWORD_CONFIRMATION_MISMATCH",
|
|
643
|
+
() => [
|
|
644
|
+
400,
|
|
645
|
+
"Passwords do not match."
|
|
646
|
+
],
|
|
647
|
+
() => []
|
|
648
|
+
);
|
|
649
|
+
var EmailAlreadyVerified = createKnownErrorConstructor(
|
|
650
|
+
KnownError,
|
|
651
|
+
"EMAIL_ALREADY_VERIFIED",
|
|
652
|
+
() => [
|
|
653
|
+
409,
|
|
654
|
+
"The e-mail is already verified."
|
|
655
|
+
],
|
|
656
|
+
() => []
|
|
657
|
+
);
|
|
658
|
+
var EmailNotAssociatedWithUser = createKnownErrorConstructor(
|
|
659
|
+
KnownError,
|
|
660
|
+
"EMAIL_NOT_ASSOCIATED_WITH_USER",
|
|
661
|
+
() => [
|
|
662
|
+
400,
|
|
663
|
+
"The e-mail is not associated with a user that could log in with that e-mail."
|
|
664
|
+
],
|
|
665
|
+
() => []
|
|
666
|
+
);
|
|
667
|
+
var EmailIsNotPrimaryEmail = createKnownErrorConstructor(
|
|
668
|
+
KnownError,
|
|
669
|
+
"EMAIL_IS_NOT_PRIMARY_EMAIL",
|
|
670
|
+
(email, primaryEmail) => [
|
|
671
|
+
400,
|
|
672
|
+
`The given e-mail (${email}) must equal the user's primary e-mail (${primaryEmail}).`,
|
|
673
|
+
{
|
|
674
|
+
email,
|
|
675
|
+
primary_email: primaryEmail
|
|
676
|
+
}
|
|
677
|
+
],
|
|
678
|
+
(json) => [json.email, json.primary_email]
|
|
679
|
+
);
|
|
680
|
+
var PasskeyRegistrationFailed = createKnownErrorConstructor(
|
|
681
|
+
KnownError,
|
|
682
|
+
"PASSKEY_REGISTRATION_FAILED",
|
|
683
|
+
(message) => [
|
|
684
|
+
400,
|
|
685
|
+
message
|
|
686
|
+
],
|
|
687
|
+
(json) => [json.message]
|
|
688
|
+
);
|
|
689
|
+
var PasskeyWebAuthnError = createKnownErrorConstructor(
|
|
690
|
+
KnownError,
|
|
691
|
+
"PASSKEY_WEBAUTHN_ERROR",
|
|
692
|
+
(message, code) => [
|
|
693
|
+
400,
|
|
694
|
+
message,
|
|
695
|
+
{
|
|
696
|
+
message,
|
|
697
|
+
code
|
|
698
|
+
}
|
|
699
|
+
],
|
|
700
|
+
(json) => [json.message, json.code]
|
|
701
|
+
);
|
|
702
|
+
var PasskeyAuthenticationFailed = createKnownErrorConstructor(
|
|
703
|
+
KnownError,
|
|
704
|
+
"PASSKEY_AUTHENTICATION_FAILED",
|
|
705
|
+
(message) => [
|
|
706
|
+
400,
|
|
707
|
+
message
|
|
708
|
+
],
|
|
709
|
+
(json) => [json.message]
|
|
710
|
+
);
|
|
711
|
+
var PermissionNotFound = createKnownErrorConstructor(
|
|
712
|
+
KnownError,
|
|
713
|
+
"PERMISSION_NOT_FOUND",
|
|
714
|
+
(permissionId) => [
|
|
715
|
+
404,
|
|
716
|
+
`Permission "${permissionId}" not found. Make sure you created it on the dashboard.`,
|
|
717
|
+
{
|
|
718
|
+
permission_id: permissionId
|
|
719
|
+
}
|
|
720
|
+
],
|
|
721
|
+
(json) => [json.permission_id]
|
|
722
|
+
);
|
|
723
|
+
var PermissionScopeMismatch = createKnownErrorConstructor(
|
|
724
|
+
KnownError,
|
|
725
|
+
"WRONG_PERMISSION_SCOPE",
|
|
726
|
+
(permissionId, expectedScope, actualScope) => [
|
|
727
|
+
404,
|
|
728
|
+
`Permission ${JSON.stringify(permissionId)} not found. (It was found for a different scope ${JSON.stringify(actualScope)}, but scope ${JSON.stringify(expectedScope)} was expected.)`,
|
|
729
|
+
{
|
|
730
|
+
permission_id: permissionId,
|
|
731
|
+
expected_scope: expectedScope,
|
|
732
|
+
actual_scope: actualScope
|
|
733
|
+
}
|
|
734
|
+
],
|
|
735
|
+
(json) => [json.permission_id, json.expected_scope, json.actual_scope]
|
|
736
|
+
);
|
|
737
|
+
var ContainedPermissionNotFound = createKnownErrorConstructor(
|
|
738
|
+
KnownError,
|
|
739
|
+
"CONTAINED_PERMISSION_NOT_FOUND",
|
|
740
|
+
(permissionId) => [
|
|
741
|
+
400,
|
|
742
|
+
`Contained permission with ID "${permissionId}" not found. Make sure you created it on the dashboard.`,
|
|
743
|
+
{
|
|
744
|
+
permission_id: permissionId
|
|
745
|
+
}
|
|
746
|
+
],
|
|
747
|
+
(json) => [json.permission_id]
|
|
748
|
+
);
|
|
749
|
+
var TeamNotFound = createKnownErrorConstructor(
|
|
750
|
+
KnownError,
|
|
751
|
+
"TEAM_NOT_FOUND",
|
|
752
|
+
(teamId) => [
|
|
753
|
+
404,
|
|
754
|
+
`Team ${teamId} not found.`,
|
|
755
|
+
{
|
|
756
|
+
team_id: teamId
|
|
757
|
+
}
|
|
758
|
+
],
|
|
759
|
+
(json) => [json.team_id]
|
|
760
|
+
);
|
|
761
|
+
var TeamAlreadyExists = createKnownErrorConstructor(
|
|
762
|
+
KnownError,
|
|
763
|
+
"TEAM_ALREADY_EXISTS",
|
|
764
|
+
(teamId) => [
|
|
765
|
+
409,
|
|
766
|
+
`Team ${teamId} already exists.`,
|
|
767
|
+
{
|
|
768
|
+
team_id: teamId
|
|
769
|
+
}
|
|
770
|
+
],
|
|
771
|
+
(json) => [json.team_id]
|
|
772
|
+
);
|
|
773
|
+
var TeamMembershipNotFound = createKnownErrorConstructor(
|
|
774
|
+
KnownError,
|
|
775
|
+
"TEAM_MEMBERSHIP_NOT_FOUND",
|
|
776
|
+
(teamId, userId) => [
|
|
777
|
+
404,
|
|
778
|
+
`User ${userId} is not found in team ${teamId}.`,
|
|
779
|
+
{
|
|
780
|
+
team_id: teamId,
|
|
781
|
+
user_id: userId
|
|
782
|
+
}
|
|
783
|
+
],
|
|
784
|
+
(json) => [json.team_id, json.user_id]
|
|
785
|
+
);
|
|
786
|
+
var EmailTemplateAlreadyExists = createKnownErrorConstructor(
|
|
787
|
+
KnownError,
|
|
788
|
+
"EMAIL_TEMPLATE_ALREADY_EXISTS",
|
|
789
|
+
() => [
|
|
790
|
+
409,
|
|
791
|
+
"Email template already exists."
|
|
792
|
+
],
|
|
793
|
+
() => []
|
|
794
|
+
);
|
|
795
|
+
var OAuthConnectionNotConnectedToUser = createKnownErrorConstructor(
|
|
796
|
+
KnownError,
|
|
797
|
+
"OAUTH_CONNECTION_NOT_CONNECTED_TO_USER",
|
|
798
|
+
() => [
|
|
799
|
+
400,
|
|
800
|
+
"The OAuth connection is not connected to any user."
|
|
801
|
+
],
|
|
802
|
+
() => []
|
|
803
|
+
);
|
|
804
|
+
var OAuthConnectionAlreadyConnectedToAnotherUser = createKnownErrorConstructor(
|
|
805
|
+
KnownError,
|
|
806
|
+
"OAUTH_CONNECTION_ALREADY_CONNECTED_TO_ANOTHER_USER",
|
|
807
|
+
() => [
|
|
808
|
+
409,
|
|
809
|
+
"The OAuth connection is already connected to another user."
|
|
810
|
+
],
|
|
811
|
+
() => []
|
|
812
|
+
);
|
|
813
|
+
var OAuthConnectionDoesNotHaveRequiredScope = createKnownErrorConstructor(
|
|
814
|
+
KnownError,
|
|
815
|
+
"OAUTH_CONNECTION_DOES_NOT_HAVE_REQUIRED_SCOPE",
|
|
816
|
+
() => [
|
|
817
|
+
400,
|
|
818
|
+
"The OAuth connection does not have the required scope."
|
|
819
|
+
],
|
|
820
|
+
() => []
|
|
821
|
+
);
|
|
822
|
+
var OAuthExtraScopeNotAvailableWithSharedOAuthKeys = createKnownErrorConstructor(
|
|
823
|
+
KnownError,
|
|
824
|
+
"OAUTH_EXTRA_SCOPE_NOT_AVAILABLE_WITH_SHARED_OAUTH_KEYS",
|
|
825
|
+
() => [
|
|
826
|
+
400,
|
|
827
|
+
"Extra scopes are not available with shared OAuth keys. Please add your own OAuth keys on the Stack dashboard to use extra scopes."
|
|
828
|
+
],
|
|
829
|
+
() => []
|
|
830
|
+
);
|
|
831
|
+
var OAuthAccessTokenNotAvailableWithSharedOAuthKeys = createKnownErrorConstructor(
|
|
832
|
+
KnownError,
|
|
833
|
+
"OAUTH_ACCESS_TOKEN_NOT_AVAILABLE_WITH_SHARED_OAUTH_KEYS",
|
|
834
|
+
() => [
|
|
835
|
+
400,
|
|
836
|
+
"Access tokens are not available with shared OAuth keys. Please add your own OAuth keys on the Stack dashboard to use access tokens."
|
|
837
|
+
],
|
|
838
|
+
() => []
|
|
839
|
+
);
|
|
840
|
+
var InvalidOAuthClientIdOrSecret = createKnownErrorConstructor(
|
|
841
|
+
KnownError,
|
|
842
|
+
"INVALID_OAUTH_CLIENT_ID_OR_SECRET",
|
|
843
|
+
(clientId) => [
|
|
844
|
+
400,
|
|
845
|
+
"The OAuth client ID or secret is invalid. The client ID must be equal to the project ID, and the client secret must be a publishable client key.",
|
|
846
|
+
{
|
|
847
|
+
client_id: clientId ?? null
|
|
848
|
+
}
|
|
849
|
+
],
|
|
850
|
+
(json) => [json.client_id ?? void 0]
|
|
851
|
+
);
|
|
852
|
+
var InvalidScope = createKnownErrorConstructor(
|
|
853
|
+
KnownError,
|
|
854
|
+
"INVALID_SCOPE",
|
|
855
|
+
(scope) => [
|
|
856
|
+
400,
|
|
857
|
+
`The scope "${scope}" is not a valid OAuth scope for Stack.`
|
|
858
|
+
],
|
|
859
|
+
(json) => [json.scope]
|
|
860
|
+
);
|
|
861
|
+
var UserAlreadyConnectedToAnotherOAuthConnection = createKnownErrorConstructor(
|
|
862
|
+
KnownError,
|
|
863
|
+
"USER_ALREADY_CONNECTED_TO_ANOTHER_OAUTH_CONNECTION",
|
|
864
|
+
() => [
|
|
865
|
+
409,
|
|
866
|
+
"The user is already connected to another OAuth account. Did you maybe selected the wrong account?"
|
|
867
|
+
],
|
|
868
|
+
() => []
|
|
869
|
+
);
|
|
870
|
+
var OuterOAuthTimeout = createKnownErrorConstructor(
|
|
871
|
+
KnownError,
|
|
872
|
+
"OUTER_OAUTH_TIMEOUT",
|
|
873
|
+
() => [
|
|
874
|
+
408,
|
|
875
|
+
"The OAuth flow has timed out. Please sign in again."
|
|
876
|
+
],
|
|
877
|
+
() => []
|
|
878
|
+
);
|
|
879
|
+
var OAuthProviderNotFoundOrNotEnabled = createKnownErrorConstructor(
|
|
880
|
+
KnownError,
|
|
881
|
+
"OAUTH_PROVIDER_NOT_FOUND_OR_NOT_ENABLED",
|
|
882
|
+
() => [
|
|
883
|
+
400,
|
|
884
|
+
"The OAuth provider is not found or not enabled."
|
|
885
|
+
],
|
|
886
|
+
() => []
|
|
887
|
+
);
|
|
888
|
+
var MultiFactorAuthenticationRequired = createKnownErrorConstructor(
|
|
889
|
+
KnownError,
|
|
890
|
+
"MULTI_FACTOR_AUTHENTICATION_REQUIRED",
|
|
891
|
+
(attemptCode) => [
|
|
892
|
+
400,
|
|
893
|
+
`Multi-factor authentication is required for this user.`,
|
|
894
|
+
{
|
|
895
|
+
attempt_code: attemptCode
|
|
896
|
+
}
|
|
897
|
+
],
|
|
898
|
+
(json) => [json.attempt_code]
|
|
899
|
+
);
|
|
900
|
+
var InvalidTotpCode = createKnownErrorConstructor(
|
|
901
|
+
KnownError,
|
|
902
|
+
"INVALID_TOTP_CODE",
|
|
903
|
+
() => [
|
|
904
|
+
400,
|
|
905
|
+
"The TOTP code is invalid. Please try again."
|
|
906
|
+
],
|
|
907
|
+
() => []
|
|
908
|
+
);
|
|
909
|
+
var UserAuthenticationRequired = createKnownErrorConstructor(
|
|
910
|
+
KnownError,
|
|
911
|
+
"USER_AUTHENTICATION_REQUIRED",
|
|
912
|
+
() => [
|
|
913
|
+
401,
|
|
914
|
+
"User authentication required for this endpoint."
|
|
915
|
+
],
|
|
916
|
+
() => []
|
|
917
|
+
);
|
|
918
|
+
var TeamMembershipAlreadyExists = createKnownErrorConstructor(
|
|
919
|
+
KnownError,
|
|
920
|
+
"TEAM_MEMBERSHIP_ALREADY_EXISTS",
|
|
921
|
+
() => [
|
|
922
|
+
409,
|
|
923
|
+
"Team membership already exists."
|
|
924
|
+
],
|
|
925
|
+
() => []
|
|
926
|
+
);
|
|
927
|
+
var ProjectPermissionRequired = createKnownErrorConstructor(
|
|
928
|
+
KnownError,
|
|
929
|
+
"PROJECT_PERMISSION_REQUIRED",
|
|
930
|
+
(userId, permissionId) => [
|
|
931
|
+
401,
|
|
932
|
+
`User ${userId} does not have permission ${permissionId}.`,
|
|
933
|
+
{
|
|
934
|
+
user_id: userId,
|
|
935
|
+
permission_id: permissionId
|
|
936
|
+
}
|
|
937
|
+
],
|
|
938
|
+
(json) => [json.user_id, json.permission_id]
|
|
939
|
+
);
|
|
940
|
+
var TeamPermissionRequired = createKnownErrorConstructor(
|
|
941
|
+
KnownError,
|
|
942
|
+
"TEAM_PERMISSION_REQUIRED",
|
|
943
|
+
(teamId, userId, permissionId) => [
|
|
944
|
+
401,
|
|
945
|
+
`User ${userId} does not have permission ${permissionId} in team ${teamId}.`,
|
|
946
|
+
{
|
|
947
|
+
team_id: teamId,
|
|
948
|
+
user_id: userId,
|
|
949
|
+
permission_id: permissionId
|
|
950
|
+
}
|
|
951
|
+
],
|
|
952
|
+
(json) => [json.team_id, json.user_id, json.permission_id]
|
|
953
|
+
);
|
|
954
|
+
var TeamPermissionNotFound = createKnownErrorConstructor(
|
|
955
|
+
KnownError,
|
|
956
|
+
"TEAM_PERMISSION_NOT_FOUND",
|
|
957
|
+
(teamId, userId, permissionId) => [
|
|
958
|
+
401,
|
|
959
|
+
`User ${userId} does not have permission ${permissionId} in team ${teamId}.`,
|
|
960
|
+
{
|
|
961
|
+
team_id: teamId,
|
|
962
|
+
user_id: userId,
|
|
963
|
+
permission_id: permissionId
|
|
964
|
+
}
|
|
965
|
+
],
|
|
966
|
+
(json) => [json.team_id, json.user_id, json.permission_id]
|
|
967
|
+
);
|
|
968
|
+
var InvalidSharedOAuthProviderId = createKnownErrorConstructor(
|
|
969
|
+
KnownError,
|
|
970
|
+
"INVALID_SHARED_OAUTH_PROVIDER_ID",
|
|
971
|
+
(providerId) => [
|
|
972
|
+
400,
|
|
973
|
+
`The shared OAuth provider with ID ${providerId} is not valid.`,
|
|
974
|
+
{
|
|
975
|
+
provider_id: providerId
|
|
976
|
+
}
|
|
977
|
+
],
|
|
978
|
+
(json) => [json.provider_id]
|
|
979
|
+
);
|
|
980
|
+
var InvalidStandardOAuthProviderId = createKnownErrorConstructor(
|
|
981
|
+
KnownError,
|
|
982
|
+
"INVALID_STANDARD_OAUTH_PROVIDER_ID",
|
|
983
|
+
(providerId) => [
|
|
984
|
+
400,
|
|
985
|
+
`The standard OAuth provider with ID ${providerId} is not valid.`,
|
|
986
|
+
{
|
|
987
|
+
provider_id: providerId
|
|
988
|
+
}
|
|
989
|
+
],
|
|
990
|
+
(json) => [json.provider_id]
|
|
991
|
+
);
|
|
992
|
+
var InvalidAuthorizationCode = createKnownErrorConstructor(
|
|
993
|
+
KnownError,
|
|
994
|
+
"INVALID_AUTHORIZATION_CODE",
|
|
995
|
+
() => [
|
|
996
|
+
400,
|
|
997
|
+
"The given authorization code is invalid."
|
|
998
|
+
],
|
|
999
|
+
() => []
|
|
1000
|
+
);
|
|
1001
|
+
var OAuthProviderAccessDenied = createKnownErrorConstructor(
|
|
1002
|
+
KnownError,
|
|
1003
|
+
"OAUTH_PROVIDER_ACCESS_DENIED",
|
|
1004
|
+
() => [
|
|
1005
|
+
400,
|
|
1006
|
+
"The OAuth provider denied access to the user."
|
|
1007
|
+
],
|
|
1008
|
+
() => []
|
|
1009
|
+
);
|
|
1010
|
+
var ContactChannelAlreadyUsedForAuthBySomeoneElse = createKnownErrorConstructor(
|
|
1011
|
+
KnownError,
|
|
1012
|
+
"CONTACT_CHANNEL_ALREADY_USED_FOR_AUTH_BY_SOMEONE_ELSE",
|
|
1013
|
+
(type, contactChannelValue) => [
|
|
1014
|
+
409,
|
|
1015
|
+
contactChannelValue ? `The ${type} (${contactChannelValue}) is already used for authentication by another account.` : `This ${type} is already used for authentication by another account.`,
|
|
1016
|
+
{ type, contact_channel_value: contactChannelValue ?? null }
|
|
1017
|
+
],
|
|
1018
|
+
(json) => [json.type, json.contact_channel_value]
|
|
1019
|
+
);
|
|
1020
|
+
var InvalidPollingCodeError = createKnownErrorConstructor(
|
|
1021
|
+
KnownError,
|
|
1022
|
+
"INVALID_POLLING_CODE",
|
|
1023
|
+
(details) => [
|
|
1024
|
+
400,
|
|
1025
|
+
"The polling code is invalid or does not exist.",
|
|
1026
|
+
details
|
|
1027
|
+
],
|
|
1028
|
+
(json) => [json]
|
|
1029
|
+
);
|
|
1030
|
+
var CliAuthError = createKnownErrorConstructor(
|
|
1031
|
+
KnownError,
|
|
1032
|
+
"CLI_AUTH_ERROR",
|
|
1033
|
+
(message) => [
|
|
1034
|
+
400,
|
|
1035
|
+
message
|
|
1036
|
+
],
|
|
1037
|
+
(json) => [json.message]
|
|
1038
|
+
);
|
|
1039
|
+
var CliAuthExpiredError = createKnownErrorConstructor(
|
|
1040
|
+
KnownError,
|
|
1041
|
+
"CLI_AUTH_EXPIRED_ERROR",
|
|
1042
|
+
(message = "CLI authentication request expired. Please try again.") => [
|
|
1043
|
+
400,
|
|
1044
|
+
message
|
|
1045
|
+
],
|
|
1046
|
+
(json) => [json.message]
|
|
1047
|
+
);
|
|
1048
|
+
var CliAuthUsedError = createKnownErrorConstructor(
|
|
1049
|
+
KnownError,
|
|
1050
|
+
"CLI_AUTH_USED_ERROR",
|
|
1051
|
+
(message = "This authentication token has already been used.") => [
|
|
1052
|
+
400,
|
|
1053
|
+
message
|
|
1054
|
+
],
|
|
1055
|
+
(json) => [json.message]
|
|
1056
|
+
);
|
|
1057
|
+
var ApiKeyNotValid = createKnownErrorConstructor(
|
|
1058
|
+
KnownError,
|
|
1059
|
+
"API_KEY_NOT_VALID",
|
|
1060
|
+
"inherit",
|
|
1061
|
+
"inherit"
|
|
1062
|
+
);
|
|
1063
|
+
var ApiKeyExpired = createKnownErrorConstructor(
|
|
1064
|
+
ApiKeyNotValid,
|
|
1065
|
+
"API_KEY_EXPIRED",
|
|
1066
|
+
() => [
|
|
1067
|
+
401,
|
|
1068
|
+
"API key has expired."
|
|
1069
|
+
],
|
|
1070
|
+
() => []
|
|
1071
|
+
);
|
|
1072
|
+
var ApiKeyRevoked = createKnownErrorConstructor(
|
|
1073
|
+
ApiKeyNotValid,
|
|
1074
|
+
"API_KEY_REVOKED",
|
|
1075
|
+
() => [
|
|
1076
|
+
401,
|
|
1077
|
+
"API key has been revoked."
|
|
1078
|
+
],
|
|
1079
|
+
() => []
|
|
1080
|
+
);
|
|
1081
|
+
var WrongApiKeyType = createKnownErrorConstructor(
|
|
1082
|
+
ApiKeyNotValid,
|
|
1083
|
+
"WRONG_API_KEY_TYPE",
|
|
1084
|
+
(expectedType, actualType) => [
|
|
1085
|
+
400,
|
|
1086
|
+
`This endpoint is for ${expectedType} API keys, but a ${actualType} API key was provided.`,
|
|
1087
|
+
{ expected_type: expectedType, actual_type: actualType }
|
|
1088
|
+
],
|
|
1089
|
+
(json) => [json.expected_type, json.actual_type]
|
|
1090
|
+
);
|
|
1091
|
+
var ApiKeyNotFound = createKnownErrorConstructor(
|
|
1092
|
+
ApiKeyNotValid,
|
|
1093
|
+
"API_KEY_NOT_FOUND",
|
|
1094
|
+
() => [
|
|
1095
|
+
404,
|
|
1096
|
+
"API key not found."
|
|
1097
|
+
],
|
|
1098
|
+
() => []
|
|
1099
|
+
);
|
|
1100
|
+
var PublicApiKeyCannotBeRevoked = createKnownErrorConstructor(
|
|
1101
|
+
ApiKeyNotValid,
|
|
1102
|
+
"PUBLIC_API_KEY_CANNOT_BE_REVOKED",
|
|
1103
|
+
() => [
|
|
1104
|
+
400,
|
|
1105
|
+
"Public API keys cannot be revoked by the secretscanner endpoint."
|
|
1106
|
+
],
|
|
1107
|
+
() => []
|
|
1108
|
+
);
|
|
1109
|
+
var PermissionIdAlreadyExists = createKnownErrorConstructor(
|
|
1110
|
+
KnownError,
|
|
1111
|
+
"PERMISSION_ID_ALREADY_EXISTS",
|
|
1112
|
+
(permissionId) => [
|
|
1113
|
+
400,
|
|
1114
|
+
`Permission with ID "${permissionId}" already exists. Choose a different ID.`,
|
|
1115
|
+
{
|
|
1116
|
+
permission_id: permissionId
|
|
1117
|
+
}
|
|
1118
|
+
],
|
|
1119
|
+
(json) => [json.permission_id]
|
|
1120
|
+
);
|
|
1121
|
+
var KnownErrors = {
|
|
1122
|
+
CannotDeleteCurrentSession,
|
|
1123
|
+
UnsupportedError,
|
|
1124
|
+
BodyParsingError,
|
|
1125
|
+
SchemaError,
|
|
1126
|
+
AllOverloadsFailed,
|
|
1127
|
+
ProjectAuthenticationError,
|
|
1128
|
+
PermissionIdAlreadyExists,
|
|
1129
|
+
CliAuthError,
|
|
1130
|
+
CliAuthExpiredError,
|
|
1131
|
+
CliAuthUsedError,
|
|
1132
|
+
InvalidProjectAuthentication,
|
|
1133
|
+
ProjectKeyWithoutAccessType,
|
|
1134
|
+
InvalidAccessType,
|
|
1135
|
+
AccessTypeWithoutProjectId,
|
|
1136
|
+
AccessTypeRequired,
|
|
1137
|
+
CannotGetOwnUserWithoutUser,
|
|
1138
|
+
InsufficientAccessType,
|
|
1139
|
+
InvalidPublishableClientKey,
|
|
1140
|
+
InvalidSecretServerKey,
|
|
1141
|
+
InvalidSuperSecretAdminKey,
|
|
1142
|
+
InvalidAdminAccessToken,
|
|
1143
|
+
UnparsableAdminAccessToken,
|
|
1144
|
+
AdminAccessTokenExpired,
|
|
1145
|
+
InvalidProjectForAdminAccessToken,
|
|
1146
|
+
AdminAccessTokenIsNotAdmin,
|
|
1147
|
+
ProjectAuthenticationRequired,
|
|
1148
|
+
ClientAuthenticationRequired,
|
|
1149
|
+
ServerAuthenticationRequired,
|
|
1150
|
+
ClientOrServerAuthenticationRequired,
|
|
1151
|
+
ClientOrAdminAuthenticationRequired,
|
|
1152
|
+
ClientOrServerOrAdminAuthenticationRequired,
|
|
1153
|
+
AdminAuthenticationRequired,
|
|
1154
|
+
ExpectedInternalProject,
|
|
1155
|
+
SessionAuthenticationError,
|
|
1156
|
+
InvalidSessionAuthentication,
|
|
1157
|
+
InvalidAccessToken,
|
|
1158
|
+
UnparsableAccessToken,
|
|
1159
|
+
AccessTokenExpired,
|
|
1160
|
+
InvalidProjectForAccessToken,
|
|
1161
|
+
RefreshTokenError,
|
|
1162
|
+
ProviderRejected,
|
|
1163
|
+
RefreshTokenNotFoundOrExpired,
|
|
1164
|
+
UserWithEmailAlreadyExists,
|
|
1165
|
+
EmailNotVerified,
|
|
1166
|
+
UserIdDoesNotExist,
|
|
1167
|
+
UserNotFound,
|
|
1168
|
+
ApiKeyNotFound,
|
|
1169
|
+
PublicApiKeyCannotBeRevoked,
|
|
1170
|
+
ProjectNotFound,
|
|
1171
|
+
SignUpNotEnabled,
|
|
1172
|
+
PasswordAuthenticationNotEnabled,
|
|
1173
|
+
PasskeyAuthenticationNotEnabled,
|
|
1174
|
+
AnonymousAccountsNotEnabled,
|
|
1175
|
+
EmailPasswordMismatch,
|
|
1176
|
+
RedirectUrlNotWhitelisted,
|
|
1177
|
+
PasswordRequirementsNotMet,
|
|
1178
|
+
PasswordTooShort,
|
|
1179
|
+
PasswordTooLong,
|
|
1180
|
+
UserDoesNotHavePassword,
|
|
1181
|
+
VerificationCodeError,
|
|
1182
|
+
VerificationCodeNotFound,
|
|
1183
|
+
VerificationCodeExpired,
|
|
1184
|
+
VerificationCodeAlreadyUsed,
|
|
1185
|
+
VerificationCodeMaxAttemptsReached,
|
|
1186
|
+
PasswordConfirmationMismatch,
|
|
1187
|
+
EmailAlreadyVerified,
|
|
1188
|
+
EmailNotAssociatedWithUser,
|
|
1189
|
+
EmailIsNotPrimaryEmail,
|
|
1190
|
+
PasskeyRegistrationFailed,
|
|
1191
|
+
PasskeyWebAuthnError,
|
|
1192
|
+
PasskeyAuthenticationFailed,
|
|
1193
|
+
PermissionNotFound,
|
|
1194
|
+
PermissionScopeMismatch,
|
|
1195
|
+
ContainedPermissionNotFound,
|
|
1196
|
+
TeamNotFound,
|
|
1197
|
+
TeamMembershipNotFound,
|
|
1198
|
+
EmailTemplateAlreadyExists,
|
|
1199
|
+
OAuthConnectionNotConnectedToUser,
|
|
1200
|
+
OAuthConnectionAlreadyConnectedToAnotherUser,
|
|
1201
|
+
OAuthConnectionDoesNotHaveRequiredScope,
|
|
1202
|
+
OAuthExtraScopeNotAvailableWithSharedOAuthKeys,
|
|
1203
|
+
OAuthAccessTokenNotAvailableWithSharedOAuthKeys,
|
|
1204
|
+
InvalidOAuthClientIdOrSecret,
|
|
1205
|
+
InvalidScope,
|
|
1206
|
+
UserAlreadyConnectedToAnotherOAuthConnection,
|
|
1207
|
+
OuterOAuthTimeout,
|
|
1208
|
+
OAuthProviderNotFoundOrNotEnabled,
|
|
1209
|
+
MultiFactorAuthenticationRequired,
|
|
1210
|
+
InvalidTotpCode,
|
|
1211
|
+
UserAuthenticationRequired,
|
|
1212
|
+
TeamMembershipAlreadyExists,
|
|
1213
|
+
ProjectPermissionRequired,
|
|
1214
|
+
TeamPermissionRequired,
|
|
1215
|
+
InvalidSharedOAuthProviderId,
|
|
1216
|
+
InvalidStandardOAuthProviderId,
|
|
1217
|
+
InvalidAuthorizationCode,
|
|
1218
|
+
TeamPermissionNotFound,
|
|
1219
|
+
OAuthProviderAccessDenied,
|
|
1220
|
+
ContactChannelAlreadyUsedForAuthBySomeoneElse,
|
|
1221
|
+
InvalidPollingCodeError,
|
|
1222
|
+
ApiKeyNotValid,
|
|
1223
|
+
ApiKeyExpired,
|
|
1224
|
+
ApiKeyRevoked,
|
|
1225
|
+
WrongApiKeyType
|
|
1226
|
+
};
|
|
1227
|
+
var knownErrorCodes = /* @__PURE__ */ new Set();
|
|
1228
|
+
for (const [_, KnownError2] of Object.entries(KnownErrors)) {
|
|
1229
|
+
if (knownErrorCodes.has(KnownError2.errorCode)) {
|
|
1230
|
+
throw new Error(`Duplicate known error code: ${KnownError2.errorCode}`);
|
|
1231
|
+
}
|
|
1232
|
+
knownErrorCodes.add(KnownError2.errorCode);
|
|
1233
|
+
}
|
|
1234
|
+
export {
|
|
1235
|
+
KnownError,
|
|
1236
|
+
KnownErrors
|
|
1237
|
+
};
|
|
1238
|
+
//# sourceMappingURL=known-errors.js.map
|