typia 3.5.0-dev.20230107 → 3.5.0-dev.20230125

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 (59) hide show
  1. package/lib/factories/internal/protocols/ProtocolMetadataUtil.d.ts +5 -0
  2. package/lib/factories/internal/protocols/ProtocolMetadataUtil.js +80 -0
  3. package/lib/factories/internal/protocols/ProtocolMetadataUtil.js.map +1 -1
  4. package/lib/factories/internal/protocols/emplace_protocol_object.js +0 -3
  5. package/lib/factories/internal/protocols/emplace_protocol_object.js.map +1 -1
  6. package/lib/factories/internal/protocols/iterate_protocol_map.d.ts +2 -1
  7. package/lib/factories/internal/protocols/iterate_protocol_map.js +21 -17
  8. package/lib/factories/internal/protocols/iterate_protocol_map.js.map +1 -1
  9. package/lib/factories/internal/protocols/iterate_protocol_metadata.js +34 -36
  10. package/lib/factories/internal/protocols/iterate_protocol_metadata.js.map +1 -1
  11. package/lib/factories/internal/protocols/iterate_protocol_never.d.ts +1 -0
  12. package/lib/factories/internal/protocols/iterate_protocol_never.js +6 -0
  13. package/lib/factories/internal/protocols/iterate_protocol_never.js.map +1 -0
  14. package/lib/factories/internal/protocols/iterate_protocol_object.d.ts +4 -0
  15. package/lib/factories/internal/protocols/iterate_protocol_object.js +157 -0
  16. package/lib/factories/internal/protocols/iterate_protocol_object.js.map +1 -0
  17. package/lib/factories/internal/protocols/iterate_protocol_repeated.d.ts +2 -1
  18. package/lib/factories/internal/protocols/iterate_protocol_repeated.js +5 -4
  19. package/lib/factories/internal/protocols/iterate_protocol_repeated.js.map +1 -1
  20. package/lib/factories/internal/protocols/iterate_protocol_tuple.js +1 -1
  21. package/lib/factories/internal/protocols/iterate_protocol_tuple.js.map +1 -1
  22. package/lib/messages/IProtocolMap.d.ts +5 -0
  23. package/lib/messages/IProtocolMap.js +3 -0
  24. package/lib/messages/IProtocolMap.js.map +1 -0
  25. package/lib/messages/IProtocolProperty.d.ts +2 -1
  26. package/lib/metadata/Metadata.d.ts +1 -0
  27. package/lib/metadata/Metadata.js +114 -23
  28. package/lib/metadata/Metadata.js.map +1 -1
  29. package/lib/programmers/MessageProgrammer.js +13 -6
  30. package/lib/programmers/MessageProgrammer.js.map +1 -1
  31. package/lib/programmers/internal/application_array.js +29 -27
  32. package/lib/programmers/internal/application_array.js.map +1 -1
  33. package/lib/programmers/internal/application_object.js +96 -31
  34. package/lib/programmers/internal/application_object.js.map +1 -1
  35. package/lib/programmers/internal/application_schema.js +28 -138
  36. package/lib/programmers/internal/application_schema.js.map +1 -1
  37. package/lib/programmers/internal/application_tuple.js +3 -2
  38. package/lib/programmers/internal/application_tuple.js.map +1 -1
  39. package/lib/schemas/IJsonComponents.d.ts +4 -2
  40. package/lib/schemas/IJsonSchema.d.ts +2 -0
  41. package/package.json +2 -1
  42. package/src/factories/internal/protocols/ProtocolMetadataUtil.ts +82 -0
  43. package/src/factories/internal/protocols/emplace_protocol_object.ts +1 -3
  44. package/src/factories/internal/protocols/iterate_protocol_map.ts +29 -9
  45. package/src/factories/internal/protocols/iterate_protocol_metadata.ts +38 -18
  46. package/src/factories/internal/protocols/iterate_protocol_never.ts +1 -0
  47. package/src/factories/internal/protocols/iterate_protocol_object.ts +110 -0
  48. package/src/factories/internal/protocols/iterate_protocol_repeated.ts +14 -5
  49. package/src/factories/internal/protocols/iterate_protocol_tuple.ts +5 -1
  50. package/src/messages/IProtocolMap.ts +5 -0
  51. package/src/messages/IProtocolProperty.ts +3 -1
  52. package/src/metadata/Metadata.ts +56 -1
  53. package/src/programmers/MessageProgrammer.ts +17 -7
  54. package/src/programmers/internal/application_array.ts +2 -0
  55. package/src/programmers/internal/application_object.ts +70 -20
  56. package/src/programmers/internal/application_schema.ts +15 -73
  57. package/src/programmers/internal/application_tuple.ts +6 -2
  58. package/src/schemas/IJsonComponents.ts +5 -3
  59. package/src/schemas/IJsonSchema.ts +2 -0
@@ -2,10 +2,15 @@ import { IMetadataTag } from "../../../metadata/IMetadataTag";
2
2
  import { Metadata } from "../../../metadata/Metadata";
3
3
  import { MetadataObject } from "../../../metadata/MetadataObject";
4
4
  import { MetadataProperty } from "../../../metadata/MetadataProperty";
5
+ import { Atomic } from "../../../typings/Atomic";
5
6
  export declare namespace ProtocolMetadataUtil {
6
7
  function size(meta: Metadata): number;
7
8
  function standalone(meta: Metadata): boolean;
8
9
  function regular(obj: MetadataObject): boolean;
9
10
  function object(name: string, index: number): MetadataObject;
10
11
  function property(key: string, value: Metadata, tags: IMetadataTag[]): MetadataProperty;
12
+ function array(meta: Metadata): Metadata;
13
+ function atomic(type: Atomic.Literal): Metadata;
14
+ function reference(obj: MetadataObject): Metadata;
15
+ function map(elem: Metadata.Entry): Metadata;
11
16
  }
@@ -72,5 +72,85 @@ var ProtocolMetadataUtil;
72
72
  });
73
73
  }
74
74
  ProtocolMetadataUtil.property = property;
75
+ function array(meta) {
76
+ return Metadata_1.Metadata.create({
77
+ any: false,
78
+ required: true,
79
+ nullable: false,
80
+ functional: false,
81
+ resolved: null,
82
+ atomics: [],
83
+ constants: [],
84
+ templates: [],
85
+ rest: null,
86
+ arrays: [meta],
87
+ tuples: [],
88
+ objects: [],
89
+ natives: [],
90
+ sets: [],
91
+ maps: [],
92
+ });
93
+ }
94
+ ProtocolMetadataUtil.array = array;
95
+ function atomic(type) {
96
+ return Metadata_1.Metadata.create({
97
+ any: false,
98
+ required: true,
99
+ nullable: false,
100
+ functional: false,
101
+ resolved: null,
102
+ atomics: [type],
103
+ constants: [],
104
+ templates: [],
105
+ rest: null,
106
+ arrays: [],
107
+ tuples: [],
108
+ objects: [],
109
+ natives: [],
110
+ sets: [],
111
+ maps: [],
112
+ });
113
+ }
114
+ ProtocolMetadataUtil.atomic = atomic;
115
+ function reference(obj) {
116
+ return Metadata_1.Metadata.create({
117
+ any: false,
118
+ required: true,
119
+ nullable: false,
120
+ functional: false,
121
+ resolved: null,
122
+ atomics: [],
123
+ constants: [],
124
+ templates: [],
125
+ rest: null,
126
+ arrays: [],
127
+ tuples: [],
128
+ objects: [obj],
129
+ natives: [],
130
+ sets: [],
131
+ maps: [],
132
+ });
133
+ }
134
+ ProtocolMetadataUtil.reference = reference;
135
+ function map(elem) {
136
+ return Metadata_1.Metadata.create({
137
+ any: false,
138
+ required: true,
139
+ nullable: false,
140
+ functional: false,
141
+ resolved: null,
142
+ atomics: [],
143
+ constants: [],
144
+ templates: [],
145
+ rest: null,
146
+ arrays: [],
147
+ tuples: [],
148
+ objects: [],
149
+ natives: [],
150
+ sets: [],
151
+ maps: [elem],
152
+ });
153
+ }
154
+ ProtocolMetadataUtil.map = map;
75
155
  })(ProtocolMetadataUtil = exports.ProtocolMetadataUtil || (exports.ProtocolMetadataUtil = {}));
76
156
  //# sourceMappingURL=ProtocolMetadataUtil.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProtocolMetadataUtil.js","sourceRoot":"","sources":["../../../../src/factories/internal/protocols/ProtocolMetadataUtil.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProtocolMetadataUtil.js","sourceRoot":"","sources":["../../../../src/factories/internal/protocols/ProtocolMetadataUtil.ts"],"names":[],"mappings":"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"}
@@ -32,9 +32,6 @@ var emplace_protocol_object = function (dict) { return function (object) {
32
32
  if (dict.has(object.name))
33
33
  return;
34
34
  var regular = object.properties.filter(function (p) { return p.key.isSoleLiteral(); });
35
- var dynamic = object.properties.filter(function (p) { return !p.key.isSoleLiteral(); });
36
- if (!regular.length || dynamic.length)
37
- return;
38
35
  var output = {
39
36
  name: object.name,
40
37
  properties: [],
@@ -1 +1 @@
1
- {"version":3,"file":"emplace_protocol_object.js","sourceRoot":"","sources":["../../../../src/factories/internal/protocols/emplace_protocol_object.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,yEAAwE;AAEjE,IAAM,uBAAuB,GAChC,UAAC,IAAmC,IAAK,OAAA,UAAC,MAAsB;;IAC5D,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;QAAE,OAAO;IAElC,IAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,GAAG,CAAC,aAAa,EAAE,EAArB,CAAqB,CAAC,CAAC;IACvE,IAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,EAAE,EAAtB,CAAsB,CAAC,CAAC;IAExE,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM;QAAE,OAAO;IAE9C,IAAM,MAAM,GAAqB;QAC7B,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,UAAU,EAAE,EAAE;KACjB,CAAC;IACF,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAE9B,CAAA,KAAA,MAAM,CAAC,UAAU,CAAA,CAAC,IAAI,oCACf,OAAO,CAAC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,IAAA,qDAAyB,EAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAArC,CAAqC,CAAC,WACjE;IACF,OAAO,MAAM,CAAC;AAClB,CAAC,EAlBwC,CAkBxC,CAAC;AAnBO,QAAA,uBAAuB,2BAmB9B"}
1
+ {"version":3,"file":"emplace_protocol_object.js","sourceRoot":"","sources":["../../../../src/factories/internal/protocols/emplace_protocol_object.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,yEAAwE;AAEjE,IAAM,uBAAuB,GAChC,UAAC,IAAmC,IAAK,OAAA,UAAC,MAAsB;;IAC5D,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;QAAE,OAAO;IAElC,IAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,GAAG,CAAC,aAAa,EAAE,EAArB,CAAqB,CAAC,CAAC;IAGvE,IAAM,MAAM,GAAqB;QAC7B,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,UAAU,EAAE,EAAE;KACjB,CAAC;IACF,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAE9B,CAAA,KAAA,MAAM,CAAC,UAAU,CAAA,CAAC,IAAI,oCACf,OAAO,CAAC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,IAAA,qDAAyB,EAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAArC,CAAqC,CAAC,WACjE;IACF,OAAO,MAAM,CAAC;AAClB,CAAC,EAhBwC,CAgBxC,CAAC;AAjBO,QAAA,uBAAuB,2BAiB9B"}
@@ -1,3 +1,4 @@
1
1
  import { Metadata } from "../../../metadata/Metadata";
2
+ import { IProtocolMap } from "../../../messages/IProtocolMap";
2
3
  import { IProtocolMessage } from "../../../messages/IProtocolMessage";
3
- export declare const iterate_protocol_map: (container: "Object" | "Map") => (dict: Map<string, IProtocolMessage>) => (key: Metadata) => (value: Metadata) => string;
4
+ export declare const iterate_protocol_map: (sole: boolean) => (dict: Map<string, IProtocolMessage>) => (prop: Metadata.Entry) => string | IProtocolMap;
@@ -16,12 +16,20 @@ var ProtocolMetadataUtil_1 = require("./ProtocolMetadataUtil");
16
16
  var emplace_protocol_object_1 = require("./emplace_protocol_object");
17
17
  var iterate_protocol_atomic_1 = require("./iterate_protocol_atomic");
18
18
  var iterate_protocol_constant_1 = require("./iterate_protocol_constant");
19
- var iterate_protocol_map = function (container) {
19
+ var iterate_protocol_metadata_1 = require("./iterate_protocol_metadata");
20
+ var iterate_protocol_map = function (sole) {
20
21
  return function (dict) {
21
- return function (key) {
22
- return function (value) {
23
- return "map<".concat(getKeyName(key), ", ").concat(getValueName(container)(dict)(value), ">");
24
- };
22
+ return function (prop) {
23
+ if (sole === true)
24
+ return {
25
+ type: "map",
26
+ key: getKeyName(prop.key),
27
+ value: getValueName(dict)(prop.value),
28
+ };
29
+ var obj = ProtocolMetadataUtil_1.ProtocolMetadataUtil.object("Map.Wrapper<".concat(prop.key.getName(), ", ").concat(prop.value.getName(), ">"), dict.size);
30
+ obj.properties.push(ProtocolMetadataUtil_1.ProtocolMetadataUtil.property("value", ProtocolMetadataUtil_1.ProtocolMetadataUtil.map(prop), []));
31
+ (0, emplace_protocol_object_1.emplace_protocol_object)(dict)(obj);
32
+ return obj.name;
25
33
  };
26
34
  };
27
35
  };
@@ -56,16 +64,12 @@ var getKeyName = function (meta) {
56
64
  }
57
65
  return "string";
58
66
  };
59
- var getValueName = function (container) {
60
- return function (dict) {
61
- return function (meta) {
62
- if (ProtocolMetadataUtil_1.ProtocolMetadataUtil.standalone(meta))
63
- return meta.getName();
64
- var obj = ProtocolMetadataUtil_1.ProtocolMetadataUtil.object("".concat(container, ".Value<").concat(meta.getName(), ">"), dict.size);
65
- obj.properties.push(ProtocolMetadataUtil_1.ProtocolMetadataUtil.property("value", meta, []));
66
- (0, emplace_protocol_object_1.emplace_protocol_object)(dict)(obj);
67
- return obj.name;
68
- };
69
- };
70
- };
67
+ var getValueName = function (dict) { return function (meta) {
68
+ if (ProtocolMetadataUtil_1.ProtocolMetadataUtil.standalone(meta))
69
+ return (0, iterate_protocol_metadata_1.iterate_protocol_metadata)(dict)(meta)([]).oneOf[0].type;
70
+ var obj = ProtocolMetadataUtil_1.ProtocolMetadataUtil.object("Map.Value<".concat(meta.getName(), ">"), dict.size);
71
+ obj.properties.push(ProtocolMetadataUtil_1.ProtocolMetadataUtil.property("value", meta, []));
72
+ (0, emplace_protocol_object_1.emplace_protocol_object)(dict)(obj);
73
+ return obj.name;
74
+ }; };
71
75
  //# sourceMappingURL=iterate_protocol_map.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"iterate_protocol_map.js","sourceRoot":"","sources":["../../../../src/factories/internal/protocols/iterate_protocol_map.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAIA,+DAA8D;AAC9D,qEAAoE;AACpE,qEAAoE;AACpE,yEAAwE;AAEjE,IAAM,oBAAoB,GAC7B,UAAC,SAA2B;IAC5B,OAAA,UAAC,IAAmC;QACpC,OAAA,UAAC,GAAa;YACd,OAAA,UAAC,KAAe;gBACZ,OAAA,cAAO,UAAU,CAAC,GAAG,CAAC,eAAK,YAAY,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,MAAG;YAAlE,CAAkE;QADtE,CACsE;IAFtE,CAEsE;AAHtE,CAGsE,CAAC;AAL9D,QAAA,oBAAoB,wBAK0C;AAE3E,IAAM,UAAU,GAAG,UAAC,IAAc;;;QAC9B,KAAqB,IAAA,KAAA,SAAA,IAAI,CAAC,OAAO,CAAA,gBAAA;YAA5B,IAAM,MAAM,WAAA;YACb,OAAO,IAAA,iDAAuB,EAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;SAAA;;;;;;;;;;QAC/C,KAAuB,IAAA,KAAA,SAAA,IAAI,CAAC,SAAS,CAAA,gBAAA;YAAhC,IAAM,QAAQ,WAAA;YACf,OAAO,IAAA,qDAAyB,EAAC,QAAQ,CAAC,CAAC;SAAA;;;;;;;;;IAC/C,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAC;AAEF,IAAM,YAAY,GACd,UAAC,SAA2B;IAC5B,OAAA,UAAC,IAAmC;QACpC,OAAA,UAAC,IAAc;YACX,IAAI,2CAAoB,CAAC,UAAU,CAAC,IAAI,CAAC;gBAAE,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;YAEjE,IAAM,GAAG,GAAmB,2CAAoB,CAAC,MAAM,CACnD,UAAG,SAAS,oBAAU,IAAI,CAAC,OAAO,EAAE,MAAG,EACvC,IAAI,CAAC,IAAI,CACZ,CAAC;YACF,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,2CAAoB,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;YACtE,IAAA,iDAAuB,EAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YACnC,OAAO,GAAG,CAAC,IAAI,CAAC;QACpB,CAAC;IAVD,CAUC;AAXD,CAWC,CAAC"}
1
+ {"version":3,"file":"iterate_protocol_map.js","sourceRoot":"","sources":["../../../../src/factories/internal/protocols/iterate_protocol_map.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAKA,+DAA8D;AAC9D,qEAAoE;AACpE,qEAAoE;AACpE,yEAAwE;AACxE,yEAAwE;AAEjE,IAAM,oBAAoB,GAC7B,UAAC,IAAa;IACd,OAAA,UAAC,IAAmC;QACpC,OAAA,UAAC,IAAoB;YACjB,IAAI,IAAI,KAAK,IAAI;gBACb,OAAO;oBACH,IAAI,EAAE,KAAK;oBACX,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC;oBACzB,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;iBACxC,CAAC;YAEN,IAAM,GAAG,GAAmB,2CAAoB,CAAC,MAAM,CACnD,sBAAe,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,eAAK,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,MAAG,EAC7D,IAAI,CAAC,IAAI,CACZ,CAAC;YACF,GAAG,CAAC,UAAU,CAAC,IAAI,CACf,2CAAoB,CAAC,QAAQ,CACzB,OAAO,EACP,2CAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,EAC9B,EAAE,CACL,CACJ,CAAC;YACF,IAAA,iDAAuB,EAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YACnC,OAAO,GAAG,CAAC,IAAI,CAAC;QACpB,CAAC;IArBD,CAqBC;AAtBD,CAsBC,CAAC;AAxBO,QAAA,oBAAoB,wBAwB3B;AAEN,IAAM,UAAU,GAAG,UAAC,IAAc;;;QAC9B,KAAqB,IAAA,KAAA,SAAA,IAAI,CAAC,OAAO,CAAA,gBAAA;YAA5B,IAAM,MAAM,WAAA;YACb,OAAO,IAAA,iDAAuB,EAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;SAAA;;;;;;;;;;QAC/C,KAAuB,IAAA,KAAA,SAAA,IAAI,CAAC,SAAS,CAAA,gBAAA;YAAhC,IAAM,QAAQ,WAAA;YACf,OAAO,IAAA,qDAAyB,EAAC,QAAQ,CAAC,CAAC;SAAA;;;;;;;;;IAC/C,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAC;AAEF,IAAM,YAAY,GACd,UAAC,IAAmC,IAAK,OAAA,UAAC,IAAc;IACpD,IAAI,2CAAoB,CAAC,UAAU,CAAC,IAAI,CAAC;QACrC,OAAO,IAAA,qDAAyB,EAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC;IAEpE,IAAM,GAAG,GAAmB,2CAAoB,CAAC,MAAM,CACnD,oBAAa,IAAI,CAAC,OAAO,EAAE,MAAG,EAC9B,IAAI,CAAC,IAAI,CACZ,CAAC;IACF,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,2CAAoB,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IACtE,IAAA,iDAAuB,EAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IACnC,OAAO,GAAG,CAAC,IAAI,CAAC;AACpB,CAAC,EAXwC,CAWxC,CAAC"}
@@ -32,13 +32,25 @@ var iterate_protocol_atomic_1 = require("./iterate_protocol_atomic");
32
32
  var iterate_protocol_constant_1 = require("./iterate_protocol_constant");
33
33
  var iterate_protocol_map_1 = require("./iterate_protocol_map");
34
34
  var iterate_protocol_native_1 = require("./iterate_protocol_native");
35
+ var iterate_protocol_never_1 = require("./iterate_protocol_never");
36
+ var iterate_protocol_object_1 = require("./iterate_protocol_object");
35
37
  var iterate_protocol_repeated_1 = require("./iterate_protocol_repeated");
36
38
  var iterate_protocol_tuple_1 = require("./iterate_protocol_tuple");
37
39
  var iterate_protocol_metadata = function (dict) {
38
40
  return function (meta) {
39
41
  return function (tags) {
40
- var e_1, _a, e_2, _b, e_3, _c, e_4, _d, e_5, _e, e_6, _f, e_7, _g, e_8, _h, e_9, _j;
41
- var required = meta.required && !meta.nullable;
42
+ var e_1, _a, e_2, _b, e_3, _c, e_4, _d, e_5, _e, e_6, _f, e_7, _g, e_8, _h;
43
+ var _j;
44
+ var sole = meta.size() === 1;
45
+ var bucket = sole && meta.bucket() === 1;
46
+ var required = (meta.required && !meta.nullable) ||
47
+ (sole &&
48
+ (meta.arrays.length === 1 ||
49
+ meta.sets.length === 1 ||
50
+ meta.maps.length === 1 ||
51
+ (meta.objects.length === 1 &&
52
+ meta.objects[0].properties.length === 1 &&
53
+ !((_j = meta.objects[0].properties[0]) === null || _j === void 0 ? void 0 : _j.key.isSoleLiteral()))));
42
54
  var oneOf = [];
43
55
  var add = function (type) {
44
56
  if (oneOf.some(function (one) { return one.type === type; }))
@@ -47,11 +59,11 @@ var iterate_protocol_metadata = function (dict) {
47
59
  type: type,
48
60
  });
49
61
  };
50
- if (meta.size() === 1 && meta.arrays.length + meta.sets.length === 1) {
62
+ if (sole && meta.arrays.length + meta.sets.length === 1) {
51
63
  var _k = __read(meta.arrays.length === 1
52
64
  ? ["Array", meta.arrays[0]]
53
65
  : ["Set", meta.sets[0]], 2), container = _k[0], child = _k[1];
54
- add((0, iterate_protocol_repeated_1.iterate_protocol_repeated)(container)(true)(dict)(child)(tags));
66
+ add((0, iterate_protocol_repeated_1.iterate_protocol_repeated)(container)(true, true)(dict)(child)(tags));
55
67
  return {
56
68
  required: required,
57
69
  oneOf: oneOf,
@@ -86,26 +98,12 @@ var iterate_protocol_metadata = function (dict) {
86
98
  }
87
99
  if (meta.templates.length)
88
100
  add("string");
101
+ if (meta.size() === 0)
102
+ add((0, iterate_protocol_never_1.iterate_protocol_never)());
89
103
  try {
90
104
  for (var _q = __values(meta.objects), _r = _q.next(); !_r.done; _r = _q.next()) {
91
105
  var obj = _r.value;
92
- if (obj.properties.some(function (p) { return !p.key.isSoleLiteral(); })) {
93
- try {
94
- for (var _s = (e_4 = void 0, __values(obj.properties)), _t = _s.next(); !_t.done; _t = _s.next()) {
95
- var prop = _t.value;
96
- add((0, iterate_protocol_map_1.iterate_protocol_map)("Object")(dict)(prop.key)(prop.value));
97
- }
98
- }
99
- catch (e_4_1) { e_4 = { error: e_4_1 }; }
100
- finally {
101
- try {
102
- if (_t && !_t.done && (_d = _s.return)) _d.call(_s);
103
- }
104
- finally { if (e_4) throw e_4.error; }
105
- }
106
- }
107
- else
108
- add(obj.name);
106
+ add((0, iterate_protocol_object_1.iterate_protocol_object)(sole)(dict)(obj));
109
107
  }
110
108
  }
111
109
  catch (e_3_1) { e_3 = { error: e_3_1 }; }
@@ -115,6 +113,19 @@ var iterate_protocol_metadata = function (dict) {
115
113
  }
116
114
  finally { if (e_3) throw e_3.error; }
117
115
  }
116
+ try {
117
+ for (var _s = __values(meta.maps), _t = _s.next(); !_t.done; _t = _s.next()) {
118
+ var map = _t.value;
119
+ add((0, iterate_protocol_map_1.iterate_protocol_map)(sole)(dict)(map));
120
+ }
121
+ }
122
+ catch (e_4_1) { e_4 = { error: e_4_1 }; }
123
+ finally {
124
+ try {
125
+ if (_t && !_t.done && (_d = _s.return)) _d.call(_s);
126
+ }
127
+ finally { if (e_4) throw e_4.error; }
128
+ }
118
129
  try {
119
130
  for (var _u = __values(meta.natives), _v = _u.next(); !_v.done; _v = _u.next()) {
120
131
  var native = _v.value;
@@ -144,7 +155,7 @@ var iterate_protocol_metadata = function (dict) {
144
155
  try {
145
156
  for (var _y = __values(meta.arrays), _z = _y.next(); !_z.done; _z = _y.next()) {
146
157
  var array = _z.value;
147
- add((0, iterate_protocol_repeated_1.iterate_protocol_repeated)("Array")(false)(dict)(array)(tags));
158
+ add((0, iterate_protocol_repeated_1.iterate_protocol_repeated)("Array")(false, bucket)(dict)(array)(tags));
148
159
  }
149
160
  }
150
161
  catch (e_7_1) { e_7 = { error: e_7_1 }; }
@@ -157,7 +168,7 @@ var iterate_protocol_metadata = function (dict) {
157
168
  try {
158
169
  for (var _0 = __values(meta.sets), _1 = _0.next(); !_1.done; _1 = _0.next()) {
159
170
  var set = _1.value;
160
- add((0, iterate_protocol_repeated_1.iterate_protocol_repeated)("Set")(false)(dict)(set)(tags));
171
+ add((0, iterate_protocol_repeated_1.iterate_protocol_repeated)("Set")(false, bucket)(dict)(set)(tags));
161
172
  }
162
173
  }
163
174
  catch (e_8_1) { e_8 = { error: e_8_1 }; }
@@ -167,19 +178,6 @@ var iterate_protocol_metadata = function (dict) {
167
178
  }
168
179
  finally { if (e_8) throw e_8.error; }
169
180
  }
170
- try {
171
- for (var _2 = __values(meta.maps), _3 = _2.next(); !_3.done; _3 = _2.next()) {
172
- var map = _3.value;
173
- add((0, iterate_protocol_map_1.iterate_protocol_map)("Map")(dict)(map.key)(map.value));
174
- }
175
- }
176
- catch (e_9_1) { e_9 = { error: e_9_1 }; }
177
- finally {
178
- try {
179
- if (_3 && !_3.done && (_j = _2.return)) _j.call(_2);
180
- }
181
- finally { if (e_9) throw e_9.error; }
182
- }
183
181
  return {
184
182
  required: required,
185
183
  oneOf: oneOf,
@@ -1 +1 @@
1
- {"version":3,"file":"iterate_protocol_metadata.js","sourceRoot":"","sources":["../../../../src/factories/internal/protocols/iterate_protocol_metadata.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"iterate_protocol_metadata.js","sourceRoot":"","sources":["../../../../src/factories/internal/protocols/iterate_protocol_metadata.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare const iterate_protocol_never: () => string;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.iterate_protocol_never = void 0;
4
+ var iterate_protocol_never = function () { return "uint32"; };
5
+ exports.iterate_protocol_never = iterate_protocol_never;
6
+ //# sourceMappingURL=iterate_protocol_never.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iterate_protocol_never.js","sourceRoot":"","sources":["../../../../src/factories/internal/protocols/iterate_protocol_never.ts"],"names":[],"mappings":";;;AAAO,IAAM,sBAAsB,GAAG,cAAM,OAAA,QAAQ,EAAR,CAAQ,CAAC;AAAxC,QAAA,sBAAsB,0BAAkB"}
@@ -0,0 +1,4 @@
1
+ import { MetadataObject } from "../../../metadata/MetadataObject";
2
+ import { IProtocolMap } from "../../../messages/IProtocolMap";
3
+ import { IProtocolMessage } from "../../../messages/IProtocolMessage";
4
+ export declare const iterate_protocol_object: (sole: boolean) => (dict: Map<string, IProtocolMessage>) => (obj: MetadataObject) => string | IProtocolMap;
@@ -0,0 +1,157 @@
1
+ "use strict";
2
+ var __read = (this && this.__read) || function (o, n) {
3
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
4
+ if (!m) return o;
5
+ var i = m.call(o), r, ar = [], e;
6
+ try {
7
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
8
+ }
9
+ catch (error) { e = { error: error }; }
10
+ finally {
11
+ try {
12
+ if (r && !r.done && (m = i["return"])) m.call(i);
13
+ }
14
+ finally { if (e) throw e.error; }
15
+ }
16
+ return ar;
17
+ };
18
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
19
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
20
+ if (ar || !(i in from)) {
21
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
22
+ ar[i] = from[i];
23
+ }
24
+ }
25
+ return to.concat(ar || Array.prototype.slice.call(from));
26
+ };
27
+ var __values = (this && this.__values) || function(o) {
28
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
29
+ if (m) return m.call(o);
30
+ if (o && typeof o.length === "number") return {
31
+ next: function () {
32
+ if (o && i >= o.length) o = void 0;
33
+ return { value: o && o[i++], done: !o };
34
+ }
35
+ };
36
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.iterate_protocol_object = void 0;
40
+ var Metadata_1 = require("../../../metadata/Metadata");
41
+ var MapUtil_1 = require("../../../utils/MapUtil");
42
+ var ProtocolMetadataUtil_1 = require("./ProtocolMetadataUtil");
43
+ var emplace_protocol_object_1 = require("./emplace_protocol_object");
44
+ var iterate_protocol_metadata_1 = require("./iterate_protocol_metadata");
45
+ var iterate_protocol_object = function (sole) {
46
+ return function (dict) {
47
+ return function (obj) {
48
+ var _a;
49
+ var statics = obj.properties.filter(filter(true));
50
+ var dynamics = aggregate(obj.properties.filter(filter(false)));
51
+ if (dynamics.length === 0)
52
+ return obj.name;
53
+ var regular = statics.length
54
+ ? (function () {
55
+ var _a;
56
+ var r = ProtocolMetadataUtil_1.ProtocolMetadataUtil.object("".concat(obj.name, ".__Regular"), dict.size);
57
+ (_a = r.properties).push.apply(_a, __spreadArray([], __read(statics), false));
58
+ (0, emplace_protocol_object_1.emplace_protocol_object)(dict)(r);
59
+ return r;
60
+ })()
61
+ : undefined;
62
+ if (regular === undefined && dynamics.length === 1 && sole === true) {
63
+ var _b = dynamics[0], key = _b.key, value_1 = _b.value;
64
+ return {
65
+ type: "map",
66
+ key: key.getName(),
67
+ value: ProtocolMetadataUtil_1.ProtocolMetadataUtil.standalone(value_1)
68
+ ? (0, iterate_protocol_metadata_1.iterate_protocol_metadata)(dict)(value_1)([]).oneOf[0].type
69
+ : (function () {
70
+ var wrapper = ProtocolMetadataUtil_1.ProtocolMetadataUtil.object("".concat(obj.name, ".__Wrapper"), dict.size);
71
+ wrapper.properties.push(ProtocolMetadataUtil_1.ProtocolMetadataUtil.property("value", value_1, []));
72
+ (0, emplace_protocol_object_1.emplace_protocol_object)(dict)(wrapper);
73
+ return wrapper.name;
74
+ })(),
75
+ };
76
+ }
77
+ var wrapper = ProtocolMetadataUtil_1.ProtocolMetadataUtil.object("".concat(obj.name, ".__Wrapper"), dict.size);
78
+ if (regular !== undefined)
79
+ wrapper.properties.push(ProtocolMetadataUtil_1.ProtocolMetadataUtil.property("regular", ProtocolMetadataUtil_1.ProtocolMetadataUtil.reference(regular), []));
80
+ (_a = wrapper.properties).push.apply(_a, __spreadArray([], __read(dynamics.map(function (map, i) {
81
+ return ProtocolMetadataUtil_1.ProtocolMetadataUtil.property("__map_".concat(i), ProtocolMetadataUtil_1.ProtocolMetadataUtil.map(map), []);
82
+ })), false));
83
+ (0, emplace_protocol_object_1.emplace_protocol_object)(dict)(wrapper);
84
+ return wrapper.name;
85
+ };
86
+ };
87
+ };
88
+ exports.iterate_protocol_object = iterate_protocol_object;
89
+ var filter = function (regular) { return function (prop) {
90
+ return regular === prop.key.isSoleLiteral();
91
+ }; };
92
+ var aggregate = function (properties) {
93
+ var e_1, _a, e_2, _b, e_3, _c, e_4, _d;
94
+ var unique = new Map();
95
+ try {
96
+ for (var properties_1 = __values(properties), properties_1_1 = properties_1.next(); !properties_1_1.done; properties_1_1 = properties_1.next()) {
97
+ var prop = properties_1_1.value;
98
+ if (prop.key.templates)
99
+ MapUtil_1.MapUtil.take(unique, "string", function () { return []; }).push(prop);
100
+ try {
101
+ for (var _e = (e_2 = void 0, __values(prop.key.atomics)), _f = _e.next(); !_f.done; _f = _e.next()) {
102
+ var type = _f.value;
103
+ MapUtil_1.MapUtil.take(unique, type, function () { return []; }).push(prop);
104
+ }
105
+ }
106
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
107
+ finally {
108
+ try {
109
+ if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
110
+ }
111
+ finally { if (e_2) throw e_2.error; }
112
+ }
113
+ try {
114
+ for (var _g = (e_3 = void 0, __values(prop.key.constants)), _h = _g.next(); !_h.done; _h = _g.next()) {
115
+ var type = _h.value.type;
116
+ MapUtil_1.MapUtil.take(unique, type, function () { return []; }).push(prop);
117
+ }
118
+ }
119
+ catch (e_3_1) { e_3 = { error: e_3_1 }; }
120
+ finally {
121
+ try {
122
+ if (_h && !_h.done && (_c = _g.return)) _c.call(_g);
123
+ }
124
+ finally { if (e_3) throw e_3.error; }
125
+ }
126
+ }
127
+ }
128
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
129
+ finally {
130
+ try {
131
+ if (properties_1_1 && !properties_1_1.done && (_a = properties_1.return)) _a.call(properties_1);
132
+ }
133
+ finally { if (e_1) throw e_1.error; }
134
+ }
135
+ var output = [];
136
+ try {
137
+ for (var unique_1 = __values(unique), unique_1_1 = unique_1.next(); !unique_1_1.done; unique_1_1 = unique_1.next()) {
138
+ var _j = __read(unique_1_1.value, 2), key = _j[0], properties_2 = _j[1];
139
+ var value = properties_2
140
+ .map(function (x) { return x.value; })
141
+ .reduce(function (x, y) { return Metadata_1.Metadata.merge(x, y); });
142
+ output.push({
143
+ key: ProtocolMetadataUtil_1.ProtocolMetadataUtil.atomic(key),
144
+ value: value,
145
+ });
146
+ }
147
+ }
148
+ catch (e_4_1) { e_4 = { error: e_4_1 }; }
149
+ finally {
150
+ try {
151
+ if (unique_1_1 && !unique_1_1.done && (_d = unique_1.return)) _d.call(unique_1);
152
+ }
153
+ finally { if (e_4) throw e_4.error; }
154
+ }
155
+ return output;
156
+ };
157
+ //# sourceMappingURL=iterate_protocol_object.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iterate_protocol_object.js","sourceRoot":"","sources":["../../../../src/factories/internal/protocols/iterate_protocol_object.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { IMetadataTag } from "../../../metadata/IMetadataTag";
2
2
  import { Metadata } from "../../../metadata/Metadata";
3
+ import { IProtocolMap } from "../../../messages/IProtocolMap";
3
4
  import { IProtocolMessage } from "../../../messages/IProtocolMessage";
4
- export declare const iterate_protocol_repeated: (container: "Array" | "Set") => (sole: boolean) => (dict: Map<string, IProtocolMessage>) => (meta: Metadata) => (tags: IMetadataTag[]) => string;
5
+ export declare const iterate_protocol_repeated: (container: "Array" | "Set") => (sole: boolean, bucket: boolean) => (dict: Map<string, IProtocolMessage>) => (meta: Metadata) => (tags: IMetadataTag[]) => string | IProtocolMap;
@@ -3,16 +3,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.iterate_protocol_repeated = void 0;
4
4
  var ProtocolMetadataUtil_1 = require("./ProtocolMetadataUtil");
5
5
  var emplace_protocol_object_1 = require("./emplace_protocol_object");
6
+ var iterate_protocol_metadata_1 = require("./iterate_protocol_metadata");
6
7
  var iterate_protocol_repeated = function (container) {
7
- return function (sole) {
8
+ return function (sole, bucket) {
8
9
  return function (dict) {
9
10
  return function (meta) {
10
11
  return function (tags) {
11
12
  sole && (sole = ProtocolMetadataUtil_1.ProtocolMetadataUtil.standalone(meta));
12
13
  if (sole === true)
13
- return meta.getName();
14
- var obj = ProtocolMetadataUtil_1.ProtocolMetadataUtil.object("".concat(container, ".Element<").concat(meta.getName(), ">"), dict.size);
15
- obj.properties.push(ProtocolMetadataUtil_1.ProtocolMetadataUtil.property("value", meta, tags));
14
+ return (0, iterate_protocol_metadata_1.iterate_protocol_metadata)(dict)(meta)(tags).oneOf[0].type;
15
+ var obj = ProtocolMetadataUtil_1.ProtocolMetadataUtil.object("".concat(container, ".").concat(bucket ? "Element" : "Wrapper", "<").concat(meta.getName(), ">"), dict.size);
16
+ obj.properties.push(ProtocolMetadataUtil_1.ProtocolMetadataUtil.property("value", bucket ? meta : ProtocolMetadataUtil_1.ProtocolMetadataUtil.array(meta), tags));
16
17
  (0, emplace_protocol_object_1.emplace_protocol_object)(dict)(obj);
17
18
  return obj.name;
18
19
  };
@@ -1 +1 @@
1
- {"version":3,"file":"iterate_protocol_repeated.js","sourceRoot":"","sources":["../../../../src/factories/internal/protocols/iterate_protocol_repeated.ts"],"names":[],"mappings":";;;AAKA,+DAA8D;AAC9D,qEAAoE;AAE7D,IAAM,yBAAyB,GAClC,UAAC,SAA0B;IAC3B,OAAA,UAAC,IAAa;QACd,OAAA,UAAC,IAAmC;YACpC,OAAA,UAAC,IAAc;gBACf,OAAA,UAAC,IAAoB;oBACjB,IAAI,KAAJ,IAAI,GAAK,2CAAoB,CAAC,UAAU,CAAC,IAAI,CAAC,EAAC;oBAC/C,IAAI,IAAI,KAAK,IAAI;wBAAE,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;oBAEzC,IAAM,GAAG,GAAmB,2CAAoB,CAAC,MAAM,CACnD,UAAG,SAAS,sBAAY,IAAI,CAAC,OAAO,EAAE,MAAG,EACzC,IAAI,CAAC,IAAI,CACZ,CAAC;oBACF,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,2CAAoB,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;oBACxE,IAAA,iDAAuB,EAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;oBACnC,OAAO,GAAG,CAAC,IAAI,CAAC;gBACpB,CAAC;YAXD,CAWC;QAZD,CAYC;IAbD,CAaC;AAdD,CAcC,CAAC;AAhBO,QAAA,yBAAyB,6BAgBhC"}
1
+ {"version":3,"file":"iterate_protocol_repeated.js","sourceRoot":"","sources":["../../../../src/factories/internal/protocols/iterate_protocol_repeated.ts"],"names":[],"mappings":";;;AAMA,+DAA8D;AAC9D,qEAAoE;AACpE,yEAAwE;AAEjE,IAAM,yBAAyB,GAClC,UAAC,SAA0B;IAC3B,OAAA,UAAC,IAAa,EAAE,MAAe;QAC/B,OAAA,UAAC,IAAmC;YACpC,OAAA,UAAC,IAAc;gBACf,OAAA,UAAC,IAAoB;oBACjB,IAAI,KAAJ,IAAI,GAAK,2CAAoB,CAAC,UAAU,CAAC,IAAI,CAAC,EAAC;oBAC/C,IAAI,IAAI,KAAK,IAAI;wBACb,OAAO,IAAA,qDAAyB,EAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC;oBAEtE,IAAM,GAAG,GAAmB,2CAAoB,CAAC,MAAM,CACnD,UAAG,SAAS,cAAI,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,cAAI,IAAI,CAAC,OAAO,EAAE,MAAG,EACnE,IAAI,CAAC,IAAI,CACZ,CAAC;oBACF,GAAG,CAAC,UAAU,CAAC,IAAI,CACf,2CAAoB,CAAC,QAAQ,CACzB,OAAO,EACP,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,2CAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,EAChD,IAAI,CACP,CACJ,CAAC;oBACF,IAAA,iDAAuB,EAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;oBACnC,OAAO,GAAG,CAAC,IAAI,CAAC;gBACpB,CAAC;YAlBD,CAkBC;QAnBD,CAmBC;IApBD,CAoBC;AArBD,CAqBC,CAAC;AAvBO,QAAA,yBAAyB,6BAuBhC"}
@@ -36,7 +36,7 @@ var iterate_protocol_tuple = function (dict) {
36
36
  return name;
37
37
  var obj = ProtocolMetadataUtil_1.ProtocolMetadataUtil.object(name, dict.size);
38
38
  (_a = obj.properties).push.apply(_a, __spreadArray([], __read(tuple.map(function (value, i) {
39
- return ProtocolMetadataUtil_1.ProtocolMetadataUtil.property("v".concat(i), value, []);
39
+ return ProtocolMetadataUtil_1.ProtocolMetadataUtil.property("v".concat(i), value.rest ? ProtocolMetadataUtil_1.ProtocolMetadataUtil.array(value.rest) : value, []);
40
40
  })), false));
41
41
  (0, emplace_protocol_object_1.emplace_protocol_object)(dict)(obj);
42
42
  return obj.name;
@@ -1 +1 @@
1
- {"version":3,"file":"iterate_protocol_tuple.js","sourceRoot":"","sources":["../../../../src/factories/internal/protocols/iterate_protocol_tuple.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,+DAA8D;AAC9D,qEAAoE;AAE7D,IAAM,sBAAsB,GAC/B,UAAC,IAAmC;IACpC,OAAA,UAAC,KAAiB;;QACd,IAAM,IAAI,GAAW,WAAI,KAAK,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,OAAO,EAAE,EAAX,CAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAG,CAAC;QACrE,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QAEhC,IAAM,GAAG,GAAmB,2CAAoB,CAAC,MAAM,CACnD,IAAI,EACJ,IAAI,CAAC,IAAI,CACZ,CAAC;QACF,CAAA,KAAA,GAAG,CAAC,UAAU,CAAA,CAAC,IAAI,oCACZ,KAAK,CAAC,GAAG,CAAC,UAAC,KAAK,EAAE,CAAC;YAClB,OAAA,2CAAoB,CAAC,QAAQ,CAAC,WAAI,CAAC,CAAE,EAAE,KAAK,EAAE,EAAE,CAAC;QAAjD,CAAiD,CACpD,WACH;QACF,IAAA,iDAAuB,EAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACnC,OAAO,GAAG,CAAC,IAAI,CAAC;IACpB,CAAC;AAfD,CAeC,CAAC;AAjBO,QAAA,sBAAsB,0BAiB7B"}
1
+ {"version":3,"file":"iterate_protocol_tuple.js","sourceRoot":"","sources":["../../../../src/factories/internal/protocols/iterate_protocol_tuple.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,+DAA8D;AAC9D,qEAAoE;AAE7D,IAAM,sBAAsB,GAC/B,UAAC,IAAmC;IACpC,OAAA,UAAC,KAAiB;;QACd,IAAM,IAAI,GAAW,WAAI,KAAK,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,OAAO,EAAE,EAAX,CAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAG,CAAC;QACrE,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QAEhC,IAAM,GAAG,GAAmB,2CAAoB,CAAC,MAAM,CACnD,IAAI,EACJ,IAAI,CAAC,IAAI,CACZ,CAAC;QACF,CAAA,KAAA,GAAG,CAAC,UAAU,CAAA,CAAC,IAAI,oCACZ,KAAK,CAAC,GAAG,CAAC,UAAC,KAAK,EAAE,CAAC;YAClB,OAAA,2CAAoB,CAAC,QAAQ,CACzB,WAAI,CAAC,CAAE,EACP,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,2CAAoB,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,EAC3D,EAAE,CACL;QAJD,CAIC,CACJ,WACH;QACF,IAAA,iDAAuB,EAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACnC,OAAO,GAAG,CAAC,IAAI,CAAC;IACpB,CAAC;AAnBD,CAmBC,CAAC;AArBO,QAAA,sBAAsB,0BAqB7B"}
@@ -0,0 +1,5 @@
1
+ export interface IProtocolMap {
2
+ type: "map";
3
+ key: string;
4
+ value: string | IProtocolMap;
5
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IProtocolMap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IProtocolMap.js","sourceRoot":"","sources":["../../src/messages/IProtocolMap.ts"],"names":[],"mappings":""}