@fivenet-app/gen 2025.5.2 → 2025.9.1

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 (169) hide show
  1. package/buf/validate/validate.ts +11301 -0
  2. package/clients.ts +157 -154
  3. package/codegen/dbscanner/dbscanner.ts +91 -0
  4. package/codegen/perms/perms.ts +208 -0
  5. package/codegen/sanitizer/sanitizer.ts +80 -0
  6. package/google/protobuf/any.ts +4 -3
  7. package/google/protobuf/descriptor.ts +393 -239
  8. package/google/protobuf/duration.ts +4 -3
  9. package/google/protobuf/struct.ts +485 -0
  10. package/google/protobuf/timestamp.ts +4 -3
  11. package/package.json +3 -3
  12. package/perms.ts +85 -159
  13. package/resources/accounts/accounts.ts +26 -25
  14. package/resources/accounts/oauth2.ts +30 -29
  15. package/resources/audit/audit.ts +36 -35
  16. package/resources/calendar/access.ts +49 -48
  17. package/resources/calendar/calendar.ts +122 -126
  18. package/resources/centrum/access.ts +345 -0
  19. package/resources/centrum/attributes.ts +8 -11
  20. package/resources/centrum/dispatchers.ts +149 -0
  21. package/resources/centrum/dispatches.ts +252 -115
  22. package/resources/centrum/settings.ts +384 -34
  23. package/resources/centrum/units.ts +112 -92
  24. package/resources/centrum/units_access.ts +54 -55
  25. package/resources/clientconfig/clientconfig.ts +890 -0
  26. package/resources/collab/collab.ts +817 -0
  27. package/resources/common/content/content.ts +113 -30
  28. package/resources/common/cron/cron.ts +43 -31
  29. package/resources/common/database/database.ts +92 -35
  30. package/resources/common/error.ts +17 -16
  31. package/resources/common/grpcws/grpcws.ts +24 -23
  32. package/resources/common/i18n.ts +20 -24
  33. package/resources/common/id_mapping.ts +69 -0
  34. package/resources/common/tests/objects.ts +4 -3
  35. package/resources/common/uuid.ts +4 -3
  36. package/resources/discord/discord.ts +209 -0
  37. package/resources/documents/access.ts +52 -53
  38. package/resources/documents/activity.ts +235 -58
  39. package/resources/documents/category.ts +20 -27
  40. package/resources/documents/comment.ts +26 -25
  41. package/resources/documents/documents.ts +335 -262
  42. package/resources/documents/pins.ts +127 -0
  43. package/resources/documents/requests.ts +31 -30
  44. package/resources/documents/signoff.ts +55 -0
  45. package/resources/documents/state.ts +69 -0
  46. package/resources/documents/templates.ts +119 -136
  47. package/resources/documents/workflow.ts +35 -24
  48. package/resources/file/file.ts +152 -0
  49. package/{services/settings → resources/file}/filestore.ts +179 -165
  50. package/resources/file/meta.ts +148 -0
  51. package/resources/jobs/activity.ts +39 -42
  52. package/resources/jobs/colleagues.ts +67 -60
  53. package/resources/jobs/conduct.ts +29 -30
  54. package/resources/jobs/job_props.ts +46 -48
  55. package/resources/jobs/job_settings.ts +45 -52
  56. package/resources/jobs/jobs.ts +14 -13
  57. package/resources/jobs/labels.ts +21 -22
  58. package/resources/jobs/timeclock.ts +26 -25
  59. package/resources/laws/laws.ts +40 -49
  60. package/resources/livemap/coords.ts +81 -0
  61. package/resources/livemap/heatmap.ts +93 -0
  62. package/resources/livemap/{livemap.ts → marker_marker.ts} +43 -310
  63. package/resources/livemap/user_marker.ts +298 -0
  64. package/resources/mailer/access.ts +75 -74
  65. package/resources/mailer/email.ts +24 -27
  66. package/resources/mailer/events.ts +25 -24
  67. package/resources/mailer/message.ts +45 -50
  68. package/resources/mailer/settings.ts +12 -15
  69. package/resources/mailer/template.ts +25 -28
  70. package/resources/mailer/thread.ts +70 -71
  71. package/resources/notifications/client_view.ts +239 -0
  72. package/resources/notifications/events.ts +50 -101
  73. package/resources/notifications/notifications.ts +52 -57
  74. package/resources/permissions/attributes.ts +63 -206
  75. package/resources/permissions/events.ts +149 -0
  76. package/resources/permissions/permissions.ts +103 -34
  77. package/resources/qualifications/access.ts +27 -26
  78. package/resources/qualifications/exam.ts +188 -126
  79. package/resources/qualifications/qualifications.ts +370 -303
  80. package/resources/settings/banner.ts +14 -21
  81. package/resources/settings/config.ts +163 -79
  82. package/resources/settings/perms.ts +151 -0
  83. package/resources/settings/status.ts +533 -0
  84. package/resources/stats/stats.ts +3 -2
  85. package/resources/sync/activity.ts +24 -23
  86. package/resources/sync/data.ts +94 -26
  87. package/resources/timestamp/timestamp.ts +3 -2
  88. package/resources/{centrum/user_unit.ts → tracker/mapping.ts} +44 -44
  89. package/resources/userinfo/user_info.ts +464 -0
  90. package/resources/users/activity.ts +80 -85
  91. package/resources/users/labels.ts +18 -21
  92. package/resources/users/licenses.ts +9 -8
  93. package/resources/users/props.ts +61 -51
  94. package/resources/users/users.ts +100 -78
  95. package/resources/vehicles/activity.ts +231 -0
  96. package/resources/vehicles/props.ts +103 -0
  97. package/resources/vehicles/vehicles.ts +28 -15
  98. package/resources/wiki/access.ts +49 -48
  99. package/resources/wiki/activity.ts +133 -51
  100. package/resources/wiki/page.ts +134 -87
  101. package/services/auth/auth.client.ts +24 -27
  102. package/services/auth/auth.ts +222 -195
  103. package/services/calendar/calendar.client.ts +32 -91
  104. package/services/calendar/calendar.ts +110 -109
  105. package/services/centrum/centrum.client.ts +97 -137
  106. package/services/centrum/centrum.ts +701 -298
  107. package/services/citizens/citizens.client.ts +70 -39
  108. package/services/citizens/citizens.ts +183 -93
  109. package/services/completor/completor.client.ts +16 -35
  110. package/services/completor/completor.ts +65 -44
  111. package/services/documents/collab.client.ts +46 -0
  112. package/services/documents/collab.ts +13 -0
  113. package/services/documents/documents.client.ts +88 -217
  114. package/services/documents/documents.ts +490 -508
  115. package/services/filestore/filestore.client.ts +86 -0
  116. package/services/filestore/filestore.ts +262 -0
  117. package/services/jobs/conduct.client.ts +10 -25
  118. package/services/jobs/conduct.ts +36 -35
  119. package/services/jobs/jobs.client.ts +22 -61
  120. package/services/jobs/jobs.ts +108 -91
  121. package/services/jobs/timeclock.client.ts +8 -19
  122. package/services/jobs/timeclock.ts +47 -46
  123. package/services/livemap/livemap.client.ts +8 -19
  124. package/services/livemap/livemap.ts +290 -119
  125. package/services/mailer/mailer.client.ts +44 -127
  126. package/services/mailer/mailer.ts +213 -216
  127. package/services/notifications/notifications.client.ts +65 -0
  128. package/services/{notificator/notificator.ts → notifications/notifications.ts} +117 -74
  129. package/services/qualifications/qualifications.client.ts +46 -91
  130. package/services/qualifications/qualifications.ts +181 -175
  131. package/services/settings/accounts.client.ts +10 -25
  132. package/services/settings/accounts.ts +64 -41
  133. package/services/settings/config.client.ts +6 -13
  134. package/services/settings/config.ts +8 -7
  135. package/services/settings/cron.client.ts +4 -7
  136. package/services/settings/cron.ts +4 -3
  137. package/services/settings/laws.client.ts +10 -25
  138. package/services/settings/laws.ts +29 -28
  139. package/services/settings/settings.client.ts +57 -103
  140. package/services/settings/settings.ts +190 -607
  141. package/services/settings/system.client.ts +90 -0
  142. package/services/settings/system.ts +618 -0
  143. package/services/stats/stats.client.ts +4 -3
  144. package/services/stats/stats.ts +4 -3
  145. package/services/sync/sync.client.ts +16 -15
  146. package/services/sync/sync.ts +82 -52
  147. package/services/vehicles/vehicles.client.ts +17 -7
  148. package/services/vehicles/vehicles.ts +169 -24
  149. package/services/wiki/collab.client.ts +46 -0
  150. package/services/wiki/collab.ts +13 -0
  151. package/services/wiki/wiki.client.ts +28 -37
  152. package/services/wiki/wiki.ts +93 -63
  153. package/svcs.ts +79 -103
  154. package/resources/centrum/disponents.ts +0 -81
  155. package/resources/filestore/file.ts +0 -204
  156. package/resources/internet/access.ts +0 -358
  157. package/resources/internet/ads.ts +0 -257
  158. package/resources/internet/domain.ts +0 -328
  159. package/resources/internet/page.ts +0 -428
  160. package/resources/internet/search.ts +0 -128
  161. package/resources/livemap/tracker.ts +0 -81
  162. package/services/internet/ads.client.ts +0 -41
  163. package/services/internet/ads.ts +0 -145
  164. package/services/internet/domain.client.ts +0 -109
  165. package/services/internet/domain.ts +0 -658
  166. package/services/internet/internet.client.ts +0 -58
  167. package/services/internet/internet.ts +0 -268
  168. package/services/notificator/notificator.client.ts +0 -76
  169. package/services/settings/filestore.client.ts +0 -75
@@ -0,0 +1,890 @@
1
+ // @generated by protobuf-ts 2.11.1 with parameter force_server_none,long_type_number,optimize_speed,ts_nocheck
2
+ // @generated from protobuf file "resources/clientconfig/clientconfig.proto" (package "resources.clientconfig", syntax proto3)
3
+ // tslint:disable
4
+ // @ts-nocheck
5
+ import type { BinaryWriteOptions } from "@protobuf-ts/runtime";
6
+ import type { IBinaryWriter } from "@protobuf-ts/runtime";
7
+ import { WireType } from "@protobuf-ts/runtime";
8
+ import type { BinaryReadOptions } from "@protobuf-ts/runtime";
9
+ import type { IBinaryReader } from "@protobuf-ts/runtime";
10
+ import { UnknownFieldHandler } from "@protobuf-ts/runtime";
11
+ import type { PartialMessage } from "@protobuf-ts/runtime";
12
+ import { reflectionMergePartial } from "@protobuf-ts/runtime";
13
+ import { MessageType } from "@protobuf-ts/runtime";
14
+ import { BannerMessage } from "../settings/banner";
15
+ /**
16
+ * @generated from protobuf message resources.clientconfig.ClientConfig
17
+ */
18
+ export interface ClientConfig {
19
+ /**
20
+ * @generated from protobuf field: string version = 1
21
+ */
22
+ version: string;
23
+ /**
24
+ * @generated from protobuf field: string default_locale = 2
25
+ */
26
+ defaultLocale: string;
27
+ /**
28
+ * @generated from protobuf field: resources.clientconfig.LoginConfig login = 3
29
+ */
30
+ login?: LoginConfig;
31
+ /**
32
+ * @generated from protobuf field: resources.clientconfig.Discord discord = 4
33
+ */
34
+ discord?: Discord;
35
+ /**
36
+ * @generated from protobuf field: resources.clientconfig.Website website = 5
37
+ */
38
+ website?: Website;
39
+ /**
40
+ * @generated from protobuf field: resources.clientconfig.FeatureGates feature_gates = 6
41
+ */
42
+ featureGates?: FeatureGates;
43
+ /**
44
+ * @generated from protobuf field: resources.clientconfig.Game game = 7
45
+ */
46
+ game?: Game;
47
+ /**
48
+ * @generated from protobuf field: resources.clientconfig.System system = 8
49
+ */
50
+ system?: System;
51
+ /**
52
+ * @generated from protobuf field: resources.clientconfig.Display display = 9
53
+ */
54
+ display?: Display;
55
+ }
56
+ /**
57
+ * @generated from protobuf message resources.clientconfig.LoginConfig
58
+ */
59
+ export interface LoginConfig {
60
+ /**
61
+ * @generated from protobuf field: bool signup_enabled = 1
62
+ */
63
+ signupEnabled: boolean;
64
+ /**
65
+ * @generated from protobuf field: bool last_char_lock = 2
66
+ */
67
+ lastCharLock: boolean;
68
+ /**
69
+ * @generated from protobuf field: repeated resources.clientconfig.ProviderConfig providers = 3
70
+ */
71
+ providers: ProviderConfig[];
72
+ }
73
+ /**
74
+ * @generated from protobuf message resources.clientconfig.ProviderConfig
75
+ */
76
+ export interface ProviderConfig {
77
+ /**
78
+ * @generated from protobuf field: string name = 1
79
+ */
80
+ name: string;
81
+ /**
82
+ * @generated from protobuf field: string label = 2
83
+ */
84
+ label: string;
85
+ /**
86
+ * @generated from protobuf field: optional string icon = 3
87
+ */
88
+ icon?: string;
89
+ /**
90
+ * @generated from protobuf field: string homepage = 4
91
+ */
92
+ homepage: string;
93
+ }
94
+ /**
95
+ * @generated from protobuf message resources.clientconfig.Discord
96
+ */
97
+ export interface Discord {
98
+ /**
99
+ * @generated from protobuf field: bool bot_enabled = 1
100
+ */
101
+ botEnabled: boolean;
102
+ }
103
+ /**
104
+ * @generated from protobuf message resources.clientconfig.Website
105
+ */
106
+ export interface Website {
107
+ /**
108
+ * @generated from protobuf field: resources.clientconfig.Links links = 1
109
+ */
110
+ links?: Links;
111
+ /**
112
+ * @generated from protobuf field: bool stats_page = 2
113
+ */
114
+ statsPage: boolean;
115
+ }
116
+ /**
117
+ * @generated from protobuf message resources.clientconfig.Links
118
+ */
119
+ export interface Links {
120
+ /**
121
+ * @generated from protobuf field: optional string imprint = 1
122
+ */
123
+ imprint?: string;
124
+ /**
125
+ * @generated from protobuf field: optional string privacy_policy = 2
126
+ */
127
+ privacyPolicy?: string;
128
+ }
129
+ /**
130
+ * @generated from protobuf message resources.clientconfig.FeatureGates
131
+ */
132
+ export interface FeatureGates {
133
+ /**
134
+ * @generated from protobuf field: bool image_proxy = 1
135
+ */
136
+ imageProxy: boolean;
137
+ }
138
+ /**
139
+ * @generated from protobuf message resources.clientconfig.Game
140
+ */
141
+ export interface Game {
142
+ /**
143
+ * @generated from protobuf field: string unemployed_job_name = 1
144
+ */
145
+ unemployedJobName: string;
146
+ /**
147
+ * @generated from protobuf field: int32 start_job_grade = 2
148
+ */
149
+ startJobGrade: number;
150
+ }
151
+ /**
152
+ * @generated from protobuf message resources.clientconfig.System
153
+ */
154
+ export interface System {
155
+ /**
156
+ * @generated from protobuf field: bool banner_message_enabled = 1
157
+ */
158
+ bannerMessageEnabled: boolean;
159
+ /**
160
+ * @generated from protobuf field: optional resources.settings.BannerMessage banner_message = 2
161
+ */
162
+ bannerMessage?: BannerMessage;
163
+ /**
164
+ * @generated from protobuf field: resources.clientconfig.OTLPFrontend otlp = 3
165
+ */
166
+ otlp?: OTLPFrontend;
167
+ }
168
+ /**
169
+ * @generated from protobuf message resources.clientconfig.OTLPFrontend
170
+ */
171
+ export interface OTLPFrontend {
172
+ /**
173
+ * @generated from protobuf field: bool enabled = 1
174
+ */
175
+ enabled: boolean;
176
+ /**
177
+ * @generated from protobuf field: string url = 2
178
+ */
179
+ url: string;
180
+ /**
181
+ * @generated from protobuf field: map<string, string> headers = 3
182
+ */
183
+ headers: {
184
+ [key: string]: string;
185
+ };
186
+ }
187
+ /**
188
+ * @generated from protobuf message resources.clientconfig.Display
189
+ */
190
+ export interface Display {
191
+ /**
192
+ * IETF BCP 47 language tag (e.g. "en-US", "de-DE")
193
+ *
194
+ * @generated from protobuf field: optional string intl_locale = 1
195
+ */
196
+ intlLocale?: string;
197
+ /**
198
+ * ISO 4217 currency code (e.g. "USD", "EUR")
199
+ *
200
+ * @generated from protobuf field: string currency_name = 2
201
+ */
202
+ currencyName: string;
203
+ }
204
+ // @generated message type with reflection information, may provide speed optimized methods
205
+ class ClientConfig$Type extends MessageType<ClientConfig> {
206
+ constructor() {
207
+ super("resources.clientconfig.ClientConfig", [
208
+ { no: 1, name: "version", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
209
+ { no: 2, name: "default_locale", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "tagger.tags": "json:\"defaultLocale\"" } },
210
+ { no: 3, name: "login", kind: "message", T: () => LoginConfig },
211
+ { no: 4, name: "discord", kind: "message", T: () => Discord },
212
+ { no: 5, name: "website", kind: "message", T: () => Website },
213
+ { no: 6, name: "feature_gates", kind: "message", T: () => FeatureGates, options: { "tagger.tags": "json:\"featureGates\"" } },
214
+ { no: 7, name: "game", kind: "message", T: () => Game },
215
+ { no: 8, name: "system", kind: "message", T: () => System },
216
+ { no: 9, name: "display", kind: "message", T: () => Display, options: { "tagger.tags": "json:\"display\"" } }
217
+ ]);
218
+ }
219
+ create(value?: PartialMessage<ClientConfig>): ClientConfig {
220
+ const message = globalThis.Object.create((this.messagePrototype!));
221
+ message.version = "";
222
+ message.defaultLocale = "";
223
+ if (value !== undefined)
224
+ reflectionMergePartial<ClientConfig>(this, message, value);
225
+ return message;
226
+ }
227
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ClientConfig): ClientConfig {
228
+ let message = target ?? this.create(), end = reader.pos + length;
229
+ while (reader.pos < end) {
230
+ let [fieldNo, wireType] = reader.tag();
231
+ switch (fieldNo) {
232
+ case /* string version */ 1:
233
+ message.version = reader.string();
234
+ break;
235
+ case /* string default_locale */ 2:
236
+ message.defaultLocale = reader.string();
237
+ break;
238
+ case /* resources.clientconfig.LoginConfig login */ 3:
239
+ message.login = LoginConfig.internalBinaryRead(reader, reader.uint32(), options, message.login);
240
+ break;
241
+ case /* resources.clientconfig.Discord discord */ 4:
242
+ message.discord = Discord.internalBinaryRead(reader, reader.uint32(), options, message.discord);
243
+ break;
244
+ case /* resources.clientconfig.Website website */ 5:
245
+ message.website = Website.internalBinaryRead(reader, reader.uint32(), options, message.website);
246
+ break;
247
+ case /* resources.clientconfig.FeatureGates feature_gates */ 6:
248
+ message.featureGates = FeatureGates.internalBinaryRead(reader, reader.uint32(), options, message.featureGates);
249
+ break;
250
+ case /* resources.clientconfig.Game game */ 7:
251
+ message.game = Game.internalBinaryRead(reader, reader.uint32(), options, message.game);
252
+ break;
253
+ case /* resources.clientconfig.System system */ 8:
254
+ message.system = System.internalBinaryRead(reader, reader.uint32(), options, message.system);
255
+ break;
256
+ case /* resources.clientconfig.Display display */ 9:
257
+ message.display = Display.internalBinaryRead(reader, reader.uint32(), options, message.display);
258
+ break;
259
+ default:
260
+ let u = options.readUnknownField;
261
+ if (u === "throw")
262
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
263
+ let d = reader.skip(wireType);
264
+ if (u !== false)
265
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
266
+ }
267
+ }
268
+ return message;
269
+ }
270
+ internalBinaryWrite(message: ClientConfig, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
271
+ /* string version = 1; */
272
+ if (message.version !== "")
273
+ writer.tag(1, WireType.LengthDelimited).string(message.version);
274
+ /* string default_locale = 2; */
275
+ if (message.defaultLocale !== "")
276
+ writer.tag(2, WireType.LengthDelimited).string(message.defaultLocale);
277
+ /* resources.clientconfig.LoginConfig login = 3; */
278
+ if (message.login)
279
+ LoginConfig.internalBinaryWrite(message.login, writer.tag(3, WireType.LengthDelimited).fork(), options).join();
280
+ /* resources.clientconfig.Discord discord = 4; */
281
+ if (message.discord)
282
+ Discord.internalBinaryWrite(message.discord, writer.tag(4, WireType.LengthDelimited).fork(), options).join();
283
+ /* resources.clientconfig.Website website = 5; */
284
+ if (message.website)
285
+ Website.internalBinaryWrite(message.website, writer.tag(5, WireType.LengthDelimited).fork(), options).join();
286
+ /* resources.clientconfig.FeatureGates feature_gates = 6; */
287
+ if (message.featureGates)
288
+ FeatureGates.internalBinaryWrite(message.featureGates, writer.tag(6, WireType.LengthDelimited).fork(), options).join();
289
+ /* resources.clientconfig.Game game = 7; */
290
+ if (message.game)
291
+ Game.internalBinaryWrite(message.game, writer.tag(7, WireType.LengthDelimited).fork(), options).join();
292
+ /* resources.clientconfig.System system = 8; */
293
+ if (message.system)
294
+ System.internalBinaryWrite(message.system, writer.tag(8, WireType.LengthDelimited).fork(), options).join();
295
+ /* resources.clientconfig.Display display = 9; */
296
+ if (message.display)
297
+ Display.internalBinaryWrite(message.display, writer.tag(9, WireType.LengthDelimited).fork(), options).join();
298
+ let u = options.writeUnknownFields;
299
+ if (u !== false)
300
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
301
+ return writer;
302
+ }
303
+ }
304
+ /**
305
+ * @generated MessageType for protobuf message resources.clientconfig.ClientConfig
306
+ */
307
+ export const ClientConfig = new ClientConfig$Type();
308
+ // @generated message type with reflection information, may provide speed optimized methods
309
+ class LoginConfig$Type extends MessageType<LoginConfig> {
310
+ constructor() {
311
+ super("resources.clientconfig.LoginConfig", [
312
+ { no: 1, name: "signup_enabled", kind: "scalar", T: 8 /*ScalarType.BOOL*/, options: { "tagger.tags": "json:\"signupEnabled\"" } },
313
+ { no: 2, name: "last_char_lock", kind: "scalar", T: 8 /*ScalarType.BOOL*/, options: { "tagger.tags": "json:\"lastCharLock\"" } },
314
+ { no: 3, name: "providers", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => ProviderConfig, options: { "tagger.tags": "json:\"providers\"" } }
315
+ ]);
316
+ }
317
+ create(value?: PartialMessage<LoginConfig>): LoginConfig {
318
+ const message = globalThis.Object.create((this.messagePrototype!));
319
+ message.signupEnabled = false;
320
+ message.lastCharLock = false;
321
+ message.providers = [];
322
+ if (value !== undefined)
323
+ reflectionMergePartial<LoginConfig>(this, message, value);
324
+ return message;
325
+ }
326
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LoginConfig): LoginConfig {
327
+ let message = target ?? this.create(), end = reader.pos + length;
328
+ while (reader.pos < end) {
329
+ let [fieldNo, wireType] = reader.tag();
330
+ switch (fieldNo) {
331
+ case /* bool signup_enabled */ 1:
332
+ message.signupEnabled = reader.bool();
333
+ break;
334
+ case /* bool last_char_lock */ 2:
335
+ message.lastCharLock = reader.bool();
336
+ break;
337
+ case /* repeated resources.clientconfig.ProviderConfig providers */ 3:
338
+ message.providers.push(ProviderConfig.internalBinaryRead(reader, reader.uint32(), options));
339
+ break;
340
+ default:
341
+ let u = options.readUnknownField;
342
+ if (u === "throw")
343
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
344
+ let d = reader.skip(wireType);
345
+ if (u !== false)
346
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
347
+ }
348
+ }
349
+ return message;
350
+ }
351
+ internalBinaryWrite(message: LoginConfig, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
352
+ /* bool signup_enabled = 1; */
353
+ if (message.signupEnabled !== false)
354
+ writer.tag(1, WireType.Varint).bool(message.signupEnabled);
355
+ /* bool last_char_lock = 2; */
356
+ if (message.lastCharLock !== false)
357
+ writer.tag(2, WireType.Varint).bool(message.lastCharLock);
358
+ /* repeated resources.clientconfig.ProviderConfig providers = 3; */
359
+ for (let i = 0; i < message.providers.length; i++)
360
+ ProviderConfig.internalBinaryWrite(message.providers[i], writer.tag(3, WireType.LengthDelimited).fork(), options).join();
361
+ let u = options.writeUnknownFields;
362
+ if (u !== false)
363
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
364
+ return writer;
365
+ }
366
+ }
367
+ /**
368
+ * @generated MessageType for protobuf message resources.clientconfig.LoginConfig
369
+ */
370
+ export const LoginConfig = new LoginConfig$Type();
371
+ // @generated message type with reflection information, may provide speed optimized methods
372
+ class ProviderConfig$Type extends MessageType<ProviderConfig> {
373
+ constructor() {
374
+ super("resources.clientconfig.ProviderConfig", [
375
+ { no: 1, name: "name", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
376
+ { no: 2, name: "label", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
377
+ { no: 3, name: "icon", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/ },
378
+ { no: 4, name: "homepage", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
379
+ ]);
380
+ }
381
+ create(value?: PartialMessage<ProviderConfig>): ProviderConfig {
382
+ const message = globalThis.Object.create((this.messagePrototype!));
383
+ message.name = "";
384
+ message.label = "";
385
+ message.homepage = "";
386
+ if (value !== undefined)
387
+ reflectionMergePartial<ProviderConfig>(this, message, value);
388
+ return message;
389
+ }
390
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ProviderConfig): ProviderConfig {
391
+ let message = target ?? this.create(), end = reader.pos + length;
392
+ while (reader.pos < end) {
393
+ let [fieldNo, wireType] = reader.tag();
394
+ switch (fieldNo) {
395
+ case /* string name */ 1:
396
+ message.name = reader.string();
397
+ break;
398
+ case /* string label */ 2:
399
+ message.label = reader.string();
400
+ break;
401
+ case /* optional string icon */ 3:
402
+ message.icon = reader.string();
403
+ break;
404
+ case /* string homepage */ 4:
405
+ message.homepage = reader.string();
406
+ break;
407
+ default:
408
+ let u = options.readUnknownField;
409
+ if (u === "throw")
410
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
411
+ let d = reader.skip(wireType);
412
+ if (u !== false)
413
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
414
+ }
415
+ }
416
+ return message;
417
+ }
418
+ internalBinaryWrite(message: ProviderConfig, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
419
+ /* string name = 1; */
420
+ if (message.name !== "")
421
+ writer.tag(1, WireType.LengthDelimited).string(message.name);
422
+ /* string label = 2; */
423
+ if (message.label !== "")
424
+ writer.tag(2, WireType.LengthDelimited).string(message.label);
425
+ /* optional string icon = 3; */
426
+ if (message.icon !== undefined)
427
+ writer.tag(3, WireType.LengthDelimited).string(message.icon);
428
+ /* string homepage = 4; */
429
+ if (message.homepage !== "")
430
+ writer.tag(4, WireType.LengthDelimited).string(message.homepage);
431
+ let u = options.writeUnknownFields;
432
+ if (u !== false)
433
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
434
+ return writer;
435
+ }
436
+ }
437
+ /**
438
+ * @generated MessageType for protobuf message resources.clientconfig.ProviderConfig
439
+ */
440
+ export const ProviderConfig = new ProviderConfig$Type();
441
+ // @generated message type with reflection information, may provide speed optimized methods
442
+ class Discord$Type extends MessageType<Discord> {
443
+ constructor() {
444
+ super("resources.clientconfig.Discord", [
445
+ { no: 1, name: "bot_enabled", kind: "scalar", T: 8 /*ScalarType.BOOL*/, options: { "tagger.tags": "json:\"botEnabled\"" } }
446
+ ]);
447
+ }
448
+ create(value?: PartialMessage<Discord>): Discord {
449
+ const message = globalThis.Object.create((this.messagePrototype!));
450
+ message.botEnabled = false;
451
+ if (value !== undefined)
452
+ reflectionMergePartial<Discord>(this, message, value);
453
+ return message;
454
+ }
455
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Discord): Discord {
456
+ let message = target ?? this.create(), end = reader.pos + length;
457
+ while (reader.pos < end) {
458
+ let [fieldNo, wireType] = reader.tag();
459
+ switch (fieldNo) {
460
+ case /* bool bot_enabled */ 1:
461
+ message.botEnabled = reader.bool();
462
+ break;
463
+ default:
464
+ let u = options.readUnknownField;
465
+ if (u === "throw")
466
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
467
+ let d = reader.skip(wireType);
468
+ if (u !== false)
469
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
470
+ }
471
+ }
472
+ return message;
473
+ }
474
+ internalBinaryWrite(message: Discord, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
475
+ /* bool bot_enabled = 1; */
476
+ if (message.botEnabled !== false)
477
+ writer.tag(1, WireType.Varint).bool(message.botEnabled);
478
+ let u = options.writeUnknownFields;
479
+ if (u !== false)
480
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
481
+ return writer;
482
+ }
483
+ }
484
+ /**
485
+ * @generated MessageType for protobuf message resources.clientconfig.Discord
486
+ */
487
+ export const Discord = new Discord$Type();
488
+ // @generated message type with reflection information, may provide speed optimized methods
489
+ class Website$Type extends MessageType<Website> {
490
+ constructor() {
491
+ super("resources.clientconfig.Website", [
492
+ { no: 1, name: "links", kind: "message", T: () => Links },
493
+ { no: 2, name: "stats_page", kind: "scalar", T: 8 /*ScalarType.BOOL*/, options: { "tagger.tags": "json:\"statsPage\"" } }
494
+ ]);
495
+ }
496
+ create(value?: PartialMessage<Website>): Website {
497
+ const message = globalThis.Object.create((this.messagePrototype!));
498
+ message.statsPage = false;
499
+ if (value !== undefined)
500
+ reflectionMergePartial<Website>(this, message, value);
501
+ return message;
502
+ }
503
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Website): Website {
504
+ let message = target ?? this.create(), end = reader.pos + length;
505
+ while (reader.pos < end) {
506
+ let [fieldNo, wireType] = reader.tag();
507
+ switch (fieldNo) {
508
+ case /* resources.clientconfig.Links links */ 1:
509
+ message.links = Links.internalBinaryRead(reader, reader.uint32(), options, message.links);
510
+ break;
511
+ case /* bool stats_page */ 2:
512
+ message.statsPage = reader.bool();
513
+ break;
514
+ default:
515
+ let u = options.readUnknownField;
516
+ if (u === "throw")
517
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
518
+ let d = reader.skip(wireType);
519
+ if (u !== false)
520
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
521
+ }
522
+ }
523
+ return message;
524
+ }
525
+ internalBinaryWrite(message: Website, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
526
+ /* resources.clientconfig.Links links = 1; */
527
+ if (message.links)
528
+ Links.internalBinaryWrite(message.links, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
529
+ /* bool stats_page = 2; */
530
+ if (message.statsPage !== false)
531
+ writer.tag(2, WireType.Varint).bool(message.statsPage);
532
+ let u = options.writeUnknownFields;
533
+ if (u !== false)
534
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
535
+ return writer;
536
+ }
537
+ }
538
+ /**
539
+ * @generated MessageType for protobuf message resources.clientconfig.Website
540
+ */
541
+ export const Website = new Website$Type();
542
+ // @generated message type with reflection information, may provide speed optimized methods
543
+ class Links$Type extends MessageType<Links> {
544
+ constructor() {
545
+ super("resources.clientconfig.Links", [
546
+ { no: 1, name: "imprint", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/ },
547
+ { no: 2, name: "privacy_policy", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "tagger.tags": "json:\"privacyPolicy\"" } }
548
+ ]);
549
+ }
550
+ create(value?: PartialMessage<Links>): Links {
551
+ const message = globalThis.Object.create((this.messagePrototype!));
552
+ if (value !== undefined)
553
+ reflectionMergePartial<Links>(this, message, value);
554
+ return message;
555
+ }
556
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Links): Links {
557
+ let message = target ?? this.create(), end = reader.pos + length;
558
+ while (reader.pos < end) {
559
+ let [fieldNo, wireType] = reader.tag();
560
+ switch (fieldNo) {
561
+ case /* optional string imprint */ 1:
562
+ message.imprint = reader.string();
563
+ break;
564
+ case /* optional string privacy_policy */ 2:
565
+ message.privacyPolicy = reader.string();
566
+ break;
567
+ default:
568
+ let u = options.readUnknownField;
569
+ if (u === "throw")
570
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
571
+ let d = reader.skip(wireType);
572
+ if (u !== false)
573
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
574
+ }
575
+ }
576
+ return message;
577
+ }
578
+ internalBinaryWrite(message: Links, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
579
+ /* optional string imprint = 1; */
580
+ if (message.imprint !== undefined)
581
+ writer.tag(1, WireType.LengthDelimited).string(message.imprint);
582
+ /* optional string privacy_policy = 2; */
583
+ if (message.privacyPolicy !== undefined)
584
+ writer.tag(2, WireType.LengthDelimited).string(message.privacyPolicy);
585
+ let u = options.writeUnknownFields;
586
+ if (u !== false)
587
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
588
+ return writer;
589
+ }
590
+ }
591
+ /**
592
+ * @generated MessageType for protobuf message resources.clientconfig.Links
593
+ */
594
+ export const Links = new Links$Type();
595
+ // @generated message type with reflection information, may provide speed optimized methods
596
+ class FeatureGates$Type extends MessageType<FeatureGates> {
597
+ constructor() {
598
+ super("resources.clientconfig.FeatureGates", [
599
+ { no: 1, name: "image_proxy", kind: "scalar", T: 8 /*ScalarType.BOOL*/, options: { "tagger.tags": "json:\"imageProxy\"" } }
600
+ ]);
601
+ }
602
+ create(value?: PartialMessage<FeatureGates>): FeatureGates {
603
+ const message = globalThis.Object.create((this.messagePrototype!));
604
+ message.imageProxy = false;
605
+ if (value !== undefined)
606
+ reflectionMergePartial<FeatureGates>(this, message, value);
607
+ return message;
608
+ }
609
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FeatureGates): FeatureGates {
610
+ let message = target ?? this.create(), end = reader.pos + length;
611
+ while (reader.pos < end) {
612
+ let [fieldNo, wireType] = reader.tag();
613
+ switch (fieldNo) {
614
+ case /* bool image_proxy */ 1:
615
+ message.imageProxy = reader.bool();
616
+ break;
617
+ default:
618
+ let u = options.readUnknownField;
619
+ if (u === "throw")
620
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
621
+ let d = reader.skip(wireType);
622
+ if (u !== false)
623
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
624
+ }
625
+ }
626
+ return message;
627
+ }
628
+ internalBinaryWrite(message: FeatureGates, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
629
+ /* bool image_proxy = 1; */
630
+ if (message.imageProxy !== false)
631
+ writer.tag(1, WireType.Varint).bool(message.imageProxy);
632
+ let u = options.writeUnknownFields;
633
+ if (u !== false)
634
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
635
+ return writer;
636
+ }
637
+ }
638
+ /**
639
+ * @generated MessageType for protobuf message resources.clientconfig.FeatureGates
640
+ */
641
+ export const FeatureGates = new FeatureGates$Type();
642
+ // @generated message type with reflection information, may provide speed optimized methods
643
+ class Game$Type extends MessageType<Game> {
644
+ constructor() {
645
+ super("resources.clientconfig.Game", [
646
+ { no: 1, name: "unemployed_job_name", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "tagger.tags": "json:\"unemployedJobName\"" } },
647
+ { no: 2, name: "start_job_grade", kind: "scalar", T: 5 /*ScalarType.INT32*/, options: { "tagger.tags": "json:\"startJobGrade\"" } }
648
+ ]);
649
+ }
650
+ create(value?: PartialMessage<Game>): Game {
651
+ const message = globalThis.Object.create((this.messagePrototype!));
652
+ message.unemployedJobName = "";
653
+ message.startJobGrade = 0;
654
+ if (value !== undefined)
655
+ reflectionMergePartial<Game>(this, message, value);
656
+ return message;
657
+ }
658
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Game): Game {
659
+ let message = target ?? this.create(), end = reader.pos + length;
660
+ while (reader.pos < end) {
661
+ let [fieldNo, wireType] = reader.tag();
662
+ switch (fieldNo) {
663
+ case /* string unemployed_job_name */ 1:
664
+ message.unemployedJobName = reader.string();
665
+ break;
666
+ case /* int32 start_job_grade */ 2:
667
+ message.startJobGrade = reader.int32();
668
+ break;
669
+ default:
670
+ let u = options.readUnknownField;
671
+ if (u === "throw")
672
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
673
+ let d = reader.skip(wireType);
674
+ if (u !== false)
675
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
676
+ }
677
+ }
678
+ return message;
679
+ }
680
+ internalBinaryWrite(message: Game, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
681
+ /* string unemployed_job_name = 1; */
682
+ if (message.unemployedJobName !== "")
683
+ writer.tag(1, WireType.LengthDelimited).string(message.unemployedJobName);
684
+ /* int32 start_job_grade = 2; */
685
+ if (message.startJobGrade !== 0)
686
+ writer.tag(2, WireType.Varint).int32(message.startJobGrade);
687
+ let u = options.writeUnknownFields;
688
+ if (u !== false)
689
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
690
+ return writer;
691
+ }
692
+ }
693
+ /**
694
+ * @generated MessageType for protobuf message resources.clientconfig.Game
695
+ */
696
+ export const Game = new Game$Type();
697
+ // @generated message type with reflection information, may provide speed optimized methods
698
+ class System$Type extends MessageType<System> {
699
+ constructor() {
700
+ super("resources.clientconfig.System", [
701
+ { no: 1, name: "banner_message_enabled", kind: "scalar", T: 8 /*ScalarType.BOOL*/, options: { "tagger.tags": "json:\"bannerMessageEnabled\"" } },
702
+ { no: 2, name: "banner_message", kind: "message", T: () => BannerMessage, options: { "tagger.tags": "json:\"bannerMessages\"" } },
703
+ { no: 3, name: "otlp", kind: "message", T: () => OTLPFrontend }
704
+ ]);
705
+ }
706
+ create(value?: PartialMessage<System>): System {
707
+ const message = globalThis.Object.create((this.messagePrototype!));
708
+ message.bannerMessageEnabled = false;
709
+ if (value !== undefined)
710
+ reflectionMergePartial<System>(this, message, value);
711
+ return message;
712
+ }
713
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: System): System {
714
+ let message = target ?? this.create(), end = reader.pos + length;
715
+ while (reader.pos < end) {
716
+ let [fieldNo, wireType] = reader.tag();
717
+ switch (fieldNo) {
718
+ case /* bool banner_message_enabled */ 1:
719
+ message.bannerMessageEnabled = reader.bool();
720
+ break;
721
+ case /* optional resources.settings.BannerMessage banner_message */ 2:
722
+ message.bannerMessage = BannerMessage.internalBinaryRead(reader, reader.uint32(), options, message.bannerMessage);
723
+ break;
724
+ case /* resources.clientconfig.OTLPFrontend otlp */ 3:
725
+ message.otlp = OTLPFrontend.internalBinaryRead(reader, reader.uint32(), options, message.otlp);
726
+ break;
727
+ default:
728
+ let u = options.readUnknownField;
729
+ if (u === "throw")
730
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
731
+ let d = reader.skip(wireType);
732
+ if (u !== false)
733
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
734
+ }
735
+ }
736
+ return message;
737
+ }
738
+ internalBinaryWrite(message: System, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
739
+ /* bool banner_message_enabled = 1; */
740
+ if (message.bannerMessageEnabled !== false)
741
+ writer.tag(1, WireType.Varint).bool(message.bannerMessageEnabled);
742
+ /* optional resources.settings.BannerMessage banner_message = 2; */
743
+ if (message.bannerMessage)
744
+ BannerMessage.internalBinaryWrite(message.bannerMessage, writer.tag(2, WireType.LengthDelimited).fork(), options).join();
745
+ /* resources.clientconfig.OTLPFrontend otlp = 3; */
746
+ if (message.otlp)
747
+ OTLPFrontend.internalBinaryWrite(message.otlp, writer.tag(3, WireType.LengthDelimited).fork(), options).join();
748
+ let u = options.writeUnknownFields;
749
+ if (u !== false)
750
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
751
+ return writer;
752
+ }
753
+ }
754
+ /**
755
+ * @generated MessageType for protobuf message resources.clientconfig.System
756
+ */
757
+ export const System = new System$Type();
758
+ // @generated message type with reflection information, may provide speed optimized methods
759
+ class OTLPFrontend$Type extends MessageType<OTLPFrontend> {
760
+ constructor() {
761
+ super("resources.clientconfig.OTLPFrontend", [
762
+ { no: 1, name: "enabled", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
763
+ { no: 2, name: "url", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
764
+ { no: 3, name: "headers", kind: "map", K: 9 /*ScalarType.STRING*/, V: { kind: "scalar", T: 9 /*ScalarType.STRING*/ } }
765
+ ]);
766
+ }
767
+ create(value?: PartialMessage<OTLPFrontend>): OTLPFrontend {
768
+ const message = globalThis.Object.create((this.messagePrototype!));
769
+ message.enabled = false;
770
+ message.url = "";
771
+ message.headers = {};
772
+ if (value !== undefined)
773
+ reflectionMergePartial<OTLPFrontend>(this, message, value);
774
+ return message;
775
+ }
776
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: OTLPFrontend): OTLPFrontend {
777
+ let message = target ?? this.create(), end = reader.pos + length;
778
+ while (reader.pos < end) {
779
+ let [fieldNo, wireType] = reader.tag();
780
+ switch (fieldNo) {
781
+ case /* bool enabled */ 1:
782
+ message.enabled = reader.bool();
783
+ break;
784
+ case /* string url */ 2:
785
+ message.url = reader.string();
786
+ break;
787
+ case /* map<string, string> headers */ 3:
788
+ this.binaryReadMap3(message.headers, reader, options);
789
+ break;
790
+ default:
791
+ let u = options.readUnknownField;
792
+ if (u === "throw")
793
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
794
+ let d = reader.skip(wireType);
795
+ if (u !== false)
796
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
797
+ }
798
+ }
799
+ return message;
800
+ }
801
+ private binaryReadMap3(map: OTLPFrontend["headers"], reader: IBinaryReader, options: BinaryReadOptions): void {
802
+ let len = reader.uint32(), end = reader.pos + len, key: keyof OTLPFrontend["headers"] | undefined, val: OTLPFrontend["headers"][any] | undefined;
803
+ while (reader.pos < end) {
804
+ let [fieldNo, wireType] = reader.tag();
805
+ switch (fieldNo) {
806
+ case 1:
807
+ key = reader.string();
808
+ break;
809
+ case 2:
810
+ val = reader.string();
811
+ break;
812
+ default: throw new globalThis.Error("unknown map entry field for resources.clientconfig.OTLPFrontend.headers");
813
+ }
814
+ }
815
+ map[key ?? ""] = val ?? "";
816
+ }
817
+ internalBinaryWrite(message: OTLPFrontend, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
818
+ /* bool enabled = 1; */
819
+ if (message.enabled !== false)
820
+ writer.tag(1, WireType.Varint).bool(message.enabled);
821
+ /* string url = 2; */
822
+ if (message.url !== "")
823
+ writer.tag(2, WireType.LengthDelimited).string(message.url);
824
+ /* map<string, string> headers = 3; */
825
+ for (let k of globalThis.Object.keys(message.headers))
826
+ writer.tag(3, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k).tag(2, WireType.LengthDelimited).string(message.headers[k]).join();
827
+ let u = options.writeUnknownFields;
828
+ if (u !== false)
829
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
830
+ return writer;
831
+ }
832
+ }
833
+ /**
834
+ * @generated MessageType for protobuf message resources.clientconfig.OTLPFrontend
835
+ */
836
+ export const OTLPFrontend = new OTLPFrontend$Type();
837
+ // @generated message type with reflection information, may provide speed optimized methods
838
+ class Display$Type extends MessageType<Display> {
839
+ constructor() {
840
+ super("resources.clientconfig.Display", [
841
+ { no: 1, name: "intl_locale", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "tagger.tags": "json:\"intlLocale\"" } },
842
+ { no: 2, name: "currency_name", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "tagger.tags": "json:\"currencyName\"" } }
843
+ ]);
844
+ }
845
+ create(value?: PartialMessage<Display>): Display {
846
+ const message = globalThis.Object.create((this.messagePrototype!));
847
+ message.currencyName = "";
848
+ if (value !== undefined)
849
+ reflectionMergePartial<Display>(this, message, value);
850
+ return message;
851
+ }
852
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Display): Display {
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 /* optional string intl_locale */ 1:
858
+ message.intlLocale = reader.string();
859
+ break;
860
+ case /* string currency_name */ 2:
861
+ message.currencyName = reader.string();
862
+ break;
863
+ default:
864
+ let u = options.readUnknownField;
865
+ if (u === "throw")
866
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
867
+ let d = reader.skip(wireType);
868
+ if (u !== false)
869
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
870
+ }
871
+ }
872
+ return message;
873
+ }
874
+ internalBinaryWrite(message: Display, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
875
+ /* optional string intl_locale = 1; */
876
+ if (message.intlLocale !== undefined)
877
+ writer.tag(1, WireType.LengthDelimited).string(message.intlLocale);
878
+ /* string currency_name = 2; */
879
+ if (message.currencyName !== "")
880
+ writer.tag(2, WireType.LengthDelimited).string(message.currencyName);
881
+ let u = options.writeUnknownFields;
882
+ if (u !== false)
883
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
884
+ return writer;
885
+ }
886
+ }
887
+ /**
888
+ * @generated MessageType for protobuf message resources.clientconfig.Display
889
+ */
890
+ export const Display = new Display$Type();