@structured-id/ui-core 1.1.0 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/README.md +9 -5
  2. package/dist/browser-vp/index.d.cts +0 -11
  3. package/dist/browser-vp/index.d.ts +0 -11
  4. package/dist/index.cjs +13721 -9514
  5. package/dist/index.d.cts +4362 -2375
  6. package/dist/index.d.ts +4362 -2375
  7. package/dist/index.js +13937 -9730
  8. package/package.json +3 -3
  9. package/src/browser-vp/crypto.ts +0 -1
  10. package/src/browser-vp/index.ts +0 -2
  11. package/src/browser-vp/prf.ts +0 -2
  12. package/src/browser-vp/storage.ts +0 -2
  13. package/src/browser-vp/types.ts +0 -2
  14. package/src/browser-vp/vp.ts +0 -2
  15. package/src/composables/index.ts +6 -1
  16. package/src/composables/useAccountTransport.test.ts +121 -0
  17. package/src/composables/useAccountTransport.ts +69 -0
  18. package/src/composables/useBffAuth.ts +44 -34
  19. package/src/generated/google/api/httpbody.ts +159 -0
  20. package/src/generated/google/protobuf/any.ts +326 -0
  21. package/src/generated/google/rpc/error_details.ts +1386 -0
  22. package/src/generated/google/rpc/status.ts +127 -0
  23. package/src/generated/sid/v1/account/account.ts +1 -1
  24. package/src/generated/sid/v1/admin/admin.client.ts +15 -12
  25. package/src/generated/sid/v1/admin/admin.ts +24 -89
  26. package/src/generated/sid/v1/admin/enrollment.client.ts +24 -12
  27. package/src/generated/sid/v1/admin/enrollment.ts +65 -3
  28. package/src/generated/sid/v1/admin/events.client.ts +8 -8
  29. package/src/generated/sid/v1/admin/flow.ts +1 -1
  30. package/src/generated/sid/v1/admin/keys.ts +1 -1
  31. package/src/generated/sid/v1/admin/notifications.client.ts +12 -6
  32. package/src/generated/sid/v1/admin/notifications.ts +11 -70
  33. package/src/generated/sid/v1/admin/operations.ts +20 -35
  34. package/src/generated/sid/v1/admin/organizations.client.ts +2 -2
  35. package/src/generated/sid/v1/admin/organizations.ts +15 -32
  36. package/src/generated/sid/v1/admin/provisioning.client.ts +232 -0
  37. package/src/generated/sid/v1/admin/provisioning.ts +1383 -0
  38. package/src/generated/sid/v1/admin/scopes.ts +1 -1
  39. package/src/generated/sid/v1/admin/security.client.ts +22 -24
  40. package/src/generated/sid/v1/admin/security.ts +13 -22
  41. package/src/generated/sid/v1/admin/settings.client.ts +29 -18
  42. package/src/generated/sid/v1/admin/settings.ts +2 -82
  43. package/src/generated/sid/v1/attestation/attestation.client.ts +6 -6
  44. package/src/generated/sid/v1/attestation/attestation.ts +8 -8
  45. package/src/generated/sid/v1/authn/auth.client.ts +101 -58
  46. package/src/generated/sid/v1/authn/auth.ts +842 -414
  47. package/src/generated/sid/v1/authn/flows.ts +0 -12
  48. package/src/generated/sid/v1/authn/issuer.client.ts +489 -0
  49. package/src/generated/sid/v1/authn/issuer.ts +1600 -0
  50. package/src/generated/sid/v1/authn/password_history.client.ts +57 -0
  51. package/src/generated/sid/v1/authn/password_history.ts +578 -0
  52. package/src/generated/sid/v1/authn/system_integration.client.ts +73 -0
  53. package/src/generated/sid/v1/authn/system_integration.ts +218 -0
  54. package/src/generated/sid/v1/authz/authz.ts +1498 -317
  55. package/src/generated/sid/v1/authz/forward_auth.client.ts +97 -0
  56. package/src/generated/sid/v1/authz/forward_auth.ts +79 -0
  57. package/src/generated/sid/v1/authz/governance.client.ts +2 -2
  58. package/src/generated/sid/v1/authz/governance.ts +61 -4
  59. package/src/generated/sid/v1/common/errors.ts +532 -6
  60. package/src/generated/sid/v1/events/event_stream.client.ts +2 -2
  61. package/src/generated/sid/v1/events/event_stream.ts +2 -1
  62. package/src/generated/sid/v1/identity/identity.ts +98 -58
  63. package/src/generated/sid/v1/ids/ids.ts +395 -0
  64. package/src/generated/sid/v1/machine/machine_user.ts +0 -36
  65. package/src/generated/sid/v1/machine/pat.client.ts +2 -19
  66. package/src/generated/sid/v1/machine/pat.ts +1 -186
  67. package/src/generated/sid/v1/projects/projects.client.ts +137 -19
  68. package/src/generated/sid/v1/projects/projects.ts +2105 -405
  69. package/src/generated/sid/v1/scim/scim.client.ts +248 -2
  70. package/src/generated/sid/v1/scim/scim.ts +153 -14
  71. package/src/generated/sid/v1/test/test.ts +1 -1
  72. package/src/i18n/index.ts +0 -11
  73. package/src/index.ts +36 -2
  74. package/src/package-exports.test.ts +18 -0
  75. package/src/profile/components/SidLoginForm.vue +5 -2
  76. package/src/profile/components/SidRegistrationForm.test.ts +58 -1
  77. package/src/profile/components/SidRegistrationForm.vue +118 -12
  78. package/src/profile/components/index.ts +4 -0
  79. package/src/profile/composables/index.ts +2 -1
  80. package/src/profile/composables/useAccountApi.ts +20 -7
  81. package/src/profile/composables/useAuth.test.ts +453 -0
  82. package/src/profile/composables/useAuth.ts +414 -0
  83. package/src/profile/composables/useAuthApi.opaque.test.ts +18 -0
  84. package/src/profile/composables/useAuthApi.ts +188 -20
  85. package/src/profile/composables/useEnrollmentApi.test.ts +33 -0
  86. package/src/profile/composables/useEnrollmentApi.ts +26 -0
  87. package/src/profile/composables/useIdentityApi.ts +17 -7
  88. package/src/profile/composables/useLoginSuccess.test.ts +97 -3
  89. package/src/profile/composables/useLoginSuccess.ts +80 -22
  90. package/src/profile/composables/useSecurityLevel.test.ts +10 -3
  91. package/src/profile/composables/useSecurityLevel.ts +12 -3
  92. package/src/quasar/SidPrincipalInput.vue +4 -7
  93. package/src/utils/normalizePrincipal.test.ts +19 -5
  94. package/src/utils/normalizePrincipal.ts +7 -9
  95. package/src/utils/rpcRefusal.test.ts +151 -0
  96. package/src/utils/rpcRefusal.ts +252 -0
  97. package/src/utils/validators.test.ts +9 -0
  98. package/src/utils/validators.ts +14 -2
  99. package/src/composables/useAuth.ts +0 -40
  100. package/src/profile/composables/useOpaqueAuth.test.ts +0 -290
  101. package/src/profile/composables/useOpaqueAuth.ts +0 -191
@@ -7,9 +7,52 @@
7
7
  // Machine-readable error reason codes for programmatic handling.
8
8
  // Used with google.rpc.ErrorInfo as status detail.
9
9
  //
10
- // Domain: "sid" for all CE/EE services, "sid.ee" for EE-specific errors.
11
- // See: arch/infra/api-architecture.md §gRPC Error Model
10
+ // Domain: "structured.id", the same for every installation whatever host
11
+ // serves it. A reason is stable within its domain (AIP-193); reasons defined
12
+ // elsewhere carry their own domain.
12
13
  //
14
+ import type { BinaryWriteOptions } from "@protobuf-ts/runtime";
15
+ import type { IBinaryWriter } from "@protobuf-ts/runtime";
16
+ import { WireType } from "@protobuf-ts/runtime";
17
+ import type { BinaryReadOptions } from "@protobuf-ts/runtime";
18
+ import type { IBinaryReader } from "@protobuf-ts/runtime";
19
+ import { UnknownFieldHandler } from "@protobuf-ts/runtime";
20
+ import type { PartialMessage } from "@protobuf-ts/runtime";
21
+ import { reflectionMergePartial } from "@protobuf-ts/runtime";
22
+ import { MessageType } from "@protobuf-ts/runtime";
23
+ /**
24
+ * The challenge of a CAPTCHA_REQUIRED refusal, packed as an additional status
25
+ * detail beside ErrorInfo: no canonical google.rpc detail carries it.
26
+ *
27
+ * @generated from protobuf message sid.v1.common.CaptchaChallenge
28
+ */
29
+ export interface CaptchaChallenge {
30
+ /**
31
+ * Server-issued identifier of this challenge; the client sends it back with
32
+ * the solution. Valid only for the sign-in it was issued for.
33
+ *
34
+ * @generated from protobuf field: string challenge_id = 1
35
+ */
36
+ challengeId: string;
37
+ /**
38
+ * Which solver the client runs.
39
+ *
40
+ * @generated from protobuf field: sid.v1.common.CaptchaKind kind = 2
41
+ */
42
+ kind: CaptchaKind;
43
+ /**
44
+ * Public site key of a third-party widget; empty for the SID proof of work.
45
+ *
46
+ * @generated from protobuf field: string site_key = 3
47
+ */
48
+ siteKey: string;
49
+ /**
50
+ * Required leading zero bits of the SID proof of work; 0 for a widget.
51
+ *
52
+ * @generated from protobuf field: uint32 difficulty = 4
53
+ */
54
+ difficulty: number;
55
+ }
13
56
  /**
14
57
  * Machine-readable error reason codes.
15
58
  *
@@ -60,6 +103,70 @@ export enum ErrorReason {
60
103
  * @generated from protobuf enum value: PROJECT_NOT_FOUND = 6;
61
104
  */
62
105
  PROJECT_NOT_FOUND = 6,
106
+ /**
107
+ * No OIDC issuer has this handle. The request is refused before any
108
+ * authentication or key lookup; it never falls back to another issuer.
109
+ *
110
+ * @generated from protobuf enum value: OIDC_ISSUER_NOT_FOUND = 7;
111
+ */
112
+ OIDC_ISSUER_NOT_FOUND = 7,
113
+ /**
114
+ * Protected resource not found.
115
+ *
116
+ * @generated from protobuf enum value: RESOURCE_NOT_FOUND = 8;
117
+ */
118
+ RESOURCE_NOT_FOUND = 8,
119
+ /**
120
+ * The forward-auth route configuration has no protected application of
121
+ * this name; the reverse proxy's address names an application it does not
122
+ * protect.
123
+ *
124
+ * @generated from protobuf enum value: FORWARD_AUTH_APPLICATION_NOT_FOUND = 9;
125
+ */
126
+ FORWARD_AUTH_APPLICATION_NOT_FOUND = 9,
127
+ /**
128
+ * No initial access token has this identifier.
129
+ *
130
+ * @generated from protobuf enum value: INITIAL_ACCESS_TOKEN_NOT_FOUND = 13;
131
+ */
132
+ INITIAL_ACCESS_TOKEN_NOT_FOUND = 13,
133
+ /**
134
+ * No upstream identity provider has this identifier.
135
+ *
136
+ * @generated from protobuf enum value: UPSTREAM_PROVIDER_NOT_FOUND = 14;
137
+ */
138
+ UPSTREAM_PROVIDER_NOT_FOUND = 14,
139
+ /**
140
+ * No machine user (service account, bot, agent) has this identifier.
141
+ *
142
+ * @generated from protobuf enum value: MACHINE_USER_NOT_FOUND = 15;
143
+ */
144
+ MACHINE_USER_NOT_FOUND = 15,
145
+ /**
146
+ * The caller has no consent record for this site (OAuth2 client).
147
+ *
148
+ * @generated from protobuf enum value: CONSENT_NOT_FOUND = 16;
149
+ */
150
+ CONSENT_NOT_FOUND = 16,
151
+ /**
152
+ * The caller's profile has no phone with this identifier.
153
+ *
154
+ * @generated from protobuf enum value: PHONE_NOT_FOUND = 17;
155
+ */
156
+ PHONE_NOT_FOUND = 17,
157
+ /**
158
+ * The caller's profile has no email with this identifier.
159
+ *
160
+ * @generated from protobuf enum value: EMAIL_NOT_FOUND = 18;
161
+ */
162
+ EMAIL_NOT_FOUND = 18,
163
+ /**
164
+ * The caller has no device with this identifier (another profile's device
165
+ * is not found either).
166
+ *
167
+ * @generated from protobuf enum value: DEVICE_NOT_FOUND = 19;
168
+ */
169
+ DEVICE_NOT_FOUND = 19,
63
170
  /**
64
171
  * Invalid credentials (password, WebAuthn assertion, etc.).
65
172
  * Security: status.message MUST be generic ("authentication failed").
@@ -80,7 +187,7 @@ export enum ErrorReason {
80
187
  */
81
188
  TOKEN_INVALID = 12,
82
189
  /**
83
- * Caller lacks required permissions (RBAC/ReBAC/Cedar denied).
190
+ * Caller lacks required permissions (the authorization decision denied it).
84
191
  *
85
192
  * @generated from protobuf enum value: INSUFFICIENT_PERMISSIONS = 20;
86
193
  */
@@ -91,6 +198,24 @@ export enum ErrorReason {
91
198
  * @generated from protobuf enum value: SCOPE_NOT_GRANTED = 21;
92
199
  */
93
200
  SCOPE_NOT_GRANTED = 21,
201
+ /**
202
+ * A sign-in policy refuses this sign-in outright (a blocked address or
203
+ * country, a method the policy never accepts). The refusal names no rule;
204
+ * retrying the same sign-in does not help.
205
+ *
206
+ * @generated from protobuf enum value: SIGN_IN_REFUSED = 22;
207
+ */
208
+ SIGN_IN_REFUSED = 22,
209
+ /**
210
+ * Self-registration is restricted on this installation. ErrorInfo metadata
211
+ * `requirement` names what is missing: `instance_claim` (the first
212
+ * administrator's claim token), `admin_only` (only administrators create
213
+ * accounts), `invite` (an invite code), `email` (an email address) or
214
+ * `email_domain` (an address in an allowed domain).
215
+ *
216
+ * @generated from protobuf enum value: REGISTRATION_RESTRICTED = 23;
217
+ */
218
+ REGISTRATION_RESTRICTED = 23,
94
219
  /**
95
220
  * Profile with this identifier already exists.
96
221
  *
@@ -109,6 +234,53 @@ export enum ErrorReason {
109
234
  * @generated from protobuf enum value: USERNAME_ALREADY_TAKEN = 32;
110
235
  */
111
236
  USERNAME_ALREADY_TAKEN = 32,
237
+ /**
238
+ * The operation key already names a command with a different method or
239
+ * inputs; a new command needs a new key.
240
+ *
241
+ * @generated from protobuf enum value: OPERATION_KEY_CONFLICT = 33;
242
+ */
243
+ OPERATION_KEY_CONFLICT = 33,
244
+ /**
245
+ * The application already has a role of this kind (one client role and one
246
+ * resource role per application).
247
+ *
248
+ * @generated from protobuf enum value: APPLICATION_ROLE_EXISTS = 34;
249
+ */
250
+ APPLICATION_ROLE_EXISTS = 34,
251
+ /**
252
+ * The issuer already has, or had, a protected resource with this resource
253
+ * indicator; an indicator is never given to another resource.
254
+ *
255
+ * @generated from protobuf enum value: RESOURCE_INDICATOR_TAKEN = 35;
256
+ */
257
+ RESOURCE_INDICATOR_TAKEN = 35,
258
+ /**
259
+ * Phone number already registered to another account.
260
+ *
261
+ * @generated from protobuf enum value: PHONE_ALREADY_REGISTERED = 36;
262
+ */
263
+ PHONE_ALREADY_REGISTERED = 36,
264
+ /**
265
+ * The project already has a role with this key or display name.
266
+ *
267
+ * @generated from protobuf enum value: ROLE_ALREADY_EXISTS = 37;
268
+ */
269
+ ROLE_ALREADY_EXISTS = 37,
270
+ /**
271
+ * An upstream identity provider with this name already exists.
272
+ *
273
+ * @generated from protobuf enum value: UPSTREAM_PROVIDER_ALREADY_EXISTS = 38;
274
+ */
275
+ UPSTREAM_PROVIDER_ALREADY_EXISTS = 38,
276
+ /**
277
+ * A device login handle (an NFC tag, a face embedding) is held by another
278
+ * account; such a handle identifies one account only. A username has its
279
+ * own USERNAME_ALREADY_TAKEN.
280
+ *
281
+ * @generated from protobuf enum value: PRINCIPAL_ALREADY_HELD = 39;
282
+ */
283
+ PRINCIPAL_ALREADY_HELD = 39,
112
284
  /**
113
285
  * Field value does not pass validation.
114
286
  *
@@ -121,6 +293,14 @@ export enum ErrorReason {
121
293
  * @generated from protobuf enum value: REQUIRED_FIELD_MISSING = 41;
122
294
  */
123
295
  REQUIRED_FIELD_MISSING = 41,
296
+ /**
297
+ * The password installation's proof does not verify for its operation and
298
+ * request. A new operation with a fresh proof is needed; retrying the same
299
+ * proof cannot succeed.
300
+ *
301
+ * @generated from protobuf enum value: PASSWORD_PROOF_INVALID = 42;
302
+ */
303
+ PASSWORD_PROOF_INVALID = 42,
124
304
  /**
125
305
  * MFA enrollment required before proceeding.
126
306
  *
@@ -157,12 +337,106 @@ export enum ErrorReason {
157
337
  * @generated from protobuf enum value: ACCOUNT_CLOSED = 55;
158
338
  */
159
339
  ACCOUNT_CLOSED = 55,
340
+ /**
341
+ * The operation completed, but its result is no longer kept; it is not
342
+ * executed again.
343
+ *
344
+ * @generated from protobuf enum value: OPERATION_RESULT_UNAVAILABLE = 56;
345
+ */
346
+ OPERATION_RESULT_UNAVAILABLE = 56,
347
+ /**
348
+ * The operation is outside the window in which a retry is admitted.
349
+ *
350
+ * @generated from protobuf enum value: OPERATION_EXPIRED = 57;
351
+ */
352
+ OPERATION_EXPIRED = 57,
353
+ /**
354
+ * The protected resource is retired with its application: it takes no
355
+ * changes and no access.
356
+ *
357
+ * @generated from protobuf enum value: RESOURCE_RETIRED = 58;
358
+ */
359
+ RESOURCE_RETIRED = 58,
360
+ /**
361
+ * The client and the resource belong to different issuers; access is
362
+ * granted only within one issuer.
363
+ *
364
+ * @generated from protobuf enum value: ISSUER_MISMATCH = 59;
365
+ */
366
+ ISSUER_MISMATCH = 59,
367
+ /**
368
+ * The installation's own integration is not provisioned or an
369
+ * administrator disabled it; its backend cannot serve until it is enabled.
370
+ *
371
+ * @generated from protobuf enum value: SYSTEM_INTEGRATION_UNAVAILABLE = 61;
372
+ */
373
+ SYSTEM_INTEGRATION_UNAVAILABLE = 61,
374
+ /**
375
+ * The resource is one SID provisions and keeps (the installation's own
376
+ * integration or the system project): it is disabled, not deleted, and its
377
+ * settings are not edited by hand.
378
+ *
379
+ * @generated from protobuf enum value: SYSTEM_MANAGED = 62;
380
+ */
381
+ SYSTEM_MANAGED = 62,
382
+ /**
383
+ * The new password matches one the owner's retained history holds. Which
384
+ * entry matched is never disclosed.
385
+ *
386
+ * @generated from protobuf enum value: PASSWORD_REUSED = 63;
387
+ */
388
+ PASSWORD_REUSED = 63,
389
+ /**
390
+ * A stronger authentication is required first. PreconditionFailure
391
+ * violations name it: type "acr" with the required acr value as subject,
392
+ * or type "amr" with each acceptable method.
393
+ *
394
+ * @generated from protobuf enum value: STEP_UP_REQUIRED = 64;
395
+ */
396
+ STEP_UP_REQUIRED = 64,
397
+ /**
398
+ * A CAPTCHA must be solved first; the status carries a CaptchaChallenge
399
+ * detail, and the solution goes back with the same request.
400
+ *
401
+ * @generated from protobuf enum value: CAPTCHA_REQUIRED = 65;
402
+ */
403
+ CAPTCHA_REQUIRED = 65,
404
+ /**
405
+ * The account's password is stored in a legacy form and must be migrated
406
+ * through the migration flow before this call.
407
+ *
408
+ * @generated from protobuf enum value: LEGACY_MIGRATION_REQUIRED = 66;
409
+ */
410
+ LEGACY_MIGRATION_REQUIRED = 66,
411
+ /**
412
+ * The resource is not in a state that allows the call (a deleted machine
413
+ * user, a consumed reset session, a decided access request).
414
+ * PreconditionFailure type names the state, subject the resource.
415
+ *
416
+ * @generated from protobuf enum value: INVALID_STATE = 67;
417
+ */
418
+ INVALID_STATE = 67,
419
+ /**
420
+ * The provider or capability the call needs is not configured in this
421
+ * deployment; an administrator can enable it.
422
+ *
423
+ * @generated from protobuf enum value: FEATURE_NOT_CONFIGURED = 68;
424
+ */
425
+ FEATURE_NOT_CONFIGURED = 68,
160
426
  /**
161
427
  * Rate limit exceeded (login attempts, API calls, etc.).
162
428
  *
163
429
  * @generated from protobuf enum value: RATE_LIMIT_EXCEEDED = 60;
164
430
  */
165
431
  RATE_LIMIT_EXCEEDED = 60,
432
+ /**
433
+ * A count limit is reached (for example the active tokens a user may hold);
434
+ * QuotaFailure names the limit. Retrying does not help until something is
435
+ * removed.
436
+ *
437
+ * @generated from protobuf enum value: QUOTA_EXCEEDED = 69;
438
+ */
439
+ QUOTA_EXCEEDED = 69,
166
440
  /**
167
441
  * Concurrent modification detected (optimistic locking).
168
442
  *
@@ -170,11 +444,163 @@ export enum ErrorReason {
170
444
  */
171
445
  CONCURRENT_MODIFICATION = 70,
172
446
  /**
173
- * Feature requires EE license.
447
+ * The same logical operation is still executing; retry it later with the
448
+ * same key.
449
+ *
450
+ * @generated from protobuf enum value: OPERATION_IN_PROGRESS = 71;
451
+ */
452
+ OPERATION_IN_PROGRESS = 71,
453
+ /**
454
+ * Password history cannot be checked now (evaluator, history keys or
455
+ * checker capacity). Nothing was installed; retry after the RetryInfo delay.
456
+ * Ordinary sign-in is not affected.
457
+ *
458
+ * @generated from protobuf enum value: PASSWORD_HISTORY_UNAVAILABLE = 100;
459
+ */
460
+ PASSWORD_HISTORY_UNAVAILABLE = 100,
461
+ /**
462
+ * The service is in maintenance mode; retry after the RetryInfo delay.
463
+ *
464
+ * @generated from protobuf enum value: SERVICE_MAINTENANCE = 101;
465
+ */
466
+ SERVICE_MAINTENANCE = 101,
467
+ /**
468
+ * A dependency the call needs (storage, cache, revocation state, rate
469
+ * limiter, verification keys) cannot be reached; retry after the RetryInfo
470
+ * delay. Nothing was changed.
471
+ *
472
+ * @generated from protobuf enum value: DEPENDENCY_UNAVAILABLE = 102;
473
+ */
474
+ DEPENDENCY_UNAVAILABLE = 102,
475
+ /**
476
+ * The caller holds no principal (login handle or contact) with this
477
+ * identifier; one held only by other accounts is not found either, except
478
+ * for an administrator.
174
479
  *
175
- * @generated from protobuf enum value: EE_FEATURE_REQUIRED = 80;
480
+ * @generated from protobuf enum value: PRINCIPAL_NOT_FOUND = 110;
176
481
  */
177
- EE_FEATURE_REQUIRED = 80,
482
+ PRINCIPAL_NOT_FOUND = 110,
483
+ /**
484
+ * The caller's account has no data export to download or acknowledge.
485
+ *
486
+ * @generated from protobuf enum value: EXPORT_NOT_FOUND = 111;
487
+ */
488
+ EXPORT_NOT_FOUND = 111,
489
+ /**
490
+ * The caller's account has no closure request to cancel.
491
+ *
492
+ * @generated from protobuf enum value: CLOSURE_REQUEST_NOT_FOUND = 112;
493
+ */
494
+ CLOSURE_REQUEST_NOT_FOUND = 112,
495
+ /**
496
+ * No group has this identifier, or the project has no group of this name.
497
+ *
498
+ * @generated from protobuf enum value: GROUP_NOT_FOUND = 113;
499
+ */
500
+ GROUP_NOT_FOUND = 113,
501
+ /**
502
+ * No authorization policy has this identifier.
503
+ *
504
+ * @generated from protobuf enum value: POLICY_NOT_FOUND = 114;
505
+ */
506
+ POLICY_NOT_FOUND = 114,
507
+ /**
508
+ * No access request has this identifier.
509
+ *
510
+ * @generated from protobuf enum value: ACCESS_REQUEST_NOT_FOUND = 115;
511
+ */
512
+ ACCESS_REQUEST_NOT_FOUND = 115,
513
+ /**
514
+ * No notification template has this identifier, or the template has no
515
+ * content for the requested channel.
516
+ *
517
+ * @generated from protobuf enum value: TEMPLATE_NOT_FOUND = 116;
518
+ */
519
+ TEMPLATE_NOT_FOUND = 116,
520
+ /**
521
+ * The device has no live key attestation (none was registered, or it was
522
+ * revoked).
523
+ *
524
+ * @generated from protobuf enum value: ATTESTATION_NOT_FOUND = 117;
525
+ */
526
+ ATTESTATION_NOT_FOUND = 117,
527
+ /**
528
+ * The profile has no metadata entry with this key.
529
+ *
530
+ * @generated from protobuf enum value: PROFILE_METADATA_NOT_FOUND = 118;
531
+ */
532
+ PROFILE_METADATA_NOT_FOUND = 118,
533
+ /**
534
+ * No branding configuration has this identifier, or the project has no
535
+ * published branding.
536
+ *
537
+ * @generated from protobuf enum value: BRANDING_NOT_FOUND = 119;
538
+ */
539
+ BRANDING_NOT_FOUND = 119,
540
+ /**
541
+ * The project has no saved configuration for this flow type.
542
+ *
543
+ * @generated from protobuf enum value: FLOW_CONFIG_NOT_FOUND = 130;
544
+ */
545
+ FLOW_CONFIG_NOT_FOUND = 130,
546
+ /**
547
+ * No flow action has this identifier.
548
+ *
549
+ * @generated from protobuf enum value: FLOW_ACTION_NOT_FOUND = 131;
550
+ */
551
+ FLOW_ACTION_NOT_FOUND = 131,
552
+ /**
553
+ * No invite has this identifier.
554
+ *
555
+ * @generated from protobuf enum value: INVITE_NOT_FOUND = 132;
556
+ */
557
+ INVITE_NOT_FOUND = 132,
558
+ /**
559
+ * No organization has this identifier, or the caller is not a member of it
560
+ * (a member-only lookup does not disclose that the organization exists).
561
+ *
562
+ * @generated from protobuf enum value: ORGANIZATION_NOT_FOUND = 133;
563
+ */
564
+ ORGANIZATION_NOT_FOUND = 133,
565
+ /**
566
+ * The organization has no provisioning connector with this identifier.
567
+ *
568
+ * @generated from protobuf enum value: PROVISIONING_CONNECTOR_NOT_FOUND = 134;
569
+ */
570
+ PROVISIONING_CONNECTOR_NOT_FOUND = 134,
571
+ /**
572
+ * The project already has a group of this name.
573
+ *
574
+ * @generated from protobuf enum value: GROUP_ALREADY_EXISTS = 120;
575
+ */
576
+ GROUP_ALREADY_EXISTS = 120,
577
+ /**
578
+ * The project already has an authorization policy of this name.
579
+ *
580
+ * @generated from protobuf enum value: POLICY_ALREADY_EXISTS = 121;
581
+ */
582
+ POLICY_ALREADY_EXISTS = 121,
583
+ /**
584
+ * The device already has a live key attestation; RotateDeviceKey replaces
585
+ * its key.
586
+ *
587
+ * @generated from protobuf enum value: ATTESTATION_ALREADY_EXISTS = 122;
588
+ */
589
+ ATTESTATION_ALREADY_EXISTS = 122,
590
+ /**
591
+ * The operation's outcome cannot be established yet; retry it with the
592
+ * same key, never with a new one.
593
+ *
594
+ * @generated from protobuf enum value: OPERATION_OUTCOME_UNKNOWN = 95;
595
+ */
596
+ OPERATION_OUTCOME_UNKNOWN = 95,
597
+ /**
598
+ * The feature is not part of this server build. Retrying does not help;
599
+ * InstanceInfo.edition names the build.
600
+ *
601
+ * @generated from protobuf enum value: FEATURE_NOT_AVAILABLE = 80;
602
+ */
603
+ FEATURE_NOT_AVAILABLE = 80,
178
604
  /**
179
605
  * Unrecoverable internal error.
180
606
  *
@@ -182,3 +608,103 @@ export enum ErrorReason {
182
608
  */
183
609
  INTERNAL_ERROR = 90
184
610
  }
611
+ /**
612
+ * Solver of a CAPTCHA challenge.
613
+ *
614
+ * @generated from protobuf enum sid.v1.common.CaptchaKind
615
+ */
616
+ export enum CaptchaKind {
617
+ /**
618
+ * @generated from protobuf enum value: CAPTCHA_KIND_UNSPECIFIED = 0;
619
+ */
620
+ UNSPECIFIED = 0,
621
+ /**
622
+ * SID's own proof of work, solved without a third party.
623
+ *
624
+ * @generated from protobuf enum value: CAPTCHA_KIND_SID_POW = 1;
625
+ */
626
+ SID_POW = 1,
627
+ /**
628
+ * hCaptcha widget.
629
+ *
630
+ * @generated from protobuf enum value: CAPTCHA_KIND_HCAPTCHA = 2;
631
+ */
632
+ HCAPTCHA = 2,
633
+ /**
634
+ * Cloudflare Turnstile widget.
635
+ *
636
+ * @generated from protobuf enum value: CAPTCHA_KIND_TURNSTILE = 3;
637
+ */
638
+ TURNSTILE = 3
639
+ }
640
+ // @generated message type with reflection information, may provide speed optimized methods
641
+ class CaptchaChallenge$Type extends MessageType<CaptchaChallenge> {
642
+ constructor() {
643
+ super("sid.v1.common.CaptchaChallenge", [
644
+ { no: 1, name: "challenge_id", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
645
+ { no: 2, name: "kind", kind: "enum", T: () => ["sid.v1.common.CaptchaKind", CaptchaKind, "CAPTCHA_KIND_"] },
646
+ { no: 3, name: "site_key", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
647
+ { no: 4, name: "difficulty", kind: "scalar", T: 13 /*ScalarType.UINT32*/ }
648
+ ]);
649
+ }
650
+ create(value?: PartialMessage<CaptchaChallenge>): CaptchaChallenge {
651
+ const message = globalThis.Object.create((this.messagePrototype!));
652
+ message.challengeId = "";
653
+ message.kind = 0;
654
+ message.siteKey = "";
655
+ message.difficulty = 0;
656
+ if (value !== undefined)
657
+ reflectionMergePartial<CaptchaChallenge>(this, message, value);
658
+ return message;
659
+ }
660
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CaptchaChallenge): CaptchaChallenge {
661
+ let message = target ?? this.create(), end = reader.pos + length;
662
+ while (reader.pos < end) {
663
+ let [fieldNo, wireType] = reader.tag();
664
+ switch (fieldNo) {
665
+ case /* string challenge_id */ 1:
666
+ message.challengeId = reader.string();
667
+ break;
668
+ case /* sid.v1.common.CaptchaKind kind */ 2:
669
+ message.kind = reader.int32();
670
+ break;
671
+ case /* string site_key */ 3:
672
+ message.siteKey = reader.string();
673
+ break;
674
+ case /* uint32 difficulty */ 4:
675
+ message.difficulty = reader.uint32();
676
+ break;
677
+ default:
678
+ let u = options.readUnknownField;
679
+ if (u === "throw")
680
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
681
+ let d = reader.skip(wireType);
682
+ if (u !== false)
683
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
684
+ }
685
+ }
686
+ return message;
687
+ }
688
+ internalBinaryWrite(message: CaptchaChallenge, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
689
+ /* string challenge_id = 1; */
690
+ if (message.challengeId !== "")
691
+ writer.tag(1, WireType.LengthDelimited).string(message.challengeId);
692
+ /* sid.v1.common.CaptchaKind kind = 2; */
693
+ if (message.kind !== 0)
694
+ writer.tag(2, WireType.Varint).int32(message.kind);
695
+ /* string site_key = 3; */
696
+ if (message.siteKey !== "")
697
+ writer.tag(3, WireType.LengthDelimited).string(message.siteKey);
698
+ /* uint32 difficulty = 4; */
699
+ if (message.difficulty !== 0)
700
+ writer.tag(4, WireType.Varint).uint32(message.difficulty);
701
+ let u = options.writeUnknownFields;
702
+ if (u !== false)
703
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
704
+ return writer;
705
+ }
706
+ }
707
+ /**
708
+ * @generated MessageType for protobuf message sid.v1.common.CaptchaChallenge
709
+ */
710
+ export const CaptchaChallenge = new CaptchaChallenge$Type();
@@ -11,7 +11,7 @@ import type { SubscribeRequest } from "./event_stream";
11
11
  import type { ServerStreamingCall } from "@protobuf-ts/runtime-rpc";
12
12
  import type { RpcOptions } from "@protobuf-ts/runtime-rpc";
13
13
  // ────────────────────────────────────────────────────────────────────────────
14
- // EventStreamService — real-time event streaming (CE)
14
+ // EventStreamService: real-time event streaming
15
15
  // ────────────────────────────────────────────────────────────────────────────
16
16
 
17
17
  /**
@@ -33,7 +33,7 @@ export interface IEventStreamServiceClient {
33
33
  replay(input: ReplayRequest, options?: RpcOptions): ServerStreamingCall<ReplayRequest, CloudEvent>;
34
34
  }
35
35
  // ────────────────────────────────────────────────────────────────────────────
36
- // EventStreamService — real-time event streaming (CE)
36
+ // EventStreamService: real-time event streaming
37
37
  // ────────────────────────────────────────────────────────────────────────────
38
38
 
39
39
  /**
@@ -14,7 +14,8 @@ import { MessageType } from "@protobuf-ts/runtime";
14
14
  import { Timestamp } from "../../../google/protobuf/timestamp";
15
15
  // ══════════════════════════════════════════════════════════════════════════
16
16
  // CloudEvents 1.0 envelope (CNCF standard)
17
- // Follows official CE proto format with spec_version as explicit field.
17
+ // Follows the official CloudEvents proto format with spec_version as an
18
+ // explicit field.
18
19
  // ══════════════════════════════════════════════════════════════════════════
19
20
 
20
21
  /**