@stackframe/stack-shared 2.8.64 → 2.8.66
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/config/db-sync-mappings.d.mts +17 -0
- package/dist/config/db-sync-mappings.d.ts +17 -0
- package/dist/config/db-sync-mappings.js +195 -0
- package/dist/config/db-sync-mappings.js.map +1 -0
- package/dist/config/schema-fuzzer.test.js +24 -0
- package/dist/config/schema-fuzzer.test.js.map +1 -1
- package/dist/config/schema.d.mts +198 -24
- package/dist/config/schema.d.ts +198 -24
- package/dist/config/schema.js +56 -3
- package/dist/config/schema.js.map +1 -1
- package/dist/esm/config/db-sync-mappings.js +170 -0
- package/dist/esm/config/db-sync-mappings.js.map +1 -0
- package/dist/esm/config/schema-fuzzer.test.js +24 -0
- package/dist/esm/config/schema-fuzzer.test.js.map +1 -1
- package/dist/esm/config/schema.js +56 -3
- package/dist/esm/config/schema.js.map +1 -1
- package/dist/esm/interface/admin-interface.js.map +1 -1
- package/dist/esm/interface/client-interface.js.map +1 -1
- package/dist/esm/interface/crud/current-user.js +3 -1
- package/dist/esm/interface/crud/current-user.js.map +1 -1
- package/dist/esm/interface/crud/sign-up-rules.js +1 -0
- package/dist/esm/interface/crud/sign-up-rules.js.map +1 -0
- package/dist/esm/interface/crud/users.js +40 -6
- package/dist/esm/interface/crud/users.js.map +1 -1
- package/dist/esm/known-errors.js +13 -0
- package/dist/esm/known-errors.js.map +1 -1
- package/dist/esm/schema-fields.js +6 -4
- package/dist/esm/schema-fields.js.map +1 -1
- package/dist/esm/utils/types.js.map +1 -1
- package/dist/interface/admin-interface.d.mts +2 -4
- package/dist/interface/admin-interface.d.ts +2 -4
- package/dist/interface/admin-interface.js.map +1 -1
- package/dist/interface/client-interface.js.map +1 -1
- package/dist/interface/crud/current-user.d.mts +22 -2
- package/dist/interface/crud/current-user.d.ts +22 -2
- package/dist/interface/crud/current-user.js +3 -1
- package/dist/interface/crud/current-user.js.map +1 -1
- package/dist/interface/crud/project-api-keys.d.mts +2 -2
- package/dist/interface/crud/project-api-keys.d.ts +2 -2
- package/dist/interface/crud/sign-up-rules.d.mts +13 -0
- package/dist/interface/crud/sign-up-rules.d.ts +13 -0
- package/dist/interface/crud/sign-up-rules.js +19 -0
- package/dist/interface/crud/sign-up-rules.js.map +1 -0
- package/dist/interface/crud/team-member-profiles.d.mts +14 -2
- package/dist/interface/crud/team-member-profiles.d.ts +14 -2
- package/dist/interface/crud/users.d.mts +52 -4
- package/dist/interface/crud/users.d.ts +52 -4
- package/dist/interface/crud/users.js +40 -6
- package/dist/interface/crud/users.js.map +1 -1
- package/dist/interface/webhooks.d.mts +14 -2
- package/dist/interface/webhooks.d.ts +14 -2
- package/dist/known-errors.d.mts +5 -2
- package/dist/known-errors.d.ts +5 -2
- package/dist/known-errors.js +13 -0
- package/dist/known-errors.js.map +1 -1
- package/dist/schema-fields.d.mts +9 -3
- package/dist/schema-fields.d.ts +9 -3
- package/dist/schema-fields.js +7 -4
- package/dist/schema-fields.js.map +1 -1
- package/dist/sessions.d.mts +2 -2
- package/dist/sessions.d.ts +2 -2
- package/dist/utils/types.d.mts +2 -2
- package/dist/utils/types.d.ts +2 -2
- package/dist/utils/types.js.map +1 -1
- package/package.json +1 -1
|
@@ -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
|
-
|
|
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(),
|
|
@@ -79,9 +97,10 @@ var usersCrudServerReadSchema = fieldSchema.yupObject({
|
|
|
79
97
|
last_active_at_millis: fieldSchema.userLastActiveAtMillisSchema.nonNullable().defined(),
|
|
80
98
|
is_anonymous: fieldSchema.yupBoolean().defined(),
|
|
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
|
-
restricted_reason: fieldSchema.
|
|
83
|
-
|
|
84
|
-
|
|
100
|
+
restricted_reason: fieldSchema.restrictedReasonSchema.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 } }),
|
|
101
|
+
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 } }),
|
|
102
|
+
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 } }),
|
|
103
|
+
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
104
|
oauth_providers: fieldSchema.yupArray(fieldSchema.yupObject({
|
|
86
105
|
id: fieldSchema.yupString().defined(),
|
|
87
106
|
account_id: fieldSchema.yupString().defined(),
|
|
@@ -98,7 +117,22 @@ var usersCrudServerReadSchema = fieldSchema.yupObject({
|
|
|
98
117
|
}).defined().test("restricted_reason_iff_restricted", "restricted_reason must be present if and only if is_restricted is true", function(value) {
|
|
99
118
|
if (value == null) return true;
|
|
100
119
|
return value.is_restricted === !!value.restricted_reason;
|
|
101
|
-
})
|
|
120
|
+
}).test(
|
|
121
|
+
"restricted_by_admin_consistency",
|
|
122
|
+
"When restricted_by_admin is not true, reason and private_details must be null",
|
|
123
|
+
function(value) {
|
|
124
|
+
if (value == null) return true;
|
|
125
|
+
if (value.restricted_by_admin !== true) {
|
|
126
|
+
if (value.restricted_by_admin_reason != null) {
|
|
127
|
+
return this.createError({ message: "restricted_by_admin_reason must be null when restricted_by_admin is not true" });
|
|
128
|
+
}
|
|
129
|
+
if (value.restricted_by_admin_private_details != null) {
|
|
130
|
+
return this.createError({ message: "restricted_by_admin_private_details must be null when restricted_by_admin is not true" });
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
return true;
|
|
134
|
+
}
|
|
135
|
+
);
|
|
102
136
|
var usersCrudServerCreateSchema = usersCrudServerUpdateSchema.omit(["selected_team_id"]).concat(fieldSchema.yupObject({
|
|
103
137
|
oauth_providers: fieldSchema.yupArray(fieldSchema.yupObject({
|
|
104
138
|
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.restrictedReasonSchema.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":"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","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;
|
package/dist/known-errors.d.mts
CHANGED
|
@@ -252,7 +252,7 @@ declare const KnownErrors: {
|
|
|
252
252
|
errorCode: "USER_NOT_FOUND";
|
|
253
253
|
};
|
|
254
254
|
RestrictedUserNotAllowed: KnownErrorConstructor<KnownError & KnownErrorBrand<"RESTRICTED_USER_NOT_ALLOWED">, [restrictedReason: {
|
|
255
|
-
type: "anonymous" | "email_not_verified";
|
|
255
|
+
type: "anonymous" | "email_not_verified" | "restricted_by_administrator";
|
|
256
256
|
}]> & {
|
|
257
257
|
errorCode: "RESTRICTED_USER_NOT_ALLOWED";
|
|
258
258
|
};
|
|
@@ -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
|
};
|
package/dist/known-errors.d.ts
CHANGED
|
@@ -252,7 +252,7 @@ declare const KnownErrors: {
|
|
|
252
252
|
errorCode: "USER_NOT_FOUND";
|
|
253
253
|
};
|
|
254
254
|
RestrictedUserNotAllowed: KnownErrorConstructor<KnownError & KnownErrorBrand<"RESTRICTED_USER_NOT_ALLOWED">, [restrictedReason: {
|
|
255
|
-
type: "anonymous" | "email_not_verified";
|
|
255
|
+
type: "anonymous" | "email_not_verified" | "restricted_by_administrator";
|
|
256
256
|
}]> & {
|
|
257
257
|
errorCode: "RESTRICTED_USER_NOT_ALLOWED";
|
|
258
258
|
};
|
|
@@ -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
|
};
|
package/dist/known-errors.js
CHANGED
|
@@ -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",
|
|
@@ -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,
|