@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,93 @@
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/heatmap.proto" (package "resources.livemap", 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
+ /**
15
+ * @generated from protobuf message resources.livemap.HeatmapEntry
16
+ */
17
+ export interface HeatmapEntry {
18
+ /**
19
+ * @generated from protobuf field: double x = 1
20
+ */
21
+ x: number;
22
+ /**
23
+ * @generated from protobuf field: double y = 2
24
+ */
25
+ y: number;
26
+ /**
27
+ * @generated from protobuf field: double w = 3
28
+ */
29
+ w: number;
30
+ }
31
+ // @generated message type with reflection information, may provide speed optimized methods
32
+ class HeatmapEntry$Type extends MessageType<HeatmapEntry> {
33
+ constructor() {
34
+ super("resources.livemap.HeatmapEntry", [
35
+ { no: 1, name: "x", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ },
36
+ { no: 2, name: "y", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ },
37
+ { no: 3, name: "w", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ }
38
+ ]);
39
+ }
40
+ create(value?: PartialMessage<HeatmapEntry>): HeatmapEntry {
41
+ const message = globalThis.Object.create((this.messagePrototype!));
42
+ message.x = 0;
43
+ message.y = 0;
44
+ message.w = 0;
45
+ if (value !== undefined)
46
+ reflectionMergePartial<HeatmapEntry>(this, message, value);
47
+ return message;
48
+ }
49
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: HeatmapEntry): HeatmapEntry {
50
+ let message = target ?? this.create(), end = reader.pos + length;
51
+ while (reader.pos < end) {
52
+ let [fieldNo, wireType] = reader.tag();
53
+ switch (fieldNo) {
54
+ case /* double x */ 1:
55
+ message.x = reader.double();
56
+ break;
57
+ case /* double y */ 2:
58
+ message.y = reader.double();
59
+ break;
60
+ case /* double w */ 3:
61
+ message.w = reader.double();
62
+ break;
63
+ default:
64
+ let u = options.readUnknownField;
65
+ if (u === "throw")
66
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
67
+ let d = reader.skip(wireType);
68
+ if (u !== false)
69
+ (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
70
+ }
71
+ }
72
+ return message;
73
+ }
74
+ internalBinaryWrite(message: HeatmapEntry, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
75
+ /* double x = 1; */
76
+ if (message.x !== 0)
77
+ writer.tag(1, WireType.Bit64).double(message.x);
78
+ /* double y = 2; */
79
+ if (message.y !== 0)
80
+ writer.tag(2, WireType.Bit64).double(message.y);
81
+ /* double w = 3; */
82
+ if (message.w !== 0)
83
+ writer.tag(3, WireType.Bit64).double(message.w);
84
+ let u = options.writeUnknownFields;
85
+ if (u !== false)
86
+ (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
87
+ return writer;
88
+ }
89
+ }
90
+ /**
91
+ * @generated MessageType for protobuf message resources.livemap.HeatmapEntry
92
+ */
93
+ export const HeatmapEntry = new HeatmapEntry$Type();
@@ -1,5 +1,6 @@
1
- // @generated by protobuf-ts 2.10.0 with parameter optimize_speed,long_type_number,force_server_none
2
- // @generated from protobuf file "resources/livemap/livemap.proto" (package "resources.livemap", syntax proto3)
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/marker_marker.proto" (package "resources.livemap", syntax proto3)
3
+ // tslint:disable
3
4
  // @ts-nocheck
4
5
  import type { BinaryWriteOptions } from "@protobuf-ts/runtime";
5
6
  import type { IBinaryWriter } from "@protobuf-ts/runtime";
@@ -11,150 +12,81 @@ import type { PartialMessage } from "@protobuf-ts/runtime";
11
12
  import { reflectionMergePartial } from "@protobuf-ts/runtime";
12
13
  import { MessageType } from "@protobuf-ts/runtime";
13
14
  import { UserShort } from "../users/users";
14
- import { Unit } from "../centrum/units";
15
- import { Colleague } from "../jobs/colleagues";
16
15
  import { Timestamp } from "../timestamp/timestamp";
17
- /**
18
- * @generated from protobuf message resources.livemap.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
- * @sanitize: method=StripTags
39
- *
40
- * @generated from protobuf field: optional string postal = 5;
41
- */
42
- postal?: string;
43
- /**
44
- * @sanitize: method=StripTags
45
- *
46
- * @generated from protobuf field: optional string color = 6;
47
- */
48
- color?: string;
49
- /**
50
- * @generated from protobuf field: string job = 7;
51
- */
52
- job: string;
53
- /**
54
- * @generated from protobuf field: string job_label = 8;
55
- */
56
- jobLabel: string;
57
- /**
58
- * @generated from protobuf field: resources.jobs.Colleague user = 9;
59
- */
60
- user?: Colleague; // @gotags: alias:"user"
61
- /**
62
- * @generated from protobuf field: optional uint64 unit_id = 10;
63
- */
64
- unitId?: number;
65
- /**
66
- * @generated from protobuf field: optional resources.centrum.Unit unit = 11;
67
- */
68
- unit?: Unit;
69
- /**
70
- * @generated from protobuf field: bool hidden = 12;
71
- */
72
- hidden: boolean;
73
- }
74
16
  /**
75
17
  * @generated from protobuf message resources.livemap.MarkerMarker
76
18
  */
77
19
  export interface MarkerMarker {
78
20
  /**
79
- * @generated from protobuf field: uint64 id = 1;
21
+ * @generated from protobuf field: int64 id = 1
80
22
  */
81
23
  id: number;
82
24
  /**
83
- * @generated from protobuf field: double x = 2;
25
+ * @generated from protobuf field: double x = 2
84
26
  */
85
27
  x: number;
86
28
  /**
87
- * @generated from protobuf field: double y = 3;
29
+ * @generated from protobuf field: double y = 3
88
30
  */
89
31
  y: number;
90
32
  /**
91
- * @generated from protobuf field: optional resources.timestamp.Timestamp created_at = 4;
33
+ * @generated from protobuf field: optional resources.timestamp.Timestamp created_at = 4
92
34
  */
93
35
  createdAt?: Timestamp;
94
36
  /**
95
- * @generated from protobuf field: optional resources.timestamp.Timestamp updated_at = 5;
37
+ * @generated from protobuf field: optional resources.timestamp.Timestamp updated_at = 5
96
38
  */
97
39
  updatedAt?: Timestamp;
98
40
  /**
99
- * @generated from protobuf field: optional resources.timestamp.Timestamp expires_at = 6;
41
+ * @generated from protobuf field: optional resources.timestamp.Timestamp expires_at = 6
100
42
  */
101
43
  expiresAt?: Timestamp;
102
44
  /**
103
- * @generated from protobuf field: optional resources.timestamp.Timestamp deleted_at = 7;
45
+ * @generated from protobuf field: optional resources.timestamp.Timestamp deleted_at = 7
104
46
  */
105
47
  deletedAt?: Timestamp;
106
48
  /**
107
- * @sanitize
108
- *
109
- * @generated from protobuf field: string name = 8;
49
+ * @generated from protobuf field: string name = 8
110
50
  */
111
51
  name: string;
112
52
  /**
113
- * @sanitize
114
- *
115
- * @generated from protobuf field: optional string description = 9;
53
+ * @generated from protobuf field: optional string description = 9
116
54
  */
117
55
  description?: string;
118
56
  /**
119
- * @sanitize: method=StripTags
120
- *
121
- * @generated from protobuf field: optional string postal = 10;
57
+ * @generated from protobuf field: optional string postal = 10
122
58
  */
123
59
  postal?: string;
124
60
  /**
125
- * @sanitize: method=StripTags
126
- *
127
- * @generated from protobuf field: optional string color = 11;
61
+ * @generated from protobuf field: optional string color = 11
128
62
  */
129
63
  color?: string;
130
64
  /**
131
- * @generated from protobuf field: string job = 12;
65
+ * @generated from protobuf field: string job = 12
132
66
  */
133
67
  job: string;
134
68
  /**
135
- * @generated from protobuf field: string job_label = 13;
69
+ * @generated from protobuf field: string job_label = 13
136
70
  */
137
71
  jobLabel: string;
138
72
  /**
139
- * @generated from protobuf field: resources.livemap.MarkerType type = 14;
73
+ * @generated from protobuf field: resources.livemap.MarkerType type = 14
140
74
  */
141
- type: MarkerType; // @gotags: alias:"markerType"
75
+ type: MarkerType;
142
76
  /**
143
- * @generated from protobuf field: resources.livemap.MarkerData data = 15;
77
+ * @generated from protobuf field: resources.livemap.MarkerData data = 15
144
78
  */
145
- data?: MarkerData; // @gotags: alias:"markerData"
79
+ data?: MarkerData;
146
80
  /**
147
- * @generated from protobuf field: optional int32 creator_id = 16;
81
+ * @generated from protobuf field: optional int32 creator_id = 16
148
82
  */
149
83
  creatorId?: number;
150
84
  /**
151
- * @generated from protobuf field: optional resources.users.UserShort creator = 17;
85
+ * @generated from protobuf field: optional resources.users.UserShort creator = 17
152
86
  */
153
87
  creator?: UserShort;
154
88
  }
155
89
  /**
156
- * @dbscanner
157
- *
158
90
  * @generated from protobuf message resources.livemap.MarkerData
159
91
  */
160
92
  export interface MarkerData {
@@ -164,13 +96,13 @@ export interface MarkerData {
164
96
  data: {
165
97
  oneofKind: "circle";
166
98
  /**
167
- * @generated from protobuf field: resources.livemap.CircleMarker circle = 3;
99
+ * @generated from protobuf field: resources.livemap.CircleMarker circle = 3
168
100
  */
169
101
  circle: CircleMarker;
170
102
  } | {
171
103
  oneofKind: "icon";
172
104
  /**
173
- * @generated from protobuf field: resources.livemap.IconMarker icon = 4;
105
+ * @generated from protobuf field: resources.livemap.IconMarker icon = 4
174
106
  */
175
107
  icon: IconMarker;
176
108
  } | {
@@ -182,11 +114,11 @@ export interface MarkerData {
182
114
  */
183
115
  export interface CircleMarker {
184
116
  /**
185
- * @generated from protobuf field: int32 radius = 1;
117
+ * @generated from protobuf field: int32 radius = 1
186
118
  */
187
119
  radius: number;
188
120
  /**
189
- * @generated from protobuf field: optional float opacity = 2;
121
+ * @generated from protobuf field: optional float opacity = 2
190
122
  */
191
123
  opacity?: number;
192
124
  }
@@ -195,25 +127,10 @@ export interface CircleMarker {
195
127
  */
196
128
  export interface IconMarker {
197
129
  /**
198
- * @sanitize: method=StripTags
199
- *
200
- * @generated from protobuf field: string icon = 1;
130
+ * @generated from protobuf field: string icon = 1
201
131
  */
202
132
  icon: string;
203
133
  }
204
- /**
205
- * @generated from protobuf message resources.livemap.Coords
206
- */
207
- export interface Coords {
208
- /**
209
- * @generated from protobuf field: double x = 1;
210
- */
211
- x: number;
212
- /**
213
- * @generated from protobuf field: double y = 2;
214
- */
215
- y: number;
216
- }
217
134
  /**
218
135
  * @generated from protobuf enum resources.livemap.MarkerType
219
136
  */
@@ -236,154 +153,25 @@ export enum MarkerType {
236
153
  ICON = 3
237
154
  }
238
155
  // @generated message type with reflection information, may provide speed optimized methods
239
- class UserMarker$Type extends MessageType<UserMarker> {
240
- constructor() {
241
- super("resources.livemap.UserMarker", [
242
- { no: 1, name: "user_id", kind: "scalar", T: 5 /*ScalarType.INT32*/, options: { "validate.rules": { int32: { gt: 0 } } } },
243
- { no: 2, name: "x", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ },
244
- { no: 3, name: "y", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ },
245
- { no: 4, name: "updated_at", kind: "message", T: () => Timestamp },
246
- { no: 5, name: "postal", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { maxLen: "48" } } } },
247
- { no: 6, name: "color", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { len: "7", pattern: "^#[A-Fa-f0-9]{6}$" } } } },
248
- { no: 7, name: "job", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { maxLen: "20" } } } },
249
- { no: 8, name: "job_label", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
250
- { no: 9, name: "user", kind: "message", T: () => Colleague },
251
- { no: 10, name: "unit_id", kind: "scalar", opt: true, T: 4 /*ScalarType.UINT64*/, L: 2 /*LongType.NUMBER*/ },
252
- { no: 11, name: "unit", kind: "message", T: () => Unit },
253
- { no: 12, name: "hidden", kind: "scalar", T: 8 /*ScalarType.BOOL*/ }
254
- ]);
255
- }
256
- create(value?: PartialMessage<UserMarker>): UserMarker {
257
- const message = globalThis.Object.create((this.messagePrototype!));
258
- message.userId = 0;
259
- message.x = 0;
260
- message.y = 0;
261
- message.job = "";
262
- message.jobLabel = "";
263
- message.hidden = false;
264
- if (value !== undefined)
265
- reflectionMergePartial<UserMarker>(this, message, value);
266
- return message;
267
- }
268
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: UserMarker): UserMarker {
269
- let message = target ?? this.create(), end = reader.pos + length;
270
- while (reader.pos < end) {
271
- let [fieldNo, wireType] = reader.tag();
272
- switch (fieldNo) {
273
- case /* int32 user_id */ 1:
274
- message.userId = reader.int32();
275
- break;
276
- case /* double x */ 2:
277
- message.x = reader.double();
278
- break;
279
- case /* double y */ 3:
280
- message.y = reader.double();
281
- break;
282
- case /* optional resources.timestamp.Timestamp updated_at */ 4:
283
- message.updatedAt = Timestamp.internalBinaryRead(reader, reader.uint32(), options, message.updatedAt);
284
- break;
285
- case /* optional string postal */ 5:
286
- message.postal = reader.string();
287
- break;
288
- case /* optional string color */ 6:
289
- message.color = reader.string();
290
- break;
291
- case /* string job */ 7:
292
- message.job = reader.string();
293
- break;
294
- case /* string job_label */ 8:
295
- message.jobLabel = reader.string();
296
- break;
297
- case /* resources.jobs.Colleague user */ 9:
298
- message.user = Colleague.internalBinaryRead(reader, reader.uint32(), options, message.user);
299
- break;
300
- case /* optional uint64 unit_id */ 10:
301
- message.unitId = reader.uint64().toNumber();
302
- break;
303
- case /* optional resources.centrum.Unit unit */ 11:
304
- message.unit = Unit.internalBinaryRead(reader, reader.uint32(), options, message.unit);
305
- break;
306
- case /* bool hidden */ 12:
307
- message.hidden = reader.bool();
308
- break;
309
- default:
310
- let u = options.readUnknownField;
311
- if (u === "throw")
312
- throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
313
- let d = reader.skip(wireType);
314
- if (u !== false)
315
- (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
316
- }
317
- }
318
- return message;
319
- }
320
- internalBinaryWrite(message: UserMarker, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
321
- /* int32 user_id = 1; */
322
- if (message.userId !== 0)
323
- writer.tag(1, WireType.Varint).int32(message.userId);
324
- /* double x = 2; */
325
- if (message.x !== 0)
326
- writer.tag(2, WireType.Bit64).double(message.x);
327
- /* double y = 3; */
328
- if (message.y !== 0)
329
- writer.tag(3, WireType.Bit64).double(message.y);
330
- /* optional resources.timestamp.Timestamp updated_at = 4; */
331
- if (message.updatedAt)
332
- Timestamp.internalBinaryWrite(message.updatedAt, writer.tag(4, WireType.LengthDelimited).fork(), options).join();
333
- /* optional string postal = 5; */
334
- if (message.postal !== undefined)
335
- writer.tag(5, WireType.LengthDelimited).string(message.postal);
336
- /* optional string color = 6; */
337
- if (message.color !== undefined)
338
- writer.tag(6, WireType.LengthDelimited).string(message.color);
339
- /* string job = 7; */
340
- if (message.job !== "")
341
- writer.tag(7, WireType.LengthDelimited).string(message.job);
342
- /* string job_label = 8; */
343
- if (message.jobLabel !== "")
344
- writer.tag(8, WireType.LengthDelimited).string(message.jobLabel);
345
- /* resources.jobs.Colleague user = 9; */
346
- if (message.user)
347
- Colleague.internalBinaryWrite(message.user, writer.tag(9, WireType.LengthDelimited).fork(), options).join();
348
- /* optional uint64 unit_id = 10; */
349
- if (message.unitId !== undefined)
350
- writer.tag(10, WireType.Varint).uint64(message.unitId);
351
- /* optional resources.centrum.Unit unit = 11; */
352
- if (message.unit)
353
- Unit.internalBinaryWrite(message.unit, writer.tag(11, WireType.LengthDelimited).fork(), options).join();
354
- /* bool hidden = 12; */
355
- if (message.hidden !== false)
356
- writer.tag(12, WireType.Varint).bool(message.hidden);
357
- let u = options.writeUnknownFields;
358
- if (u !== false)
359
- (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
360
- return writer;
361
- }
362
- }
363
- /**
364
- * @generated MessageType for protobuf message resources.livemap.UserMarker
365
- */
366
- export const UserMarker = new UserMarker$Type();
367
- // @generated message type with reflection information, may provide speed optimized methods
368
156
  class MarkerMarker$Type extends MessageType<MarkerMarker> {
369
157
  constructor() {
370
158
  super("resources.livemap.MarkerMarker", [
371
- { no: 1, name: "id", kind: "scalar", T: 4 /*ScalarType.UINT64*/, L: 2 /*LongType.NUMBER*/ },
159
+ { no: 1, name: "id", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 2 /*LongType.NUMBER*/ },
372
160
  { no: 2, name: "x", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ },
373
161
  { no: 3, name: "y", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ },
374
162
  { no: 4, name: "created_at", kind: "message", T: () => Timestamp },
375
163
  { no: 5, name: "updated_at", kind: "message", T: () => Timestamp },
376
164
  { no: 6, name: "expires_at", kind: "message", T: () => Timestamp },
377
165
  { no: 7, name: "deleted_at", kind: "message", T: () => Timestamp },
378
- { no: 8, name: "name", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1", maxLen: "255" } } } },
379
- { no: 9, name: "description", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/ },
380
- { no: 10, name: "postal", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { maxLen: "48" } } } },
381
- { no: 11, name: "color", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { len: "7", pattern: "^#[A-Fa-f0-9]{6}$" } } } },
382
- { no: 12, name: "job", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { maxLen: "20" } } } },
166
+ { no: 8, name: "name", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { minLen: "1", maxLen: "255" } }, "codegen.sanitizer.sanitizer": { enabled: true } } },
167
+ { no: 9, name: "description", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "1024" } }, "codegen.sanitizer.sanitizer": { enabled: true } } },
168
+ { no: 10, name: "postal", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "48" } }, "codegen.sanitizer.sanitizer": { enabled: true, method: "StripTags" } } },
169
+ { no: 11, 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, method: "StripTags" } } },
170
+ { no: 12, name: "job", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "20" } } } },
383
171
  { no: 13, name: "job_label", kind: "scalar", T: 9 /*ScalarType.STRING*/ },
384
- { no: 14, name: "type", kind: "enum", T: () => ["resources.livemap.MarkerType", MarkerType, "MARKER_TYPE_"] },
385
- { no: 15, name: "data", kind: "message", T: () => MarkerData },
386
- { no: 16, name: "creator_id", kind: "scalar", opt: true, T: 5 /*ScalarType.INT32*/, options: { "validate.rules": { int32: { gt: 0 } } } },
172
+ { no: 14, name: "type", kind: "enum", T: () => ["resources.livemap.MarkerType", MarkerType, "MARKER_TYPE_"], options: { "tagger.tags": "alias:\"markerType\"" } },
173
+ { no: 15, name: "data", kind: "message", T: () => MarkerData, options: { "tagger.tags": "alias:\"markerData\"" } },
174
+ { no: 16, name: "creator_id", kind: "scalar", opt: true, T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { int32: { gt: 0 } } } },
387
175
  { no: 17, name: "creator", kind: "message", T: () => UserShort }
388
176
  ]);
389
177
  }
@@ -405,8 +193,8 @@ class MarkerMarker$Type extends MessageType<MarkerMarker> {
405
193
  while (reader.pos < end) {
406
194
  let [fieldNo, wireType] = reader.tag();
407
195
  switch (fieldNo) {
408
- case /* uint64 id */ 1:
409
- message.id = reader.uint64().toNumber();
196
+ case /* int64 id */ 1:
197
+ message.id = reader.int64().toNumber();
410
198
  break;
411
199
  case /* double x */ 2:
412
200
  message.x = reader.double();
@@ -468,9 +256,9 @@ class MarkerMarker$Type extends MessageType<MarkerMarker> {
468
256
  return message;
469
257
  }
470
258
  internalBinaryWrite(message: MarkerMarker, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
471
- /* uint64 id = 1; */
259
+ /* int64 id = 1; */
472
260
  if (message.id !== 0)
473
- writer.tag(1, WireType.Varint).uint64(message.id);
261
+ writer.tag(1, WireType.Varint).int64(message.id);
474
262
  /* double x = 2; */
475
263
  if (message.x !== 0)
476
264
  writer.tag(2, WireType.Bit64).double(message.x);
@@ -535,7 +323,7 @@ class MarkerData$Type extends MessageType<MarkerData> {
535
323
  super("resources.livemap.MarkerData", [
536
324
  { no: 3, name: "circle", kind: "message", oneof: "data", T: () => CircleMarker },
537
325
  { no: 4, name: "icon", kind: "message", oneof: "data", T: () => IconMarker }
538
- ]);
326
+ ], { "codegen.dbscanner.dbscanner": { enabled: true, notJson: true } });
539
327
  }
540
328
  create(value?: PartialMessage<MarkerData>): MarkerData {
541
329
  const message = globalThis.Object.create((this.messagePrototype!));
@@ -594,7 +382,7 @@ class CircleMarker$Type extends MessageType<CircleMarker> {
594
382
  constructor() {
595
383
  super("resources.livemap.CircleMarker", [
596
384
  { no: 1, name: "radius", kind: "scalar", T: 5 /*ScalarType.INT32*/ },
597
- { no: 2, name: "opacity", kind: "scalar", opt: true, T: 2 /*ScalarType.FLOAT*/, options: { "validate.rules": { float: { lte: 75, gte: 1 } } } }
385
+ { no: 2, name: "opacity", kind: "scalar", opt: true, T: 2 /*ScalarType.FLOAT*/, options: { "buf.validate.field": { float: { lte: 75, gte: 1 } } } }
598
386
  ]);
599
387
  }
600
388
  create(value?: PartialMessage<CircleMarker>): CircleMarker {
@@ -647,7 +435,7 @@ export const CircleMarker = new CircleMarker$Type();
647
435
  class IconMarker$Type extends MessageType<IconMarker> {
648
436
  constructor() {
649
437
  super("resources.livemap.IconMarker", [
650
- { no: 1, name: "icon", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { maxLen: "128" } } } }
438
+ { no: 1, name: "icon", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "128", suffix: "Icon" } }, "codegen.sanitizer.sanitizer": { enabled: true, method: "StripTags" } } }
651
439
  ]);
652
440
  }
653
441
  create(value?: PartialMessage<IconMarker>): IconMarker {
@@ -690,58 +478,3 @@ class IconMarker$Type extends MessageType<IconMarker> {
690
478
  * @generated MessageType for protobuf message resources.livemap.IconMarker
691
479
  */
692
480
  export const IconMarker = new IconMarker$Type();
693
- // @generated message type with reflection information, may provide speed optimized methods
694
- class Coords$Type extends MessageType<Coords> {
695
- constructor() {
696
- super("resources.livemap.Coords", [
697
- { no: 1, name: "x", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ },
698
- { no: 2, name: "y", kind: "scalar", T: 1 /*ScalarType.DOUBLE*/ }
699
- ]);
700
- }
701
- create(value?: PartialMessage<Coords>): Coords {
702
- const message = globalThis.Object.create((this.messagePrototype!));
703
- message.x = 0;
704
- message.y = 0;
705
- if (value !== undefined)
706
- reflectionMergePartial<Coords>(this, message, value);
707
- return message;
708
- }
709
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Coords): Coords {
710
- let message = target ?? this.create(), end = reader.pos + length;
711
- while (reader.pos < end) {
712
- let [fieldNo, wireType] = reader.tag();
713
- switch (fieldNo) {
714
- case /* double x */ 1:
715
- message.x = reader.double();
716
- break;
717
- case /* double y */ 2:
718
- message.y = reader.double();
719
- break;
720
- default:
721
- let u = options.readUnknownField;
722
- if (u === "throw")
723
- throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
724
- let d = reader.skip(wireType);
725
- if (u !== false)
726
- (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
727
- }
728
- }
729
- return message;
730
- }
731
- internalBinaryWrite(message: Coords, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
732
- /* double x = 1; */
733
- if (message.x !== 0)
734
- writer.tag(1, WireType.Bit64).double(message.x);
735
- /* double y = 2; */
736
- if (message.y !== 0)
737
- writer.tag(2, WireType.Bit64).double(message.y);
738
- let u = options.writeUnknownFields;
739
- if (u !== false)
740
- (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
741
- return writer;
742
- }
743
- }
744
- /**
745
- * @generated MessageType for protobuf message resources.livemap.Coords
746
- */
747
- export const Coords = new Coords$Type();