@fivenet-app/gen 2026.3.0 → 2026.4.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 (37) hide show
  1. package/clients.ts +6 -6
  2. package/codegen/perms/perms.ts +93 -1
  3. package/package.json +1 -1
  4. package/perms.ts +6 -5
  5. package/resources/centrum/settings/settings.ts +1 -1
  6. package/resources/centrum/units/units.ts +1 -1
  7. package/resources/citizens/labels/labels.ts +526 -0
  8. package/resources/{users → citizens}/licenses/licenses.ts +17 -17
  9. package/resources/clientconfig/clientconfig.ts +32 -289
  10. package/resources/cron/cron.ts +2 -2
  11. package/resources/documents/access/access.ts +0 -23
  12. package/resources/documents/category/category.ts +1 -1
  13. package/resources/documents/templates/templates.ts +2 -2
  14. package/resources/jobs/labels/labels.ts +16 -5
  15. package/resources/livemap/markers/marker_marker.ts +1 -1
  16. package/resources/settings/banner.ts +1 -1
  17. package/resources/settings/config.ts +16 -14
  18. package/resources/sync/data/data.ts +9 -9
  19. package/resources/users/activity/activity.ts +132 -12
  20. package/resources/users/props/props.ts +4 -4
  21. package/resources/users/user.ts +4 -4
  22. package/services/citizens/citizens.client.ts +0 -13
  23. package/services/citizens/citizens.ts +1 -115
  24. package/services/citizens/labels.client.ts +77 -0
  25. package/services/citizens/labels.ts +455 -0
  26. package/services/completor/completor.ts +5 -5
  27. package/services/documents/documents.ts +1 -1
  28. package/services/qualifications/qualifications.ts +1 -1
  29. package/services/settings/cron.client.ts +13 -0
  30. package/services/settings/cron.ts +114 -1
  31. package/services/sync/sync.client.ts +271 -37
  32. package/services/sync/sync.ts +1438 -381
  33. package/svcs.ts +29 -27
  34. package/resources/sync/data/v2/data.ts +0 -220
  35. package/resources/users/labels/labels.ts +0 -160
  36. package/services/sync/v2/sync.client.ts +0 -331
  37. package/services/sync/v2/sync.ts +0 -1766
package/svcs.ts CHANGED
@@ -3,6 +3,9 @@
3
3
  // source: services/calendar/calendar.proto
4
4
  // source: services/centrum/centrum.proto
5
5
  // source: services/citizens/citizens.proto
6
+ // source: services/citizens/labels.proto
7
+ // source: services/citizens/citizens.proto
8
+ // source: services/citizens/labels.proto
6
9
  // source: services/completor/completor.proto
7
10
  // source: services/documents/approval.proto
8
11
  // source: services/documents/collab.proto
@@ -99,7 +102,6 @@
99
102
  // source: services/settings/system.proto
100
103
  // source: services/stats/stats.proto
101
104
  // source: services/sync/sync.proto
102
- // source: services/sync/v2/sync.proto
103
105
  // source: services/vehicles/vehicles.proto
104
106
  // source: services/wiki/collab.proto
105
107
  // source: services/wiki/wiki.proto
@@ -111,6 +113,7 @@ export const grpcServices = [
111
113
  'calendar.CalendarService',
112
114
  'centrum.CentrumService',
113
115
  'citizens.CitizensService',
116
+ 'citizens.LabelsService',
114
117
  'completor.CompletorService',
115
118
  'documents.ApprovalService',
116
119
  'documents.CollabService',
@@ -135,7 +138,6 @@ export const grpcServices = [
135
138
  'settings.SystemService',
136
139
  'stats.StatsService',
137
140
  'sync.SyncService',
138
- 'sync.v2.SyncService',
139
141
  'vehicles.VehiclesService',
140
142
  'wiki.CollabService',
141
143
  'wiki.WikiService',
@@ -200,7 +202,10 @@ export const grpcMethods = [
200
202
  'citizens.CitizensService/DeleteAvatar',
201
203
  'citizens.CitizensService/UploadMugshot',
202
204
  'citizens.CitizensService/DeleteMugshot',
203
- 'citizens.CitizensService/ManageLabels',
205
+ 'citizens.LabelsService/ListLabels',
206
+ 'citizens.LabelsService/GetLabel',
207
+ 'citizens.LabelsService/CreateOrUpdateLabel',
208
+ 'citizens.LabelsService/DeleteLabel',
204
209
  'completor.CompletorService/CompleteCitizens',
205
210
  'completor.CompletorService/CompleteJobs',
206
211
  'completor.CompletorService/CompleteDocumentCategories',
@@ -337,6 +342,7 @@ export const grpcMethods = [
337
342
  'settings.ConfigService/GetAppConfig',
338
343
  'settings.ConfigService/UpdateAppConfig',
339
344
  'settings.CronService/ListCronjobs',
345
+ 'settings.CronService/RunCronjob',
340
346
  'settings.LawsService/CreateOrUpdateLawBook',
341
347
  'settings.LawsService/DeleteLawBook',
342
348
  'settings.LawsService/CreateOrUpdateLaw',
@@ -363,34 +369,30 @@ export const grpcMethods = [
363
369
  'settings.SystemService/TriggerUserSync',
364
370
  'stats.StatsService/GetPublicStats',
365
371
  'sync.SyncService/GetStatus',
366
- 'sync.SyncService/AddActivity',
367
372
  'sync.SyncService/RegisterAccount',
368
373
  'sync.SyncService/TransferAccount',
374
+ 'sync.SyncService/AddUserOAuth2Conn',
375
+ 'sync.SyncService/AddAccountUpdate',
376
+ 'sync.SyncService/AddUserUpdate',
377
+ 'sync.SyncService/AddUserActivity',
378
+ 'sync.SyncService/AddUserProps',
379
+ 'sync.SyncService/AddColleagueActivity',
380
+ 'sync.SyncService/AddColleagueProps',
381
+ 'sync.SyncService/AddJobTimeclock',
382
+ 'sync.SyncService/AddDispatch',
383
+ 'sync.SyncService/SendJobs',
384
+ 'sync.SyncService/SendLicenses',
385
+ 'sync.SyncService/SendAccounts',
386
+ 'sync.SyncService/SendUsers',
387
+ 'sync.SyncService/SendVehicles',
388
+ 'sync.SyncService/SendUserLocations',
389
+ 'sync.SyncService/SetLastCharID',
390
+ 'sync.SyncService/DeleteUsers',
391
+ 'sync.SyncService/DeleteVehicles',
392
+ 'sync.SyncService/Stream',
393
+ 'sync.SyncService/AddActivity',
369
394
  'sync.SyncService/SendData',
370
395
  'sync.SyncService/DeleteData',
371
- 'sync.SyncService/Stream',
372
- 'sync.v2.SyncService/GetStatus',
373
- 'sync.v2.SyncService/RegisterAccount',
374
- 'sync.v2.SyncService/TransferAccount',
375
- 'sync.v2.SyncService/AddUserOAuth2Conn',
376
- 'sync.v2.SyncService/AddDispatch',
377
- 'sync.v2.SyncService/AddUserActivity',
378
- 'sync.v2.SyncService/AddUserProps',
379
- 'sync.v2.SyncService/AddColleagueActivity',
380
- 'sync.v2.SyncService/AddColleagueProps',
381
- 'sync.v2.SyncService/AddJobTimeclock',
382
- 'sync.v2.SyncService/AddAccountUpdate',
383
- 'sync.v2.SyncService/AddUserUpdate',
384
- 'sync.v2.SyncService/SendJobsData',
385
- 'sync.v2.SyncService/SendLicensesData',
386
- 'sync.v2.SyncService/SendAccountsData',
387
- 'sync.v2.SyncService/SendUsersData',
388
- 'sync.v2.SyncService/SendVehiclesData',
389
- 'sync.v2.SyncService/SendUserLocationsData',
390
- 'sync.v2.SyncService/SendLastCharIDData',
391
- 'sync.v2.SyncService/DeleteUsersData',
392
- 'sync.v2.SyncService/DeleteVehiclesData',
393
- 'sync.v2.SyncService/Stream',
394
396
  'vehicles.VehiclesService/ListVehicles',
395
397
  'vehicles.VehiclesService/SetVehicleProps',
396
398
  'wiki.CollabService/JoinRoom',
@@ -1,220 +0,0 @@
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/v2/data.proto" (package "resources.sync.data.v2", 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 { License } from "../../../users/licenses/licenses";
15
- import { PhoneNumber } from "../../../users/user";
16
- import { UserJob } from "../../../users/user";
17
- /**
18
- * @generated from protobuf message resources.sync.data.v2.DataUserJobs
19
- */
20
- export interface DataUserJobs {
21
- /**
22
- * @generated from protobuf field: int32 user_id = 1
23
- */
24
- userId: number;
25
- /**
26
- * @generated from protobuf field: repeated resources.users.UserJob jobs = 2
27
- */
28
- jobs: UserJob[];
29
- }
30
- /**
31
- * @generated from protobuf message resources.sync.data.v2.DataUserPhoneNumbers
32
- */
33
- export interface DataUserPhoneNumbers {
34
- /**
35
- * @generated from protobuf field: int32 user_id = 1
36
- */
37
- userId: number;
38
- /**
39
- * @generated from protobuf field: repeated resources.users.PhoneNumber phone_numbers = 2
40
- */
41
- phoneNumbers: PhoneNumber[];
42
- }
43
- /**
44
- * @generated from protobuf message resources.sync.data.v2.DataUserLicenses
45
- */
46
- export interface DataUserLicenses {
47
- /**
48
- * @generated from protobuf field: int32 user_id = 1
49
- */
50
- userId: number;
51
- /**
52
- * @generated from protobuf field: repeated resources.users.licenses.License licenses = 2
53
- */
54
- licenses: License[];
55
- }
56
- // @generated message type with reflection information, may provide speed optimized methods
57
- class DataUserJobs$Type extends MessageType<DataUserJobs> {
58
- constructor() {
59
- super("resources.sync.data.v2.DataUserJobs", [
60
- { no: 1, name: "user_id", kind: "scalar", T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { int32: { gt: 0 } } } },
61
- { no: 2, name: "jobs", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => UserJob, options: { "buf.validate.field": { repeated: { maxItems: "5" } } } }
62
- ]);
63
- }
64
- create(value?: PartialMessage<DataUserJobs>): DataUserJobs {
65
- const message = globalThis.Object.create((this.messagePrototype!));
66
- message.userId = 0;
67
- message.jobs = [];
68
- if (value !== undefined)
69
- reflectionMergePartial<DataUserJobs>(this, message, value);
70
- return message;
71
- }
72
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DataUserJobs): DataUserJobs {
73
- let message = target ?? this.create(), end = reader.pos + length;
74
- while (reader.pos < end) {
75
- let [fieldNo, wireType] = reader.tag();
76
- switch (fieldNo) {
77
- case /* int32 user_id */ 1:
78
- message.userId = reader.int32();
79
- break;
80
- case /* repeated resources.users.UserJob jobs */ 2:
81
- message.jobs.push(UserJob.internalBinaryRead(reader, reader.uint32(), options));
82
- break;
83
- default:
84
- let u = options.readUnknownField;
85
- if (u === "throw")
86
- throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
87
- let d = reader.skip(wireType);
88
- if (u !== false)
89
- (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
90
- }
91
- }
92
- return message;
93
- }
94
- internalBinaryWrite(message: DataUserJobs, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
95
- /* int32 user_id = 1; */
96
- if (message.userId !== 0)
97
- writer.tag(1, WireType.Varint).int32(message.userId);
98
- /* repeated resources.users.UserJob jobs = 2; */
99
- for (let i = 0; i < message.jobs.length; i++)
100
- UserJob.internalBinaryWrite(message.jobs[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join();
101
- let u = options.writeUnknownFields;
102
- if (u !== false)
103
- (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
104
- return writer;
105
- }
106
- }
107
- /**
108
- * @generated MessageType for protobuf message resources.sync.data.v2.DataUserJobs
109
- */
110
- export const DataUserJobs = new DataUserJobs$Type();
111
- // @generated message type with reflection information, may provide speed optimized methods
112
- class DataUserPhoneNumbers$Type extends MessageType<DataUserPhoneNumbers> {
113
- constructor() {
114
- super("resources.sync.data.v2.DataUserPhoneNumbers", [
115
- { no: 1, name: "user_id", kind: "scalar", T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { int32: { gt: 0 } } } },
116
- { no: 2, name: "phone_numbers", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => PhoneNumber, options: { "buf.validate.field": { repeated: { maxItems: "5" } } } }
117
- ]);
118
- }
119
- create(value?: PartialMessage<DataUserPhoneNumbers>): DataUserPhoneNumbers {
120
- const message = globalThis.Object.create((this.messagePrototype!));
121
- message.userId = 0;
122
- message.phoneNumbers = [];
123
- if (value !== undefined)
124
- reflectionMergePartial<DataUserPhoneNumbers>(this, message, value);
125
- return message;
126
- }
127
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DataUserPhoneNumbers): DataUserPhoneNumbers {
128
- let message = target ?? this.create(), end = reader.pos + length;
129
- while (reader.pos < end) {
130
- let [fieldNo, wireType] = reader.tag();
131
- switch (fieldNo) {
132
- case /* int32 user_id */ 1:
133
- message.userId = reader.int32();
134
- break;
135
- case /* repeated resources.users.PhoneNumber phone_numbers */ 2:
136
- message.phoneNumbers.push(PhoneNumber.internalBinaryRead(reader, reader.uint32(), options));
137
- break;
138
- default:
139
- let u = options.readUnknownField;
140
- if (u === "throw")
141
- throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
142
- let d = reader.skip(wireType);
143
- if (u !== false)
144
- (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
145
- }
146
- }
147
- return message;
148
- }
149
- internalBinaryWrite(message: DataUserPhoneNumbers, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
150
- /* int32 user_id = 1; */
151
- if (message.userId !== 0)
152
- writer.tag(1, WireType.Varint).int32(message.userId);
153
- /* repeated resources.users.PhoneNumber phone_numbers = 2; */
154
- for (let i = 0; i < message.phoneNumbers.length; i++)
155
- PhoneNumber.internalBinaryWrite(message.phoneNumbers[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join();
156
- let u = options.writeUnknownFields;
157
- if (u !== false)
158
- (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
159
- return writer;
160
- }
161
- }
162
- /**
163
- * @generated MessageType for protobuf message resources.sync.data.v2.DataUserPhoneNumbers
164
- */
165
- export const DataUserPhoneNumbers = new DataUserPhoneNumbers$Type();
166
- // @generated message type with reflection information, may provide speed optimized methods
167
- class DataUserLicenses$Type extends MessageType<DataUserLicenses> {
168
- constructor() {
169
- super("resources.sync.data.v2.DataUserLicenses", [
170
- { no: 1, name: "user_id", kind: "scalar", T: 5 /*ScalarType.INT32*/, options: { "buf.validate.field": { int32: { gt: 0 } } } },
171
- { no: 2, name: "licenses", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => License, options: { "buf.validate.field": { repeated: { maxItems: "20" } } } }
172
- ]);
173
- }
174
- create(value?: PartialMessage<DataUserLicenses>): DataUserLicenses {
175
- const message = globalThis.Object.create((this.messagePrototype!));
176
- message.userId = 0;
177
- message.licenses = [];
178
- if (value !== undefined)
179
- reflectionMergePartial<DataUserLicenses>(this, message, value);
180
- return message;
181
- }
182
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DataUserLicenses): DataUserLicenses {
183
- let message = target ?? this.create(), end = reader.pos + length;
184
- while (reader.pos < end) {
185
- let [fieldNo, wireType] = reader.tag();
186
- switch (fieldNo) {
187
- case /* int32 user_id */ 1:
188
- message.userId = reader.int32();
189
- break;
190
- case /* repeated resources.users.licenses.License licenses */ 2:
191
- message.licenses.push(License.internalBinaryRead(reader, reader.uint32(), options));
192
- break;
193
- default:
194
- let u = options.readUnknownField;
195
- if (u === "throw")
196
- throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
197
- let d = reader.skip(wireType);
198
- if (u !== false)
199
- (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
200
- }
201
- }
202
- return message;
203
- }
204
- internalBinaryWrite(message: DataUserLicenses, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
205
- /* int32 user_id = 1; */
206
- if (message.userId !== 0)
207
- writer.tag(1, WireType.Varint).int32(message.userId);
208
- /* repeated resources.users.licenses.License licenses = 2; */
209
- for (let i = 0; i < message.licenses.length; i++)
210
- License.internalBinaryWrite(message.licenses[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join();
211
- let u = options.writeUnknownFields;
212
- if (u !== false)
213
- (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
214
- return writer;
215
- }
216
- }
217
- /**
218
- * @generated MessageType for protobuf message resources.sync.data.v2.DataUserLicenses
219
- */
220
- export const DataUserLicenses = new DataUserLicenses$Type();
@@ -1,160 +0,0 @@
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/users/labels/labels.proto" (package "resources.users.labels", 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.users.labels.Labels
16
- */
17
- export interface Labels {
18
- /**
19
- * @generated from protobuf field: repeated resources.users.labels.Label list = 1
20
- */
21
- list: Label[];
22
- }
23
- /**
24
- * @generated from protobuf message resources.users.labels.Label
25
- */
26
- export interface Label {
27
- /**
28
- * @generated from protobuf field: int64 id = 1
29
- */
30
- id: number;
31
- /**
32
- * @generated from protobuf field: optional string job = 2
33
- */
34
- job?: string;
35
- /**
36
- * @generated from protobuf field: string name = 3
37
- */
38
- name: string;
39
- /**
40
- * @generated from protobuf field: string color = 4
41
- */
42
- color: string;
43
- }
44
- // @generated message type with reflection information, may provide speed optimized methods
45
- class Labels$Type extends MessageType<Labels> {
46
- constructor() {
47
- super("resources.users.labels.Labels", [
48
- { no: 1, name: "list", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => Label, options: { "buf.validate.field": { repeated: { maxItems: "10" } } } }
49
- ], { "codegen.dbscanner.dbscanner": { enabled: true } });
50
- }
51
- create(value?: PartialMessage<Labels>): Labels {
52
- const message = globalThis.Object.create((this.messagePrototype!));
53
- message.list = [];
54
- if (value !== undefined)
55
- reflectionMergePartial<Labels>(this, message, value);
56
- return message;
57
- }
58
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Labels): Labels {
59
- let message = target ?? this.create(), end = reader.pos + length;
60
- while (reader.pos < end) {
61
- let [fieldNo, wireType] = reader.tag();
62
- switch (fieldNo) {
63
- case /* repeated resources.users.labels.Label list */ 1:
64
- message.list.push(Label.internalBinaryRead(reader, reader.uint32(), options));
65
- break;
66
- default:
67
- let u = options.readUnknownField;
68
- if (u === "throw")
69
- throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
70
- let d = reader.skip(wireType);
71
- if (u !== false)
72
- (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
73
- }
74
- }
75
- return message;
76
- }
77
- internalBinaryWrite(message: Labels, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
78
- /* repeated resources.users.labels.Label list = 1; */
79
- for (let i = 0; i < message.list.length; i++)
80
- Label.internalBinaryWrite(message.list[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();
81
- let u = options.writeUnknownFields;
82
- if (u !== false)
83
- (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
84
- return writer;
85
- }
86
- }
87
- /**
88
- * @generated MessageType for protobuf message resources.users.labels.Labels
89
- */
90
- export const Labels = new Labels$Type();
91
- // @generated message type with reflection information, may provide speed optimized methods
92
- class Label$Type extends MessageType<Label> {
93
- constructor() {
94
- super("resources.users.labels.Label", [
95
- { no: 1, name: "id", kind: "scalar", T: 3 /*ScalarType.INT64*/, L: 2 /*LongType.NUMBER*/, options: { "tagger.tags": "sql:\"primary_key\" alias:\"id\"" } },
96
- { no: 2, name: "job", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "20" } } } },
97
- { no: 3, name: "name", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { maxLen: "48" } }, "codegen.sanitizer.sanitizer": { enabled: true, stripHtmlTags: true } } },
98
- { no: 4, name: "color", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "buf.validate.field": { string: { len: "7", pattern: "^#[A-Fa-f0-9]{6}$" } }, "codegen.sanitizer.sanitizer": { enabled: true, stripHtmlTags: true } } }
99
- ]);
100
- }
101
- create(value?: PartialMessage<Label>): Label {
102
- const message = globalThis.Object.create((this.messagePrototype!));
103
- message.id = 0;
104
- message.name = "";
105
- message.color = "";
106
- if (value !== undefined)
107
- reflectionMergePartial<Label>(this, message, value);
108
- return message;
109
- }
110
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Label): Label {
111
- let message = target ?? this.create(), end = reader.pos + length;
112
- while (reader.pos < end) {
113
- let [fieldNo, wireType] = reader.tag();
114
- switch (fieldNo) {
115
- case /* int64 id */ 1:
116
- message.id = reader.int64().toNumber();
117
- break;
118
- case /* optional string job */ 2:
119
- message.job = reader.string();
120
- break;
121
- case /* string name */ 3:
122
- message.name = reader.string();
123
- break;
124
- case /* string color */ 4:
125
- message.color = reader.string();
126
- break;
127
- default:
128
- let u = options.readUnknownField;
129
- if (u === "throw")
130
- throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
131
- let d = reader.skip(wireType);
132
- if (u !== false)
133
- (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
134
- }
135
- }
136
- return message;
137
- }
138
- internalBinaryWrite(message: Label, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
139
- /* int64 id = 1; */
140
- if (message.id !== 0)
141
- writer.tag(1, WireType.Varint).int64(message.id);
142
- /* optional string job = 2; */
143
- if (message.job !== undefined)
144
- writer.tag(2, WireType.LengthDelimited).string(message.job);
145
- /* string name = 3; */
146
- if (message.name !== "")
147
- writer.tag(3, WireType.LengthDelimited).string(message.name);
148
- /* string color = 4; */
149
- if (message.color !== "")
150
- writer.tag(4, WireType.LengthDelimited).string(message.color);
151
- let u = options.writeUnknownFields;
152
- if (u !== false)
153
- (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
154
- return writer;
155
- }
156
- }
157
- /**
158
- * @generated MessageType for protobuf message resources.users.labels.Label
159
- */
160
- export const Label = new Label$Type();