@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,377 @@
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/livemap/markers/user_marker.proto" (package "resources.livemap.markers", 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 { Unit } from "../../centrum/units/units";
15
+ import { Colleague } from "../../jobs/colleagues/colleagues";
16
+ import { Timestamp } from "../../timestamp/timestamp";
17
+ /**
18
+ * @generated from protobuf message resources.livemap.markers.UserMarker
19
+ */
20
+ export interface UserMarker {
21
+ /**
22
+ * @generated from protobuf field: int32 user_id = 1
23
+ */
24
+ userId: number;
25
+ /**
26
+ * @generated from protobuf field: double x = 2
27
+ */
28
+ x: number;
29
+ /**
30
+ * @generated from protobuf field: double y = 3
31
+ */
32
+ y: number;
33
+ /**
34
+ * @generated from protobuf field: optional resources.timestamp.Timestamp updated_at = 4
35
+ */
36
+ updatedAt?: Timestamp;
37
+ /**
38
+ * @generated from protobuf field: optional string postal = 5
39
+ */
40
+ postal?: string;
41
+ /**
42
+ * @generated from protobuf field: optional string color = 6
43
+ */
44
+ color?: string;
45
+ /**
46
+ * @generated from protobuf field: string job = 7
47
+ */
48
+ job: string;
49
+ /**
50
+ * @generated from protobuf field: string job_label = 8
51
+ */
52
+ jobLabel: string;
53
+ /**
54
+ * @generated from protobuf field: optional int32 job_grade = 13
55
+ */
56
+ jobGrade?: number;
57
+ /**
58
+ * @generated from protobuf field: resources.jobs.colleagues.Colleague user = 9
59
+ */
60
+ user?: Colleague;
61
+ /**
62
+ * @generated from protobuf field: optional int64 unit_id = 10
63
+ */
64
+ unitId?: number;
65
+ /**
66
+ * @generated from protobuf field: optional resources.centrum.units.Unit unit = 11
67
+ */
68
+ unit?: Unit;
69
+ /**
70
+ * @generated from protobuf field: bool hidden = 12
71
+ */
72
+ hidden: boolean;
73
+ /**
74
+ * @generated from protobuf field: optional resources.livemap.markers.UserMarkerData data = 14
75
+ */
76
+ data?: UserMarkerData;
77
+ }
78
+ /**
79
+ * @generated from protobuf message resources.livemap.markers.UserMarkerData
80
+ */
81
+ export interface UserMarkerData {
82
+ /**
83
+ * @generated from protobuf field: optional resources.livemap.markers.NameOverride name_override = 1
84
+ */
85
+ nameOverride?: NameOverride;
86
+ /**
87
+ * @generated from protobuf field: bool is_in_vehicle = 2
88
+ */
89
+ isInVehicle: boolean;
90
+ /**
91
+ * @generated from protobuf field: optional string vehicle_plate = 3
92
+ */
93
+ vehiclePlate?: string;
94
+ /**
95
+ * @generated from protobuf field: optional resources.timestamp.Timestamp vehicle_updated_at = 4
96
+ */
97
+ vehicleUpdatedAt?: Timestamp;
98
+ }
99
+ /**
100
+ * @generated from protobuf message resources.livemap.markers.NameOverride
101
+ */
102
+ export interface NameOverride {
103
+ /**
104
+ * @generated from protobuf field: string firstname = 1
105
+ */
106
+ firstname: string;
107
+ /**
108
+ * @generated from protobuf field: string lastname = 2
109
+ */
110
+ lastname: string;
111
+ }
112
+ // @generated message type with reflection information, may provide speed optimized methods
113
+ class UserMarker$Type extends MessageType<UserMarker> {
114
+ constructor() {
115
+ super("resources.livemap.markers.UserMarker", [
116
+ { no: 1, name: "user_id", kind: "scalar", T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { int32: { gt: 0 } } } },
117
+ { no: 2, name: "x", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ },
118
+ { no: 3, name: "y", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ },
119
+ { no: 4, name: "updated_at", kind: "message", T: () => Timestamp },
120
+ { no: 5, name: "postal", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "48" } }, "codegen.sanitizer.sanitizer": { enabled: true, stripHtmlTags: true } } },
121
+ { no: 6, name: "color", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { len: "7", pattern: "^#[A-Fa-f0-9]{6}$" } }, "codegen.sanitizer.sanitizer": { enabled: true, stripHtmlTags: true } } },
122
+ { no: 7, name: "job", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "20" } } } },
123
+ { no: 8, name: "job_label", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
124
+ { no: 13, name: "job_grade", kind: "scalar", opt: true, T: 5 /*ScalarType.INT32*/ },
125
+ { no: 9, name: "user", kind: "message", T: () => Colleague, options: { "tagger.tags": "alias:\"user\"" } },
126
+ { no: 10, name: "unit_id", kind: "scalar", opt: true, T: 3 /*ScalarType.INT64*/, L: 2 /*LongType.NUMBER*/ },
127
+ { no: 11, name: "unit", kind: "message", T: () => Unit },
128
+ { no: 12, name: "hidden", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
129
+ { no: 14, name: "data", kind: "message", T: () => UserMarkerData, options: { "tagger.tags": "alias:\"data\"" } }
130
+ ]);
131
+ }
132
+ create(value?: PartialMessage<UserMarker>): UserMarker {
133
+ const message = globalThis.Object.create((this.messagePrototype!));
134
+ message.userId = 0;
135
+ message.x = 0;
136
+ message.y = 0;
137
+ message.job = "";
138
+ message.jobLabel = "";
139
+ message.hidden = false;
140
+ if (value !== undefined)
141
+ reflectionMergePartial<UserMarker>(this, message, value);
142
+ return message;
143
+ }
144
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: UserMarker): UserMarker {
145
+ let message = target ?? this.create(), end = reader.pos + length;
146
+ while (reader.pos < end) {
147
+ let [fieldNo, wireType] = reader.tag();
148
+ switch (fieldNo) {
149
+ case /* int32 user_id */ 1:
150
+ message.userId = reader.int32();
151
+ break;
152
+ case /* double x */ 2:
153
+ message.x = reader.double();
154
+ break;
155
+ case /* double y */ 3:
156
+ message.y = reader.double();
157
+ break;
158
+ case /* optional resources.timestamp.Timestamp updated_at */ 4:
159
+ message.updatedAt = Timestamp.internalBinaryRead(reader, reader.uint32(), options, message.updatedAt);
160
+ break;
161
+ case /* optional string postal */ 5:
162
+ message.postal = reader.string();
163
+ break;
164
+ case /* optional string color */ 6:
165
+ message.color = reader.string();
166
+ break;
167
+ case /* string job */ 7:
168
+ message.job = reader.string();
169
+ break;
170
+ case /* string job_label */ 8:
171
+ message.jobLabel = reader.string();
172
+ break;
173
+ case /* optional int32 job_grade */ 13:
174
+ message.jobGrade = reader.int32();
175
+ break;
176
+ case /* resources.jobs.colleagues.Colleague user */ 9:
177
+ message.user = Colleague.internalBinaryRead(reader, reader.uint32(), options, message.user);
178
+ break;
179
+ case /* optional int64 unit_id */ 10:
180
+ message.unitId = reader.int64().toNumber();
181
+ break;
182
+ case /* optional resources.centrum.units.Unit unit */ 11:
183
+ message.unit = Unit.internalBinaryRead(reader, reader.uint32(), options, message.unit);
184
+ break;
185
+ case /* bool hidden */ 12:
186
+ message.hidden = reader.bool();
187
+ break;
188
+ case /* optional resources.livemap.markers.UserMarkerData data */ 14:
189
+ message.data = UserMarkerData.internalBinaryRead(reader, reader.uint32(), options, message.data);
190
+ break;
191
+ default:
192
+ let u = options.readUnknownField;
193
+ if (u === "throw")
194
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
195
+ let d = reader.skip(wireType);
196
+ if (u !== false)
197
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
198
+ }
199
+ }
200
+ return message;
201
+ }
202
+ internalBinaryWrite(message: UserMarker, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
203
+ /* int32 user_id = 1; */
204
+ if (message.userId !== 0)
205
+ writer.tag(1, WireType.Varint).int32(message.userId);
206
+ /* double x = 2; */
207
+ if (message.x !== 0)
208
+ writer.tag(2, WireType.Bit64).double(message.x);
209
+ /* double y = 3; */
210
+ if (message.y !== 0)
211
+ writer.tag(3, WireType.Bit64).double(message.y);
212
+ /* optional resources.timestamp.Timestamp updated_at = 4; */
213
+ if (message.updatedAt)
214
+ Timestamp.internalBinaryWrite(message.updatedAt, writer.tag(4, WireType.LengthDelimited).fork(), options).join();
215
+ /* optional string postal = 5; */
216
+ if (message.postal !== undefined)
217
+ writer.tag(5, WireType.LengthDelimited).string(message.postal);
218
+ /* optional string color = 6; */
219
+ if (message.color !== undefined)
220
+ writer.tag(6, WireType.LengthDelimited).string(message.color);
221
+ /* string job = 7; */
222
+ if (message.job !== "")
223
+ writer.tag(7, WireType.LengthDelimited).string(message.job);
224
+ /* string job_label = 8; */
225
+ if (message.jobLabel !== "")
226
+ writer.tag(8, WireType.LengthDelimited).string(message.jobLabel);
227
+ /* resources.jobs.colleagues.Colleague user = 9; */
228
+ if (message.user)
229
+ Colleague.internalBinaryWrite(message.user, writer.tag(9, WireType.LengthDelimited).fork(), options).join();
230
+ /* optional int64 unit_id = 10; */
231
+ if (message.unitId !== undefined)
232
+ writer.tag(10, WireType.Varint).int64(message.unitId);
233
+ /* optional resources.centrum.units.Unit unit = 11; */
234
+ if (message.unit)
235
+ Unit.internalBinaryWrite(message.unit, writer.tag(11, WireType.LengthDelimited).fork(), options).join();
236
+ /* bool hidden = 12; */
237
+ if (message.hidden !== false)
238
+ writer.tag(12, WireType.Varint).bool(message.hidden);
239
+ /* optional int32 job_grade = 13; */
240
+ if (message.jobGrade !== undefined)
241
+ writer.tag(13, WireType.Varint).int32(message.jobGrade);
242
+ /* optional resources.livemap.markers.UserMarkerData data = 14; */
243
+ if (message.data)
244
+ UserMarkerData.internalBinaryWrite(message.data, writer.tag(14, WireType.LengthDelimited).fork(), options).join();
245
+ let u = options.writeUnknownFields;
246
+ if (u !== false)
247
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
248
+ return writer;
249
+ }
250
+ }
251
+ /**
252
+ * @generated MessageType for protobuf message resources.livemap.markers.UserMarker
253
+ */
254
+ export const UserMarker = new UserMarker$Type();
255
+ // @generated message type with reflection information, may provide speed optimized methods
256
+ class UserMarkerData$Type extends MessageType<UserMarkerData> {
257
+ constructor() {
258
+ super("resources.livemap.markers.UserMarkerData", [
259
+ { no: 1, name: "name_override", kind: "message", T: () => NameOverride },
260
+ { no: 2, name: "is_in_vehicle", kind: "scalar", T: 8 /*ScalarType.BOOL*/ },
261
+ { no: 3, name: "vehicle_plate", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "32" } } } },
262
+ { no: 4, name: "vehicle_updated_at", kind: "message", T: () => Timestamp }
263
+ ], { "codegen.dbscanner.dbscanner": { enabled: true } });
264
+ }
265
+ create(value?: PartialMessage<UserMarkerData>): UserMarkerData {
266
+ const message = globalThis.Object.create((this.messagePrototype!));
267
+ message.isInVehicle = false;
268
+ if (value !== undefined)
269
+ reflectionMergePartial<UserMarkerData>(this, message, value);
270
+ return message;
271
+ }
272
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: UserMarkerData): UserMarkerData {
273
+ let message = target ?? this.create(), end = reader.pos + length;
274
+ while (reader.pos < end) {
275
+ let [fieldNo, wireType] = reader.tag();
276
+ switch (fieldNo) {
277
+ case /* optional resources.livemap.markers.NameOverride name_override */ 1:
278
+ message.nameOverride = NameOverride.internalBinaryRead(reader, reader.uint32(), options, message.nameOverride);
279
+ break;
280
+ case /* bool is_in_vehicle */ 2:
281
+ message.isInVehicle = reader.bool();
282
+ break;
283
+ case /* optional string vehicle_plate */ 3:
284
+ message.vehiclePlate = reader.string();
285
+ break;
286
+ case /* optional resources.timestamp.Timestamp vehicle_updated_at */ 4:
287
+ message.vehicleUpdatedAt = Timestamp.internalBinaryRead(reader, reader.uint32(), options, message.vehicleUpdatedAt);
288
+ break;
289
+ default:
290
+ let u = options.readUnknownField;
291
+ if (u === "throw")
292
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
293
+ let d = reader.skip(wireType);
294
+ if (u !== false)
295
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
296
+ }
297
+ }
298
+ return message;
299
+ }
300
+ internalBinaryWrite(message: UserMarkerData, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
301
+ /* optional resources.livemap.markers.NameOverride name_override = 1; */
302
+ if (message.nameOverride)
303
+ NameOverride.internalBinaryWrite(message.nameOverride, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
304
+ /* bool is_in_vehicle = 2; */
305
+ if (message.isInVehicle !== false)
306
+ writer.tag(2, WireType.Varint).bool(message.isInVehicle);
307
+ /* optional string vehicle_plate = 3; */
308
+ if (message.vehiclePlate !== undefined)
309
+ writer.tag(3, WireType.LengthDelimited).string(message.vehiclePlate);
310
+ /* optional resources.timestamp.Timestamp vehicle_updated_at = 4; */
311
+ if (message.vehicleUpdatedAt)
312
+ Timestamp.internalBinaryWrite(message.vehicleUpdatedAt, writer.tag(4, WireType.LengthDelimited).fork(), options).join();
313
+ let u = options.writeUnknownFields;
314
+ if (u !== false)
315
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
316
+ return writer;
317
+ }
318
+ }
319
+ /**
320
+ * @generated MessageType for protobuf message resources.livemap.markers.UserMarkerData
321
+ */
322
+ export const UserMarkerData = new UserMarkerData$Type();
323
+ // @generated message type with reflection information, may provide speed optimized methods
324
+ class NameOverride$Type extends MessageType<NameOverride> {
325
+ constructor() {
326
+ super("resources.livemap.markers.NameOverride", [
327
+ { no: 1, name: "firstname", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
328
+ { no: 2, name: "lastname", kind: "scalar", T: 9 /*ScalarType.STRING*/ }
329
+ ]);
330
+ }
331
+ create(value?: PartialMessage<NameOverride>): NameOverride {
332
+ const message = globalThis.Object.create((this.messagePrototype!));
333
+ message.firstname = "";
334
+ message.lastname = "";
335
+ if (value !== undefined)
336
+ reflectionMergePartial<NameOverride>(this, message, value);
337
+ return message;
338
+ }
339
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: NameOverride): NameOverride {
340
+ let message = target ?? this.create(), end = reader.pos + length;
341
+ while (reader.pos < end) {
342
+ let [fieldNo, wireType] = reader.tag();
343
+ switch (fieldNo) {
344
+ case /* string firstname */ 1:
345
+ message.firstname = reader.string();
346
+ break;
347
+ case /* string lastname */ 2:
348
+ message.lastname = reader.string();
349
+ break;
350
+ default:
351
+ let u = options.readUnknownField;
352
+ if (u === "throw")
353
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
354
+ let d = reader.skip(wireType);
355
+ if (u !== false)
356
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
357
+ }
358
+ }
359
+ return message;
360
+ }
361
+ internalBinaryWrite(message: NameOverride, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
362
+ /* string firstname = 1; */
363
+ if (message.firstname !== "")
364
+ writer.tag(1, WireType.LengthDelimited).string(message.firstname);
365
+ /* string lastname = 2; */
366
+ if (message.lastname !== "")
367
+ writer.tag(2, WireType.LengthDelimited).string(message.lastname);
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.livemap.markers.NameOverride
376
+ */
377
+ export const NameOverride = new NameOverride$Type();