@structured-id/ui-core 0.1.5

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 (156) hide show
  1. package/LICENSE +661 -0
  2. package/README.md +47 -0
  3. package/dist/browser-vp/index.cjs +349 -0
  4. package/dist/browser-vp/index.d.cts +287 -0
  5. package/dist/browser-vp/index.d.ts +287 -0
  6. package/dist/browser-vp/index.js +349 -0
  7. package/dist/chunk-C3Q766CY.cjs +125 -0
  8. package/dist/chunk-J5YXRXB5.js +125 -0
  9. package/dist/index.cjs +19360 -0
  10. package/dist/index.d.cts +9536 -0
  11. package/dist/index.d.ts +9536 -0
  12. package/dist/index.js +19360 -0
  13. package/dist/storage-4CB2JTLW.cjs +22 -0
  14. package/dist/storage-THRWREZP.js +22 -0
  15. package/package.json +93 -0
  16. package/src/browser-vp/crypto.ts +254 -0
  17. package/src/browser-vp/index.test.ts +10 -0
  18. package/src/browser-vp/index.ts +118 -0
  19. package/src/browser-vp/prf.ts +181 -0
  20. package/src/browser-vp/storage.test.ts +9 -0
  21. package/src/browser-vp/storage.ts +165 -0
  22. package/src/browser-vp/types.ts +97 -0
  23. package/src/browser-vp/vp.test.ts +43 -0
  24. package/src/browser-vp/vp.ts +113 -0
  25. package/src/components/SidAvatar.vue +106 -0
  26. package/src/components/SidConfirmDialog.vue +125 -0
  27. package/src/components/SidStatusBadge.vue +71 -0
  28. package/src/components/index.ts +5 -0
  29. package/src/composables/index.ts +10 -0
  30. package/src/composables/useAuth.ts +40 -0
  31. package/src/composables/useBffAuth.ts +147 -0
  32. package/src/composables/useGrpc.test.ts +196 -0
  33. package/src/composables/useGrpc.ts +120 -0
  34. package/src/composables/useSession.ts +80 -0
  35. package/src/generated/google/api/http.ts +687 -0
  36. package/src/generated/google/protobuf/descriptor.ts +4865 -0
  37. package/src/generated/google/protobuf/duration.ts +230 -0
  38. package/src/generated/google/protobuf/empty.ts +94 -0
  39. package/src/generated/google/protobuf/struct.ts +484 -0
  40. package/src/generated/google/protobuf/timestamp.ts +287 -0
  41. package/src/generated/sid/v1/account/account.client.ts +527 -0
  42. package/src/generated/sid/v1/account/account.ts +3261 -0
  43. package/src/generated/sid/v1/admin/admin.client.ts +136 -0
  44. package/src/generated/sid/v1/admin/admin.ts +846 -0
  45. package/src/generated/sid/v1/admin/admin_roles.client.ts +181 -0
  46. package/src/generated/sid/v1/admin/admin_roles.ts +1606 -0
  47. package/src/generated/sid/v1/admin/analytics.client.ts +106 -0
  48. package/src/generated/sid/v1/admin/analytics.ts +1017 -0
  49. package/src/generated/sid/v1/admin/branding.client.ts +166 -0
  50. package/src/generated/sid/v1/admin/branding.ts +1906 -0
  51. package/src/generated/sid/v1/admin/enrollment.client.ts +165 -0
  52. package/src/generated/sid/v1/admin/enrollment.ts +1704 -0
  53. package/src/generated/sid/v1/admin/events.client.ts +195 -0
  54. package/src/generated/sid/v1/admin/events.ts +1900 -0
  55. package/src/generated/sid/v1/admin/flow.client.ts +183 -0
  56. package/src/generated/sid/v1/admin/flow.ts +1552 -0
  57. package/src/generated/sid/v1/admin/keys.client.ts +107 -0
  58. package/src/generated/sid/v1/admin/keys.ts +931 -0
  59. package/src/generated/sid/v1/admin/login_experience.client.ts +160 -0
  60. package/src/generated/sid/v1/admin/login_experience.ts +1061 -0
  61. package/src/generated/sid/v1/admin/migration.client.ts +127 -0
  62. package/src/generated/sid/v1/admin/migration.ts +1948 -0
  63. package/src/generated/sid/v1/admin/notifications.client.ts +128 -0
  64. package/src/generated/sid/v1/admin/notifications.ts +1332 -0
  65. package/src/generated/sid/v1/admin/operations.client.ts +241 -0
  66. package/src/generated/sid/v1/admin/operations.ts +2648 -0
  67. package/src/generated/sid/v1/admin/organizations.client.ts +57 -0
  68. package/src/generated/sid/v1/admin/organizations.ts +349 -0
  69. package/src/generated/sid/v1/admin/scopes.client.ts +171 -0
  70. package/src/generated/sid/v1/admin/scopes.ts +1324 -0
  71. package/src/generated/sid/v1/admin/security.client.ts +412 -0
  72. package/src/generated/sid/v1/admin/security.ts +4086 -0
  73. package/src/generated/sid/v1/admin/sessions.client.ts +114 -0
  74. package/src/generated/sid/v1/admin/sessions.ts +923 -0
  75. package/src/generated/sid/v1/admin/settings.client.ts +340 -0
  76. package/src/generated/sid/v1/admin/settings.ts +2395 -0
  77. package/src/generated/sid/v1/admin/user_profile.client.ts +57 -0
  78. package/src/generated/sid/v1/admin/user_profile.ts +730 -0
  79. package/src/generated/sid/v1/admin/webhooks.client.ts +269 -0
  80. package/src/generated/sid/v1/admin/webhooks.ts +2804 -0
  81. package/src/generated/sid/v1/attestation/attestation.client.ts +115 -0
  82. package/src/generated/sid/v1/attestation/attestation.ts +813 -0
  83. package/src/generated/sid/v1/authn/auth.client.ts +900 -0
  84. package/src/generated/sid/v1/authn/auth.ts +9287 -0
  85. package/src/generated/sid/v1/authn/flows.client.ts +413 -0
  86. package/src/generated/sid/v1/authn/flows.ts +3217 -0
  87. package/src/generated/sid/v1/authz/authz.client.ts +459 -0
  88. package/src/generated/sid/v1/authz/authz.ts +5343 -0
  89. package/src/generated/sid/v1/authz/governance.client.ts +102 -0
  90. package/src/generated/sid/v1/authz/governance.ts +818 -0
  91. package/src/generated/sid/v1/common/errors.ts +184 -0
  92. package/src/generated/sid/v1/common/pagination.ts +152 -0
  93. package/src/generated/sid/v1/common/transport.ts +227 -0
  94. package/src/generated/sid/v1/common/types.ts +151 -0
  95. package/src/generated/sid/v1/events/event_stream.client.ts +67 -0
  96. package/src/generated/sid/v1/events/event_stream.ts +374 -0
  97. package/src/generated/sid/v1/federation/upstream.client.ts +142 -0
  98. package/src/generated/sid/v1/federation/upstream.ts +1736 -0
  99. package/src/generated/sid/v1/identity/identity.client.ts +467 -0
  100. package/src/generated/sid/v1/identity/identity.ts +5613 -0
  101. package/src/generated/sid/v1/machine/machine_user.client.ts +219 -0
  102. package/src/generated/sid/v1/machine/machine_user.ts +2400 -0
  103. package/src/generated/sid/v1/machine/pat.client.ts +147 -0
  104. package/src/generated/sid/v1/machine/pat.ts +1268 -0
  105. package/src/generated/sid/v1/projects/projects.client.ts +286 -0
  106. package/src/generated/sid/v1/projects/projects.ts +2714 -0
  107. package/src/generated/sid/v1/scim/scim.client.ts +274 -0
  108. package/src/generated/sid/v1/scim/scim.ts +3043 -0
  109. package/src/generated/sid/v1/test/test.client.ts +232 -0
  110. package/src/generated/sid/v1/test/test.ts +1136 -0
  111. package/src/i18n/index.ts +40 -0
  112. package/src/index.ts +157 -0
  113. package/src/profile/auth.ts +15 -0
  114. package/src/profile/components/ConsentManager.vue +88 -0
  115. package/src/profile/components/ProfileEditor.vue +146 -0
  116. package/src/profile/components/SecuritySettings.vue +170 -0
  117. package/src/profile/components/SessionList.vue +100 -0
  118. package/src/profile/components/SidLoginForm.test.ts +80 -0
  119. package/src/profile/components/SidLoginForm.vue +230 -0
  120. package/src/profile/components/SidMfaChallenge.test.ts +127 -0
  121. package/src/profile/components/SidMfaChallenge.vue +243 -0
  122. package/src/profile/components/SidRegistrationForm.test.ts +79 -0
  123. package/src/profile/components/SidRegistrationForm.vue +317 -0
  124. package/src/profile/components/index.ts +11 -0
  125. package/src/profile/composables/index.ts +6 -0
  126. package/src/profile/composables/useAccountApi.ts +203 -0
  127. package/src/profile/composables/useAuthApi.opaque.test.ts +140 -0
  128. package/src/profile/composables/useAuthApi.ts +617 -0
  129. package/src/profile/composables/useIdentityApi.ts +123 -0
  130. package/src/profile/composables/useLoginSuccess.test.ts +112 -0
  131. package/src/profile/composables/useLoginSuccess.ts +65 -0
  132. package/src/profile/composables/useOpaqueAuth.test.ts +290 -0
  133. package/src/profile/composables/useOpaqueAuth.ts +191 -0
  134. package/src/profile/composables/useSecurityLevel.test.ts +198 -0
  135. package/src/profile/composables/useSecurityLevel.ts +324 -0
  136. package/src/profile/index.ts +18 -0
  137. package/src/quasar/SidPrincipalInput.vue +209 -0
  138. package/src/quasar/index.ts +8 -0
  139. package/src/stores/auth.test.ts +83 -0
  140. package/src/stores/auth.ts +92 -0
  141. package/src/stores/index.ts +1 -0
  142. package/src/transport/adaptive.test.ts +728 -0
  143. package/src/transport/adaptive.ts +308 -0
  144. package/src/transport/framing.test.ts +227 -0
  145. package/src/transport/framing.ts +98 -0
  146. package/src/transport/webtransport.test.ts +728 -0
  147. package/src/transport/webtransport.ts +323 -0
  148. package/src/types/auth.ts +58 -0
  149. package/src/types/index.ts +1 -0
  150. package/src/utils/formatters.test.ts +26 -0
  151. package/src/utils/formatters.ts +69 -0
  152. package/src/utils/index.ts +16 -0
  153. package/src/utils/normalizePrincipal.test.ts +188 -0
  154. package/src/utils/normalizePrincipal.ts +159 -0
  155. package/src/utils/validators.test.ts +75 -0
  156. package/src/utils/validators.ts +36 -0
@@ -0,0 +1,1061 @@
1
+ // @generated by protobuf-ts 2.11.1 with parameter client_generic,generate_dependencies
2
+ // @generated from protobuf file "sid/v1/admin/login_experience.proto" (package "sid.v1.admin", syntax proto3)
3
+ // tslint:disable
4
+ import { Empty } from "../../../google/protobuf/empty";
5
+ import { ServiceType } from "@protobuf-ts/runtime-rpc";
6
+ import type { BinaryWriteOptions } from "@protobuf-ts/runtime";
7
+ import type { IBinaryWriter } from "@protobuf-ts/runtime";
8
+ import { WireType } from "@protobuf-ts/runtime";
9
+ import type { BinaryReadOptions } from "@protobuf-ts/runtime";
10
+ import type { IBinaryReader } from "@protobuf-ts/runtime";
11
+ import { UnknownFieldHandler } from "@protobuf-ts/runtime";
12
+ import type { PartialMessage } from "@protobuf-ts/runtime";
13
+ import { reflectionMergePartial } from "@protobuf-ts/runtime";
14
+ import { MessageType } from "@protobuf-ts/runtime";
15
+ // ══════════════════════════════════════════════════════════════════════════
16
+ // Messages
17
+ // ══════════════════════════════════════════════════════════════════════════
18
+
19
+ // ── Screen Catalog ──
20
+
21
+ /**
22
+ * @generated from protobuf message sid.v1.admin.LoginScreen
23
+ */
24
+ export interface LoginScreen {
25
+ /**
26
+ * @generated from protobuf field: string screen_id = 1
27
+ */
28
+ screenId: string; // e.g., "login", "register", "mfa-totp"
29
+ /**
30
+ * @generated from protobuf field: string title = 2
31
+ */
32
+ title: string; // Human-readable title
33
+ /**
34
+ * @generated from protobuf field: string description = 3
35
+ */
36
+ description: string; // What this screen does
37
+ /**
38
+ * @generated from protobuf field: repeated sid.v1.admin.TextKey text_keys = 4
39
+ */
40
+ textKeys: TextKey[]; // Available text keys for override
41
+ }
42
+ /**
43
+ * @generated from protobuf message sid.v1.admin.TextKey
44
+ */
45
+ export interface TextKey {
46
+ /**
47
+ * @generated from protobuf field: string key = 1
48
+ */
49
+ key: string; // e.g., "login.title", "login.submit_button"
50
+ /**
51
+ * @generated from protobuf field: string default_value = 2
52
+ */
53
+ defaultValue: string; // Default text
54
+ /**
55
+ * @generated from protobuf field: optional string override = 3
56
+ */
57
+ override?: string; // Current override (if set)
58
+ }
59
+ /**
60
+ * @generated from protobuf message sid.v1.admin.ListScreensResponse
61
+ */
62
+ export interface ListScreensResponse {
63
+ /**
64
+ * @generated from protobuf field: repeated sid.v1.admin.LoginScreen screens = 1
65
+ */
66
+ screens: LoginScreen[];
67
+ }
68
+ /**
69
+ * @generated from protobuf message sid.v1.admin.GetScreenRequest
70
+ */
71
+ export interface GetScreenRequest {
72
+ /**
73
+ * @generated from protobuf field: string screen_id = 1
74
+ */
75
+ screenId: string;
76
+ }
77
+ /**
78
+ * @generated from protobuf message sid.v1.admin.PreviewScreenRequest
79
+ */
80
+ export interface PreviewScreenRequest {
81
+ /**
82
+ * @generated from protobuf field: string screen_id = 1
83
+ */
84
+ screenId: string;
85
+ /**
86
+ * @generated from protobuf field: optional string locale = 2
87
+ */
88
+ locale?: string; // Preview in specific locale
89
+ }
90
+ /**
91
+ * @generated from protobuf message sid.v1.admin.PreviewScreenResponse
92
+ */
93
+ export interface PreviewScreenResponse {
94
+ /**
95
+ * @generated from protobuf field: string html = 1
96
+ */
97
+ html: string; // Rendered preview HTML
98
+ }
99
+ /**
100
+ * @generated from protobuf message sid.v1.admin.UpdateTextOverridesRequest
101
+ */
102
+ export interface UpdateTextOverridesRequest {
103
+ /**
104
+ * @generated from protobuf field: string screen_id = 1
105
+ */
106
+ screenId: string;
107
+ /**
108
+ * @generated from protobuf field: string locale = 2
109
+ */
110
+ locale: string;
111
+ /**
112
+ * @generated from protobuf field: map<string, string> overrides = 3
113
+ */
114
+ overrides: {
115
+ [key: string]: string;
116
+ }; // key → override text
117
+ }
118
+ // ── Headless API Docs ──
119
+
120
+ /**
121
+ * @generated from protobuf message sid.v1.admin.HeadlessApiDocsResponse
122
+ */
123
+ export interface HeadlessApiDocsResponse {
124
+ /**
125
+ * @generated from protobuf field: string content = 1
126
+ */
127
+ content: string; // Rendered documentation (HTML)
128
+ /**
129
+ * @generated from protobuf field: repeated sid.v1.admin.CodeExample examples = 2
130
+ */
131
+ examples: CodeExample[];
132
+ /**
133
+ * @generated from protobuf field: repeated sid.v1.admin.SdkDownload sdks = 3
134
+ */
135
+ sdks: SdkDownload[];
136
+ }
137
+ /**
138
+ * @generated from protobuf message sid.v1.admin.CodeExample
139
+ */
140
+ export interface CodeExample {
141
+ /**
142
+ * @generated from protobuf field: string language = 1
143
+ */
144
+ language: string; // "typescript", "rust", "go", "python"
145
+ /**
146
+ * @generated from protobuf field: string title = 2
147
+ */
148
+ title: string;
149
+ /**
150
+ * @generated from protobuf field: string code = 3
151
+ */
152
+ code: string;
153
+ }
154
+ /**
155
+ * @generated from protobuf message sid.v1.admin.SdkDownload
156
+ */
157
+ export interface SdkDownload {
158
+ /**
159
+ * @generated from protobuf field: string name = 1
160
+ */
161
+ name: string; // "@structured-id/client"
162
+ /**
163
+ * @generated from protobuf field: string language = 2
164
+ */
165
+ language: string;
166
+ /**
167
+ * @generated from protobuf field: string install_command = 3
168
+ */
169
+ installCommand: string; // "npm install @structured-id/client"
170
+ /**
171
+ * @generated from protobuf field: string docs_url = 4
172
+ */
173
+ docsUrl: string;
174
+ }
175
+ // ── Test Flow ──
176
+
177
+ /**
178
+ * @generated from protobuf message sid.v1.admin.StartTestFlowRequest
179
+ */
180
+ export interface StartTestFlowRequest {
181
+ /**
182
+ * @generated from protobuf field: string client_id = 1
183
+ */
184
+ clientId: string; // OAuth2 client to test with
185
+ }
186
+ /**
187
+ * @generated from protobuf message sid.v1.admin.SubmitTestFlowStepRequest
188
+ */
189
+ export interface SubmitTestFlowStepRequest {
190
+ /**
191
+ * @generated from protobuf field: string flow_id = 1
192
+ */
193
+ flowId: string;
194
+ /**
195
+ * @generated from protobuf field: string step_type = 2
196
+ */
197
+ stepType: string; // "identification", "credential", "mfa", etc.
198
+ /**
199
+ * @generated from protobuf field: map<string, string> data = 3
200
+ */
201
+ data: {
202
+ [key: string]: string;
203
+ }; // Step-specific data
204
+ }
205
+ /**
206
+ * @generated from protobuf message sid.v1.admin.TestFlowResponse
207
+ */
208
+ export interface TestFlowResponse {
209
+ /**
210
+ * @generated from protobuf field: string flow_id = 1
211
+ */
212
+ flowId: string;
213
+ /**
214
+ * @generated from protobuf field: string current_step = 2
215
+ */
216
+ currentStep: string; // Current step in the flow
217
+ /**
218
+ * @generated from protobuf field: repeated string available_steps = 3
219
+ */
220
+ availableSteps: string[]; // What steps can be submitted next
221
+ /**
222
+ * @generated from protobuf field: bool complete = 4
223
+ */
224
+ complete: boolean;
225
+ /**
226
+ * @generated from protobuf field: optional string redirect_uri = 5
227
+ */
228
+ redirectUri?: string; // Set when flow completes
229
+ /**
230
+ * @generated from protobuf field: string raw_response = 6
231
+ */
232
+ rawResponse: string; // JSON of the gRPC response (for developer inspection)
233
+ }
234
+ // @generated message type with reflection information, may provide speed optimized methods
235
+ class LoginScreen$Type extends MessageType<LoginScreen> {
236
+ constructor() {
237
+ super("sid.v1.admin.LoginScreen", [
238
+ { no: 1, name: "screen_id", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
239
+ { no: 2, name: "title", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
240
+ { no: 3, name: "description", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
241
+ { no: 4, name: "text_keys", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => TextKey }
242
+ ]);
243
+ }
244
+ create(value?: PartialMessage<LoginScreen>): LoginScreen {
245
+ const message = globalThis.Object.create((this.messagePrototype!));
246
+ message.screenId = "";
247
+ message.title = "";
248
+ message.description = "";
249
+ message.textKeys = [];
250
+ if (value !== undefined)
251
+ reflectionMergePartial<LoginScreen>(this, message, value);
252
+ return message;
253
+ }
254
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LoginScreen): LoginScreen {
255
+ let message = target ?? this.create(), end = reader.pos + length;
256
+ while (reader.pos < end) {
257
+ let [fieldNo, wireType] = reader.tag();
258
+ switch (fieldNo) {
259
+ case /* string screen_id */ 1:
260
+ message.screenId = reader.string();
261
+ break;
262
+ case /* string title */ 2:
263
+ message.title = reader.string();
264
+ break;
265
+ case /* string description */ 3:
266
+ message.description = reader.string();
267
+ break;
268
+ case /* repeated sid.v1.admin.TextKey text_keys */ 4:
269
+ message.textKeys.push(TextKey.internalBinaryRead(reader, reader.uint32(), options));
270
+ break;
271
+ default:
272
+ let u = options.readUnknownField;
273
+ if (u === "throw")
274
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
275
+ let d = reader.skip(wireType);
276
+ if (u !== false)
277
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
278
+ }
279
+ }
280
+ return message;
281
+ }
282
+ internalBinaryWrite(message: LoginScreen, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
283
+ /* string screen_id = 1; */
284
+ if (message.screenId !== "")
285
+ writer.tag(1, WireType.LengthDelimited).string(message.screenId);
286
+ /* string title = 2; */
287
+ if (message.title !== "")
288
+ writer.tag(2, WireType.LengthDelimited).string(message.title);
289
+ /* string description = 3; */
290
+ if (message.description !== "")
291
+ writer.tag(3, WireType.LengthDelimited).string(message.description);
292
+ /* repeated sid.v1.admin.TextKey text_keys = 4; */
293
+ for (let i = 0; i < message.textKeys.length; i++)
294
+ TextKey.internalBinaryWrite(message.textKeys[i], writer.tag(4, WireType.LengthDelimited).fork(), options).join();
295
+ let u = options.writeUnknownFields;
296
+ if (u !== false)
297
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
298
+ return writer;
299
+ }
300
+ }
301
+ /**
302
+ * @generated MessageType for protobuf message sid.v1.admin.LoginScreen
303
+ */
304
+ export const LoginScreen = new LoginScreen$Type();
305
+ // @generated message type with reflection information, may provide speed optimized methods
306
+ class TextKey$Type extends MessageType<TextKey> {
307
+ constructor() {
308
+ super("sid.v1.admin.TextKey", [
309
+ { no: 1, name: "key", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
310
+ { no: 2, name: "default_value", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
311
+ { no: 3, name: "override", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/ }
312
+ ]);
313
+ }
314
+ create(value?: PartialMessage<TextKey>): TextKey {
315
+ const message = globalThis.Object.create((this.messagePrototype!));
316
+ message.key = "";
317
+ message.defaultValue = "";
318
+ if (value !== undefined)
319
+ reflectionMergePartial<TextKey>(this, message, value);
320
+ return message;
321
+ }
322
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TextKey): TextKey {
323
+ let message = target ?? this.create(), end = reader.pos + length;
324
+ while (reader.pos < end) {
325
+ let [fieldNo, wireType] = reader.tag();
326
+ switch (fieldNo) {
327
+ case /* string key */ 1:
328
+ message.key = reader.string();
329
+ break;
330
+ case /* string default_value */ 2:
331
+ message.defaultValue = reader.string();
332
+ break;
333
+ case /* optional string override */ 3:
334
+ message.override = reader.string();
335
+ break;
336
+ default:
337
+ let u = options.readUnknownField;
338
+ if (u === "throw")
339
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
340
+ let d = reader.skip(wireType);
341
+ if (u !== false)
342
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
343
+ }
344
+ }
345
+ return message;
346
+ }
347
+ internalBinaryWrite(message: TextKey, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
348
+ /* string key = 1; */
349
+ if (message.key !== "")
350
+ writer.tag(1, WireType.LengthDelimited).string(message.key);
351
+ /* string default_value = 2; */
352
+ if (message.defaultValue !== "")
353
+ writer.tag(2, WireType.LengthDelimited).string(message.defaultValue);
354
+ /* optional string override = 3; */
355
+ if (message.override !== undefined)
356
+ writer.tag(3, WireType.LengthDelimited).string(message.override);
357
+ let u = options.writeUnknownFields;
358
+ if (u !== false)
359
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
360
+ return writer;
361
+ }
362
+ }
363
+ /**
364
+ * @generated MessageType for protobuf message sid.v1.admin.TextKey
365
+ */
366
+ export const TextKey = new TextKey$Type();
367
+ // @generated message type with reflection information, may provide speed optimized methods
368
+ class ListScreensResponse$Type extends MessageType<ListScreensResponse> {
369
+ constructor() {
370
+ super("sid.v1.admin.ListScreensResponse", [
371
+ { no: 1, name: "screens", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => LoginScreen }
372
+ ]);
373
+ }
374
+ create(value?: PartialMessage<ListScreensResponse>): ListScreensResponse {
375
+ const message = globalThis.Object.create((this.messagePrototype!));
376
+ message.screens = [];
377
+ if (value !== undefined)
378
+ reflectionMergePartial<ListScreensResponse>(this, message, value);
379
+ return message;
380
+ }
381
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListScreensResponse): ListScreensResponse {
382
+ let message = target ?? this.create(), end = reader.pos + length;
383
+ while (reader.pos < end) {
384
+ let [fieldNo, wireType] = reader.tag();
385
+ switch (fieldNo) {
386
+ case /* repeated sid.v1.admin.LoginScreen screens */ 1:
387
+ message.screens.push(LoginScreen.internalBinaryRead(reader, reader.uint32(), options));
388
+ break;
389
+ default:
390
+ let u = options.readUnknownField;
391
+ if (u === "throw")
392
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
393
+ let d = reader.skip(wireType);
394
+ if (u !== false)
395
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
396
+ }
397
+ }
398
+ return message;
399
+ }
400
+ internalBinaryWrite(message: ListScreensResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
401
+ /* repeated sid.v1.admin.LoginScreen screens = 1; */
402
+ for (let i = 0; i < message.screens.length; i++)
403
+ LoginScreen.internalBinaryWrite(message.screens[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();
404
+ let u = options.writeUnknownFields;
405
+ if (u !== false)
406
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
407
+ return writer;
408
+ }
409
+ }
410
+ /**
411
+ * @generated MessageType for protobuf message sid.v1.admin.ListScreensResponse
412
+ */
413
+ export const ListScreensResponse = new ListScreensResponse$Type();
414
+ // @generated message type with reflection information, may provide speed optimized methods
415
+ class GetScreenRequest$Type extends MessageType<GetScreenRequest> {
416
+ constructor() {
417
+ super("sid.v1.admin.GetScreenRequest", [
418
+ { no: 1, name: "screen_id", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
419
+ ]);
420
+ }
421
+ create(value?: PartialMessage<GetScreenRequest>): GetScreenRequest {
422
+ const message = globalThis.Object.create((this.messagePrototype!));
423
+ message.screenId = "";
424
+ if (value !== undefined)
425
+ reflectionMergePartial<GetScreenRequest>(this, message, value);
426
+ return message;
427
+ }
428
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetScreenRequest): GetScreenRequest {
429
+ let message = target ?? this.create(), end = reader.pos + length;
430
+ while (reader.pos < end) {
431
+ let [fieldNo, wireType] = reader.tag();
432
+ switch (fieldNo) {
433
+ case /* string screen_id */ 1:
434
+ message.screenId = reader.string();
435
+ break;
436
+ default:
437
+ let u = options.readUnknownField;
438
+ if (u === "throw")
439
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
440
+ let d = reader.skip(wireType);
441
+ if (u !== false)
442
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
443
+ }
444
+ }
445
+ return message;
446
+ }
447
+ internalBinaryWrite(message: GetScreenRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
448
+ /* string screen_id = 1; */
449
+ if (message.screenId !== "")
450
+ writer.tag(1, WireType.LengthDelimited).string(message.screenId);
451
+ let u = options.writeUnknownFields;
452
+ if (u !== false)
453
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
454
+ return writer;
455
+ }
456
+ }
457
+ /**
458
+ * @generated MessageType for protobuf message sid.v1.admin.GetScreenRequest
459
+ */
460
+ export const GetScreenRequest = new GetScreenRequest$Type();
461
+ // @generated message type with reflection information, may provide speed optimized methods
462
+ class PreviewScreenRequest$Type extends MessageType<PreviewScreenRequest> {
463
+ constructor() {
464
+ super("sid.v1.admin.PreviewScreenRequest", [
465
+ { no: 1, name: "screen_id", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
466
+ { no: 2, name: "locale", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/ }
467
+ ]);
468
+ }
469
+ create(value?: PartialMessage<PreviewScreenRequest>): PreviewScreenRequest {
470
+ const message = globalThis.Object.create((this.messagePrototype!));
471
+ message.screenId = "";
472
+ if (value !== undefined)
473
+ reflectionMergePartial<PreviewScreenRequest>(this, message, value);
474
+ return message;
475
+ }
476
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PreviewScreenRequest): PreviewScreenRequest {
477
+ let message = target ?? this.create(), end = reader.pos + length;
478
+ while (reader.pos < end) {
479
+ let [fieldNo, wireType] = reader.tag();
480
+ switch (fieldNo) {
481
+ case /* string screen_id */ 1:
482
+ message.screenId = reader.string();
483
+ break;
484
+ case /* optional string locale */ 2:
485
+ message.locale = reader.string();
486
+ break;
487
+ default:
488
+ let u = options.readUnknownField;
489
+ if (u === "throw")
490
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
491
+ let d = reader.skip(wireType);
492
+ if (u !== false)
493
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
494
+ }
495
+ }
496
+ return message;
497
+ }
498
+ internalBinaryWrite(message: PreviewScreenRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
499
+ /* string screen_id = 1; */
500
+ if (message.screenId !== "")
501
+ writer.tag(1, WireType.LengthDelimited).string(message.screenId);
502
+ /* optional string locale = 2; */
503
+ if (message.locale !== undefined)
504
+ writer.tag(2, WireType.LengthDelimited).string(message.locale);
505
+ let u = options.writeUnknownFields;
506
+ if (u !== false)
507
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
508
+ return writer;
509
+ }
510
+ }
511
+ /**
512
+ * @generated MessageType for protobuf message sid.v1.admin.PreviewScreenRequest
513
+ */
514
+ export const PreviewScreenRequest = new PreviewScreenRequest$Type();
515
+ // @generated message type with reflection information, may provide speed optimized methods
516
+ class PreviewScreenResponse$Type extends MessageType<PreviewScreenResponse> {
517
+ constructor() {
518
+ super("sid.v1.admin.PreviewScreenResponse", [
519
+ { no: 1, name: "html", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
520
+ ]);
521
+ }
522
+ create(value?: PartialMessage<PreviewScreenResponse>): PreviewScreenResponse {
523
+ const message = globalThis.Object.create((this.messagePrototype!));
524
+ message.html = "";
525
+ if (value !== undefined)
526
+ reflectionMergePartial<PreviewScreenResponse>(this, message, value);
527
+ return message;
528
+ }
529
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PreviewScreenResponse): PreviewScreenResponse {
530
+ let message = target ?? this.create(), end = reader.pos + length;
531
+ while (reader.pos < end) {
532
+ let [fieldNo, wireType] = reader.tag();
533
+ switch (fieldNo) {
534
+ case /* string html */ 1:
535
+ message.html = reader.string();
536
+ break;
537
+ default:
538
+ let u = options.readUnknownField;
539
+ if (u === "throw")
540
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
541
+ let d = reader.skip(wireType);
542
+ if (u !== false)
543
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
544
+ }
545
+ }
546
+ return message;
547
+ }
548
+ internalBinaryWrite(message: PreviewScreenResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
549
+ /* string html = 1; */
550
+ if (message.html !== "")
551
+ writer.tag(1, WireType.LengthDelimited).string(message.html);
552
+ let u = options.writeUnknownFields;
553
+ if (u !== false)
554
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
555
+ return writer;
556
+ }
557
+ }
558
+ /**
559
+ * @generated MessageType for protobuf message sid.v1.admin.PreviewScreenResponse
560
+ */
561
+ export const PreviewScreenResponse = new PreviewScreenResponse$Type();
562
+ // @generated message type with reflection information, may provide speed optimized methods
563
+ class UpdateTextOverridesRequest$Type extends MessageType<UpdateTextOverridesRequest> {
564
+ constructor() {
565
+ super("sid.v1.admin.UpdateTextOverridesRequest", [
566
+ { no: 1, name: "screen_id", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
567
+ { no: 2, name: "locale", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
568
+ { no: 3, name: "overrides", kind: "map", K: 9 /*ScalarType.STRING*/, V: { kind: "scalar", T: 9 /*ScalarType.STRING*/ } }
569
+ ]);
570
+ }
571
+ create(value?: PartialMessage<UpdateTextOverridesRequest>): UpdateTextOverridesRequest {
572
+ const message = globalThis.Object.create((this.messagePrototype!));
573
+ message.screenId = "";
574
+ message.locale = "";
575
+ message.overrides = {};
576
+ if (value !== undefined)
577
+ reflectionMergePartial<UpdateTextOverridesRequest>(this, message, value);
578
+ return message;
579
+ }
580
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: UpdateTextOverridesRequest): UpdateTextOverridesRequest {
581
+ let message = target ?? this.create(), end = reader.pos + length;
582
+ while (reader.pos < end) {
583
+ let [fieldNo, wireType] = reader.tag();
584
+ switch (fieldNo) {
585
+ case /* string screen_id */ 1:
586
+ message.screenId = reader.string();
587
+ break;
588
+ case /* string locale */ 2:
589
+ message.locale = reader.string();
590
+ break;
591
+ case /* map<string, string> overrides */ 3:
592
+ this.binaryReadMap3(message.overrides, reader, options);
593
+ break;
594
+ default:
595
+ let u = options.readUnknownField;
596
+ if (u === "throw")
597
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
598
+ let d = reader.skip(wireType);
599
+ if (u !== false)
600
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
601
+ }
602
+ }
603
+ return message;
604
+ }
605
+ private binaryReadMap3(map: UpdateTextOverridesRequest["overrides"], reader: IBinaryReader, options: BinaryReadOptions): void {
606
+ let len = reader.uint32(), end = reader.pos + len, key: keyof UpdateTextOverridesRequest["overrides"] | undefined, val: UpdateTextOverridesRequest["overrides"][any] | undefined;
607
+ while (reader.pos < end) {
608
+ let [fieldNo, wireType] = reader.tag();
609
+ switch (fieldNo) {
610
+ case 1:
611
+ key = reader.string();
612
+ break;
613
+ case 2:
614
+ val = reader.string();
615
+ break;
616
+ default: throw new globalThis.Error("unknown map entry field for sid.v1.admin.UpdateTextOverridesRequest.overrides");
617
+ }
618
+ }
619
+ map[key ?? ""] = val ?? "";
620
+ }
621
+ internalBinaryWrite(message: UpdateTextOverridesRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
622
+ /* string screen_id = 1; */
623
+ if (message.screenId !== "")
624
+ writer.tag(1, WireType.LengthDelimited).string(message.screenId);
625
+ /* string locale = 2; */
626
+ if (message.locale !== "")
627
+ writer.tag(2, WireType.LengthDelimited).string(message.locale);
628
+ /* map<string, string> overrides = 3; */
629
+ for (let k of globalThis.Object.keys(message.overrides))
630
+ writer.tag(3, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k).tag(2, WireType.LengthDelimited).string(message.overrides[k]).join();
631
+ let u = options.writeUnknownFields;
632
+ if (u !== false)
633
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
634
+ return writer;
635
+ }
636
+ }
637
+ /**
638
+ * @generated MessageType for protobuf message sid.v1.admin.UpdateTextOverridesRequest
639
+ */
640
+ export const UpdateTextOverridesRequest = new UpdateTextOverridesRequest$Type();
641
+ // @generated message type with reflection information, may provide speed optimized methods
642
+ class HeadlessApiDocsResponse$Type extends MessageType<HeadlessApiDocsResponse> {
643
+ constructor() {
644
+ super("sid.v1.admin.HeadlessApiDocsResponse", [
645
+ { no: 1, name: "content", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
646
+ { no: 2, name: "examples", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => CodeExample },
647
+ { no: 3, name: "sdks", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => SdkDownload }
648
+ ]);
649
+ }
650
+ create(value?: PartialMessage<HeadlessApiDocsResponse>): HeadlessApiDocsResponse {
651
+ const message = globalThis.Object.create((this.messagePrototype!));
652
+ message.content = "";
653
+ message.examples = [];
654
+ message.sdks = [];
655
+ if (value !== undefined)
656
+ reflectionMergePartial<HeadlessApiDocsResponse>(this, message, value);
657
+ return message;
658
+ }
659
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: HeadlessApiDocsResponse): HeadlessApiDocsResponse {
660
+ let message = target ?? this.create(), end = reader.pos + length;
661
+ while (reader.pos < end) {
662
+ let [fieldNo, wireType] = reader.tag();
663
+ switch (fieldNo) {
664
+ case /* string content */ 1:
665
+ message.content = reader.string();
666
+ break;
667
+ case /* repeated sid.v1.admin.CodeExample examples */ 2:
668
+ message.examples.push(CodeExample.internalBinaryRead(reader, reader.uint32(), options));
669
+ break;
670
+ case /* repeated sid.v1.admin.SdkDownload sdks */ 3:
671
+ message.sdks.push(SdkDownload.internalBinaryRead(reader, reader.uint32(), options));
672
+ break;
673
+ default:
674
+ let u = options.readUnknownField;
675
+ if (u === "throw")
676
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
677
+ let d = reader.skip(wireType);
678
+ if (u !== false)
679
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
680
+ }
681
+ }
682
+ return message;
683
+ }
684
+ internalBinaryWrite(message: HeadlessApiDocsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
685
+ /* string content = 1; */
686
+ if (message.content !== "")
687
+ writer.tag(1, WireType.LengthDelimited).string(message.content);
688
+ /* repeated sid.v1.admin.CodeExample examples = 2; */
689
+ for (let i = 0; i < message.examples.length; i++)
690
+ CodeExample.internalBinaryWrite(message.examples[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join();
691
+ /* repeated sid.v1.admin.SdkDownload sdks = 3; */
692
+ for (let i = 0; i < message.sdks.length; i++)
693
+ SdkDownload.internalBinaryWrite(message.sdks[i], writer.tag(3, WireType.LengthDelimited).fork(), options).join();
694
+ let u = options.writeUnknownFields;
695
+ if (u !== false)
696
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
697
+ return writer;
698
+ }
699
+ }
700
+ /**
701
+ * @generated MessageType for protobuf message sid.v1.admin.HeadlessApiDocsResponse
702
+ */
703
+ export const HeadlessApiDocsResponse = new HeadlessApiDocsResponse$Type();
704
+ // @generated message type with reflection information, may provide speed optimized methods
705
+ class CodeExample$Type extends MessageType<CodeExample> {
706
+ constructor() {
707
+ super("sid.v1.admin.CodeExample", [
708
+ { no: 1, name: "language", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
709
+ { no: 2, name: "title", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
710
+ { no: 3, name: "code", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
711
+ ]);
712
+ }
713
+ create(value?: PartialMessage<CodeExample>): CodeExample {
714
+ const message = globalThis.Object.create((this.messagePrototype!));
715
+ message.language = "";
716
+ message.title = "";
717
+ message.code = "";
718
+ if (value !== undefined)
719
+ reflectionMergePartial<CodeExample>(this, message, value);
720
+ return message;
721
+ }
722
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CodeExample): CodeExample {
723
+ let message = target ?? this.create(), end = reader.pos + length;
724
+ while (reader.pos < end) {
725
+ let [fieldNo, wireType] = reader.tag();
726
+ switch (fieldNo) {
727
+ case /* string language */ 1:
728
+ message.language = reader.string();
729
+ break;
730
+ case /* string title */ 2:
731
+ message.title = reader.string();
732
+ break;
733
+ case /* string code */ 3:
734
+ message.code = reader.string();
735
+ break;
736
+ default:
737
+ let u = options.readUnknownField;
738
+ if (u === "throw")
739
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
740
+ let d = reader.skip(wireType);
741
+ if (u !== false)
742
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
743
+ }
744
+ }
745
+ return message;
746
+ }
747
+ internalBinaryWrite(message: CodeExample, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
748
+ /* string language = 1; */
749
+ if (message.language !== "")
750
+ writer.tag(1, WireType.LengthDelimited).string(message.language);
751
+ /* string title = 2; */
752
+ if (message.title !== "")
753
+ writer.tag(2, WireType.LengthDelimited).string(message.title);
754
+ /* string code = 3; */
755
+ if (message.code !== "")
756
+ writer.tag(3, WireType.LengthDelimited).string(message.code);
757
+ let u = options.writeUnknownFields;
758
+ if (u !== false)
759
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
760
+ return writer;
761
+ }
762
+ }
763
+ /**
764
+ * @generated MessageType for protobuf message sid.v1.admin.CodeExample
765
+ */
766
+ export const CodeExample = new CodeExample$Type();
767
+ // @generated message type with reflection information, may provide speed optimized methods
768
+ class SdkDownload$Type extends MessageType<SdkDownload> {
769
+ constructor() {
770
+ super("sid.v1.admin.SdkDownload", [
771
+ { no: 1, name: "name", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
772
+ { no: 2, name: "language", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
773
+ { no: 3, name: "install_command", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
774
+ { no: 4, name: "docs_url", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
775
+ ]);
776
+ }
777
+ create(value?: PartialMessage<SdkDownload>): SdkDownload {
778
+ const message = globalThis.Object.create((this.messagePrototype!));
779
+ message.name = "";
780
+ message.language = "";
781
+ message.installCommand = "";
782
+ message.docsUrl = "";
783
+ if (value !== undefined)
784
+ reflectionMergePartial<SdkDownload>(this, message, value);
785
+ return message;
786
+ }
787
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SdkDownload): SdkDownload {
788
+ let message = target ?? this.create(), end = reader.pos + length;
789
+ while (reader.pos < end) {
790
+ let [fieldNo, wireType] = reader.tag();
791
+ switch (fieldNo) {
792
+ case /* string name */ 1:
793
+ message.name = reader.string();
794
+ break;
795
+ case /* string language */ 2:
796
+ message.language = reader.string();
797
+ break;
798
+ case /* string install_command */ 3:
799
+ message.installCommand = reader.string();
800
+ break;
801
+ case /* string docs_url */ 4:
802
+ message.docsUrl = reader.string();
803
+ break;
804
+ default:
805
+ let u = options.readUnknownField;
806
+ if (u === "throw")
807
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
808
+ let d = reader.skip(wireType);
809
+ if (u !== false)
810
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
811
+ }
812
+ }
813
+ return message;
814
+ }
815
+ internalBinaryWrite(message: SdkDownload, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
816
+ /* string name = 1; */
817
+ if (message.name !== "")
818
+ writer.tag(1, WireType.LengthDelimited).string(message.name);
819
+ /* string language = 2; */
820
+ if (message.language !== "")
821
+ writer.tag(2, WireType.LengthDelimited).string(message.language);
822
+ /* string install_command = 3; */
823
+ if (message.installCommand !== "")
824
+ writer.tag(3, WireType.LengthDelimited).string(message.installCommand);
825
+ /* string docs_url = 4; */
826
+ if (message.docsUrl !== "")
827
+ writer.tag(4, WireType.LengthDelimited).string(message.docsUrl);
828
+ let u = options.writeUnknownFields;
829
+ if (u !== false)
830
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
831
+ return writer;
832
+ }
833
+ }
834
+ /**
835
+ * @generated MessageType for protobuf message sid.v1.admin.SdkDownload
836
+ */
837
+ export const SdkDownload = new SdkDownload$Type();
838
+ // @generated message type with reflection information, may provide speed optimized methods
839
+ class StartTestFlowRequest$Type extends MessageType<StartTestFlowRequest> {
840
+ constructor() {
841
+ super("sid.v1.admin.StartTestFlowRequest", [
842
+ { no: 1, name: "client_id", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
843
+ ]);
844
+ }
845
+ create(value?: PartialMessage<StartTestFlowRequest>): StartTestFlowRequest {
846
+ const message = globalThis.Object.create((this.messagePrototype!));
847
+ message.clientId = "";
848
+ if (value !== undefined)
849
+ reflectionMergePartial<StartTestFlowRequest>(this, message, value);
850
+ return message;
851
+ }
852
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartTestFlowRequest): StartTestFlowRequest {
853
+ let message = target ?? this.create(), end = reader.pos + length;
854
+ while (reader.pos < end) {
855
+ let [fieldNo, wireType] = reader.tag();
856
+ switch (fieldNo) {
857
+ case /* string client_id */ 1:
858
+ message.clientId = reader.string();
859
+ break;
860
+ default:
861
+ let u = options.readUnknownField;
862
+ if (u === "throw")
863
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
864
+ let d = reader.skip(wireType);
865
+ if (u !== false)
866
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
867
+ }
868
+ }
869
+ return message;
870
+ }
871
+ internalBinaryWrite(message: StartTestFlowRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
872
+ /* string client_id = 1; */
873
+ if (message.clientId !== "")
874
+ writer.tag(1, WireType.LengthDelimited).string(message.clientId);
875
+ let u = options.writeUnknownFields;
876
+ if (u !== false)
877
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
878
+ return writer;
879
+ }
880
+ }
881
+ /**
882
+ * @generated MessageType for protobuf message sid.v1.admin.StartTestFlowRequest
883
+ */
884
+ export const StartTestFlowRequest = new StartTestFlowRequest$Type();
885
+ // @generated message type with reflection information, may provide speed optimized methods
886
+ class SubmitTestFlowStepRequest$Type extends MessageType<SubmitTestFlowStepRequest> {
887
+ constructor() {
888
+ super("sid.v1.admin.SubmitTestFlowStepRequest", [
889
+ { no: 1, name: "flow_id", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
890
+ { no: 2, name: "step_type", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
891
+ { no: 3, name: "data", kind: "map", K: 9 /*ScalarType.STRING*/, V: { kind: "scalar", T: 9 /*ScalarType.STRING*/ } }
892
+ ]);
893
+ }
894
+ create(value?: PartialMessage<SubmitTestFlowStepRequest>): SubmitTestFlowStepRequest {
895
+ const message = globalThis.Object.create((this.messagePrototype!));
896
+ message.flowId = "";
897
+ message.stepType = "";
898
+ message.data = {};
899
+ if (value !== undefined)
900
+ reflectionMergePartial<SubmitTestFlowStepRequest>(this, message, value);
901
+ return message;
902
+ }
903
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SubmitTestFlowStepRequest): SubmitTestFlowStepRequest {
904
+ let message = target ?? this.create(), end = reader.pos + length;
905
+ while (reader.pos < end) {
906
+ let [fieldNo, wireType] = reader.tag();
907
+ switch (fieldNo) {
908
+ case /* string flow_id */ 1:
909
+ message.flowId = reader.string();
910
+ break;
911
+ case /* string step_type */ 2:
912
+ message.stepType = reader.string();
913
+ break;
914
+ case /* map<string, string> data */ 3:
915
+ this.binaryReadMap3(message.data, reader, options);
916
+ break;
917
+ default:
918
+ let u = options.readUnknownField;
919
+ if (u === "throw")
920
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
921
+ let d = reader.skip(wireType);
922
+ if (u !== false)
923
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
924
+ }
925
+ }
926
+ return message;
927
+ }
928
+ private binaryReadMap3(map: SubmitTestFlowStepRequest["data"], reader: IBinaryReader, options: BinaryReadOptions): void {
929
+ let len = reader.uint32(), end = reader.pos + len, key: keyof SubmitTestFlowStepRequest["data"] | undefined, val: SubmitTestFlowStepRequest["data"][any] | undefined;
930
+ while (reader.pos < end) {
931
+ let [fieldNo, wireType] = reader.tag();
932
+ switch (fieldNo) {
933
+ case 1:
934
+ key = reader.string();
935
+ break;
936
+ case 2:
937
+ val = reader.string();
938
+ break;
939
+ default: throw new globalThis.Error("unknown map entry field for sid.v1.admin.SubmitTestFlowStepRequest.data");
940
+ }
941
+ }
942
+ map[key ?? ""] = val ?? "";
943
+ }
944
+ internalBinaryWrite(message: SubmitTestFlowStepRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
945
+ /* string flow_id = 1; */
946
+ if (message.flowId !== "")
947
+ writer.tag(1, WireType.LengthDelimited).string(message.flowId);
948
+ /* string step_type = 2; */
949
+ if (message.stepType !== "")
950
+ writer.tag(2, WireType.LengthDelimited).string(message.stepType);
951
+ /* map<string, string> data = 3; */
952
+ for (let k of globalThis.Object.keys(message.data))
953
+ writer.tag(3, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k).tag(2, WireType.LengthDelimited).string(message.data[k]).join();
954
+ let u = options.writeUnknownFields;
955
+ if (u !== false)
956
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
957
+ return writer;
958
+ }
959
+ }
960
+ /**
961
+ * @generated MessageType for protobuf message sid.v1.admin.SubmitTestFlowStepRequest
962
+ */
963
+ export const SubmitTestFlowStepRequest = new SubmitTestFlowStepRequest$Type();
964
+ // @generated message type with reflection information, may provide speed optimized methods
965
+ class TestFlowResponse$Type extends MessageType<TestFlowResponse> {
966
+ constructor() {
967
+ super("sid.v1.admin.TestFlowResponse", [
968
+ { no: 1, name: "flow_id", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
969
+ { no: 2, name: "current_step", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
970
+ { no: 3, name: "available_steps", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ },
971
+ { no: 4, name: "complete", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
972
+ { no: 5, name: "redirect_uri", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/ },
973
+ { no: 6, name: "raw_response", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
974
+ ]);
975
+ }
976
+ create(value?: PartialMessage<TestFlowResponse>): TestFlowResponse {
977
+ const message = globalThis.Object.create((this.messagePrototype!));
978
+ message.flowId = "";
979
+ message.currentStep = "";
980
+ message.availableSteps = [];
981
+ message.complete = false;
982
+ message.rawResponse = "";
983
+ if (value !== undefined)
984
+ reflectionMergePartial<TestFlowResponse>(this, message, value);
985
+ return message;
986
+ }
987
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TestFlowResponse): TestFlowResponse {
988
+ let message = target ?? this.create(), end = reader.pos + length;
989
+ while (reader.pos < end) {
990
+ let [fieldNo, wireType] = reader.tag();
991
+ switch (fieldNo) {
992
+ case /* string flow_id */ 1:
993
+ message.flowId = reader.string();
994
+ break;
995
+ case /* string current_step */ 2:
996
+ message.currentStep = reader.string();
997
+ break;
998
+ case /* repeated string available_steps */ 3:
999
+ message.availableSteps.push(reader.string());
1000
+ break;
1001
+ case /* bool complete */ 4:
1002
+ message.complete = reader.bool();
1003
+ break;
1004
+ case /* optional string redirect_uri */ 5:
1005
+ message.redirectUri = reader.string();
1006
+ break;
1007
+ case /* string raw_response */ 6:
1008
+ message.rawResponse = reader.string();
1009
+ break;
1010
+ default:
1011
+ let u = options.readUnknownField;
1012
+ if (u === "throw")
1013
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
1014
+ let d = reader.skip(wireType);
1015
+ if (u !== false)
1016
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
1017
+ }
1018
+ }
1019
+ return message;
1020
+ }
1021
+ internalBinaryWrite(message: TestFlowResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
1022
+ /* string flow_id = 1; */
1023
+ if (message.flowId !== "")
1024
+ writer.tag(1, WireType.LengthDelimited).string(message.flowId);
1025
+ /* string current_step = 2; */
1026
+ if (message.currentStep !== "")
1027
+ writer.tag(2, WireType.LengthDelimited).string(message.currentStep);
1028
+ /* repeated string available_steps = 3; */
1029
+ for (let i = 0; i < message.availableSteps.length; i++)
1030
+ writer.tag(3, WireType.LengthDelimited).string(message.availableSteps[i]);
1031
+ /* bool complete = 4; */
1032
+ if (message.complete !== false)
1033
+ writer.tag(4, WireType.Varint).bool(message.complete);
1034
+ /* optional string redirect_uri = 5; */
1035
+ if (message.redirectUri !== undefined)
1036
+ writer.tag(5, WireType.LengthDelimited).string(message.redirectUri);
1037
+ /* string raw_response = 6; */
1038
+ if (message.rawResponse !== "")
1039
+ writer.tag(6, WireType.LengthDelimited).string(message.rawResponse);
1040
+ let u = options.writeUnknownFields;
1041
+ if (u !== false)
1042
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
1043
+ return writer;
1044
+ }
1045
+ }
1046
+ /**
1047
+ * @generated MessageType for protobuf message sid.v1.admin.TestFlowResponse
1048
+ */
1049
+ export const TestFlowResponse = new TestFlowResponse$Type();
1050
+ /**
1051
+ * @generated ServiceType for protobuf service sid.v1.admin.LoginExperienceService
1052
+ */
1053
+ export const LoginExperienceService = new ServiceType("sid.v1.admin.LoginExperienceService", [
1054
+ { name: "ListScreens", idempotency: "NO_SIDE_EFFECTS", options: { "google.api.http": { get: "/v1/admin/login-experience/screens" } }, I: Empty, O: ListScreensResponse },
1055
+ { name: "GetScreen", idempotency: "NO_SIDE_EFFECTS", options: { "google.api.http": { get: "/v1/admin/login-experience/screens/{screen_id}" } }, I: GetScreenRequest, O: LoginScreen },
1056
+ { name: "PreviewScreen", idempotency: "NO_SIDE_EFFECTS", options: { "google.api.http": { get: "/v1/admin/login-experience/screens/{screen_id}/preview" } }, I: PreviewScreenRequest, O: PreviewScreenResponse },
1057
+ { name: "UpdateTextOverrides", options: { "google.api.http": { put: "/v1/admin/login-experience/screens/{screen_id}/text/{locale}", body: "*" } }, I: UpdateTextOverridesRequest, O: Empty },
1058
+ { name: "GetHeadlessApiDocs", idempotency: "NO_SIDE_EFFECTS", options: { "google.api.http": { get: "/v1/admin/login-experience/headless/docs" } }, I: Empty, O: HeadlessApiDocsResponse },
1059
+ { name: "StartTestFlow", options: { "google.api.http": { post: "/v1/admin/login-experience/headless/test", body: "*" } }, I: StartTestFlowRequest, O: TestFlowResponse },
1060
+ { name: "SubmitTestFlowStep", options: { "google.api.http": { post: "/v1/admin/login-experience/headless/test/{flow_id}/step", body: "*" } }, I: SubmitTestFlowStepRequest, O: TestFlowResponse }
1061
+ ]);