@fivenet-app/gen 2025.5.3 → 2026.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (195) hide show
  1. package/README.md +1 -1
  2. package/buf/validate/validate.ts +11301 -0
  3. package/clients.ts +193 -154
  4. package/codegen/dbscanner/dbscanner.ts +91 -0
  5. package/codegen/perms/perms.ts +287 -0
  6. package/codegen/sanitizer/sanitizer.ts +113 -0
  7. package/google/protobuf/any.ts +4 -3
  8. package/google/protobuf/descriptor.ts +393 -239
  9. package/google/protobuf/duration.ts +4 -3
  10. package/google/protobuf/struct.ts +485 -0
  11. package/google/protobuf/timestamp.ts +4 -3
  12. package/package.json +3 -3
  13. package/perms.ts +217 -160
  14. package/resources/accounts/accounts.ts +115 -47
  15. package/resources/accounts/{oauth2.ts → oauth2/oauth2.ts} +33 -32
  16. package/resources/audit/audit.ts +172 -53
  17. package/resources/calendar/{access.ts → access/access.ts} +72 -71
  18. package/resources/calendar/calendar.ts +79 -543
  19. package/resources/calendar/entries/entries.ts +474 -0
  20. package/resources/centrum/access/access.ts +345 -0
  21. package/resources/centrum/dispatchers/dispatchers.ts +149 -0
  22. package/resources/centrum/{dispatches.ts → dispatches/dispatches.ts} +267 -164
  23. package/resources/centrum/joblist.ts +136 -0
  24. package/resources/centrum/settings/settings.ts +657 -0
  25. package/resources/centrum/{units_access.ts → units/access/access.ts} +78 -79
  26. package/resources/centrum/{units.ts → units/units.ts} +230 -130
  27. package/resources/clientconfig/clientconfig.ts +1015 -0
  28. package/resources/collab/collab.ts +805 -0
  29. package/resources/common/content/content.ts +169 -63
  30. package/resources/common/content/diff_activity.ts +267 -0
  31. package/resources/common/database/database.ts +92 -35
  32. package/resources/common/error.ts +17 -16
  33. package/resources/common/i18n.ts +20 -24
  34. package/resources/common/id_mapping.ts +69 -0
  35. package/resources/common/tests/objects.ts +4 -3
  36. package/resources/{common/cron → cron}/cron.ts +77 -65
  37. package/resources/discord/discord.ts +209 -0
  38. package/resources/documents/{access.ts → access/access.ts} +75 -76
  39. package/resources/documents/{activity.ts → activity/activity.ts} +349 -124
  40. package/resources/documents/approval/approval.ts +945 -0
  41. package/resources/documents/{category.ts → category/category.ts} +25 -32
  42. package/resources/documents/{comment.ts → comment/comment.ts} +35 -34
  43. package/resources/documents/data/data.ts +303 -0
  44. package/resources/documents/documents.ts +374 -686
  45. package/resources/{common/uuid.ts → documents/forms/forms.ts} +22 -21
  46. package/resources/documents/pins/pins.ts +127 -0
  47. package/resources/documents/references/references.ts +187 -0
  48. package/resources/documents/relations/relations.ts +184 -0
  49. package/resources/documents/{requests.ts → requests/requests.ts} +45 -44
  50. package/resources/documents/stamps/stamp.ts +355 -0
  51. package/resources/documents/{templates.ts → templates/templates.ts} +524 -199
  52. package/resources/documents/workflow/workflow.ts +600 -0
  53. package/resources/file/file.ts +152 -0
  54. package/{services/settings → resources/file}/filestore.ts +179 -165
  55. package/resources/file/meta.ts +148 -0
  56. package/resources/{common/grpcws → grpcws}/grpcws.ts +66 -65
  57. package/resources/jobs/{activity.ts → colleagues/activity/activity.ts} +83 -86
  58. package/resources/jobs/{colleagues.ts → colleagues/colleagues.ts} +76 -80
  59. package/resources/jobs/{conduct.ts → conduct/conduct.ts} +86 -62
  60. package/resources/jobs/jobs.ts +14 -13
  61. package/resources/jobs/{labels.ts → labels/labels.ts} +36 -37
  62. package/resources/jobs/{job_props.ts → props/props.ts} +63 -65
  63. package/resources/jobs/{job_settings.ts → settings/settings.ts} +89 -96
  64. package/resources/jobs/{timeclock.ts → timeclock/timeclock.ts} +42 -41
  65. package/resources/laws/laws.ts +40 -49
  66. package/resources/livemap/coords.ts +81 -0
  67. package/resources/livemap/heatmap/heatmap.ts +93 -0
  68. package/resources/livemap/{livemap.ts → markers/marker_marker.ts} +68 -335
  69. package/resources/livemap/markers/user_marker.ts +377 -0
  70. package/resources/mailer/{access.ts → access/access.ts} +119 -118
  71. package/resources/mailer/{email.ts → emails/email.ts} +38 -41
  72. package/resources/mailer/{events.ts → events/events.ts} +44 -43
  73. package/resources/mailer/{message.ts → messages/message.ts} +69 -74
  74. package/resources/mailer/{settings.ts → settings/settings.ts} +23 -25
  75. package/resources/mailer/{template.ts → templates/template.ts} +37 -40
  76. package/resources/mailer/{thread.ts → threads/thread.ts} +93 -94
  77. package/resources/notifications/clientview/clientview.ts +239 -0
  78. package/resources/notifications/{events.ts → events/events.ts} +67 -130
  79. package/resources/notifications/notifications.ts +55 -60
  80. package/resources/permissions/{attributes.ts → attributes/attributes.ts} +94 -237
  81. package/resources/permissions/events/events.ts +149 -0
  82. package/resources/permissions/{permissions.ts → permissions/permissions.ts} +127 -47
  83. package/resources/qualifications/{access.ts → access/access.ts} +43 -42
  84. package/resources/qualifications/{exam.ts → exam/exam.ts} +419 -229
  85. package/resources/qualifications/qualifications.ts +327 -388
  86. package/resources/settings/banner.ts +14 -21
  87. package/resources/settings/config.ts +663 -79
  88. package/resources/settings/data.ts +90 -0
  89. package/resources/settings/perms.ts +151 -0
  90. package/resources/settings/status.ts +533 -0
  91. package/resources/stats/stats.ts +382 -2
  92. package/resources/sync/{activity.ts → activity/activity.ts} +126 -46
  93. package/resources/sync/data/data.ts +1001 -0
  94. package/resources/sync/data/v2/data.ts +220 -0
  95. package/resources/timestamp/timestamp.ts +3 -2
  96. package/resources/{centrum/user_unit.ts → tracker/mapping.ts} +44 -44
  97. package/resources/userinfo/userinfo.ts +442 -0
  98. package/resources/users/{activity.ts → activity/activity.ts} +182 -166
  99. package/resources/users/{labels.ts → labels/labels.ts} +27 -30
  100. package/resources/users/{licenses.ts → licenses/licenses.ts} +18 -17
  101. package/resources/users/{props.ts → props/props.ts} +109 -77
  102. package/resources/users/short/user.ts +184 -0
  103. package/resources/users/user.ts +528 -0
  104. package/resources/vehicles/activity/activity.ts +231 -0
  105. package/resources/vehicles/props/props.ts +125 -0
  106. package/resources/vehicles/vehicles.ts +43 -18
  107. package/resources/wiki/{access.ts → access/access.ts} +72 -71
  108. package/resources/wiki/{activity.ts → activity/activity.ts} +218 -102
  109. package/resources/wiki/page.ts +164 -93
  110. package/services/auth/auth.client.ts +45 -35
  111. package/services/auth/auth.ts +498 -288
  112. package/services/calendar/calendar.client.ts +32 -91
  113. package/services/calendar/calendar.ts +157 -134
  114. package/services/centrum/centrum.client.ts +97 -137
  115. package/services/centrum/centrum.ts +755 -352
  116. package/services/citizens/citizens.client.ts +70 -39
  117. package/services/citizens/citizens.ts +226 -112
  118. package/services/completor/completor.client.ts +16 -35
  119. package/services/completor/completor.ts +95 -54
  120. package/services/documents/approval.client.ts +188 -0
  121. package/services/documents/approval.ts +1776 -0
  122. package/services/documents/collab.client.ts +46 -0
  123. package/services/documents/collab.ts +13 -0
  124. package/services/documents/documents.client.ts +88 -217
  125. package/services/documents/documents.ts +579 -619
  126. package/services/documents/forms.client.ts +51 -0
  127. package/services/documents/forms.ts +232 -0
  128. package/services/documents/stamps.client.ts +77 -0
  129. package/services/documents/stamps.ts +481 -0
  130. package/services/documents/stats.client.ts +38 -0
  131. package/services/documents/stats.ts +245 -0
  132. package/services/filestore/filestore.client.ts +86 -0
  133. package/services/filestore/filestore.ts +262 -0
  134. package/services/jobs/conduct.client.ts +40 -28
  135. package/services/jobs/conduct.ts +183 -56
  136. package/services/jobs/jobs.client.ts +22 -61
  137. package/services/jobs/jobs.ts +138 -121
  138. package/services/jobs/stats.client.ts +38 -0
  139. package/services/jobs/stats.ts +207 -0
  140. package/services/jobs/timeclock.client.ts +8 -19
  141. package/services/jobs/timeclock.ts +76 -75
  142. package/services/livemap/livemap.client.ts +8 -19
  143. package/services/livemap/livemap.ts +297 -126
  144. package/services/mailer/mailer.client.ts +44 -127
  145. package/services/mailer/mailer.ts +266 -269
  146. package/services/notifications/notifications.client.ts +65 -0
  147. package/services/{notificator/notificator.ts → notifications/notifications.ts} +126 -83
  148. package/services/qualifications/qualifications.client.ts +46 -91
  149. package/services/qualifications/qualifications.ts +250 -209
  150. package/services/settings/accounts.client.ts +31 -33
  151. package/services/settings/accounts.ts +251 -67
  152. package/services/settings/config.client.ts +6 -13
  153. package/services/settings/config.ts +8 -7
  154. package/services/settings/cron.client.ts +4 -7
  155. package/services/settings/cron.ts +7 -6
  156. package/services/settings/laws.client.ts +10 -25
  157. package/services/settings/laws.ts +30 -29
  158. package/services/settings/settings.client.ts +57 -103
  159. package/services/settings/settings.ts +237 -633
  160. package/services/settings/system.client.ts +103 -0
  161. package/services/settings/system.ts +718 -0
  162. package/services/stats/stats.client.ts +9 -8
  163. package/services/stats/stats.ts +27 -26
  164. package/services/sync/sync.client.ts +16 -15
  165. package/services/sync/sync.ts +174 -97
  166. package/services/sync/v2/sync.client.ts +331 -0
  167. package/services/sync/v2/sync.ts +1766 -0
  168. package/services/vehicles/vehicles.client.ts +17 -7
  169. package/services/vehicles/vehicles.ts +170 -25
  170. package/services/wiki/collab.client.ts +46 -0
  171. package/services/wiki/collab.ts +13 -0
  172. package/services/wiki/wiki.client.ts +28 -37
  173. package/services/wiki/wiki.ts +97 -67
  174. package/svcs.ts +174 -106
  175. package/resources/centrum/attributes.ts +0 -186
  176. package/resources/centrum/disponents.ts +0 -81
  177. package/resources/centrum/settings.ts +0 -307
  178. package/resources/documents/workflow.ts +0 -351
  179. package/resources/filestore/file.ts +0 -204
  180. package/resources/internet/access.ts +0 -358
  181. package/resources/internet/ads.ts +0 -257
  182. package/resources/internet/domain.ts +0 -328
  183. package/resources/internet/page.ts +0 -428
  184. package/resources/internet/search.ts +0 -128
  185. package/resources/livemap/tracker.ts +0 -81
  186. package/resources/sync/data.ts +0 -587
  187. package/resources/users/users.ts +0 -435
  188. package/services/internet/ads.client.ts +0 -41
  189. package/services/internet/ads.ts +0 -145
  190. package/services/internet/domain.client.ts +0 -109
  191. package/services/internet/domain.ts +0 -658
  192. package/services/internet/internet.client.ts +0 -58
  193. package/services/internet/internet.ts +0 -268
  194. package/services/notificator/notificator.client.ts +0 -76
  195. package/services/settings/filestore.client.ts +0 -75
@@ -0,0 +1,1001 @@
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/sync/data/data.proto" (package "resources.sync.data", 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 { PhoneNumber } from "../../users/user";
15
+ import { UserJob } from "../../users/user";
16
+ import { Timestamp } from "../../timestamp/timestamp";
17
+ import { AccountUpdate } from "../activity/activity";
18
+ import { Coords } from "../../livemap/coords";
19
+ import { License } from "../../users/licenses/licenses";
20
+ import { Vehicle } from "../../vehicles/vehicles";
21
+ import { Job } from "../../jobs/jobs";
22
+ /**
23
+ * @generated from protobuf message resources.sync.data.DataStatus
24
+ */
25
+ export interface DataStatus {
26
+ /**
27
+ * @generated from protobuf field: int64 count = 1
28
+ */
29
+ count: number;
30
+ }
31
+ /**
32
+ * @generated from protobuf message resources.sync.data.DataJobs
33
+ */
34
+ export interface DataJobs {
35
+ /**
36
+ * @generated from protobuf field: repeated resources.jobs.Job jobs = 1
37
+ */
38
+ jobs: Job[];
39
+ }
40
+ /**
41
+ * @generated from protobuf message resources.sync.data.DataUsers
42
+ */
43
+ export interface DataUsers {
44
+ /**
45
+ * @generated from protobuf field: repeated resources.sync.data.DataUser users = 1
46
+ */
47
+ users: DataUser[];
48
+ }
49
+ /**
50
+ * @generated from protobuf message resources.sync.data.DataVehicles
51
+ */
52
+ export interface DataVehicles {
53
+ /**
54
+ * @generated from protobuf field: repeated resources.vehicles.Vehicle vehicles = 1
55
+ */
56
+ vehicles: Vehicle[];
57
+ }
58
+ /**
59
+ * @generated from protobuf message resources.sync.data.DataLicenses
60
+ */
61
+ export interface DataLicenses {
62
+ /**
63
+ * @generated from protobuf field: repeated resources.users.licenses.License licenses = 1
64
+ */
65
+ licenses: License[];
66
+ }
67
+ /**
68
+ * @generated from protobuf message resources.sync.data.DataUserLocations
69
+ */
70
+ export interface DataUserLocations {
71
+ /**
72
+ * @generated from protobuf field: repeated resources.sync.data.CitizenLocations users = 1
73
+ */
74
+ users: CitizenLocations[];
75
+ /**
76
+ * @generated from protobuf field: optional bool clear_all = 2
77
+ */
78
+ clearAll?: boolean;
79
+ }
80
+ /**
81
+ * @generated from protobuf message resources.sync.data.CitizenLocations
82
+ */
83
+ export interface CitizenLocations {
84
+ /**
85
+ * @generated from protobuf field: int32 user_id = 1
86
+ */
87
+ userId: number;
88
+ /**
89
+ * @generated from protobuf field: string job = 2
90
+ */
91
+ job: string;
92
+ /**
93
+ * @generated from protobuf field: optional int32 job_grade = 6
94
+ */
95
+ jobGrade?: number;
96
+ /**
97
+ * @generated from protobuf field: resources.livemap.Coords coords = 3
98
+ */
99
+ coords?: Coords;
100
+ /**
101
+ * @generated from protobuf field: bool hidden = 4
102
+ */
103
+ hidden: boolean;
104
+ /**
105
+ * @generated from protobuf field: bool remove = 5
106
+ */
107
+ remove: boolean;
108
+ }
109
+ /**
110
+ * @generated from protobuf message resources.sync.data.DeleteUsers
111
+ */
112
+ export interface DeleteUsers {
113
+ /**
114
+ * @generated from protobuf field: repeated int32 user_ids = 1
115
+ */
116
+ userIds: number[];
117
+ }
118
+ /**
119
+ * @generated from protobuf message resources.sync.data.DeleteVehicles
120
+ */
121
+ export interface DeleteVehicles {
122
+ /**
123
+ * @generated from protobuf field: repeated string plates = 1
124
+ */
125
+ plates: string[];
126
+ }
127
+ /**
128
+ * @generated from protobuf message resources.sync.data.LastCharID
129
+ */
130
+ export interface LastCharID {
131
+ /**
132
+ * @generated from protobuf field: string identifier = 1
133
+ */
134
+ identifier: string;
135
+ /**
136
+ * @generated from protobuf field: optional int32 last_char_id = 2
137
+ */
138
+ lastCharId?: number;
139
+ }
140
+ /**
141
+ * @generated from protobuf message resources.sync.data.DataAccounts
142
+ */
143
+ export interface DataAccounts {
144
+ /**
145
+ * @generated from protobuf field: repeated resources.sync.activity.AccountUpdate account_updates = 1
146
+ */
147
+ accountUpdates: AccountUpdate[];
148
+ }
149
+ /**
150
+ * Detailed user information for sync purposes
151
+ * Should be kept inline with `resources.users.User`.
152
+ *
153
+ * @generated from protobuf message resources.sync.data.DataUser
154
+ */
155
+ export interface DataUser {
156
+ /**
157
+ * @generated from protobuf field: int32 user_id = 1
158
+ */
159
+ userId: number;
160
+ /**
161
+ * @generated from protobuf field: string identifier = 2
162
+ */
163
+ identifier: string;
164
+ /**
165
+ * @generated from protobuf field: optional resources.timestamp.Timestamp updated_at = 21
166
+ */
167
+ updatedAt?: Timestamp;
168
+ /**
169
+ * @generated from protobuf field: string job = 3
170
+ */
171
+ job: string;
172
+ /**
173
+ * @generated from protobuf field: optional string job_label = 4
174
+ */
175
+ jobLabel?: string;
176
+ /**
177
+ * @generated from protobuf field: int32 job_grade = 5
178
+ */
179
+ jobGrade: number;
180
+ /**
181
+ * @generated from protobuf field: optional string job_grade_label = 6
182
+ */
183
+ jobGradeLabel?: string;
184
+ /**
185
+ * @generated from protobuf field: repeated resources.users.UserJob jobs = 20
186
+ */
187
+ jobs: UserJob[];
188
+ /**
189
+ * @generated from protobuf field: string firstname = 7
190
+ */
191
+ firstname: string;
192
+ /**
193
+ * @generated from protobuf field: optional string lastname = 8
194
+ */
195
+ lastname?: string;
196
+ /**
197
+ * @generated from protobuf field: string dateofbirth = 9
198
+ */
199
+ dateofbirth: string;
200
+ /**
201
+ * @generated from protobuf field: optional string sex = 10
202
+ */
203
+ sex?: string;
204
+ /**
205
+ * @generated from protobuf field: optional float height = 11
206
+ */
207
+ height?: number;
208
+ /**
209
+ * @generated from protobuf field: optional string phone_number = 12
210
+ */
211
+ phoneNumber?: string;
212
+ /**
213
+ * @generated from protobuf field: repeated resources.users.PhoneNumber phone_numbers = 19
214
+ */
215
+ phoneNumbers: PhoneNumber[];
216
+ /**
217
+ * @generated from protobuf field: optional int32 visum = 13
218
+ */
219
+ visum?: number;
220
+ /**
221
+ * @generated from protobuf field: optional int32 playtime = 14
222
+ */
223
+ playtime?: number;
224
+ /**
225
+ * @generated from protobuf field: repeated resources.users.licenses.License licenses = 16
226
+ */
227
+ licenses: License[];
228
+ /**
229
+ * @generated from protobuf field: optional int64 profile_picture_file_id = 17
230
+ */
231
+ profilePictureFileId?: number;
232
+ /**
233
+ * @generated from protobuf field: optional string profile_picture = 18
234
+ */
235
+ profilePicture?: string;
236
+ }
237
+ // @generated message type with reflection information, may provide speed optimized methods
238
+ class DataStatus$Type extends MessageType<DataStatus> {
239
+ constructor() {
240
+ super("resources.sync.data.DataStatus", [
241
+ { no: 1, name: "count", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 2 /*LongType.NUMBER*/ }
242
+ ]);
243
+ }
244
+ create(value?: PartialMessage<DataStatus>): DataStatus {
245
+ const message = globalThis.Object.create((this.messagePrototype!));
246
+ message.count = 0;
247
+ if (value !== undefined)
248
+ reflectionMergePartial<DataStatus>(this, message, value);
249
+ return message;
250
+ }
251
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DataStatus): DataStatus {
252
+ let message = target ?? this.create(), end = reader.pos + length;
253
+ while (reader.pos < end) {
254
+ let [fieldNo, wireType] = reader.tag();
255
+ switch (fieldNo) {
256
+ case /* int64 count */ 1:
257
+ message.count = reader.int64().toNumber();
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: DataStatus, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
271
+ /* int64 count = 1; */
272
+ if (message.count !== 0)
273
+ writer.tag(1, WireType.Varint).int64(message.count);
274
+ let u = options.writeUnknownFields;
275
+ if (u !== false)
276
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
277
+ return writer;
278
+ }
279
+ }
280
+ /**
281
+ * @generated MessageType for protobuf message resources.sync.data.DataStatus
282
+ */
283
+ export const DataStatus = new DataStatus$Type();
284
+ // @generated message type with reflection information, may provide speed optimized methods
285
+ class DataJobs$Type extends MessageType<DataJobs> {
286
+ constructor() {
287
+ super("resources.sync.data.DataJobs", [
288
+ { no: 1, name: "jobs", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => Job, options: { "buf.validate.field": { repeated: { maxItems: "200" } } } }
289
+ ]);
290
+ }
291
+ create(value?: PartialMessage<DataJobs>): DataJobs {
292
+ const message = globalThis.Object.create((this.messagePrototype!));
293
+ message.jobs = [];
294
+ if (value !== undefined)
295
+ reflectionMergePartial<DataJobs>(this, message, value);
296
+ return message;
297
+ }
298
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DataJobs): DataJobs {
299
+ let message = target ?? this.create(), end = reader.pos + length;
300
+ while (reader.pos < end) {
301
+ let [fieldNo, wireType] = reader.tag();
302
+ switch (fieldNo) {
303
+ case /* repeated resources.jobs.Job jobs */ 1:
304
+ message.jobs.push(Job.internalBinaryRead(reader, reader.uint32(), options));
305
+ break;
306
+ default:
307
+ let u = options.readUnknownField;
308
+ if (u === "throw")
309
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
310
+ let d = reader.skip(wireType);
311
+ if (u !== false)
312
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
313
+ }
314
+ }
315
+ return message;
316
+ }
317
+ internalBinaryWrite(message: DataJobs, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
318
+ /* repeated resources.jobs.Job jobs = 1; */
319
+ for (let i = 0; i < message.jobs.length; i++)
320
+ Job.internalBinaryWrite(message.jobs[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();
321
+ let u = options.writeUnknownFields;
322
+ if (u !== false)
323
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
324
+ return writer;
325
+ }
326
+ }
327
+ /**
328
+ * @generated MessageType for protobuf message resources.sync.data.DataJobs
329
+ */
330
+ export const DataJobs = new DataJobs$Type();
331
+ // @generated message type with reflection information, may provide speed optimized methods
332
+ class DataUsers$Type extends MessageType<DataUsers> {
333
+ constructor() {
334
+ super("resources.sync.data.DataUsers", [
335
+ { no: 1, name: "users", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => DataUser, options: { "buf.validate.field": { repeated: { maxItems: "500" } } } }
336
+ ]);
337
+ }
338
+ create(value?: PartialMessage<DataUsers>): DataUsers {
339
+ const message = globalThis.Object.create((this.messagePrototype!));
340
+ message.users = [];
341
+ if (value !== undefined)
342
+ reflectionMergePartial<DataUsers>(this, message, value);
343
+ return message;
344
+ }
345
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DataUsers): DataUsers {
346
+ let message = target ?? this.create(), end = reader.pos + length;
347
+ while (reader.pos < end) {
348
+ let [fieldNo, wireType] = reader.tag();
349
+ switch (fieldNo) {
350
+ case /* repeated resources.sync.data.DataUser users */ 1:
351
+ message.users.push(DataUser.internalBinaryRead(reader, reader.uint32(), options));
352
+ break;
353
+ default:
354
+ let u = options.readUnknownField;
355
+ if (u === "throw")
356
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
357
+ let d = reader.skip(wireType);
358
+ if (u !== false)
359
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
360
+ }
361
+ }
362
+ return message;
363
+ }
364
+ internalBinaryWrite(message: DataUsers, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
365
+ /* repeated resources.sync.data.DataUser users = 1; */
366
+ for (let i = 0; i < message.users.length; i++)
367
+ DataUser.internalBinaryWrite(message.users[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();
368
+ let u = options.writeUnknownFields;
369
+ if (u !== false)
370
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
371
+ return writer;
372
+ }
373
+ }
374
+ /**
375
+ * @generated MessageType for protobuf message resources.sync.data.DataUsers
376
+ */
377
+ export const DataUsers = new DataUsers$Type();
378
+ // @generated message type with reflection information, may provide speed optimized methods
379
+ class DataVehicles$Type extends MessageType<DataVehicles> {
380
+ constructor() {
381
+ super("resources.sync.data.DataVehicles", [
382
+ { no: 1, name: "vehicles", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => Vehicle, options: { "buf.validate.field": { repeated: { maxItems: "1000" } } } }
383
+ ]);
384
+ }
385
+ create(value?: PartialMessage<DataVehicles>): DataVehicles {
386
+ const message = globalThis.Object.create((this.messagePrototype!));
387
+ message.vehicles = [];
388
+ if (value !== undefined)
389
+ reflectionMergePartial<DataVehicles>(this, message, value);
390
+ return message;
391
+ }
392
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DataVehicles): DataVehicles {
393
+ let message = target ?? this.create(), end = reader.pos + length;
394
+ while (reader.pos < end) {
395
+ let [fieldNo, wireType] = reader.tag();
396
+ switch (fieldNo) {
397
+ case /* repeated resources.vehicles.Vehicle vehicles */ 1:
398
+ message.vehicles.push(Vehicle.internalBinaryRead(reader, reader.uint32(), options));
399
+ break;
400
+ default:
401
+ let u = options.readUnknownField;
402
+ if (u === "throw")
403
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
404
+ let d = reader.skip(wireType);
405
+ if (u !== false)
406
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
407
+ }
408
+ }
409
+ return message;
410
+ }
411
+ internalBinaryWrite(message: DataVehicles, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
412
+ /* repeated resources.vehicles.Vehicle vehicles = 1; */
413
+ for (let i = 0; i < message.vehicles.length; i++)
414
+ Vehicle.internalBinaryWrite(message.vehicles[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();
415
+ let u = options.writeUnknownFields;
416
+ if (u !== false)
417
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
418
+ return writer;
419
+ }
420
+ }
421
+ /**
422
+ * @generated MessageType for protobuf message resources.sync.data.DataVehicles
423
+ */
424
+ export const DataVehicles = new DataVehicles$Type();
425
+ // @generated message type with reflection information, may provide speed optimized methods
426
+ class DataLicenses$Type extends MessageType<DataLicenses> {
427
+ constructor() {
428
+ super("resources.sync.data.DataLicenses", [
429
+ { no: 1, name: "licenses", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => License, options: { "buf.validate.field": { repeated: { maxItems: "200" } } } }
430
+ ]);
431
+ }
432
+ create(value?: PartialMessage<DataLicenses>): DataLicenses {
433
+ const message = globalThis.Object.create((this.messagePrototype!));
434
+ message.licenses = [];
435
+ if (value !== undefined)
436
+ reflectionMergePartial<DataLicenses>(this, message, value);
437
+ return message;
438
+ }
439
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DataLicenses): DataLicenses {
440
+ let message = target ?? this.create(), end = reader.pos + length;
441
+ while (reader.pos < end) {
442
+ let [fieldNo, wireType] = reader.tag();
443
+ switch (fieldNo) {
444
+ case /* repeated resources.users.licenses.License licenses */ 1:
445
+ message.licenses.push(License.internalBinaryRead(reader, reader.uint32(), options));
446
+ break;
447
+ default:
448
+ let u = options.readUnknownField;
449
+ if (u === "throw")
450
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
451
+ let d = reader.skip(wireType);
452
+ if (u !== false)
453
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
454
+ }
455
+ }
456
+ return message;
457
+ }
458
+ internalBinaryWrite(message: DataLicenses, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
459
+ /* repeated resources.users.licenses.License licenses = 1; */
460
+ for (let i = 0; i < message.licenses.length; i++)
461
+ License.internalBinaryWrite(message.licenses[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();
462
+ let u = options.writeUnknownFields;
463
+ if (u !== false)
464
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
465
+ return writer;
466
+ }
467
+ }
468
+ /**
469
+ * @generated MessageType for protobuf message resources.sync.data.DataLicenses
470
+ */
471
+ export const DataLicenses = new DataLicenses$Type();
472
+ // @generated message type with reflection information, may provide speed optimized methods
473
+ class DataUserLocations$Type extends MessageType<DataUserLocations> {
474
+ constructor() {
475
+ super("resources.sync.data.DataUserLocations", [
476
+ { no: 1, name: "users", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => CitizenLocations, options: { "buf.validate.field": { repeated: { maxItems: "2000" } } } },
477
+ { no: 2, name: "clear_all", kind: "scalar", opt: true, T: 8 /*ScalarType.BOOL*/ }
478
+ ]);
479
+ }
480
+ create(value?: PartialMessage<DataUserLocations>): DataUserLocations {
481
+ const message = globalThis.Object.create((this.messagePrototype!));
482
+ message.users = [];
483
+ if (value !== undefined)
484
+ reflectionMergePartial<DataUserLocations>(this, message, value);
485
+ return message;
486
+ }
487
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DataUserLocations): DataUserLocations {
488
+ let message = target ?? this.create(), end = reader.pos + length;
489
+ while (reader.pos < end) {
490
+ let [fieldNo, wireType] = reader.tag();
491
+ switch (fieldNo) {
492
+ case /* repeated resources.sync.data.CitizenLocations users */ 1:
493
+ message.users.push(CitizenLocations.internalBinaryRead(reader, reader.uint32(), options));
494
+ break;
495
+ case /* optional bool clear_all */ 2:
496
+ message.clearAll = reader.bool();
497
+ break;
498
+ default:
499
+ let u = options.readUnknownField;
500
+ if (u === "throw")
501
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
502
+ let d = reader.skip(wireType);
503
+ if (u !== false)
504
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
505
+ }
506
+ }
507
+ return message;
508
+ }
509
+ internalBinaryWrite(message: DataUserLocations, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
510
+ /* repeated resources.sync.data.CitizenLocations users = 1; */
511
+ for (let i = 0; i < message.users.length; i++)
512
+ CitizenLocations.internalBinaryWrite(message.users[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();
513
+ /* optional bool clear_all = 2; */
514
+ if (message.clearAll !== undefined)
515
+ writer.tag(2, WireType.Varint).bool(message.clearAll);
516
+ let u = options.writeUnknownFields;
517
+ if (u !== false)
518
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
519
+ return writer;
520
+ }
521
+ }
522
+ /**
523
+ * @generated MessageType for protobuf message resources.sync.data.DataUserLocations
524
+ */
525
+ export const DataUserLocations = new DataUserLocations$Type();
526
+ // @generated message type with reflection information, may provide speed optimized methods
527
+ class CitizenLocations$Type extends MessageType<CitizenLocations> {
528
+ constructor() {
529
+ super("resources.sync.data.CitizenLocations", [
530
+ { no: 1, name: "user_id", kind: "scalar", T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { int32: { gt: 0 } } } },
531
+ { no: 2, name: "job", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "20" } } } },
532
+ { no: 6, name: "job_grade", kind: "scalar", opt: true, T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { int32: { gte: 0 } } } },
533
+ { no: 3, name: "coords", kind: "message", T: () => Coords, options: { "buf.validate.field": { required: true } } },
534
+ { no: 4, name: "hidden", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
535
+ { no: 5, name: "remove", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }
536
+ ]);
537
+ }
538
+ create(value?: PartialMessage<CitizenLocations>): CitizenLocations {
539
+ const message = globalThis.Object.create((this.messagePrototype!));
540
+ message.userId = 0;
541
+ message.job = "";
542
+ message.hidden = false;
543
+ message.remove = false;
544
+ if (value !== undefined)
545
+ reflectionMergePartial<CitizenLocations>(this, message, value);
546
+ return message;
547
+ }
548
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CitizenLocations): CitizenLocations {
549
+ let message = target ?? this.create(), end = reader.pos + length;
550
+ while (reader.pos < end) {
551
+ let [fieldNo, wireType] = reader.tag();
552
+ switch (fieldNo) {
553
+ case /* int32 user_id */ 1:
554
+ message.userId = reader.int32();
555
+ break;
556
+ case /* string job */ 2:
557
+ message.job = reader.string();
558
+ break;
559
+ case /* optional int32 job_grade */ 6:
560
+ message.jobGrade = reader.int32();
561
+ break;
562
+ case /* resources.livemap.Coords coords */ 3:
563
+ message.coords = Coords.internalBinaryRead(reader, reader.uint32(), options, message.coords);
564
+ break;
565
+ case /* bool hidden */ 4:
566
+ message.hidden = reader.bool();
567
+ break;
568
+ case /* bool remove */ 5:
569
+ message.remove = reader.bool();
570
+ break;
571
+ default:
572
+ let u = options.readUnknownField;
573
+ if (u === "throw")
574
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
575
+ let d = reader.skip(wireType);
576
+ if (u !== false)
577
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
578
+ }
579
+ }
580
+ return message;
581
+ }
582
+ internalBinaryWrite(message: CitizenLocations, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
583
+ /* int32 user_id = 1; */
584
+ if (message.userId !== 0)
585
+ writer.tag(1, WireType.Varint).int32(message.userId);
586
+ /* string job = 2; */
587
+ if (message.job !== "")
588
+ writer.tag(2, WireType.LengthDelimited).string(message.job);
589
+ /* resources.livemap.Coords coords = 3; */
590
+ if (message.coords)
591
+ Coords.internalBinaryWrite(message.coords, writer.tag(3, WireType.LengthDelimited).fork(), options).join();
592
+ /* bool hidden = 4; */
593
+ if (message.hidden !== false)
594
+ writer.tag(4, WireType.Varint).bool(message.hidden);
595
+ /* bool remove = 5; */
596
+ if (message.remove !== false)
597
+ writer.tag(5, WireType.Varint).bool(message.remove);
598
+ /* optional int32 job_grade = 6; */
599
+ if (message.jobGrade !== undefined)
600
+ writer.tag(6, WireType.Varint).int32(message.jobGrade);
601
+ let u = options.writeUnknownFields;
602
+ if (u !== false)
603
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
604
+ return writer;
605
+ }
606
+ }
607
+ /**
608
+ * @generated MessageType for protobuf message resources.sync.data.CitizenLocations
609
+ */
610
+ export const CitizenLocations = new CitizenLocations$Type();
611
+ // @generated message type with reflection information, may provide speed optimized methods
612
+ class DeleteUsers$Type extends MessageType<DeleteUsers> {
613
+ constructor() {
614
+ super("resources.sync.data.DeleteUsers", [
615
+ { no: 1, name: "user_ids", kind: "scalar", repeat: 1 /*RepeatType.PACKED*/, T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { repeated: { maxItems: "100" } } } }
616
+ ]);
617
+ }
618
+ create(value?: PartialMessage<DeleteUsers>): DeleteUsers {
619
+ const message = globalThis.Object.create((this.messagePrototype!));
620
+ message.userIds = [];
621
+ if (value !== undefined)
622
+ reflectionMergePartial<DeleteUsers>(this, message, value);
623
+ return message;
624
+ }
625
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeleteUsers): DeleteUsers {
626
+ let message = target ?? this.create(), end = reader.pos + length;
627
+ while (reader.pos < end) {
628
+ let [fieldNo, wireType] = reader.tag();
629
+ switch (fieldNo) {
630
+ case /* repeated int32 user_ids */ 1:
631
+ if (wireType === WireType.LengthDelimited)
632
+ for (let e = reader.int32() + reader.pos; reader.pos < e;)
633
+ message.userIds.push(reader.int32());
634
+ else
635
+ message.userIds.push(reader.int32());
636
+ break;
637
+ default:
638
+ let u = options.readUnknownField;
639
+ if (u === "throw")
640
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
641
+ let d = reader.skip(wireType);
642
+ if (u !== false)
643
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
644
+ }
645
+ }
646
+ return message;
647
+ }
648
+ internalBinaryWrite(message: DeleteUsers, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
649
+ /* repeated int32 user_ids = 1; */
650
+ if (message.userIds.length) {
651
+ writer.tag(1, WireType.LengthDelimited).fork();
652
+ for (let i = 0; i < message.userIds.length; i++)
653
+ writer.int32(message.userIds[i]);
654
+ writer.join();
655
+ }
656
+ let u = options.writeUnknownFields;
657
+ if (u !== false)
658
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
659
+ return writer;
660
+ }
661
+ }
662
+ /**
663
+ * @generated MessageType for protobuf message resources.sync.data.DeleteUsers
664
+ */
665
+ export const DeleteUsers = new DeleteUsers$Type();
666
+ // @generated message type with reflection information, may provide speed optimized methods
667
+ class DeleteVehicles$Type extends MessageType<DeleteVehicles> {
668
+ constructor() {
669
+ super("resources.sync.data.DeleteVehicles", [
670
+ { no: 1, name: "plates", kind: "scalar", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { repeated: { maxItems: "100" } } } }
671
+ ]);
672
+ }
673
+ create(value?: PartialMessage<DeleteVehicles>): DeleteVehicles {
674
+ const message = globalThis.Object.create((this.messagePrototype!));
675
+ message.plates = [];
676
+ if (value !== undefined)
677
+ reflectionMergePartial<DeleteVehicles>(this, message, value);
678
+ return message;
679
+ }
680
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeleteVehicles): DeleteVehicles {
681
+ let message = target ?? this.create(), end = reader.pos + length;
682
+ while (reader.pos < end) {
683
+ let [fieldNo, wireType] = reader.tag();
684
+ switch (fieldNo) {
685
+ case /* repeated string plates */ 1:
686
+ message.plates.push(reader.string());
687
+ break;
688
+ default:
689
+ let u = options.readUnknownField;
690
+ if (u === "throw")
691
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
692
+ let d = reader.skip(wireType);
693
+ if (u !== false)
694
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
695
+ }
696
+ }
697
+ return message;
698
+ }
699
+ internalBinaryWrite(message: DeleteVehicles, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
700
+ /* repeated string plates = 1; */
701
+ for (let i = 0; i < message.plates.length; i++)
702
+ writer.tag(1, WireType.LengthDelimited).string(message.plates[i]);
703
+ let u = options.writeUnknownFields;
704
+ if (u !== false)
705
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
706
+ return writer;
707
+ }
708
+ }
709
+ /**
710
+ * @generated MessageType for protobuf message resources.sync.data.DeleteVehicles
711
+ */
712
+ export const DeleteVehicles = new DeleteVehicles$Type();
713
+ // @generated message type with reflection information, may provide speed optimized methods
714
+ class LastCharID$Type extends MessageType<LastCharID> {
715
+ constructor() {
716
+ super("resources.sync.data.LastCharID", [
717
+ { no: 1, name: "identifier", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "64" } } } },
718
+ { no: 2, name: "last_char_id", kind: "scalar", opt: true, T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { int32: { gt: 0 } } } }
719
+ ]);
720
+ }
721
+ create(value?: PartialMessage<LastCharID>): LastCharID {
722
+ const message = globalThis.Object.create((this.messagePrototype!));
723
+ message.identifier = "";
724
+ if (value !== undefined)
725
+ reflectionMergePartial<LastCharID>(this, message, value);
726
+ return message;
727
+ }
728
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: LastCharID): LastCharID {
729
+ let message = target ?? this.create(), end = reader.pos + length;
730
+ while (reader.pos < end) {
731
+ let [fieldNo, wireType] = reader.tag();
732
+ switch (fieldNo) {
733
+ case /* string identifier */ 1:
734
+ message.identifier = reader.string();
735
+ break;
736
+ case /* optional int32 last_char_id */ 2:
737
+ message.lastCharId = reader.int32();
738
+ break;
739
+ default:
740
+ let u = options.readUnknownField;
741
+ if (u === "throw")
742
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
743
+ let d = reader.skip(wireType);
744
+ if (u !== false)
745
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
746
+ }
747
+ }
748
+ return message;
749
+ }
750
+ internalBinaryWrite(message: LastCharID, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
751
+ /* string identifier = 1; */
752
+ if (message.identifier !== "")
753
+ writer.tag(1, WireType.LengthDelimited).string(message.identifier);
754
+ /* optional int32 last_char_id = 2; */
755
+ if (message.lastCharId !== undefined)
756
+ writer.tag(2, WireType.Varint).int32(message.lastCharId);
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 resources.sync.data.LastCharID
765
+ */
766
+ export const LastCharID = new LastCharID$Type();
767
+ // @generated message type with reflection information, may provide speed optimized methods
768
+ class DataAccounts$Type extends MessageType<DataAccounts> {
769
+ constructor() {
770
+ super("resources.sync.data.DataAccounts", [
771
+ { no: 1, name: "account_updates", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => AccountUpdate, options: { "buf.validate.field": { repeated: { maxItems: "100" } } } }
772
+ ]);
773
+ }
774
+ create(value?: PartialMessage<DataAccounts>): DataAccounts {
775
+ const message = globalThis.Object.create((this.messagePrototype!));
776
+ message.accountUpdates = [];
777
+ if (value !== undefined)
778
+ reflectionMergePartial<DataAccounts>(this, message, value);
779
+ return message;
780
+ }
781
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DataAccounts): DataAccounts {
782
+ let message = target ?? this.create(), end = reader.pos + length;
783
+ while (reader.pos < end) {
784
+ let [fieldNo, wireType] = reader.tag();
785
+ switch (fieldNo) {
786
+ case /* repeated resources.sync.activity.AccountUpdate account_updates */ 1:
787
+ message.accountUpdates.push(AccountUpdate.internalBinaryRead(reader, reader.uint32(), options));
788
+ break;
789
+ default:
790
+ let u = options.readUnknownField;
791
+ if (u === "throw")
792
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
793
+ let d = reader.skip(wireType);
794
+ if (u !== false)
795
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
796
+ }
797
+ }
798
+ return message;
799
+ }
800
+ internalBinaryWrite(message: DataAccounts, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
801
+ /* repeated resources.sync.activity.AccountUpdate account_updates = 1; */
802
+ for (let i = 0; i < message.accountUpdates.length; i++)
803
+ AccountUpdate.internalBinaryWrite(message.accountUpdates[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();
804
+ let u = options.writeUnknownFields;
805
+ if (u !== false)
806
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
807
+ return writer;
808
+ }
809
+ }
810
+ /**
811
+ * @generated MessageType for protobuf message resources.sync.data.DataAccounts
812
+ */
813
+ export const DataAccounts = new DataAccounts$Type();
814
+ // @generated message type with reflection information, may provide speed optimized methods
815
+ class DataUser$Type extends MessageType<DataUser> {
816
+ constructor() {
817
+ super("resources.sync.data.DataUser", [
818
+ { no: 1, name: "user_id", kind: "scalar", T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { int32: { gt: 0 } }, "tagger.tags": "alias:\"user.id\"" } },
819
+ { no: 2, name: "identifier", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "64" } }, "tagger.tags": "alias:\"user.identifier\"" } },
820
+ { no: 21, name: "updated_at", kind: "message", T: () => Timestamp, options: { "tagger.tags": "alias:\"user.updated_at\"" } },
821
+ { no: 3, name: "job", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { ignore: "IGNORE_IF_ZERO_VALUE", string: { maxLen: "20" } }, "tagger.tags": "alias:\"user.job\"" } },
822
+ { no: 4, name: "job_label", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "50" } }, "tagger.tags": "alias:\"user.job_label\"" } },
823
+ { no: 5, name: "job_grade", kind: "scalar", T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { ignore: "IGNORE_IF_ZERO_VALUE", int32: { gte: 0 } }, "tagger.tags": "alias:\"user.job_grade\"" } },
824
+ { no: 6, name: "job_grade_label", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "50" } }, "tagger.tags": "alias:\"user.job_grade_label\"" } },
825
+ { no: 20, name: "jobs", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => UserJob, options: { "buf.validate.field": { ignore: "IGNORE_IF_ZERO_VALUE", repeated: { maxItems: "3" } }, "tagger.tags": "alias:\"user.jobs\"" } },
826
+ { no: 7, name: "firstname", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { minLen: "1", maxLen: "50" } }, "tagger.tags": "alias:\"user.firstname\"" } },
827
+ { no: 8, name: "lastname", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { minLen: "1", maxLen: "50" } }, "tagger.tags": "alias:\"user.lastname\"" } },
828
+ { no: 9, name: "dateofbirth", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { ignore: "IGNORE_IF_ZERO_VALUE", string: { maxLen: "10" } }, "tagger.tags": "alias:\"user.dateofbirth\"" } },
829
+ { no: 10, name: "sex", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { minLen: "1", maxLen: "2" } }, "tagger.tags": "alias:\"user.sex\"" } },
830
+ { no: 11, name: "height", kind: "scalar", opt: true, T: 2 /*ScalarType.FLOAT*/, options: { "tagger.tags": "alias:\"user.height\"" } },
831
+ { no: 12, name: "phone_number", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "20" } }, "tagger.tags": "alias:\"user.phone_number\"" } },
832
+ { no: 19, name: "phone_numbers", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => PhoneNumber, options: { "buf.validate.field": { ignore: "IGNORE_IF_ZERO_VALUE", repeated: { maxItems: "5" } }, "tagger.tags": "alias:\"user.phone_numbers\"" } },
833
+ { no: 13, name: "visum", kind: "scalar", opt: true, T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { int32: { gte: 0 } }, "tagger.tags": "alias:\"user.visum\"" } },
834
+ { no: 14, name: "playtime", kind: "scalar", opt: true, T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { int32: { gte: 0 } }, "tagger.tags": "alias:\"user.playtime\"" } },
835
+ { no: 16, name: "licenses", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => License, options: { "buf.validate.field": { ignore: "IGNORE_IF_ZERO_VALUE", repeated: { maxItems: "20" } }, "tagger.tags": "alias:\"user.licenses\"" } },
836
+ { no: 17, name: "profile_picture_file_id", kind: "scalar", opt: true, T: 3 /*ScalarType.INT64*/, L: 2 /*LongType.NUMBER*/, options: { "buf.validate.field": { int64: { gte: "0" } }, "tagger.tags": "alias:\"user.profile_picture_file_id\"" } },
837
+ { no: 18, name: "profile_picture", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "255" } }, "tagger.tags": "alias:\"user.profile_picture\"" } }
838
+ ]);
839
+ }
840
+ create(value?: PartialMessage<DataUser>): DataUser {
841
+ const message = globalThis.Object.create((this.messagePrototype!));
842
+ message.userId = 0;
843
+ message.identifier = "";
844
+ message.job = "";
845
+ message.jobGrade = 0;
846
+ message.jobs = [];
847
+ message.firstname = "";
848
+ message.dateofbirth = "";
849
+ message.phoneNumbers = [];
850
+ message.licenses = [];
851
+ if (value !== undefined)
852
+ reflectionMergePartial<DataUser>(this, message, value);
853
+ return message;
854
+ }
855
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DataUser): DataUser {
856
+ let message = target ?? this.create(), end = reader.pos + length;
857
+ while (reader.pos < end) {
858
+ let [fieldNo, wireType] = reader.tag();
859
+ switch (fieldNo) {
860
+ case /* int32 user_id */ 1:
861
+ message.userId = reader.int32();
862
+ break;
863
+ case /* string identifier */ 2:
864
+ message.identifier = reader.string();
865
+ break;
866
+ case /* optional resources.timestamp.Timestamp updated_at */ 21:
867
+ message.updatedAt = Timestamp.internalBinaryRead(reader, reader.uint32(), options, message.updatedAt);
868
+ break;
869
+ case /* string job */ 3:
870
+ message.job = reader.string();
871
+ break;
872
+ case /* optional string job_label */ 4:
873
+ message.jobLabel = reader.string();
874
+ break;
875
+ case /* int32 job_grade */ 5:
876
+ message.jobGrade = reader.int32();
877
+ break;
878
+ case /* optional string job_grade_label */ 6:
879
+ message.jobGradeLabel = reader.string();
880
+ break;
881
+ case /* repeated resources.users.UserJob jobs */ 20:
882
+ message.jobs.push(UserJob.internalBinaryRead(reader, reader.uint32(), options));
883
+ break;
884
+ case /* string firstname */ 7:
885
+ message.firstname = reader.string();
886
+ break;
887
+ case /* optional string lastname */ 8:
888
+ message.lastname = reader.string();
889
+ break;
890
+ case /* string dateofbirth */ 9:
891
+ message.dateofbirth = reader.string();
892
+ break;
893
+ case /* optional string sex */ 10:
894
+ message.sex = reader.string();
895
+ break;
896
+ case /* optional float height */ 11:
897
+ message.height = reader.float();
898
+ break;
899
+ case /* optional string phone_number */ 12:
900
+ message.phoneNumber = reader.string();
901
+ break;
902
+ case /* repeated resources.users.PhoneNumber phone_numbers */ 19:
903
+ message.phoneNumbers.push(PhoneNumber.internalBinaryRead(reader, reader.uint32(), options));
904
+ break;
905
+ case /* optional int32 visum */ 13:
906
+ message.visum = reader.int32();
907
+ break;
908
+ case /* optional int32 playtime */ 14:
909
+ message.playtime = reader.int32();
910
+ break;
911
+ case /* repeated resources.users.licenses.License licenses */ 16:
912
+ message.licenses.push(License.internalBinaryRead(reader, reader.uint32(), options));
913
+ break;
914
+ case /* optional int64 profile_picture_file_id */ 17:
915
+ message.profilePictureFileId = reader.int64().toNumber();
916
+ break;
917
+ case /* optional string profile_picture */ 18:
918
+ message.profilePicture = reader.string();
919
+ break;
920
+ default:
921
+ let u = options.readUnknownField;
922
+ if (u === "throw")
923
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
924
+ let d = reader.skip(wireType);
925
+ if (u !== false)
926
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
927
+ }
928
+ }
929
+ return message;
930
+ }
931
+ internalBinaryWrite(message: DataUser, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
932
+ /* int32 user_id = 1; */
933
+ if (message.userId !== 0)
934
+ writer.tag(1, WireType.Varint).int32(message.userId);
935
+ /* string identifier = 2; */
936
+ if (message.identifier !== "")
937
+ writer.tag(2, WireType.LengthDelimited).string(message.identifier);
938
+ /* string job = 3; */
939
+ if (message.job !== "")
940
+ writer.tag(3, WireType.LengthDelimited).string(message.job);
941
+ /* optional string job_label = 4; */
942
+ if (message.jobLabel !== undefined)
943
+ writer.tag(4, WireType.LengthDelimited).string(message.jobLabel);
944
+ /* int32 job_grade = 5; */
945
+ if (message.jobGrade !== 0)
946
+ writer.tag(5, WireType.Varint).int32(message.jobGrade);
947
+ /* optional string job_grade_label = 6; */
948
+ if (message.jobGradeLabel !== undefined)
949
+ writer.tag(6, WireType.LengthDelimited).string(message.jobGradeLabel);
950
+ /* string firstname = 7; */
951
+ if (message.firstname !== "")
952
+ writer.tag(7, WireType.LengthDelimited).string(message.firstname);
953
+ /* optional string lastname = 8; */
954
+ if (message.lastname !== undefined)
955
+ writer.tag(8, WireType.LengthDelimited).string(message.lastname);
956
+ /* string dateofbirth = 9; */
957
+ if (message.dateofbirth !== "")
958
+ writer.tag(9, WireType.LengthDelimited).string(message.dateofbirth);
959
+ /* optional string sex = 10; */
960
+ if (message.sex !== undefined)
961
+ writer.tag(10, WireType.LengthDelimited).string(message.sex);
962
+ /* optional float height = 11; */
963
+ if (message.height !== undefined)
964
+ writer.tag(11, WireType.Bit32).float(message.height);
965
+ /* optional string phone_number = 12; */
966
+ if (message.phoneNumber !== undefined)
967
+ writer.tag(12, WireType.LengthDelimited).string(message.phoneNumber);
968
+ /* optional int32 visum = 13; */
969
+ if (message.visum !== undefined)
970
+ writer.tag(13, WireType.Varint).int32(message.visum);
971
+ /* optional int32 playtime = 14; */
972
+ if (message.playtime !== undefined)
973
+ writer.tag(14, WireType.Varint).int32(message.playtime);
974
+ /* repeated resources.users.licenses.License licenses = 16; */
975
+ for (let i = 0; i < message.licenses.length; i++)
976
+ License.internalBinaryWrite(message.licenses[i], writer.tag(16, WireType.LengthDelimited).fork(), options).join();
977
+ /* optional int64 profile_picture_file_id = 17; */
978
+ if (message.profilePictureFileId !== undefined)
979
+ writer.tag(17, WireType.Varint).int64(message.profilePictureFileId);
980
+ /* optional string profile_picture = 18; */
981
+ if (message.profilePicture !== undefined)
982
+ writer.tag(18, WireType.LengthDelimited).string(message.profilePicture);
983
+ /* repeated resources.users.PhoneNumber phone_numbers = 19; */
984
+ for (let i = 0; i < message.phoneNumbers.length; i++)
985
+ PhoneNumber.internalBinaryWrite(message.phoneNumbers[i], writer.tag(19, WireType.LengthDelimited).fork(), options).join();
986
+ /* repeated resources.users.UserJob jobs = 20; */
987
+ for (let i = 0; i < message.jobs.length; i++)
988
+ UserJob.internalBinaryWrite(message.jobs[i], writer.tag(20, WireType.LengthDelimited).fork(), options).join();
989
+ /* optional resources.timestamp.Timestamp updated_at = 21; */
990
+ if (message.updatedAt)
991
+ Timestamp.internalBinaryWrite(message.updatedAt, writer.tag(21, WireType.LengthDelimited).fork(), options).join();
992
+ let u = options.writeUnknownFields;
993
+ if (u !== false)
994
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
995
+ return writer;
996
+ }
997
+ }
998
+ /**
999
+ * @generated MessageType for protobuf message resources.sync.data.DataUser
1000
+ */
1001
+ export const DataUser = new DataUser$Type();