@stackframe/stack-shared 2.8.63 → 2.8.65

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.
Files changed (62) hide show
  1. package/dist/config/schema-fuzzer.test.js +14 -1
  2. package/dist/config/schema-fuzzer.test.js.map +1 -1
  3. package/dist/config/schema.d.mts +103 -0
  4. package/dist/config/schema.d.ts +103 -0
  5. package/dist/config/schema.js +41 -17
  6. package/dist/config/schema.js.map +1 -1
  7. package/dist/esm/config/schema-fuzzer.test.js +14 -1
  8. package/dist/esm/config/schema-fuzzer.test.js.map +1 -1
  9. package/dist/esm/config/schema.js +41 -17
  10. package/dist/esm/config/schema.js.map +1 -1
  11. package/dist/esm/interface/admin-interface.js +2 -1
  12. package/dist/esm/interface/admin-interface.js.map +1 -1
  13. package/dist/esm/interface/client-interface.js.map +1 -1
  14. package/dist/esm/interface/crud/current-user.js +3 -1
  15. package/dist/esm/interface/crud/current-user.js.map +1 -1
  16. package/dist/esm/interface/crud/sign-up-rules.js +1 -0
  17. package/dist/esm/interface/crud/sign-up-rules.js.map +1 -0
  18. package/dist/esm/interface/crud/users.js +40 -4
  19. package/dist/esm/interface/crud/users.js.map +1 -1
  20. package/dist/esm/known-errors.js +14 -1
  21. package/dist/esm/known-errors.js.map +1 -1
  22. package/dist/esm/schema-fields.js +1 -1
  23. package/dist/esm/schema-fields.js.map +1 -1
  24. package/dist/esm/utils/types.js.map +1 -1
  25. package/dist/interface/admin-interface.d.mts +1 -1
  26. package/dist/interface/admin-interface.d.ts +1 -1
  27. package/dist/interface/admin-interface.js +2 -1
  28. package/dist/interface/admin-interface.js.map +1 -1
  29. package/dist/interface/client-interface.js.map +1 -1
  30. package/dist/interface/crud/analytics.d.mts +1 -0
  31. package/dist/interface/crud/analytics.d.ts +1 -0
  32. package/dist/interface/crud/analytics.js.map +1 -1
  33. package/dist/interface/crud/current-user.d.mts +22 -2
  34. package/dist/interface/crud/current-user.d.ts +22 -2
  35. package/dist/interface/crud/current-user.js +3 -1
  36. package/dist/interface/crud/current-user.js.map +1 -1
  37. package/dist/interface/crud/sign-up-rules.d.mts +13 -0
  38. package/dist/interface/crud/sign-up-rules.d.ts +13 -0
  39. package/dist/interface/crud/sign-up-rules.js +19 -0
  40. package/dist/interface/crud/sign-up-rules.js.map +1 -0
  41. package/dist/interface/crud/team-member-profiles.d.mts +14 -2
  42. package/dist/interface/crud/team-member-profiles.d.ts +14 -2
  43. package/dist/interface/crud/users.d.mts +52 -4
  44. package/dist/interface/crud/users.d.ts +52 -4
  45. package/dist/interface/crud/users.js +40 -4
  46. package/dist/interface/crud/users.js.map +1 -1
  47. package/dist/interface/webhooks.d.mts +14 -2
  48. package/dist/interface/webhooks.d.ts +14 -2
  49. package/dist/known-errors.d.mts +4 -1
  50. package/dist/known-errors.d.ts +4 -1
  51. package/dist/known-errors.js +14 -1
  52. package/dist/known-errors.js.map +1 -1
  53. package/dist/schema-fields.d.mts +2 -2
  54. package/dist/schema-fields.d.ts +2 -2
  55. package/dist/schema-fields.js +1 -1
  56. package/dist/schema-fields.js.map +1 -1
  57. package/dist/sessions.d.mts +1 -1
  58. package/dist/sessions.d.ts +1 -1
  59. package/dist/utils/types.d.mts +2 -2
  60. package/dist/utils/types.d.ts +2 -2
  61. package/dist/utils/types.js.map +1 -1
  62. package/package.json +1 -1
@@ -19,6 +19,9 @@ declare const usersCrudServerUpdateSchema: yup.ObjectSchema<{
19
19
  totp_secret_base64: string | null | undefined;
20
20
  selected_team_id: string | null | undefined;
21
21
  is_anonymous: boolean | undefined;
22
+ restricted_by_admin: boolean | undefined;
23
+ restricted_by_admin_reason: string | null | undefined;
24
+ restricted_by_admin_private_details: string | null | undefined;
22
25
  }, yup.AnyObject, {
23
26
  display_name: undefined;
24
27
  profile_image_url: undefined;
@@ -35,6 +38,9 @@ declare const usersCrudServerUpdateSchema: yup.ObjectSchema<{
35
38
  totp_secret_base64: undefined;
36
39
  selected_team_id: undefined;
37
40
  is_anonymous: undefined;
41
+ restricted_by_admin: undefined;
42
+ restricted_by_admin_reason: undefined;
43
+ restricted_by_admin_private_details: undefined;
38
44
  }, "">;
39
45
  declare const usersCrudServerReadSchema: yup.ObjectSchema<{
40
46
  id: string;
@@ -64,8 +70,11 @@ declare const usersCrudServerReadSchema: yup.ObjectSchema<{
64
70
  is_anonymous: boolean;
65
71
  is_restricted: boolean;
66
72
  restricted_reason: {
67
- type: "anonymous" | "email_not_verified";
73
+ type: "anonymous" | "email_not_verified" | "restricted_by_administrator";
68
74
  } | null;
75
+ restricted_by_admin: boolean;
76
+ restricted_by_admin_reason: string | null;
77
+ restricted_by_admin_private_details: string | null;
69
78
  oauth_providers: {
70
79
  email?: string | null | undefined;
71
80
  id: string;
@@ -103,6 +112,9 @@ declare const usersCrudServerReadSchema: yup.ObjectSchema<{
103
112
  restricted_reason: {
104
113
  type: undefined;
105
114
  };
115
+ restricted_by_admin: undefined;
116
+ restricted_by_admin_reason: undefined;
117
+ restricted_by_admin_private_details: undefined;
106
118
  oauth_providers: undefined;
107
119
  auth_with_email: undefined;
108
120
  requires_totp_mfa: undefined;
@@ -122,6 +134,9 @@ declare const usersCrudServerCreateSchema: yup.ObjectSchema<{
122
134
  password_hash: string | undefined;
123
135
  otp_auth_enabled: boolean | undefined;
124
136
  totp_secret_base64: string | null | undefined;
137
+ restricted_by_admin: boolean | undefined;
138
+ restricted_by_admin_reason: string | null | undefined;
139
+ restricted_by_admin_private_details: string | null | undefined;
125
140
  } & {
126
141
  oauth_providers: {
127
142
  email: string | null;
@@ -145,6 +160,9 @@ declare const usersCrudServerCreateSchema: yup.ObjectSchema<{
145
160
  totp_secret_base64: undefined;
146
161
  selected_team_id: undefined;
147
162
  is_anonymous: undefined;
163
+ restricted_by_admin: undefined;
164
+ restricted_by_admin_reason: undefined;
165
+ restricted_by_admin_private_details: undefined;
148
166
  oauth_providers: undefined;
149
167
  }, "">;
150
168
  declare const usersCrudServerDeleteSchema: yup.MixedSchema<{} | undefined, yup.AnyObject, undefined, "">;
@@ -177,8 +195,11 @@ declare const usersCrud: CrudSchemaFromOptions<{
177
195
  is_anonymous: boolean;
178
196
  is_restricted: boolean;
179
197
  restricted_reason: {
180
- type: "anonymous" | "email_not_verified";
198
+ type: "anonymous" | "email_not_verified" | "restricted_by_administrator";
181
199
  } | null;
200
+ restricted_by_admin: boolean;
201
+ restricted_by_admin_reason: string | null;
202
+ restricted_by_admin_private_details: string | null;
182
203
  oauth_providers: {
183
204
  email?: string | null | undefined;
184
205
  id: string;
@@ -216,6 +237,9 @@ declare const usersCrud: CrudSchemaFromOptions<{
216
237
  restricted_reason: {
217
238
  type: undefined;
218
239
  };
240
+ restricted_by_admin: undefined;
241
+ restricted_by_admin_reason: undefined;
242
+ restricted_by_admin_private_details: undefined;
219
243
  oauth_providers: undefined;
220
244
  auth_with_email: undefined;
221
245
  requires_totp_mfa: undefined;
@@ -236,6 +260,9 @@ declare const usersCrud: CrudSchemaFromOptions<{
236
260
  totp_secret_base64: string | null | undefined;
237
261
  selected_team_id: string | null | undefined;
238
262
  is_anonymous: boolean | undefined;
263
+ restricted_by_admin: boolean | undefined;
264
+ restricted_by_admin_reason: string | null | undefined;
265
+ restricted_by_admin_private_details: string | null | undefined;
239
266
  }, yup.AnyObject, {
240
267
  display_name: undefined;
241
268
  profile_image_url: undefined;
@@ -252,6 +279,9 @@ declare const usersCrud: CrudSchemaFromOptions<{
252
279
  totp_secret_base64: undefined;
253
280
  selected_team_id: undefined;
254
281
  is_anonymous: undefined;
282
+ restricted_by_admin: undefined;
283
+ restricted_by_admin_reason: undefined;
284
+ restricted_by_admin_private_details: undefined;
255
285
  }, "">;
256
286
  serverCreateSchema: yup.ObjectSchema<{
257
287
  is_anonymous: boolean | undefined;
@@ -268,6 +298,9 @@ declare const usersCrud: CrudSchemaFromOptions<{
268
298
  password_hash: string | undefined;
269
299
  otp_auth_enabled: boolean | undefined;
270
300
  totp_secret_base64: string | null | undefined;
301
+ restricted_by_admin: boolean | undefined;
302
+ restricted_by_admin_reason: string | null | undefined;
303
+ restricted_by_admin_private_details: string | null | undefined;
271
304
  } & {
272
305
  oauth_providers: {
273
306
  email: string | null;
@@ -291,6 +324,9 @@ declare const usersCrud: CrudSchemaFromOptions<{
291
324
  totp_secret_base64: undefined;
292
325
  selected_team_id: undefined;
293
326
  is_anonymous: undefined;
327
+ restricted_by_admin: undefined;
328
+ restricted_by_admin_reason: undefined;
329
+ restricted_by_admin_private_details: undefined;
294
330
  oauth_providers: undefined;
295
331
  }, "">;
296
332
  serverDeleteSchema: yup.MixedSchema<{} | undefined, yup.AnyObject, undefined, "">;
@@ -353,8 +389,11 @@ declare const userCreatedWebhookEvent: {
353
389
  is_anonymous: boolean;
354
390
  is_restricted: boolean;
355
391
  restricted_reason: {
356
- type: "anonymous" | "email_not_verified";
392
+ type: "anonymous" | "email_not_verified" | "restricted_by_administrator";
357
393
  } | null;
394
+ restricted_by_admin: boolean;
395
+ restricted_by_admin_reason: string | null;
396
+ restricted_by_admin_private_details: string | null;
358
397
  oauth_providers: {
359
398
  email?: string | null | undefined;
360
399
  id: string;
@@ -392,6 +431,9 @@ declare const userCreatedWebhookEvent: {
392
431
  restricted_reason: {
393
432
  type: undefined;
394
433
  };
434
+ restricted_by_admin: undefined;
435
+ restricted_by_admin_reason: undefined;
436
+ restricted_by_admin_private_details: undefined;
395
437
  oauth_providers: undefined;
396
438
  auth_with_email: undefined;
397
439
  requires_totp_mfa: undefined;
@@ -432,8 +474,11 @@ declare const userUpdatedWebhookEvent: {
432
474
  is_anonymous: boolean;
433
475
  is_restricted: boolean;
434
476
  restricted_reason: {
435
- type: "anonymous" | "email_not_verified";
477
+ type: "anonymous" | "email_not_verified" | "restricted_by_administrator";
436
478
  } | null;
479
+ restricted_by_admin: boolean;
480
+ restricted_by_admin_reason: string | null;
481
+ restricted_by_admin_private_details: string | null;
437
482
  oauth_providers: {
438
483
  email?: string | null | undefined;
439
484
  id: string;
@@ -471,6 +516,9 @@ declare const userUpdatedWebhookEvent: {
471
516
  restricted_reason: {
472
517
  type: undefined;
473
518
  };
519
+ restricted_by_admin: undefined;
520
+ restricted_by_admin_reason: undefined;
521
+ restricted_by_admin_private_details: undefined;
474
522
  oauth_providers: undefined;
475
523
  auth_with_email: undefined;
476
524
  requires_totp_mfa: undefined;
@@ -58,8 +58,26 @@ var usersCrudServerUpdateSchema = fieldSchema.yupObject({
58
58
  otp_auth_enabled: fieldSchema.userOtpAuthEnabledMutationSchema.optional(),
59
59
  totp_secret_base64: fieldSchema.userTotpSecretMutationSchema.optional(),
60
60
  selected_team_id: fieldSchema.selectedTeamIdSchema.nullable().optional(),
61
- is_anonymous: fieldSchema.yupBoolean().oneOf([false]).optional()
62
- }).defined();
61
+ is_anonymous: fieldSchema.yupBoolean().oneOf([false]).optional(),
62
+ restricted_by_admin: fieldSchema.yupBoolean().optional().meta({ openapiField: { description: "Whether the user is restricted by an administrator. Can be set manually or by sign-up rules.", exampleValue: false } }),
63
+ restricted_by_admin_reason: fieldSchema.yupString().nullable().optional().meta({ openapiField: { description: "Public reason shown to the user explaining why they are restricted. Optional.", exampleValue: null } }),
64
+ restricted_by_admin_private_details: fieldSchema.yupString().nullable().optional().meta({ openapiField: { description: "Private details about the restriction (e.g., which sign-up rule triggered). Only visible to server access and above.", exampleValue: null } })
65
+ }).defined().test(
66
+ "restricted_by_admin_consistency",
67
+ "When restricted_by_admin is not true, reason and private_details must be null",
68
+ function(value) {
69
+ if (value == null) return true;
70
+ if (value.restricted_by_admin !== true) {
71
+ if (value.restricted_by_admin_reason != null) {
72
+ return this.createError({ message: "restricted_by_admin_reason must be null when restricted_by_admin is not true" });
73
+ }
74
+ if (value.restricted_by_admin_private_details != null) {
75
+ return this.createError({ message: "restricted_by_admin_private_details must be null when restricted_by_admin is not true" });
76
+ }
77
+ }
78
+ return true;
79
+ }
80
+ );
63
81
  var usersCrudServerReadSchema = fieldSchema.yupObject({
64
82
  id: fieldSchema.userIdSchema.defined(),
65
83
  primary_email: fieldSchema.primaryEmailSchema.nullable().defined(),
@@ -81,7 +99,10 @@ var usersCrudServerReadSchema = fieldSchema.yupObject({
81
99
  is_restricted: fieldSchema.yupBoolean().defined().meta({ openapiField: { description: "Whether the user is in restricted state (has signed up but not completed onboarding requirements)", exampleValue: false } }),
82
100
  restricted_reason: fieldSchema.yupObject({
83
101
  type: fieldSchema.yupString().oneOf(fieldSchema.restrictedReasonTypes).defined()
84
- }).nullable().defined().meta({ openapiField: { description: 'The reason why the user is restricted (e.g., type: "email_not_verified" or "anonymous"), null if not restricted', exampleValue: null } }),
102
+ }).nullable().defined().meta({ openapiField: { description: 'The reason why the user is restricted (e.g., type: "email_not_verified", "anonymous", or "restricted_by_administrator"), null if not restricted', exampleValue: null } }),
103
+ restricted_by_admin: fieldSchema.yupBoolean().defined().meta({ openapiField: { description: "Whether the user is restricted by an administrator. Can be set manually or by sign-up rules.", exampleValue: false } }),
104
+ restricted_by_admin_reason: fieldSchema.yupString().nullable().defined().meta({ openapiField: { description: "Public reason shown to the user explaining why they are restricted. Optional.", exampleValue: null } }),
105
+ restricted_by_admin_private_details: fieldSchema.yupString().nullable().defined().meta({ openapiField: { description: "Private details about the restriction (e.g., which sign-up rule triggered). Only visible to server access and above.", exampleValue: null } }),
85
106
  oauth_providers: fieldSchema.yupArray(fieldSchema.yupObject({
86
107
  id: fieldSchema.yupString().defined(),
87
108
  account_id: fieldSchema.yupString().defined(),
@@ -98,7 +119,22 @@ var usersCrudServerReadSchema = fieldSchema.yupObject({
98
119
  }).defined().test("restricted_reason_iff_restricted", "restricted_reason must be present if and only if is_restricted is true", function(value) {
99
120
  if (value == null) return true;
100
121
  return value.is_restricted === !!value.restricted_reason;
101
- });
122
+ }).test(
123
+ "restricted_by_admin_consistency",
124
+ "When restricted_by_admin is not true, reason and private_details must be null",
125
+ function(value) {
126
+ if (value == null) return true;
127
+ if (value.restricted_by_admin !== true) {
128
+ if (value.restricted_by_admin_reason != null) {
129
+ return this.createError({ message: "restricted_by_admin_reason must be null when restricted_by_admin is not true" });
130
+ }
131
+ if (value.restricted_by_admin_private_details != null) {
132
+ return this.createError({ message: "restricted_by_admin_private_details must be null when restricted_by_admin is not true" });
133
+ }
134
+ }
135
+ return true;
136
+ }
137
+ );
102
138
  var usersCrudServerCreateSchema = usersCrudServerUpdateSchema.omit(["selected_team_id"]).concat(fieldSchema.yupObject({
103
139
  oauth_providers: fieldSchema.yupArray(fieldSchema.yupObject({
104
140
  id: fieldSchema.yupString().defined(),
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/interface/crud/users.ts"],"sourcesContent":["import * as yup from \"yup\";\nimport { CrudTypeOf, createCrud } from \"../../crud\";\nimport * as fieldSchema from \"../../schema-fields\";\nimport { WebhookEvent } from \"../webhooks\";\nimport { teamsCrudServerReadSchema } from \"./teams\";\n\nexport const usersCrudServerUpdateSchema = fieldSchema.yupObject({\n display_name: fieldSchema.userDisplayNameSchema.optional(),\n profile_image_url: fieldSchema.profileImageUrlSchema.nullable().optional(),\n client_metadata: fieldSchema.userClientMetadataSchema.optional(),\n client_read_only_metadata: fieldSchema.userClientReadOnlyMetadataSchema.optional(),\n server_metadata: fieldSchema.userServerMetadataSchema.optional(),\n primary_email: fieldSchema.primaryEmailSchema.nullable().optional().nonEmpty(),\n primary_email_verified: fieldSchema.primaryEmailVerifiedSchema.optional(),\n primary_email_auth_enabled: fieldSchema.primaryEmailAuthEnabledSchema.optional(),\n passkey_auth_enabled: fieldSchema.userOtpAuthEnabledSchema.optional(),\n password: fieldSchema.userPasswordMutationSchema.optional(),\n password_hash: fieldSchema.userPasswordHashMutationSchema.optional(),\n otp_auth_enabled: fieldSchema.userOtpAuthEnabledMutationSchema.optional(),\n totp_secret_base64: fieldSchema.userTotpSecretMutationSchema.optional(),\n selected_team_id: fieldSchema.selectedTeamIdSchema.nullable().optional(),\n is_anonymous: fieldSchema.yupBoolean().oneOf([false]).optional(),\n}).defined();\n\nexport const usersCrudServerReadSchema = fieldSchema.yupObject({\n id: fieldSchema.userIdSchema.defined(),\n primary_email: fieldSchema.primaryEmailSchema.nullable().defined(),\n primary_email_verified: fieldSchema.primaryEmailVerifiedSchema.defined(),\n primary_email_auth_enabled: fieldSchema.primaryEmailAuthEnabledSchema.defined(),\n display_name: fieldSchema.userDisplayNameSchema.nullable().defined(),\n selected_team: teamsCrudServerReadSchema.nullable().defined(),\n selected_team_id: fieldSchema.selectedTeamIdSchema.nullable().defined(),\n profile_image_url: fieldSchema.profileImageUrlSchema.nullable().defined(),\n signed_up_at_millis: fieldSchema.signedUpAtMillisSchema.defined(),\n has_password: fieldSchema.userHasPasswordSchema.defined(),\n otp_auth_enabled: fieldSchema.userOtpAuthEnabledSchema.defined(),\n passkey_auth_enabled: fieldSchema.userOtpAuthEnabledSchema.defined(),\n client_metadata: fieldSchema.userClientMetadataSchema,\n client_read_only_metadata: fieldSchema.userClientReadOnlyMetadataSchema,\n server_metadata: fieldSchema.userServerMetadataSchema,\n last_active_at_millis: fieldSchema.userLastActiveAtMillisSchema.nonNullable().defined(),\n is_anonymous: fieldSchema.yupBoolean().defined(),\n is_restricted: fieldSchema.yupBoolean().defined().meta({ openapiField: { description: 'Whether the user is in restricted state (has signed up but not completed onboarding requirements)', exampleValue: false } }),\n restricted_reason: fieldSchema.yupObject({\n type: fieldSchema.yupString().oneOf(fieldSchema.restrictedReasonTypes).defined(),\n }).nullable().defined().meta({ openapiField: { description: 'The reason why the user is restricted (e.g., type: \"email_not_verified\" or \"anonymous\"), null if not restricted', exampleValue: null } }),\n\n oauth_providers: fieldSchema.yupArray(fieldSchema.yupObject({\n id: fieldSchema.yupString().defined(),\n account_id: fieldSchema.yupString().defined(),\n email: fieldSchema.yupString().nullable(),\n }).defined()).defined().meta({ openapiField: { hidden: true } }),\n\n /**\n * @deprecated\n */\n auth_with_email: fieldSchema.yupBoolean().defined().meta({ openapiField: { hidden: true, description: 'Whether the user can authenticate with their primary e-mail. If set to true, the user can log-in with credentials and/or magic link, if enabled in the project settings.', exampleValue: true } }),\n /**\n * @deprecated\n */\n requires_totp_mfa: fieldSchema.yupBoolean().defined().meta({ openapiField: { hidden: true, description: 'Whether the user is required to use TOTP MFA to sign in', exampleValue: false } }),\n}).defined().test(\"restricted_reason_iff_restricted\", \"restricted_reason must be present if and only if is_restricted is true\", function(this: yup.TestContext<any>, value: any) {\n if (value == null) return true;\n return value.is_restricted === !!value.restricted_reason;\n});\n\nexport const usersCrudServerCreateSchema = usersCrudServerUpdateSchema.omit(['selected_team_id']).concat(fieldSchema.yupObject({\n oauth_providers: fieldSchema.yupArray(fieldSchema.yupObject({\n id: fieldSchema.yupString().defined(),\n account_id: fieldSchema.yupString().defined(),\n email: fieldSchema.yupString().nullable().defined().default(null),\n }).defined()).optional().meta({ openapiField: { hidden: true } }),\n is_anonymous: fieldSchema.yupBoolean().optional(),\n}).defined());\n\nexport const usersCrudServerDeleteSchema = fieldSchema.yupMixed();\n\nexport const usersCrud = createCrud({\n serverReadSchema: usersCrudServerReadSchema,\n serverUpdateSchema: usersCrudServerUpdateSchema,\n serverCreateSchema: usersCrudServerCreateSchema,\n serverDeleteSchema: usersCrudServerDeleteSchema,\n docs: {\n serverCreate: {\n tags: [\"Users\"],\n summary: 'Create user',\n description: 'Creates a new user. E-mail authentication is always enabled, and no password is set, meaning the only way to authenticate the newly created user is through magic link.',\n },\n serverRead: {\n tags: [\"Users\"],\n summary: 'Get user',\n description: 'Gets a user by user ID.',\n },\n serverUpdate: {\n tags: [\"Users\"],\n summary: 'Update user',\n description: 'Updates a user. Only the values provided will be updated.',\n },\n serverDelete: {\n tags: [\"Users\"],\n summary: 'Delete user',\n description: 'Deletes a user. Use this with caution.',\n },\n serverList: {\n tags: [\"Users\"],\n summary: 'List users',\n description: 'Lists all the users in the project. By default, only fully onboarded users are returned. Restricted users (those who haven\\'t completed onboarding requirements like email verification) are included if `include_restricted` is set to `true`. Anonymous users are included if `include_anonymous` is set to `true` (which also includes restricted users).',\n },\n },\n});\nexport type UsersCrud = CrudTypeOf<typeof usersCrud>;\n\nexport const userCreatedWebhookEvent = {\n type: \"user.created\",\n schema: usersCrud.server.readSchema,\n metadata: {\n summary: \"User Created\",\n description: \"This event is triggered when a user is created.\",\n tags: [\"Users\"],\n },\n} satisfies WebhookEvent<typeof usersCrud.server.readSchema>;\n\nexport const userUpdatedWebhookEvent = {\n type: \"user.updated\",\n schema: usersCrud.server.readSchema,\n metadata: {\n summary: \"User Updated\",\n description: \"This event is triggered when a user is updated.\",\n tags: [\"Users\"],\n },\n} satisfies WebhookEvent<typeof usersCrud.server.readSchema>;\n\nconst webhookUserDeletedSchema = fieldSchema.yupObject({\n id: fieldSchema.userIdSchema.defined(),\n teams: fieldSchema.yupArray(fieldSchema.yupObject({\n id: fieldSchema.yupString().defined(),\n })).defined(),\n}).defined();\n\nexport const userDeletedWebhookEvent = {\n type: \"user.deleted\",\n schema: webhookUserDeletedSchema,\n metadata: {\n summary: \"User Deleted\",\n description: \"This event is triggered when a user is deleted.\",\n tags: [\"Users\"],\n },\n} satisfies WebhookEvent<typeof webhookUserDeletedSchema>;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,kBAAuC;AACvC,kBAA6B;AAE7B,mBAA0C;AAEnC,IAAM,8BAA0C,sBAAU;AAAA,EAC/D,cAA0B,kCAAsB,SAAS;AAAA,EACzD,mBAA+B,kCAAsB,SAAS,EAAE,SAAS;AAAA,EACzE,iBAA6B,qCAAyB,SAAS;AAAA,EAC/D,2BAAuC,6CAAiC,SAAS;AAAA,EACjF,iBAA6B,qCAAyB,SAAS;AAAA,EAC/D,eAA2B,+BAAmB,SAAS,EAAE,SAAS,EAAE,SAAS;AAAA,EAC7E,wBAAoC,uCAA2B,SAAS;AAAA,EACxE,4BAAwC,0CAA8B,SAAS;AAAA,EAC/E,sBAAkC,qCAAyB,SAAS;AAAA,EACpE,UAAsB,uCAA2B,SAAS;AAAA,EAC1D,eAA2B,2CAA+B,SAAS;AAAA,EACnE,kBAA8B,6CAAiC,SAAS;AAAA,EACxE,oBAAgC,yCAA6B,SAAS;AAAA,EACtE,kBAA8B,iCAAqB,SAAS,EAAE,SAAS;AAAA,EACvE,cAA0B,uBAAW,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS;AACjE,CAAC,EAAE,QAAQ;AAEJ,IAAM,4BAAwC,sBAAU;AAAA,EAC7D,IAAgB,yBAAa,QAAQ;AAAA,EACrC,eAA2B,+BAAmB,SAAS,EAAE,QAAQ;AAAA,EACjE,wBAAoC,uCAA2B,QAAQ;AAAA,EACvE,4BAAwC,0CAA8B,QAAQ;AAAA,EAC9E,cAA0B,kCAAsB,SAAS,EAAE,QAAQ;AAAA,EACnE,eAAe,uCAA0B,SAAS,EAAE,QAAQ;AAAA,EAC5D,kBAA8B,iCAAqB,SAAS,EAAE,QAAQ;AAAA,EACtE,mBAA+B,kCAAsB,SAAS,EAAE,QAAQ;AAAA,EACxE,qBAAiC,mCAAuB,QAAQ;AAAA,EAChE,cAA0B,kCAAsB,QAAQ;AAAA,EACxD,kBAA8B,qCAAyB,QAAQ;AAAA,EAC/D,sBAAkC,qCAAyB,QAAQ;AAAA,EACnE,iBAA6B;AAAA,EAC7B,2BAAuC;AAAA,EACvC,iBAA6B;AAAA,EAC7B,uBAAmC,yCAA6B,YAAY,EAAE,QAAQ;AAAA,EACtF,cAA0B,uBAAW,EAAE,QAAQ;AAAA,EAC/C,eAA2B,uBAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,qGAAqG,cAAc,MAAM,EAAE,CAAC;AAAA,EAClN,mBAA+B,sBAAU;AAAA,IACvC,MAAkB,sBAAU,EAAE,MAAkB,iCAAqB,EAAE,QAAQ;AAAA,EACjF,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,mHAAmH,cAAc,KAAK,EAAE,CAAC;AAAA,EAErM,iBAA6B,qBAAqB,sBAAU;AAAA,IAC1D,IAAgB,sBAAU,EAAE,QAAQ;AAAA,IACpC,YAAwB,sBAAU,EAAE,QAAQ;AAAA,IAC5C,OAAmB,sBAAU,EAAE,SAAS;AAAA,EAC1C,CAAC,EAAE,QAAQ,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,KAAK,EAAE,CAAC;AAAA;AAAA;AAAA;AAAA,EAK/D,iBAA6B,uBAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,MAAM,aAAa,4KAA4K,cAAc,KAAK,EAAE,CAAC;AAAA;AAAA;AAAA;AAAA,EAIxS,mBAA+B,uBAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,MAAM,aAAa,2DAA2D,cAAc,MAAM,EAAE,CAAC;AAC5L,CAAC,EAAE,QAAQ,EAAE,KAAK,oCAAoC,0EAA0E,SAAqC,OAAY;AAC/K,MAAI,SAAS,KAAM,QAAO;AAC1B,SAAO,MAAM,kBAAkB,CAAC,CAAC,MAAM;AACzC,CAAC;AAEM,IAAM,8BAA8B,4BAA4B,KAAK,CAAC,kBAAkB,CAAC,EAAE,OAAmB,sBAAU;AAAA,EAC7H,iBAA6B,qBAAqB,sBAAU;AAAA,IAC1D,IAAgB,sBAAU,EAAE,QAAQ;AAAA,IACpC,YAAwB,sBAAU,EAAE,QAAQ;AAAA,IAC5C,OAAmB,sBAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,IAAI;AAAA,EAClE,CAAC,EAAE,QAAQ,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,KAAK,EAAE,CAAC;AAAA,EAChE,cAA0B,uBAAW,EAAE,SAAS;AAClD,CAAC,EAAE,QAAQ,CAAC;AAEL,IAAM,8BAA0C,qBAAS;AAEzD,IAAM,gBAAY,wBAAW;AAAA,EAClC,kBAAkB;AAAA,EAClB,oBAAoB;AAAA,EACpB,oBAAoB;AAAA,EACpB,oBAAoB;AAAA,EACpB,MAAM;AAAA,IACJ,cAAc;AAAA,MACZ,MAAM,CAAC,OAAO;AAAA,MACd,SAAS;AAAA,MACT,aAAa;AAAA,IACf;AAAA,IACA,YAAY;AAAA,MACV,MAAM,CAAC,OAAO;AAAA,MACd,SAAS;AAAA,MACT,aAAa;AAAA,IACf;AAAA,IACA,cAAc;AAAA,MACZ,MAAM,CAAC,OAAO;AAAA,MACd,SAAS;AAAA,MACT,aAAa;AAAA,IACf;AAAA,IACA,cAAc;AAAA,MACZ,MAAM,CAAC,OAAO;AAAA,MACd,SAAS;AAAA,MACT,aAAa;AAAA,IACf;AAAA,IACA,YAAY;AAAA,MACV,MAAM,CAAC,OAAO;AAAA,MACd,SAAS;AAAA,MACT,aAAa;AAAA,IACf;AAAA,EACF;AACF,CAAC;AAGM,IAAM,0BAA0B;AAAA,EACrC,MAAM;AAAA,EACN,QAAQ,UAAU,OAAO;AAAA,EACzB,UAAU;AAAA,IACR,SAAS;AAAA,IACT,aAAa;AAAA,IACb,MAAM,CAAC,OAAO;AAAA,EAChB;AACF;AAEO,IAAM,0BAA0B;AAAA,EACrC,MAAM;AAAA,EACN,QAAQ,UAAU,OAAO;AAAA,EACzB,UAAU;AAAA,IACR,SAAS;AAAA,IACT,aAAa;AAAA,IACb,MAAM,CAAC,OAAO;AAAA,EAChB;AACF;AAEA,IAAM,2BAAuC,sBAAU;AAAA,EACrD,IAAgB,yBAAa,QAAQ;AAAA,EACrC,OAAmB,qBAAqB,sBAAU;AAAA,IAChD,IAAgB,sBAAU,EAAE,QAAQ;AAAA,EACtC,CAAC,CAAC,EAAE,QAAQ;AACd,CAAC,EAAE,QAAQ;AAEJ,IAAM,0BAA0B;AAAA,EACrC,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,UAAU;AAAA,IACR,SAAS;AAAA,IACT,aAAa;AAAA,IACb,MAAM,CAAC,OAAO;AAAA,EAChB;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/interface/crud/users.ts"],"sourcesContent":["import * as yup from \"yup\";\nimport { CrudTypeOf, createCrud } from \"../../crud\";\nimport * as fieldSchema from \"../../schema-fields\";\nimport { WebhookEvent } from \"../webhooks\";\nimport { teamsCrudServerReadSchema } from \"./teams\";\n\nexport const usersCrudServerUpdateSchema = fieldSchema.yupObject({\n display_name: fieldSchema.userDisplayNameSchema.optional(),\n profile_image_url: fieldSchema.profileImageUrlSchema.nullable().optional(),\n client_metadata: fieldSchema.userClientMetadataSchema.optional(),\n client_read_only_metadata: fieldSchema.userClientReadOnlyMetadataSchema.optional(),\n server_metadata: fieldSchema.userServerMetadataSchema.optional(),\n primary_email: fieldSchema.primaryEmailSchema.nullable().optional().nonEmpty(),\n primary_email_verified: fieldSchema.primaryEmailVerifiedSchema.optional(),\n primary_email_auth_enabled: fieldSchema.primaryEmailAuthEnabledSchema.optional(),\n passkey_auth_enabled: fieldSchema.userOtpAuthEnabledSchema.optional(),\n password: fieldSchema.userPasswordMutationSchema.optional(),\n password_hash: fieldSchema.userPasswordHashMutationSchema.optional(),\n otp_auth_enabled: fieldSchema.userOtpAuthEnabledMutationSchema.optional(),\n totp_secret_base64: fieldSchema.userTotpSecretMutationSchema.optional(),\n selected_team_id: fieldSchema.selectedTeamIdSchema.nullable().optional(),\n is_anonymous: fieldSchema.yupBoolean().oneOf([false]).optional(),\n restricted_by_admin: fieldSchema.yupBoolean().optional().meta({ openapiField: { description: 'Whether the user is restricted by an administrator. Can be set manually or by sign-up rules.', exampleValue: false } }),\n restricted_by_admin_reason: fieldSchema.yupString().nullable().optional().meta({ openapiField: { description: 'Public reason shown to the user explaining why they are restricted. Optional.', exampleValue: null } }),\n restricted_by_admin_private_details: fieldSchema.yupString().nullable().optional().meta({ openapiField: { description: 'Private details about the restriction (e.g., which sign-up rule triggered). Only visible to server access and above.', exampleValue: null } }),\n}).defined().test(\n \"restricted_by_admin_consistency\",\n \"When restricted_by_admin is not true, reason and private_details must be null\",\n function(this: yup.TestContext<any>, value: any) {\n if (value == null) return true;\n // If restricted_by_admin is false or missing, both reason and private_details must be null\n if (value.restricted_by_admin !== true) {\n if (value.restricted_by_admin_reason != null) {\n return this.createError({ message: \"restricted_by_admin_reason must be null when restricted_by_admin is not true\" });\n }\n if (value.restricted_by_admin_private_details != null) {\n return this.createError({ message: \"restricted_by_admin_private_details must be null when restricted_by_admin is not true\" });\n }\n }\n return true;\n }\n);\n\nexport const usersCrudServerReadSchema = fieldSchema.yupObject({\n id: fieldSchema.userIdSchema.defined(),\n primary_email: fieldSchema.primaryEmailSchema.nullable().defined(),\n primary_email_verified: fieldSchema.primaryEmailVerifiedSchema.defined(),\n primary_email_auth_enabled: fieldSchema.primaryEmailAuthEnabledSchema.defined(),\n display_name: fieldSchema.userDisplayNameSchema.nullable().defined(),\n selected_team: teamsCrudServerReadSchema.nullable().defined(),\n selected_team_id: fieldSchema.selectedTeamIdSchema.nullable().defined(),\n profile_image_url: fieldSchema.profileImageUrlSchema.nullable().defined(),\n signed_up_at_millis: fieldSchema.signedUpAtMillisSchema.defined(),\n has_password: fieldSchema.userHasPasswordSchema.defined(),\n otp_auth_enabled: fieldSchema.userOtpAuthEnabledSchema.defined(),\n passkey_auth_enabled: fieldSchema.userOtpAuthEnabledSchema.defined(),\n client_metadata: fieldSchema.userClientMetadataSchema,\n client_read_only_metadata: fieldSchema.userClientReadOnlyMetadataSchema,\n server_metadata: fieldSchema.userServerMetadataSchema,\n last_active_at_millis: fieldSchema.userLastActiveAtMillisSchema.nonNullable().defined(),\n is_anonymous: fieldSchema.yupBoolean().defined(),\n is_restricted: fieldSchema.yupBoolean().defined().meta({ openapiField: { description: 'Whether the user is in restricted state (has signed up but not completed onboarding requirements)', exampleValue: false } }),\n restricted_reason: fieldSchema.yupObject({\n type: fieldSchema.yupString().oneOf(fieldSchema.restrictedReasonTypes).defined(),\n }).nullable().defined().meta({ openapiField: { description: 'The reason why the user is restricted (e.g., type: \"email_not_verified\", \"anonymous\", or \"restricted_by_administrator\"), null if not restricted', exampleValue: null } }),\n restricted_by_admin: fieldSchema.yupBoolean().defined().meta({ openapiField: { description: 'Whether the user is restricted by an administrator. Can be set manually or by sign-up rules.', exampleValue: false } }),\n restricted_by_admin_reason: fieldSchema.yupString().nullable().defined().meta({ openapiField: { description: 'Public reason shown to the user explaining why they are restricted. Optional.', exampleValue: null } }),\n restricted_by_admin_private_details: fieldSchema.yupString().nullable().defined().meta({ openapiField: { description: 'Private details about the restriction (e.g., which sign-up rule triggered). Only visible to server access and above.', exampleValue: null } }),\n\n oauth_providers: fieldSchema.yupArray(fieldSchema.yupObject({\n id: fieldSchema.yupString().defined(),\n account_id: fieldSchema.yupString().defined(),\n email: fieldSchema.yupString().nullable(),\n }).defined()).defined().meta({ openapiField: { hidden: true } }),\n\n /**\n * @deprecated\n */\n auth_with_email: fieldSchema.yupBoolean().defined().meta({ openapiField: { hidden: true, description: 'Whether the user can authenticate with their primary e-mail. If set to true, the user can log-in with credentials and/or magic link, if enabled in the project settings.', exampleValue: true } }),\n /**\n * @deprecated\n */\n requires_totp_mfa: fieldSchema.yupBoolean().defined().meta({ openapiField: { hidden: true, description: 'Whether the user is required to use TOTP MFA to sign in', exampleValue: false } }),\n}).defined().test(\"restricted_reason_iff_restricted\", \"restricted_reason must be present if and only if is_restricted is true\", function(this: yup.TestContext<any>, value: any) {\n if (value == null) return true;\n return value.is_restricted === !!value.restricted_reason;\n}).test(\n \"restricted_by_admin_consistency\",\n \"When restricted_by_admin is not true, reason and private_details must be null\",\n function(this: yup.TestContext<any>, value: any) {\n if (value == null) return true;\n // If restricted_by_admin is false or missing, both reason and private_details must be null\n if (value.restricted_by_admin !== true) {\n if (value.restricted_by_admin_reason != null) {\n return this.createError({ message: \"restricted_by_admin_reason must be null when restricted_by_admin is not true\" });\n }\n if (value.restricted_by_admin_private_details != null) {\n return this.createError({ message: \"restricted_by_admin_private_details must be null when restricted_by_admin is not true\" });\n }\n }\n return true;\n }\n);\n\nexport const usersCrudServerCreateSchema = usersCrudServerUpdateSchema.omit(['selected_team_id']).concat(fieldSchema.yupObject({\n oauth_providers: fieldSchema.yupArray(fieldSchema.yupObject({\n id: fieldSchema.yupString().defined(),\n account_id: fieldSchema.yupString().defined(),\n email: fieldSchema.yupString().nullable().defined().default(null),\n }).defined()).optional().meta({ openapiField: { hidden: true } }),\n is_anonymous: fieldSchema.yupBoolean().optional(),\n}).defined());\n\nexport const usersCrudServerDeleteSchema = fieldSchema.yupMixed();\n\nexport const usersCrud = createCrud({\n serverReadSchema: usersCrudServerReadSchema,\n serverUpdateSchema: usersCrudServerUpdateSchema,\n serverCreateSchema: usersCrudServerCreateSchema,\n serverDeleteSchema: usersCrudServerDeleteSchema,\n docs: {\n serverCreate: {\n tags: [\"Users\"],\n summary: 'Create user',\n description: 'Creates a new user. E-mail authentication is always enabled, and no password is set, meaning the only way to authenticate the newly created user is through magic link.',\n },\n serverRead: {\n tags: [\"Users\"],\n summary: 'Get user',\n description: 'Gets a user by user ID.',\n },\n serverUpdate: {\n tags: [\"Users\"],\n summary: 'Update user',\n description: 'Updates a user. Only the values provided will be updated.',\n },\n serverDelete: {\n tags: [\"Users\"],\n summary: 'Delete user',\n description: 'Deletes a user. Use this with caution.',\n },\n serverList: {\n tags: [\"Users\"],\n summary: 'List users',\n description: 'Lists all the users in the project. By default, only fully onboarded users are returned. Restricted users (those who haven\\'t completed onboarding requirements like email verification) are included if `include_restricted` is set to `true`. Anonymous users are included if `include_anonymous` is set to `true` (which also includes restricted users).',\n },\n },\n});\nexport type UsersCrud = CrudTypeOf<typeof usersCrud>;\n\nexport const userCreatedWebhookEvent = {\n type: \"user.created\",\n schema: usersCrud.server.readSchema,\n metadata: {\n summary: \"User Created\",\n description: \"This event is triggered when a user is created.\",\n tags: [\"Users\"],\n },\n} satisfies WebhookEvent<typeof usersCrud.server.readSchema>;\n\nexport const userUpdatedWebhookEvent = {\n type: \"user.updated\",\n schema: usersCrud.server.readSchema,\n metadata: {\n summary: \"User Updated\",\n description: \"This event is triggered when a user is updated.\",\n tags: [\"Users\"],\n },\n} satisfies WebhookEvent<typeof usersCrud.server.readSchema>;\n\nconst webhookUserDeletedSchema = fieldSchema.yupObject({\n id: fieldSchema.userIdSchema.defined(),\n teams: fieldSchema.yupArray(fieldSchema.yupObject({\n id: fieldSchema.yupString().defined(),\n })).defined(),\n}).defined();\n\nexport const userDeletedWebhookEvent = {\n type: \"user.deleted\",\n schema: webhookUserDeletedSchema,\n metadata: {\n summary: \"User Deleted\",\n description: \"This event is triggered when a user is deleted.\",\n tags: [\"Users\"],\n },\n} satisfies WebhookEvent<typeof webhookUserDeletedSchema>;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,kBAAuC;AACvC,kBAA6B;AAE7B,mBAA0C;AAEnC,IAAM,8BAA0C,sBAAU;AAAA,EAC/D,cAA0B,kCAAsB,SAAS;AAAA,EACzD,mBAA+B,kCAAsB,SAAS,EAAE,SAAS;AAAA,EACzE,iBAA6B,qCAAyB,SAAS;AAAA,EAC/D,2BAAuC,6CAAiC,SAAS;AAAA,EACjF,iBAA6B,qCAAyB,SAAS;AAAA,EAC/D,eAA2B,+BAAmB,SAAS,EAAE,SAAS,EAAE,SAAS;AAAA,EAC7E,wBAAoC,uCAA2B,SAAS;AAAA,EACxE,4BAAwC,0CAA8B,SAAS;AAAA,EAC/E,sBAAkC,qCAAyB,SAAS;AAAA,EACpE,UAAsB,uCAA2B,SAAS;AAAA,EAC1D,eAA2B,2CAA+B,SAAS;AAAA,EACnE,kBAA8B,6CAAiC,SAAS;AAAA,EACxE,oBAAgC,yCAA6B,SAAS;AAAA,EACtE,kBAA8B,iCAAqB,SAAS,EAAE,SAAS;AAAA,EACvE,cAA0B,uBAAW,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS;AAAA,EAC/D,qBAAiC,uBAAW,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,gGAAgG,cAAc,MAAM,EAAE,CAAC;AAAA,EACpN,4BAAwC,sBAAU,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,iFAAiF,cAAc,KAAK,EAAE,CAAC;AAAA,EACrN,qCAAiD,sBAAU,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,wHAAwH,cAAc,KAAK,EAAE,CAAC;AACvQ,CAAC,EAAE,QAAQ,EAAE;AAAA,EACX;AAAA,EACA;AAAA,EACA,SAAqC,OAAY;AAC/C,QAAI,SAAS,KAAM,QAAO;AAE1B,QAAI,MAAM,wBAAwB,MAAM;AACtC,UAAI,MAAM,8BAA8B,MAAM;AAC5C,eAAO,KAAK,YAAY,EAAE,SAAS,+EAA+E,CAAC;AAAA,MACrH;AACA,UAAI,MAAM,uCAAuC,MAAM;AACrD,eAAO,KAAK,YAAY,EAAE,SAAS,wFAAwF,CAAC;AAAA,MAC9H;AAAA,IACF;AACA,WAAO;AAAA,EACT;AACF;AAEO,IAAM,4BAAwC,sBAAU;AAAA,EAC7D,IAAgB,yBAAa,QAAQ;AAAA,EACrC,eAA2B,+BAAmB,SAAS,EAAE,QAAQ;AAAA,EACjE,wBAAoC,uCAA2B,QAAQ;AAAA,EACvE,4BAAwC,0CAA8B,QAAQ;AAAA,EAC9E,cAA0B,kCAAsB,SAAS,EAAE,QAAQ;AAAA,EACnE,eAAe,uCAA0B,SAAS,EAAE,QAAQ;AAAA,EAC5D,kBAA8B,iCAAqB,SAAS,EAAE,QAAQ;AAAA,EACtE,mBAA+B,kCAAsB,SAAS,EAAE,QAAQ;AAAA,EACxE,qBAAiC,mCAAuB,QAAQ;AAAA,EAChE,cAA0B,kCAAsB,QAAQ;AAAA,EACxD,kBAA8B,qCAAyB,QAAQ;AAAA,EAC/D,sBAAkC,qCAAyB,QAAQ;AAAA,EACnE,iBAA6B;AAAA,EAC7B,2BAAuC;AAAA,EACvC,iBAA6B;AAAA,EAC7B,uBAAmC,yCAA6B,YAAY,EAAE,QAAQ;AAAA,EACtF,cAA0B,uBAAW,EAAE,QAAQ;AAAA,EAC/C,eAA2B,uBAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,qGAAqG,cAAc,MAAM,EAAE,CAAC;AAAA,EAClN,mBAA+B,sBAAU;AAAA,IACvC,MAAkB,sBAAU,EAAE,MAAkB,iCAAqB,EAAE,QAAQ;AAAA,EACjF,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,mJAAmJ,cAAc,KAAK,EAAE,CAAC;AAAA,EACrO,qBAAiC,uBAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,gGAAgG,cAAc,MAAM,EAAE,CAAC;AAAA,EACnN,4BAAwC,sBAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,iFAAiF,cAAc,KAAK,EAAE,CAAC;AAAA,EACpN,qCAAiD,sBAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,wHAAwH,cAAc,KAAK,EAAE,CAAC;AAAA,EAEpQ,iBAA6B,qBAAqB,sBAAU;AAAA,IAC1D,IAAgB,sBAAU,EAAE,QAAQ;AAAA,IACpC,YAAwB,sBAAU,EAAE,QAAQ;AAAA,IAC5C,OAAmB,sBAAU,EAAE,SAAS;AAAA,EAC1C,CAAC,EAAE,QAAQ,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,KAAK,EAAE,CAAC;AAAA;AAAA;AAAA;AAAA,EAK/D,iBAA6B,uBAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,MAAM,aAAa,4KAA4K,cAAc,KAAK,EAAE,CAAC;AAAA;AAAA;AAAA;AAAA,EAIxS,mBAA+B,uBAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,MAAM,aAAa,2DAA2D,cAAc,MAAM,EAAE,CAAC;AAC5L,CAAC,EAAE,QAAQ,EAAE,KAAK,oCAAoC,0EAA0E,SAAqC,OAAY;AAC/K,MAAI,SAAS,KAAM,QAAO;AAC1B,SAAO,MAAM,kBAAkB,CAAC,CAAC,MAAM;AACzC,CAAC,EAAE;AAAA,EACD;AAAA,EACA;AAAA,EACA,SAAqC,OAAY;AAC/C,QAAI,SAAS,KAAM,QAAO;AAE1B,QAAI,MAAM,wBAAwB,MAAM;AACtC,UAAI,MAAM,8BAA8B,MAAM;AAC5C,eAAO,KAAK,YAAY,EAAE,SAAS,+EAA+E,CAAC;AAAA,MACrH;AACA,UAAI,MAAM,uCAAuC,MAAM;AACrD,eAAO,KAAK,YAAY,EAAE,SAAS,wFAAwF,CAAC;AAAA,MAC9H;AAAA,IACF;AACA,WAAO;AAAA,EACT;AACF;AAEO,IAAM,8BAA8B,4BAA4B,KAAK,CAAC,kBAAkB,CAAC,EAAE,OAAmB,sBAAU;AAAA,EAC7H,iBAA6B,qBAAqB,sBAAU;AAAA,IAC1D,IAAgB,sBAAU,EAAE,QAAQ;AAAA,IACpC,YAAwB,sBAAU,EAAE,QAAQ;AAAA,IAC5C,OAAmB,sBAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,IAAI;AAAA,EAClE,CAAC,EAAE,QAAQ,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,KAAK,EAAE,CAAC;AAAA,EAChE,cAA0B,uBAAW,EAAE,SAAS;AAClD,CAAC,EAAE,QAAQ,CAAC;AAEL,IAAM,8BAA0C,qBAAS;AAEzD,IAAM,gBAAY,wBAAW;AAAA,EAClC,kBAAkB;AAAA,EAClB,oBAAoB;AAAA,EACpB,oBAAoB;AAAA,EACpB,oBAAoB;AAAA,EACpB,MAAM;AAAA,IACJ,cAAc;AAAA,MACZ,MAAM,CAAC,OAAO;AAAA,MACd,SAAS;AAAA,MACT,aAAa;AAAA,IACf;AAAA,IACA,YAAY;AAAA,MACV,MAAM,CAAC,OAAO;AAAA,MACd,SAAS;AAAA,MACT,aAAa;AAAA,IACf;AAAA,IACA,cAAc;AAAA,MACZ,MAAM,CAAC,OAAO;AAAA,MACd,SAAS;AAAA,MACT,aAAa;AAAA,IACf;AAAA,IACA,cAAc;AAAA,MACZ,MAAM,CAAC,OAAO;AAAA,MACd,SAAS;AAAA,MACT,aAAa;AAAA,IACf;AAAA,IACA,YAAY;AAAA,MACV,MAAM,CAAC,OAAO;AAAA,MACd,SAAS;AAAA,MACT,aAAa;AAAA,IACf;AAAA,EACF;AACF,CAAC;AAGM,IAAM,0BAA0B;AAAA,EACrC,MAAM;AAAA,EACN,QAAQ,UAAU,OAAO;AAAA,EACzB,UAAU;AAAA,IACR,SAAS;AAAA,IACT,aAAa;AAAA,IACb,MAAM,CAAC,OAAO;AAAA,EAChB;AACF;AAEO,IAAM,0BAA0B;AAAA,EACrC,MAAM;AAAA,EACN,QAAQ,UAAU,OAAO;AAAA,EACzB,UAAU;AAAA,IACR,SAAS;AAAA,IACT,aAAa;AAAA,IACb,MAAM,CAAC,OAAO;AAAA,EAChB;AACF;AAEA,IAAM,2BAAuC,sBAAU;AAAA,EACrD,IAAgB,yBAAa,QAAQ;AAAA,EACrC,OAAmB,qBAAqB,sBAAU;AAAA,IAChD,IAAgB,sBAAU,EAAE,QAAQ;AAAA,EACtC,CAAC,CAAC,EAAE,QAAQ;AACd,CAAC,EAAE,QAAQ;AAEJ,IAAM,0BAA0B;AAAA,EACrC,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,UAAU;AAAA,IACR,SAAS;AAAA,IACT,aAAa;AAAA,IACb,MAAM,CAAC,OAAO;AAAA,EAChB;AACF;","names":[]}
@@ -39,8 +39,11 @@ declare const webhookEvents: readonly [{
39
39
  is_anonymous: boolean;
40
40
  is_restricted: boolean;
41
41
  restricted_reason: {
42
- type: "anonymous" | "email_not_verified";
42
+ type: "anonymous" | "email_not_verified" | "restricted_by_administrator";
43
43
  } | null;
44
+ restricted_by_admin: boolean;
45
+ restricted_by_admin_reason: string | null;
46
+ restricted_by_admin_private_details: string | null;
44
47
  oauth_providers: {
45
48
  email?: string | null | undefined;
46
49
  id: string;
@@ -78,6 +81,9 @@ declare const webhookEvents: readonly [{
78
81
  restricted_reason: {
79
82
  type: undefined;
80
83
  };
84
+ restricted_by_admin: undefined;
85
+ restricted_by_admin_reason: undefined;
86
+ restricted_by_admin_private_details: undefined;
81
87
  oauth_providers: undefined;
82
88
  auth_with_email: undefined;
83
89
  requires_totp_mfa: undefined;
@@ -117,8 +123,11 @@ declare const webhookEvents: readonly [{
117
123
  is_anonymous: boolean;
118
124
  is_restricted: boolean;
119
125
  restricted_reason: {
120
- type: "anonymous" | "email_not_verified";
126
+ type: "anonymous" | "email_not_verified" | "restricted_by_administrator";
121
127
  } | null;
128
+ restricted_by_admin: boolean;
129
+ restricted_by_admin_reason: string | null;
130
+ restricted_by_admin_private_details: string | null;
122
131
  oauth_providers: {
123
132
  email?: string | null | undefined;
124
133
  id: string;
@@ -156,6 +165,9 @@ declare const webhookEvents: readonly [{
156
165
  restricted_reason: {
157
166
  type: undefined;
158
167
  };
168
+ restricted_by_admin: undefined;
169
+ restricted_by_admin_reason: undefined;
170
+ restricted_by_admin_private_details: undefined;
159
171
  oauth_providers: undefined;
160
172
  auth_with_email: undefined;
161
173
  requires_totp_mfa: undefined;
@@ -39,8 +39,11 @@ declare const webhookEvents: readonly [{
39
39
  is_anonymous: boolean;
40
40
  is_restricted: boolean;
41
41
  restricted_reason: {
42
- type: "anonymous" | "email_not_verified";
42
+ type: "anonymous" | "email_not_verified" | "restricted_by_administrator";
43
43
  } | null;
44
+ restricted_by_admin: boolean;
45
+ restricted_by_admin_reason: string | null;
46
+ restricted_by_admin_private_details: string | null;
44
47
  oauth_providers: {
45
48
  email?: string | null | undefined;
46
49
  id: string;
@@ -78,6 +81,9 @@ declare const webhookEvents: readonly [{
78
81
  restricted_reason: {
79
82
  type: undefined;
80
83
  };
84
+ restricted_by_admin: undefined;
85
+ restricted_by_admin_reason: undefined;
86
+ restricted_by_admin_private_details: undefined;
81
87
  oauth_providers: undefined;
82
88
  auth_with_email: undefined;
83
89
  requires_totp_mfa: undefined;
@@ -117,8 +123,11 @@ declare const webhookEvents: readonly [{
117
123
  is_anonymous: boolean;
118
124
  is_restricted: boolean;
119
125
  restricted_reason: {
120
- type: "anonymous" | "email_not_verified";
126
+ type: "anonymous" | "email_not_verified" | "restricted_by_administrator";
121
127
  } | null;
128
+ restricted_by_admin: boolean;
129
+ restricted_by_admin_reason: string | null;
130
+ restricted_by_admin_private_details: string | null;
122
131
  oauth_providers: {
123
132
  email?: string | null | undefined;
124
133
  id: string;
@@ -156,6 +165,9 @@ declare const webhookEvents: readonly [{
156
165
  restricted_reason: {
157
166
  type: undefined;
158
167
  };
168
+ restricted_by_admin: undefined;
169
+ restricted_by_admin_reason: undefined;
170
+ restricted_by_admin_private_details: undefined;
159
171
  oauth_providers: undefined;
160
172
  auth_with_email: undefined;
161
173
  requires_totp_mfa: undefined;
@@ -278,6 +278,9 @@ declare const KnownErrors: {
278
278
  SignUpNotEnabled: KnownErrorConstructor<KnownError & KnownErrorBrand<"SIGN_UP_NOT_ENABLED">, []> & {
279
279
  errorCode: "SIGN_UP_NOT_ENABLED";
280
280
  };
281
+ SignUpRejected: KnownErrorConstructor<KnownError & KnownErrorBrand<"SIGN_UP_REJECTED">, [message?: string | undefined]> & {
282
+ errorCode: "SIGN_UP_REJECTED";
283
+ };
281
284
  PasswordAuthenticationNotEnabled: KnownErrorConstructor<KnownError & KnownErrorBrand<"PASSWORD_AUTHENTICATION_NOT_ENABLED">, []> & {
282
285
  errorCode: "PASSWORD_AUTHENTICATION_NOT_ENABLED";
283
286
  };
@@ -372,7 +375,7 @@ declare const KnownErrors: {
372
375
  errorCode: "TEAM_MEMBERSHIP_NOT_FOUND";
373
376
  };
374
377
  TeamInvitationRestrictedUserNotAllowed: KnownErrorConstructor<KnownError & KnownErrorBrand<"TEAM_INVITATION_RESTRICTED_USER_NOT_ALLOWED">, [restrictedReason: {
375
- type: "anonymous" | "email_not_verified";
378
+ type: "anonymous" | "email_not_verified" | "restricted_by_administrator";
376
379
  }]> & {
377
380
  errorCode: "TEAM_INVITATION_RESTRICTED_USER_NOT_ALLOWED";
378
381
  };
@@ -278,6 +278,9 @@ declare const KnownErrors: {
278
278
  SignUpNotEnabled: KnownErrorConstructor<KnownError & KnownErrorBrand<"SIGN_UP_NOT_ENABLED">, []> & {
279
279
  errorCode: "SIGN_UP_NOT_ENABLED";
280
280
  };
281
+ SignUpRejected: KnownErrorConstructor<KnownError & KnownErrorBrand<"SIGN_UP_REJECTED">, [message?: string | undefined]> & {
282
+ errorCode: "SIGN_UP_REJECTED";
283
+ };
281
284
  PasswordAuthenticationNotEnabled: KnownErrorConstructor<KnownError & KnownErrorBrand<"PASSWORD_AUTHENTICATION_NOT_ENABLED">, []> & {
282
285
  errorCode: "PASSWORD_AUTHENTICATION_NOT_ENABLED";
283
286
  };
@@ -372,7 +375,7 @@ declare const KnownErrors: {
372
375
  errorCode: "TEAM_MEMBERSHIP_NOT_FOUND";
373
376
  };
374
377
  TeamInvitationRestrictedUserNotAllowed: KnownErrorConstructor<KnownError & KnownErrorBrand<"TEAM_INVITATION_RESTRICTED_USER_NOT_ALLOWED">, [restrictedReason: {
375
- type: "anonymous" | "email_not_verified";
378
+ type: "anonymous" | "email_not_verified" | "restricted_by_administrator";
376
379
  }]> & {
377
380
  errorCode: "TEAM_INVITATION_RESTRICTED_USER_NOT_ALLOWED";
378
381
  };
@@ -587,6 +587,18 @@ var SignUpNotEnabled = createKnownErrorConstructor(
587
587
  ],
588
588
  () => []
589
589
  );
590
+ var SignUpRejected = createKnownErrorConstructor(
591
+ KnownError,
592
+ "SIGN_UP_REJECTED",
593
+ (message) => [
594
+ 403,
595
+ message ?? "Your sign up was rejected. Please contact us for more information.",
596
+ {
597
+ message: message ?? "Your sign up was rejected. Please contact us for more information."
598
+ }
599
+ ],
600
+ (json) => [json.message]
601
+ );
590
602
  var PasswordAuthenticationNotEnabled = createKnownErrorConstructor(
591
603
  KnownError,
592
604
  "PASSWORD_AUTHENTICATION_NOT_ENABLED",
@@ -1482,7 +1494,7 @@ var AnalyticsQueryError = createKnownErrorConstructor(
1482
1494
  "ANALYTICS_QUERY_ERROR",
1483
1495
  (error) => [
1484
1496
  400,
1485
- `The query failed to execute: ${error}`,
1497
+ `${error}`,
1486
1498
  { error }
1487
1499
  ],
1488
1500
  (json) => [json.error]
@@ -1563,6 +1575,7 @@ var KnownErrors = {
1563
1575
  CurrentProjectNotFound,
1564
1576
  BranchDoesNotExist,
1565
1577
  SignUpNotEnabled,
1578
+ SignUpRejected,
1566
1579
  PasswordAuthenticationNotEnabled,
1567
1580
  PasskeyAuthenticationNotEnabled,
1568
1581
  AnonymousAccountsNotEnabled,