protons 8.0.2 → 8.1.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.
package/README.md CHANGED
@@ -189,13 +189,15 @@ By default 64 bit types are implemented as [BigInt](https://developer.mozilla.or
189
189
 
190
190
  Sometimes this is undesirable due to [performance issues](https://betterprogramming.pub/the-downsides-of-bigints-in-javascript-6350fd807d) or code legibility.
191
191
 
192
- It's possible to override the JavaScript type 64 bit fields will deserialize to:
192
+ It's possible to override the JavaScript type 64 bit fields will deserialize
193
+ to, including repeated fields and map key/values:
193
194
 
194
195
  ```
195
196
  message MyMessage {
196
- repeated int64 bigintField = 1;
197
- repeated int64 numberField = 2 [jstype = JS_NUMBER];
198
- repeated int64 stringField = 3 [jstype = JS_STRING];
197
+ int64 bigintField = 1;
198
+ int64 numberField = 2 [jstype = JS_NUMBER];
199
+ repeated int64 stringArray = 3 [jstype = JS_STRING];
200
+ map<int64, int64, bigintMap = 4 [jskeytype = JS_STRING, jsvaluetype = JS_STRING];
199
201
  }
200
202
  ```
201
203
 
@@ -204,7 +206,8 @@ const message = MyMessage.decode(buf)
204
206
 
205
207
  console.info(typeof message.bigintField) // bigint
206
208
  console.info(typeof message.numberField) // number
207
- console.info(typeof message.stringField) // string
209
+ console.info(typeof message.stringArray[0]) // string
210
+ console.info(typeof message.bigintMap.get('5')) // string
208
211
  ```
209
212
 
210
213
  ## Missing features
@@ -8,6 +8,7 @@ export declare const CODEC_TYPES: {
8
8
  BIT32: number;
9
9
  };
10
10
  export declare const codecTypes: Record<string, number>;
11
+ export declare const jsTypeOverrides: Record<string, 'number' | 'string'>;
11
12
  export interface FieldOptions extends Record<string, any> {
12
13
  proto3_optional?: boolean;
13
14
  jstype?: 'string' | 'number';
@@ -1 +1 @@
1
- {"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../../../src/fields/field.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAQ,MAAM,mBAAmB,CAAA;AAErD,eAAO,MAAM,WAAW;;;;;;;CAOvB,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAkB7C,CAAA;AAkCD,MAAM,WAAW,YAAa,SAAQ,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IACvD,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;CAC7B;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,YAAY,CAAA;IACtB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,iBAAiB,CAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CAC5D;AAED,qBAAa,KAAM,YAAW,YAAY;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,OAAO,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,cAAc,EAAE,OAAO,CAAA;IACvB,cAAc,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;IACpC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;gBAEV,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM;IAiCxD,iBAAiB,CAAE,MAAM,EAAE,MAAM,EAAE,MAAM,SAAK,GAAG,MAAM;IAIvD,eAAe,CAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAwBxC,UAAU,CAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IASnC,mBAAmB,CAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAY5C,UAAU,CAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAmBnC,aAAa,IAAK,MAAM;CAGzB"}
1
+ {"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../../../src/fields/field.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAQ,MAAM,mBAAmB,CAAA;AAErD,eAAO,MAAM,WAAW;;;;;;;CAOvB,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAkB7C,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,GAAG,QAAQ,CAG/D,CAAA;AA6BD,MAAM,WAAW,YAAa,SAAQ,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IACvD,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;CAC7B;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,YAAY,CAAA;IACtB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,iBAAiB,CAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CAC5D;AAED,qBAAa,KAAM,YAAW,YAAY;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,OAAO,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,cAAc,EAAE,OAAO,CAAA;IACvB,cAAc,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;IACpC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;gBAEV,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM;IAiCxD,iBAAiB,CAAE,MAAM,EAAE,MAAM,EAAE,MAAM,SAAK,GAAG,MAAM;IAIvD,eAAe,CAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAwBxC,UAAU,CAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IASnC,mBAAmB,CAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAY5C,UAAU,CAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAmBnC,aAAa,IAAK,MAAM;CAGzB"}
@@ -28,7 +28,7 @@ export const codecTypes = {
28
28
  uint32: CODEC_TYPES.VARINT,
29
29
  uint64: CODEC_TYPES.VARINT
30
30
  };
31
- const jsTypeOverrides = {
31
+ export const jsTypeOverrides = {
32
32
  JS_NUMBER: 'number',
33
33
  JS_STRING: 'string'
34
34
  };
@@ -1 +1 @@
1
- {"version":3,"file":"field.js","sourceRoot":"","sources":["../../../src/fields/field.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"field.js","sourceRoot":"","sources":["../../../src/fields/field.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,8 @@ export declare class MapField extends Field {
10
10
  keyType: string;
11
11
  valueType: string;
12
12
  entryType: string;
13
+ jsKeyTypeOverride?: 'string' | 'number';
14
+ jsValueTypeOverride?: 'string' | 'number';
13
15
  private lengthLimit?;
14
16
  constructor(name: string, def: MapFieldDef, parent: Parent);
15
17
  getInterfaceField(parent: Parent): string;
@@ -1 +1 @@
1
- {"version":3,"file":"map-field.d.ts","sourceRoot":"","sources":["../../../src/fields/map-field.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,EAAE,MAAM,YAAY,CAAA;AAC9C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE/C,MAAM,WAAW,WAAY,SAAQ,QAAQ;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,wBAAgB,aAAa,CAAE,GAAG,CAAC,EAAE,GAAG,GAAG,GAAG,IAAI,WAAW,CAE5D;AAED,qBAAa,QAAS,SAAQ,KAAK;IAC1B,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACxB,OAAO,CAAC,WAAW,CAAC,CAAQ;gBAEf,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM;IAU3D,iBAAiB,CAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAI1C,eAAe,CAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAIxC,UAAU,CAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAanC,UAAU,CAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAyBnC,mBAAmB,CAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IA4B5C,aAAa,IAAK,MAAM;CAGzB"}
1
+ {"version":3,"file":"map-field.d.ts","sourceRoot":"","sources":["../../../src/fields/map-field.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,EAAmB,MAAM,YAAY,CAAA;AAC/D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE/C,MAAM,WAAW,WAAY,SAAQ,QAAQ;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,wBAAgB,aAAa,CAAE,GAAG,CAAC,EAAE,GAAG,GAAG,GAAG,IAAI,WAAW,CAE5D;AAED,qBAAa,QAAS,SAAQ,KAAK;IAC1B,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,iBAAiB,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;IACvC,mBAAmB,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;IAChD,OAAO,CAAC,WAAW,CAAC,CAAQ;gBAEf,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM;IAkB3D,iBAAiB,CAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAO1C,eAAe,CAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAOxC,UAAU,CAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAanC,UAAU,CAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAyBnC,mBAAmB,CAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IA4B5C,aAAa,IAAK,MAAM;CAGzB"}
@@ -1,4 +1,4 @@
1
- import { codecTypes, Field } from "./field.js";
1
+ import { codecTypes, Field, jsTypeOverrides } from "./field.js";
2
2
  export function isMapFieldDef(obj) {
3
3
  return obj?.keyType != null;
4
4
  }
@@ -6,6 +6,8 @@ export class MapField extends Field {
6
6
  keyType;
7
7
  valueType;
8
8
  entryType;
9
+ jsKeyTypeOverride;
10
+ jsValueTypeOverride;
9
11
  lengthLimit;
10
12
  constructor(name, def, parent) {
11
13
  super(name, def, parent);
@@ -14,12 +16,22 @@ export class MapField extends Field {
14
16
  this.valueType = def.valueType;
15
17
  this.entryType = def.type;
16
18
  this.lengthLimit = def.options?.['(protons.options).limit'];
19
+ if (def.options?.jskeytype != null) {
20
+ this.jsKeyTypeOverride = jsTypeOverrides[def.options.jskeytype];
21
+ }
22
+ if (def.options?.jsvaluetype != null) {
23
+ this.jsValueTypeOverride = jsTypeOverrides[def.options.jsvaluetype];
24
+ }
17
25
  }
18
26
  getInterfaceField(parent) {
19
- return `${this.name}: Map<${parent.findType(this.keyType).jsType}, ${parent.findType(this.valueType).jsType}>`;
27
+ const keyType = this.jsKeyTypeOverride ?? parent.findType(this.keyType).jsType;
28
+ const valueType = this.jsValueTypeOverride ?? parent.findType(this.valueType).jsType;
29
+ return `${this.name}: Map<${keyType}, ${valueType}>`;
20
30
  }
21
31
  getDefaultField(parent) {
22
- return `${this.name}: new Map<${parent.findType(this.keyType).jsType}, ${parent.findType(this.valueType).jsType}>()`;
32
+ const keyType = this.jsKeyTypeOverride ?? parent.findType(this.keyType).jsType;
33
+ const valueType = this.jsValueTypeOverride ?? parent.findType(this.valueType).jsType;
34
+ return `${this.name}: new Map<${keyType}, ${valueType}>()`;
23
35
  }
24
36
  getEncoder(parent) {
25
37
  const id = (this.id << 3) | codecTypes.message;
@@ -1 +1 @@
1
- {"version":3,"file":"map-field.js","sourceRoot":"","sources":["../../../src/fields/map-field.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"map-field.js","sourceRoot":"","sources":["../../../src/fields/map-field.ts"],"names":[],"mappings":"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"}
@@ -166,13 +166,15 @@
166
166
  *
167
167
  * Sometimes this is undesirable due to [performance issues](https://betterprogramming.pub/the-downsides-of-bigints-in-javascript-6350fd807d) or code legibility.
168
168
  *
169
- * It's possible to override the JavaScript type 64 bit fields will deserialize to:
169
+ * It's possible to override the JavaScript type 64 bit fields will deserialize
170
+ * to, including repeated fields and map key/values:
170
171
  *
171
172
  * ```
172
173
  * message MyMessage {
173
- * repeated int64 bigintField = 1;
174
- * repeated int64 numberField = 2 [jstype = JS_NUMBER];
175
- * repeated int64 stringField = 3 [jstype = JS_STRING];
174
+ * int64 bigintField = 1;
175
+ * int64 numberField = 2 [jstype = JS_NUMBER];
176
+ * repeated int64 stringArray = 3 [jstype = JS_STRING];
177
+ * map<int64, int64, bigintMap = 4 [jskeytype = JS_STRING, jsvaluetype = JS_STRING];
176
178
  * }
177
179
  * ```
178
180
  *
@@ -181,7 +183,8 @@
181
183
  *
182
184
  * console.info(typeof message.bigintField) // bigint
183
185
  * console.info(typeof message.numberField) // number
184
- * console.info(typeof message.stringField) // string
186
+ * console.info(typeof message.stringArray[0]) // string
187
+ * console.info(typeof message.bigintMap.get('5')) // string
185
188
  * ```
186
189
  *
187
190
  * ## Missing features
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+LG;AAaH,MAAM,WAAW,KAAK;IACpB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAA;IAEhB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;CAChB;AAED,wBAAsB,QAAQ,CAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAkB3E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkMG;AAaH,MAAM,WAAW,KAAK;IACpB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAA;IAEhB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;CAChB;AAED,wBAAsB,QAAQ,CAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAkB3E"}
package/dist/src/index.js CHANGED
@@ -166,13 +166,15 @@
166
166
  *
167
167
  * Sometimes this is undesirable due to [performance issues](https://betterprogramming.pub/the-downsides-of-bigints-in-javascript-6350fd807d) or code legibility.
168
168
  *
169
- * It's possible to override the JavaScript type 64 bit fields will deserialize to:
169
+ * It's possible to override the JavaScript type 64 bit fields will deserialize
170
+ * to, including repeated fields and map key/values:
170
171
  *
171
172
  * ```
172
173
  * message MyMessage {
173
- * repeated int64 bigintField = 1;
174
- * repeated int64 numberField = 2 [jstype = JS_NUMBER];
175
- * repeated int64 stringField = 3 [jstype = JS_STRING];
174
+ * int64 bigintField = 1;
175
+ * int64 numberField = 2 [jstype = JS_NUMBER];
176
+ * repeated int64 stringArray = 3 [jstype = JS_STRING];
177
+ * map<int64, int64, bigintMap = 4 [jskeytype = JS_STRING, jsvaluetype = JS_STRING];
176
178
  * }
177
179
  * ```
178
180
  *
@@ -181,7 +183,8 @@
181
183
  *
182
184
  * console.info(typeof message.bigintField) // bigint
183
185
  * console.info(typeof message.numberField) // number
184
- * console.info(typeof message.stringField) // string
186
+ * console.info(typeof message.stringArray[0]) // string
187
+ * console.info(typeof message.bigintMap.get('5')) // string
185
188
  * ```
186
189
  *
187
190
  * ## Missing features
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+LG;AAEH,OAAO,EAAE,MAAM,aAAa,CAAA;AAC5B,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAA;AAChC,OAAO,EAAE,IAAI,IAAI,IAAI,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE1C,SAAS,iBAAiB,CAAE,KAAa,EAAE,SAAiB,EAAE,SAAkB;IAC9E,MAAM,MAAM,GAAG,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC/C,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,CAAA;AAC9F,CAAC;AAmBD,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAE,MAAc,EAAE,KAAY;IAC1D,6BAA6B;IAC7B,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,EAAE,MAAM;QACZ,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;QAC1G,MAAM;KACP,CAAC,CAAA;IAEF,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,qBAAqB,MAAM,8BAA8B,CAAC,CAAA;IAC5E,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAC5B,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IACrC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,CAAA;IAChC,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IAEjE,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI,CAAC,CAAA;AAChD,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkMG;AAEH,OAAO,EAAE,MAAM,aAAa,CAAA;AAC5B,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAA;AAChC,OAAO,EAAE,IAAI,IAAI,IAAI,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE1C,SAAS,iBAAiB,CAAE,KAAa,EAAE,SAAiB,EAAE,SAAkB;IAC9E,MAAM,MAAM,GAAG,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC/C,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,CAAA;AAC9F,CAAC;AAmBD,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAE,MAAc,EAAE,KAAY;IAC1D,6BAA6B;IAC7B,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,EAAE,MAAM;QACZ,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;QAC1G,MAAM;KACP,CAAC,CAAA;IAEF,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,qBAAqB,MAAM,8BAA8B,CAAC,CAAA;IAC5E,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAC5B,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IACrC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,CAAA;IAChC,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IAEjE,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI,CAAC,CAAA;AAChD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../src/types/message.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAG1C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAC9C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAExC,UAAU,WAAW;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,IAAI,EAAE,OAAO,GACT,6BAA6B,GAC7B,iCAAiC,GACjC,mBAAmB,GACnB,yCAAyC,GACzC,6CAA6C,CAAA;CAClD;AAMD,MAAM,WAAW,UAAU;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAA;IAC5C,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,CAAA;CAC9C;AAED,wBAAgB,YAAY,CAAE,GAAG,CAAC,EAAE,GAAG,GAAG,GAAG,IAAI,UAAU,CAE1D;AAED,qBAAa,OAAQ,YAAW,IAAI;IAC3B,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,MAAM,EAAE,MAAM,EAAE,EAAE,CAAA;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC,CAAA;IAC7C,OAAO,CAAC,GAAG,CAAY;IACvB,OAAO,CAAC,MAAM,CAAQ;gBAET,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM;IAkE5E,IAAI,IAAK,IAAI;IAsBb,QAAQ,CAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,IAAI;IAU/D,SAAS,CAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAIhE,aAAa,CAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAIpE,eAAe,CAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAIpC,IAAI,KAAK,IAAK,KAAK,CAElB;IAED,UAAU,CAAE,KAAK,EAAE,KAAK,EAAE,MAAM,SAAK,GAAG,MAAM;IAsB9C,mBAAmB,CAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,SAAK,GAAG,MAAM;IA6BvE,UAAU,CAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IAYnD,YAAY,CAAE,KAAK,EAAE,KAAK,GAAG,MAAM;IAI5B,OAAO,CAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,MAAW,GAAG,MAAM;IA2H5D,OAAO,CAAC,mBAAmB;IA+B3B,OAAO,CAAC,mBAAmB;IAsB3B,mBAAmB,CAAE,MAAM,SAAK,GAAG,MAAM;IAezC,iBAAiB,IAAK,MAAM;IAgB5B,kBAAkB,CAAE,YAAY,EAAE,WAAW,EAAE,GAAG,MAAM;IAYxD,YAAY,CAAE,MAAM,EAAE,MAAM,EAAE,EAAE,SAAS,SAAO,GAAG,MAAM;IASzD,eAAe,CAAE,WAAW,SAAO,GAAG,WAAW,EAAE;CAsGpD"}
1
+ {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../src/types/message.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAG1C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAC9C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAExC,UAAU,WAAW;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,IAAI,EAAE,OAAO,GACT,6BAA6B,GAC7B,iCAAiC,GACjC,mBAAmB,GACnB,yCAAyC,GACzC,6CAA6C,CAAA;CAClD;AAMD,MAAM,WAAW,UAAU;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAA;IAC5C,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,CAAA;CAC9C;AAED,wBAAgB,YAAY,CAAE,GAAG,CAAC,EAAE,GAAG,GAAG,GAAG,IAAI,UAAU,CAE1D;AAED,qBAAa,OAAQ,YAAW,IAAI;IAC3B,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,MAAM,EAAE,MAAM,EAAE,EAAE,CAAA;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC,CAAA;IAC7C,OAAO,CAAC,GAAG,CAAY;IACvB,OAAO,CAAC,MAAM,CAAQ;gBAET,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM;IAwE5E,IAAI,IAAK,IAAI;IAsBb,QAAQ,CAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,IAAI;IAU/D,SAAS,CAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAIhE,aAAa,CAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAIpE,eAAe,CAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAIpC,IAAI,KAAK,IAAK,KAAK,CAElB;IAED,UAAU,CAAE,KAAK,EAAE,KAAK,EAAE,MAAM,SAAK,GAAG,MAAM;IAsB9C,mBAAmB,CAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,SAAK,GAAG,MAAM;IA6BvE,UAAU,CAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IAYnD,YAAY,CAAE,KAAK,EAAE,KAAK,GAAG,MAAM;IAI5B,OAAO,CAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,MAAW,GAAG,MAAM;IA2H5D,OAAO,CAAC,mBAAmB;IA+B3B,OAAO,CAAC,mBAAmB;IAsB3B,mBAAmB,CAAE,MAAM,SAAK,GAAG,MAAM;IAezC,iBAAiB,IAAK,MAAM;IAgB5B,kBAAkB,CAAE,YAAY,EAAE,WAAW,EAAE,GAAG,MAAM;IAYxD,YAAY,CAAE,MAAM,EAAE,MAAM,EAAE,EAAE,SAAS,SAAO,GAAG,MAAM;IASzD,eAAe,CAAE,WAAW,SAAO,GAAG,WAAW,EAAE;CAsGpD"}
@@ -41,11 +41,17 @@ export class Message {
41
41
  fields: {
42
42
  key: {
43
43
  type: fieldDef.keyType,
44
- id: 1
44
+ id: 1,
45
+ options: {
46
+ jstype: fieldDef.options?.jskeytype
47
+ }
45
48
  },
46
49
  value: {
47
50
  type: fieldDef.type,
48
- id: 2
51
+ id: 2,
52
+ options: {
53
+ jstype: fieldDef.options?.jsvaluetype
54
+ }
49
55
  }
50
56
  }
51
57
  };
@@ -423,16 +429,16 @@ ${fields
423
429
  name: `${fieldPrefix === '$.' ? this.pbType : ''}${camelize(field.name)}FieldEvent`,
424
430
  fields: [
425
431
  `field: '${fieldPrefix}${field.name}{}'`,
426
- `key: ${keyType.jsType}`,
427
- `value: ${valueType.jsType}`
432
+ `key: ${field.jsKeyTypeOverride ?? keyType.jsType}`,
433
+ `value: ${field.jsValueTypeOverride ?? valueType.jsType}`
428
434
  ],
429
435
  type: 'collection-primitive-member'
430
436
  });
431
437
  }
432
438
  else if (valueType instanceof Message) {
433
439
  addMessageFields(field, valueType, [
434
- `key: ${keyType.jsType}`,
435
- `value: ${valueType.jsType}`
440
+ `key: ${field.jsKeyTypeOverride ?? keyType.jsType}`,
441
+ `value: ${field.jsValueTypeOverride ?? valueType.jsType}`
436
442
  ]);
437
443
  }
438
444
  }
@@ -444,7 +450,7 @@ ${fields
444
450
  fields: [
445
451
  `field: '${fieldPrefix}${field.name}[]'`,
446
452
  'index: number',
447
- `value: ${type.jsType}`
453
+ `value: ${field.jsTypeOverride ?? type.jsType}`
448
454
  ],
449
455
  type: 'collection-primitive-member'
450
456
  });
@@ -462,7 +468,7 @@ ${fields
462
468
  name: `${fieldPrefix === '$.' ? this.pbType : ''}${camelize(field.name)}FieldEvent`,
463
469
  fields: [
464
470
  `field: '${fieldPrefix}${field.name}'`,
465
- `value: ${type.jsType}`
471
+ `value: ${field.jsTypeOverride ?? type.jsType}`
466
472
  ],
467
473
  type: 'field'
468
474
  });
@@ -1 +1 @@
1
- {"version":3,"file":"message.js","sourceRoot":"","sources":["../../../src/types/message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAiB1C,SAAS,QAAQ,CAAE,KAAa;IAC9B,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAA;AACtE,CAAC;AAQD,MAAM,UAAU,YAAY,CAAE,GAAS;IACrC,OAAO,GAAG,EAAE,MAAM,IAAI,IAAI,CAAA;AAC5B,CAAC;AAED,MAAM,OAAO,OAAO;IACX,MAAM,CAAQ;IACd,MAAM,CAAQ;IACd,MAAM,CAAS;IACf,MAAM,CAAY;IAClB,MAAM,CAAgC;IACrC,GAAG,CAAY;IACf,MAAM,CAAQ;IAEtB,YAAa,MAAc,EAAE,MAAc,EAAE,GAAe,EAAE,MAAc;QAC1E,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAA;QAChB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAA;QAChB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAA;QAChB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QAEpB,GAAG,CAAC,MAAM,KAAK,EAAE,CAAA;QACjB,GAAG,CAAC,MAAM,KAAK,EAAE,CAAA;QACjB,GAAG,CAAC,MAAM,KAAK,EAAE,CAAA;QAEjB,kEAAkE;QAClE,uEAAuE;QACvE,KAAK,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAM,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACpE,IAAI,QAAQ,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;gBAC7B,SAAQ;YACV,CAAC;YAED,MAAM,YAAY,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,SAAS,OAAO,CAAA;YAEvD,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG;gBACzB,MAAM,EAAE;oBACN,GAAG,EAAE;wBACH,IAAI,EAAE,QAAQ,CAAC,OAAO;wBACtB,EAAE,EAAE,CAAC;qBACN;oBACD,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ,CAAC,IAAI;wBACnB,EAAE,EAAE,CAAC;qBACN;iBACF;aACF,CAAA;YAED,QAAQ,CAAC,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAA;YAClC,QAAQ,CAAC,IAAI,GAAG,YAAY,CAAA;YAC5B,QAAQ,CAAC,IAAI,GAAG,UAAU,CAAA;QAC5B,CAAC;QAED,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE;YACvD,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,EAAE,CAAA;YAEzC,IAAI,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;gBACtB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;YAC5D,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAA;YACnD,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/D,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;oBAC9B,SAAQ;gBACV,CAAC;gBAED,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,KAAK,EAAE,CAAA;gBAChC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,eAAe,GAAG,IAAI,CAAA;gBAChD,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,MAAM,CAAA;YAClC,CAAC;QACH,CAAC;QAED,wEAAwE;QACxE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;IAC7E,CAAC;IAED,IAAI;QACF,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;YACrE,IAAI,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAA;YACtD,CAAC;iBAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACrC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAA;YACxD,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;gBAEzC,IAAI,IAAI,YAAY,IAAI,EAAE,CAAC;oBACzB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAA;gBACvD,CAAC;qBAAM,IAAI,IAAI,YAAY,SAAS,EAAE,CAAC;oBACrC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAA;gBACnD,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAA;gBAC1D,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;IACzD,CAAC;IAED,QAAQ,CAAE,MAAc,EAAE,QAA8B;QACtD,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,CAAA;QAE5C,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;QAC/C,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAED,SAAS,CAAE,MAAc,EAAE,MAAc,EAAE,KAAc;QACvD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAA;IAC9C,CAAC;IAED,aAAa,CAAE,MAAc,EAAE,MAAc,EAAE,KAAc;QAC3D,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAA;IAClD,CAAC;IAED,eAAe,CAAE,IAAY;QAC3B,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;IACnC,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAA;IAC1B,CAAC;IAED,UAAU,CAAE,KAAY,EAAE,MAAM,GAAG,EAAE;QACnC,IAAI,IAAI,GAAG,EAAE,CAAA;QAEb,IAAI,KAAK,YAAY,YAAY,EAAE,CAAC;YAClC,IAAI,GAAG;EACX,MAAM,wCAAwC,KAAK,CAAC,IAAI;EACxD,MAAM,iBAAiB,CAAA;QACrB,CAAC;aAAM,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;YACvC,IAAI,GAAG;EACX,MAAM,wCAAwC,KAAK,CAAC,IAAI;EACxD,MAAM,iBAAiB,CAAA;QACrB,CAAC;aAAM,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;YACrC,IAAI,GAAG;EACX,MAAM;EACN,MAAM,yCAAyC,KAAK,CAAC,IAAI;;EAEzD,MAAM,iBAAiB,CAAA;QACrB,CAAC;QAED,OAAO,GAAG,IAAI,CAAC,MAAM,0CAA0C,IAAI,GAAG,CAAA;IACxE,CAAC;IAED,mBAAmB,CAAE,KAAY,EAAE,MAAc,EAAE,MAAM,GAAG,EAAE;QAC5D,IAAI,IAAI,GAAG,EAAE,CAAA;QAEb,IAAI,KAAK,YAAY,YAAY,EAAE,CAAC;YAClC,IAAI,GAAG;EACX,MAAM,sCAAsC,KAAK,CAAC,IAAI;EACtD,MAAM,eAAe,CAAA;QACnB,CAAC;aAAM,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;YACvC,IAAI,GAAG;EACX,MAAM,sCAAsC,KAAK,CAAC,IAAI;EACtD,MAAM,eAAe,CAAA;YAEjB,OAAO,qBAAqB,IAAI,CAAC,MAAM,4CAA4C,MAAM,GAAG,IAAI;;;+BAGvE,KAAK,CAAC,IAAI;;gBAEzB,CAAA;QACZ,CAAC;aAAM,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;YACrC,IAAI,GAAG;EACX,MAAM;EACN,MAAM,uCAAuC,KAAK,CAAC,IAAI;;EAEvD,MAAM,eAAe,CAAA;QACnB,CAAC;QAED,OAAO,WAAW,IAAI,CAAC,MAAM,4CAA4C,MAAM,GAAG,IAAI,GAAG,CAAA;IAC3F,CAAC;IAED,UAAU,CAAE,KAAY,EAAE,QAAgB;QACxC,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;YAChC,wEAAwE;YACxE,sEAAsE;YACtE,qEAAqE;YACrE,8CAA8C;YAC9C,iDAAiD;QACnD,CAAC;QAED,OAAO,GAAG,IAAI,CAAC,MAAM,mBAAmB,QAAQ,MAAM,CAAA;IACxD,CAAC;IAED,YAAY,CAAE,KAAY;QACxB,OAAO,OAAO,KAAK,CAAC,IAAI,UAAU,CAAA;IACpC,CAAC;IAEM,OAAO,CAAE,MAAc,EAAE,SAAiB,EAAE;QACjD,0BAA0B;QAC1B,MAAM,CAAC,SAAS,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAA;QACpD,MAAM,CAAC,SAAS,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAA;QACpD,MAAM,CAAC,SAAS,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAA;QACpD,MAAM,CAAC,SAAS,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAA;QAC9C,MAAM,CAAC,aAAa,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAA;QAChD,MAAM,CAAC,aAAa,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAA;QACxD,MAAM,CAAC,aAAa,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,CAAA;QAExD,IAAI,MAAM,GAAG,EAAE,CAAA;QAEf,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtE,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;iBACjC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;iBACnD,IAAI,CAAC,MAAM,CAAC,CAAA;YACf,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACxC,MAAM,GAAG;IACX,MAAM;CACT,CAAA;QACG,CAAC;QAED,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;aAC5E,IAAI,CAAC,MAAM,CAAC;aACZ,IAAI,EAAE,CAAA;QAET,IAAI,YAAY,GAAG,EAAE,CAAA;QACrB,IAAI,iBAAiB,GAAG,EAAE,CAAA;QAE1B,IAAI,eAAe,KAAK,EAAE,EAAE,CAAC;YAC3B,YAAY,GAAG;mBACF,IAAI,CAAC,MAAM,KAAK,CAAA;QAC/B,CAAC;aAAM,CAAC;YACN,YAAY,GAAG;mBACF,IAAI,CAAC,MAAM;IAC1B,eAAe;EACjB,CAAA;QACE,CAAC;QAED,MAAM,oBAAoB,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAA;QACvD,MAAM,oBAAoB,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAA;QACvD,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,CAAA;QAE3C,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAA;QACrE,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAA;QACrE,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAA;QAE9E,MAAM,qBAAqB,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAE/D,IAAI,qBAAqB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAA;YACrC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAClC,CAAC;QAED,iBAAiB,GAAG;sBACF,IAAI,CAAC,MAAM;;mCAEE,IAAI,CAAC,MAAM;;yBAErB,IAAI,CAAC,MAAM;;;WAGzB,oBAAoB,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC;;;;;;4BAMrC,IAAI,CAAC,mBAAmB,EAAE;;;;;;;gCAOtB,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,gBAAgB,CAAC;;;;;;;EAO/E,oBAAoB,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,oBAAoB,IAAI;;;UAGtD,IAAI,CAAC,iBAAiB,EAAE;;;;;gCAKF,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,gBAAgB,CAAC;;;;;;;;;;;KAW5E,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC;;yCAED,IAAI,CAAC,MAAM;gCACpB,IAAI,CAAC,MAAM;;;mFAGwC,IAAI,CAAC,MAAM,OAAO,IAAI,CAAC,MAAM;gCAChF,IAAI,CAAC,MAAM;;;mFAGwC,IAAI,CAAC,MAAM,iBAAiB,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC;gCAChH,IAAI,CAAC,MAAM;IACvC,CAAA;QAEA,OAAO;EACT,YAAY;;mBAEK,IAAI,CAAC,MAAM,KAAK,MAAM,GAAG,iBAAiB,CAAC,OAAO,EAAE;;CAEtE,CAAC,SAAS,EAAE,CAAA;IACX,CAAC;IAEO,mBAAmB;QACzB,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;YACpC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,OAAO,EAAE,CAAA;YACX,CAAC;YAED,IAAI,KAAK,GAAG,EAAE,CAAA;YAEd,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;gBAC1B,KAAK,IAAI;kBACC,IAAI;EACpB,MAAM;qBACL,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC;qBAC/B,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,iBAAiB,IAAI,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;CAE7D,CAAA;YACK,CAAC;YAED,OAAO,KAAK,CAAC,OAAO,EAAE,CAAA;QACxB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAA;QAEvB,IAAI,MAAM,KAAK,EAAE,EAAE,CAAC;YAClB,MAAM,GAAG;;;EAGb,MAAM,EAAE,CAAA;QACN,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC;IAEO,mBAAmB;QACzB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;YAC9B,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,OAAO,EAAE,CAAA;YACX,CAAC;YAED,IAAI,KAAK,GAAG,EAAE,CAAA;YAEd,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;gBAC1B,KAAK,IAAI;kBACC,IAAI;EACpB,MAAM;qBACL,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC;qBAC/B,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,wBAAwB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;CAExD,CAAA;YACK,CAAC;YAED,OAAO,KAAK,CAAC,OAAO,EAAE,CAAA;QACxB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAA;IACzB,CAAC;IAED,mBAAmB,CAAE,MAAM,GAAG,EAAE;QAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM;aACvB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;aAC3C,MAAM,CAAC,OAAO,CAAC;aACf,IAAI,CAAC,gBAAgB,MAAM,EAAE,CAAC,CAAA;QAEjC,IAAI,MAAM,KAAK,EAAE,EAAE,CAAC;YAClB,OAAO;YACD,MAAM,GAAG,MAAM;UACjB,MAAM,EAAE,CAAA;QACd,CAAC;QAED,OAAO,EAAE,CAAA;IACX,CAAC;IAED,iBAAiB;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;aAC3D,MAAM,CAAC,OAAO,CAAC;aACf,IAAI,CAAC,eAAe,CAAC,CAAA;QAExB,IAAI,MAAM,KAAK,EAAE,EAAE,CAAC;YAClB,OAAO;YACD,MAAM;;;SAGT,CAAA;QACL,CAAC;QAED,OAAO,EAAE,CAAA;IACX,CAAC;IAED,kBAAkB,CAAE,YAA2B;QAC7C,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,OAAO,EAAE,CAAA;QACX,CAAC;QAED,OAAO;;IAEP,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,oBAAoB,GAAG,CAAC,IAAI;MAClD,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;IAC3B,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAA;IACpB,CAAC;IAED,YAAY,CAAE,MAAgB,EAAE,SAAS,GAAG,IAAI;QAC9C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,EAAE,CAAA;QACX,CAAC;QAED,OAAO;cACG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAA;IACpC,CAAC;IAED,eAAe,CAAE,WAAW,GAAG,IAAI;QACjC,MAAM,YAAY,GAAkB,EAAE,CAAA;QAEtC,MAAM,gBAAgB,GAAG,CAAC,KAAY,EAAE,OAAgB,EAAE,WAAqB,EAAQ,EAAE;YACvF,IAAI,WAAW,GAAG,GAAG,CAAA;YAErB,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;gBAChC,WAAW,GAAG,KAAK,CAAA;YACrB,CAAC;iBAAM,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;gBACrC,WAAW,GAAG,KAAK,CAAA;YACrB,CAAC;YAED,uBAAuB;YACvB,YAAY,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC,GAAG,WAAW,GAAG,KAAK,CAAC,IAAI,GAAG,WAAW,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAClG,IAAI,IAAI,GAAG,GAAG,CAAC,IAAI,CAAA;gBAEnB,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBACzB,IAAI,GAAG,CAAC,KAAK,YAAY,QAAQ,IAAI,KAAK,YAAY,UAAU,CAAC,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC,CAAC,mBAAmB,CAAA;gBAC7H,CAAC;qBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,6BAA6B,EAAE,CAAC;oBACtD,IAAI,GAAG,yCAAyC,CAAA;gBAClD,CAAC;qBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,iCAAiC,EAAE,CAAC;oBAC1D,IAAI,GAAG,6CAA6C,CAAA;gBACtD,CAAC;gBAED,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAA;gBACxC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;oBACzB,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;oBACrC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;gBACtC,CAAC,CAAC,CAAA;gBACF,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;oBAC1B,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;oBACrC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;gBACtC,CAAC,CAAC,CAAA;gBAEF,OAAO;oBACL,GAAG,GAAG;oBACN,IAAI,EAAE,GAAG,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE;oBACpF,IAAI;oBACJ,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,KAAK,EAAE,CAAC;iBACxE,CAAA;YACH,CAAC,CAAC,CAAC,CAAA;QACL,CAAC,CAAA;QAED,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAC1B,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;gBAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;gBAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;gBAEhD,IAAI,SAAS,YAAY,SAAS,IAAI,SAAS,YAAY,IAAI,EAAE,CAAC;oBAChE,YAAY,CAAC,IAAI,CAAC;wBAChB,IAAI,EAAE,GAAG,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY;wBACnF,MAAM,EAAE;4BACN,WAAW,WAAW,GAAG,KAAK,CAAC,IAAI,KAAK;4BACxC,QAAQ,OAAO,CAAC,MAAM,EAAE;4BACxB,UAAU,SAAS,CAAC,MAAM,EAAE;yBAC7B;wBACD,IAAI,EAAE,6BAA6B;qBACpC,CAAC,CAAA;gBACJ,CAAC;qBAAM,IAAI,SAAS,YAAY,OAAO,EAAE,CAAC;oBACxC,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE;wBACjC,QAAQ,OAAO,CAAC,MAAM,EAAE;wBACxB,UAAU,SAAS,CAAC,MAAM,EAAE;qBAC7B,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;iBAAM,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;gBACvC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;gBAEtC,IAAI,IAAI,YAAY,SAAS,IAAI,IAAI,YAAY,IAAI,EAAE,CAAC;oBACtD,YAAY,CAAC,IAAI,CAAC;wBAChB,IAAI,EAAE,GAAG,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY;wBACnF,MAAM,EAAE;4BACN,WAAW,WAAW,GAAG,KAAK,CAAC,IAAI,KAAK;4BACxC,eAAe;4BACf,UAAU,IAAI,CAAC,MAAM,EAAE;yBACxB;wBACD,IAAI,EAAE,6BAA6B;qBACpC,CAAC,CAAA;gBACJ,CAAC;qBAAM,IAAI,IAAI,YAAY,OAAO,EAAE,CAAC;oBACnC,gBAAgB,CAAC,KAAK,EAAE,IAAI,EAAE;wBAC5B,eAAe;qBAChB,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;gBAEtC,IAAI,IAAI,YAAY,SAAS,IAAI,IAAI,YAAY,IAAI,EAAE,CAAC;oBACtD,YAAY,CAAC,IAAI,CAAC;wBAChB,IAAI,EAAE,GAAG,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY;wBACnF,MAAM,EAAE;4BACN,WAAW,WAAW,GAAG,KAAK,CAAC,IAAI,GAAG;4BACtC,UAAU,IAAI,CAAC,MAAM,EAAE;yBACxB;wBACD,IAAI,EAAE,OAAO;qBACd,CAAC,CAAA;gBACJ,CAAC;qBAAM,IAAI,IAAI,YAAY,OAAO,EAAE,CAAC;oBACnC,gBAAgB,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAA;gBACnC,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,OAAO,YAAY,CAAA;IACrB,CAAC;CACF"}
1
+ {"version":3,"file":"message.js","sourceRoot":"","sources":["../../../src/types/message.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "protons",
3
- "version": "8.0.2",
3
+ "version": "8.1.0",
4
4
  "description": "Protobuf to ts transpiler",
5
5
  "license": "Apache-2.0 OR MIT",
6
6
  "homepage": "https://github.com/ipfs/protons/tree/main/packages/protons#readme",
@@ -32,7 +32,7 @@ export const codecTypes: Record<string, number> = {
32
32
  uint64: CODEC_TYPES.VARINT
33
33
  }
34
34
 
35
- const jsTypeOverrides: Record<string, 'number' | 'string'> = {
35
+ export const jsTypeOverrides: Record<string, 'number' | 'string'> = {
36
36
  JS_NUMBER: 'number',
37
37
  JS_STRING: 'string'
38
38
  }
@@ -1,4 +1,4 @@
1
- import { codecTypes, Field } from './field.ts'
1
+ import { codecTypes, Field, jsTypeOverrides } from './field.ts'
2
2
  import type { FieldDef } from './field.ts'
3
3
  import type { Parent } from '../types/index.ts'
4
4
 
@@ -15,6 +15,8 @@ export class MapField extends Field {
15
15
  public keyType: string
16
16
  public valueType: string
17
17
  public entryType: string
18
+ public jsKeyTypeOverride?: 'string' | 'number'
19
+ public jsValueTypeOverride?: 'string' | 'number'
18
20
  private lengthLimit?: number
19
21
 
20
22
  constructor (name: string, def: MapFieldDef, parent: Parent) {
@@ -25,14 +27,28 @@ export class MapField extends Field {
25
27
  this.valueType = def.valueType
26
28
  this.entryType = def.type
27
29
  this.lengthLimit = def.options?.['(protons.options).limit']
30
+
31
+ if (def.options?.jskeytype != null) {
32
+ this.jsKeyTypeOverride = jsTypeOverrides[def.options.jskeytype]
33
+ }
34
+
35
+ if (def.options?.jsvaluetype != null) {
36
+ this.jsValueTypeOverride = jsTypeOverrides[def.options.jsvaluetype]
37
+ }
28
38
  }
29
39
 
30
40
  getInterfaceField (parent: Parent): string {
31
- return `${this.name}: Map<${parent.findType(this.keyType).jsType}, ${parent.findType(this.valueType).jsType}>`
41
+ const keyType = this.jsKeyTypeOverride ?? parent.findType(this.keyType).jsType
42
+ const valueType = this.jsValueTypeOverride ?? parent.findType(this.valueType).jsType
43
+
44
+ return `${this.name}: Map<${keyType}, ${valueType}>`
32
45
  }
33
46
 
34
47
  getDefaultField (parent: Parent): string {
35
- return `${this.name}: new Map<${parent.findType(this.keyType).jsType}, ${parent.findType(this.valueType).jsType}>()`
48
+ const keyType = this.jsKeyTypeOverride ?? parent.findType(this.keyType).jsType
49
+ const valueType = this.jsValueTypeOverride ?? parent.findType(this.valueType).jsType
50
+
51
+ return `${this.name}: new Map<${keyType}, ${valueType}>()`
36
52
  }
37
53
 
38
54
  getEncoder (parent: Parent): string {
package/src/index.ts CHANGED
@@ -166,13 +166,15 @@
166
166
  *
167
167
  * Sometimes this is undesirable due to [performance issues](https://betterprogramming.pub/the-downsides-of-bigints-in-javascript-6350fd807d) or code legibility.
168
168
  *
169
- * It's possible to override the JavaScript type 64 bit fields will deserialize to:
169
+ * It's possible to override the JavaScript type 64 bit fields will deserialize
170
+ * to, including repeated fields and map key/values:
170
171
  *
171
172
  * ```
172
173
  * message MyMessage {
173
- * repeated int64 bigintField = 1;
174
- * repeated int64 numberField = 2 [jstype = JS_NUMBER];
175
- * repeated int64 stringField = 3 [jstype = JS_STRING];
174
+ * int64 bigintField = 1;
175
+ * int64 numberField = 2 [jstype = JS_NUMBER];
176
+ * repeated int64 stringArray = 3 [jstype = JS_STRING];
177
+ * map<int64, int64, bigintMap = 4 [jskeytype = JS_STRING, jsvaluetype = JS_STRING];
176
178
  * }
177
179
  * ```
178
180
  *
@@ -181,7 +183,8 @@
181
183
  *
182
184
  * console.info(typeof message.bigintField) // bigint
183
185
  * console.info(typeof message.numberField) // number
184
- * console.info(typeof message.stringField) // string
186
+ * console.info(typeof message.stringArray[0]) // string
187
+ * console.info(typeof message.bigintMap.get('5')) // string
185
188
  * ```
186
189
  *
187
190
  * ## Missing features
@@ -70,11 +70,17 @@ export class Message implements Type {
70
70
  fields: {
71
71
  key: {
72
72
  type: fieldDef.keyType,
73
- id: 1
73
+ id: 1,
74
+ options: {
75
+ jstype: fieldDef.options?.jskeytype
76
+ }
74
77
  },
75
78
  value: {
76
79
  type: fieldDef.type,
77
- id: 2
80
+ id: 2,
81
+ options: {
82
+ jstype: fieldDef.options?.jsvaluetype
83
+ }
78
84
  }
79
85
  }
80
86
  }
@@ -506,15 +512,15 @@ ${fields
506
512
  name: `${fieldPrefix === '$.' ? this.pbType : ''}${camelize(field.name)}FieldEvent`,
507
513
  fields: [
508
514
  `field: '${fieldPrefix}${field.name}{}'`,
509
- `key: ${keyType.jsType}`,
510
- `value: ${valueType.jsType}`
515
+ `key: ${field.jsKeyTypeOverride ?? keyType.jsType}`,
516
+ `value: ${field.jsValueTypeOverride ?? valueType.jsType}`
511
517
  ],
512
518
  type: 'collection-primitive-member'
513
519
  })
514
520
  } else if (valueType instanceof Message) {
515
521
  addMessageFields(field, valueType, [
516
- `key: ${keyType.jsType}`,
517
- `value: ${valueType.jsType}`
522
+ `key: ${field.jsKeyTypeOverride ?? keyType.jsType}`,
523
+ `value: ${field.jsValueTypeOverride ?? valueType.jsType}`
518
524
  ])
519
525
  }
520
526
  } else if (field instanceof ArrayField) {
@@ -526,7 +532,7 @@ ${fields
526
532
  fields: [
527
533
  `field: '${fieldPrefix}${field.name}[]'`,
528
534
  'index: number',
529
- `value: ${type.jsType}`
535
+ `value: ${field.jsTypeOverride ?? type.jsType}`
530
536
  ],
531
537
  type: 'collection-primitive-member'
532
538
  })
@@ -543,7 +549,7 @@ ${fields
543
549
  name: `${fieldPrefix === '$.' ? this.pbType : ''}${camelize(field.name)}FieldEvent`,
544
550
  fields: [
545
551
  `field: '${fieldPrefix}${field.name}'`,
546
- `value: ${type.jsType}`
552
+ `value: ${field.jsTypeOverride ?? type.jsType}`
547
553
  ],
548
554
  type: 'field'
549
555
  })