@primmel/primmel 1.0.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 (223) hide show
  1. package/LICENSE +21 -0
  2. package/README.adoc +52 -0
  3. package/dist/index.d.ts +23 -0
  4. package/dist/index.d.ts.map +1 -0
  5. package/dist/index.js +9 -0
  6. package/dist/index.js.map +1 -0
  7. package/dist/src/ser-des/config/approval.d.ts +6 -0
  8. package/dist/src/ser-des/config/approval.d.ts.map +1 -0
  9. package/dist/src/ser-des/config/approval.js +115 -0
  10. package/dist/src/ser-des/config/approval.js.map +1 -0
  11. package/dist/src/ser-des/config/calculation.d.ts +7 -0
  12. package/dist/src/ser-des/config/calculation.d.ts.map +1 -0
  13. package/dist/src/ser-des/config/calculation.js +182 -0
  14. package/dist/src/ser-des/config/calculation.js.map +1 -0
  15. package/dist/src/ser-des/config/data.d.ts +12 -0
  16. package/dist/src/ser-des/config/data.d.ts.map +1 -0
  17. package/dist/src/ser-des/config/data.js +278 -0
  18. package/dist/src/ser-des/config/data.js.map +1 -0
  19. package/dist/src/ser-des/config/event.d.ts +8 -0
  20. package/dist/src/ser-des/config/event.d.ts.map +1 -0
  21. package/dist/src/ser-des/config/event.js +144 -0
  22. package/dist/src/ser-des/config/event.js.map +1 -0
  23. package/dist/src/ser-des/config/figure.d.ts +5 -0
  24. package/dist/src/ser-des/config/figure.d.ts.map +1 -0
  25. package/dist/src/ser-des/config/figure.js +42 -0
  26. package/dist/src/ser-des/config/figure.js.map +1 -0
  27. package/dist/src/ser-des/config/flow.d.ts +20 -0
  28. package/dist/src/ser-des/config/flow.d.ts.map +1 -0
  29. package/dist/src/ser-des/config/flow.js +288 -0
  30. package/dist/src/ser-des/config/flow.js.map +1 -0
  31. package/dist/src/ser-des/config/form.d.ts +5 -0
  32. package/dist/src/ser-des/config/form.d.ts.map +1 -0
  33. package/dist/src/ser-des/config/form.js +353 -0
  34. package/dist/src/ser-des/config/form.js.map +1 -0
  35. package/dist/src/ser-des/config/gateway.d.ts +5 -0
  36. package/dist/src/ser-des/config/gateway.d.ts.map +1 -0
  37. package/dist/src/ser-des/config/gateway.js +50 -0
  38. package/dist/src/ser-des/config/gateway.js.map +1 -0
  39. package/dist/src/ser-des/config/index.d.ts +5 -0
  40. package/dist/src/ser-des/config/index.d.ts.map +1 -0
  41. package/dist/src/ser-des/config/index.js +266 -0
  42. package/dist/src/ser-des/config/index.js.map +1 -0
  43. package/dist/src/ser-des/config/link.d.ts +5 -0
  44. package/dist/src/ser-des/config/link.d.ts.map +1 -0
  45. package/dist/src/ser-des/config/link.js +55 -0
  46. package/dist/src/ser-des/config/link.js.map +1 -0
  47. package/dist/src/ser-des/config/mapProfile.d.ts +5 -0
  48. package/dist/src/ser-des/config/mapProfile.d.ts.map +1 -0
  49. package/dist/src/ser-des/config/mapProfile.js +65 -0
  50. package/dist/src/ser-des/config/mapProfile.js.map +1 -0
  51. package/dist/src/ser-des/config/metadata.d.ts +5 -0
  52. package/dist/src/ser-des/config/metadata.d.ts.map +1 -0
  53. package/dist/src/ser-des/config/metadata.js +64 -0
  54. package/dist/src/ser-des/config/metadata.js.map +1 -0
  55. package/dist/src/ser-des/config/note.d.ts +7 -0
  56. package/dist/src/ser-des/config/note.d.ts.map +1 -0
  57. package/dist/src/ser-des/config/note.js +77 -0
  58. package/dist/src/ser-des/config/note.js.map +1 -0
  59. package/dist/src/ser-des/config/process.d.ts +6 -0
  60. package/dist/src/ser-des/config/process.d.ts.map +1 -0
  61. package/dist/src/ser-des/config/process.js +152 -0
  62. package/dist/src/ser-des/config/process.js.map +1 -0
  63. package/dist/src/ser-des/config/provision.d.ts +7 -0
  64. package/dist/src/ser-des/config/provision.d.ts.map +1 -0
  65. package/dist/src/ser-des/config/provision.js +81 -0
  66. package/dist/src/ser-des/config/provision.js.map +1 -0
  67. package/dist/src/ser-des/config/reference.d.ts +5 -0
  68. package/dist/src/ser-des/config/reference.d.ts.map +1 -0
  69. package/dist/src/ser-des/config/reference.js +46 -0
  70. package/dist/src/ser-des/config/reference.js.map +1 -0
  71. package/dist/src/ser-des/config/role.d.ts +5 -0
  72. package/dist/src/ser-des/config/role.d.ts.map +1 -0
  73. package/dist/src/ser-des/config/role.js +39 -0
  74. package/dist/src/ser-des/config/role.js.map +1 -0
  75. package/dist/src/ser-des/config/stateMachine.d.ts +5 -0
  76. package/dist/src/ser-des/config/stateMachine.d.ts.map +1 -0
  77. package/dist/src/ser-des/config/stateMachine.js +175 -0
  78. package/dist/src/ser-des/config/stateMachine.js.map +1 -0
  79. package/dist/src/ser-des/config/subform.d.ts +5 -0
  80. package/dist/src/ser-des/config/subform.d.ts.map +1 -0
  81. package/dist/src/ser-des/config/subform.js +248 -0
  82. package/dist/src/ser-des/config/subform.js.map +1 -0
  83. package/dist/src/ser-des/config/symbol.d.ts +7 -0
  84. package/dist/src/ser-des/config/symbol.d.ts.map +1 -0
  85. package/dist/src/ser-des/config/symbol.js +111 -0
  86. package/dist/src/ser-des/config/symbol.js.map +1 -0
  87. package/dist/src/ser-des/config/table.d.ts +5 -0
  88. package/dist/src/ser-des/config/table.d.ts.map +1 -0
  89. package/dist/src/ser-des/config/table.js +92 -0
  90. package/dist/src/ser-des/config/table.js.map +1 -0
  91. package/dist/src/ser-des/config/viewProfile.d.ts +5 -0
  92. package/dist/src/ser-des/config/viewProfile.d.ts.map +1 -0
  93. package/dist/src/ser-des/config/viewProfile.js +57 -0
  94. package/dist/src/ser-des/config/viewProfile.js.map +1 -0
  95. package/dist/src/ser-des/dump.d.ts +12 -0
  96. package/dist/src/ser-des/dump.d.ts.map +1 -0
  97. package/dist/src/ser-des/dump.js +28 -0
  98. package/dist/src/ser-des/dump.js.map +1 -0
  99. package/dist/src/ser-des/includes.d.ts +13 -0
  100. package/dist/src/ser-des/includes.d.ts.map +1 -0
  101. package/dist/src/ser-des/includes.js +51 -0
  102. package/dist/src/ser-des/includes.js.map +1 -0
  103. package/dist/src/ser-des/index.d.ts +19 -0
  104. package/dist/src/ser-des/index.d.ts.map +1 -0
  105. package/dist/src/ser-des/index.js +33 -0
  106. package/dist/src/ser-des/index.js.map +1 -0
  107. package/dist/src/ser-des/parse.d.ts +11 -0
  108. package/dist/src/ser-des/parse.d.ts.map +1 -0
  109. package/dist/src/ser-des/parse.js +64 -0
  110. package/dist/src/ser-des/parse.js.map +1 -0
  111. package/dist/src/ser-des/resolve.d.ts +22 -0
  112. package/dist/src/ser-des/resolve.d.ts.map +1 -0
  113. package/dist/src/ser-des/resolve.js +110 -0
  114. package/dist/src/ser-des/resolve.js.map +1 -0
  115. package/dist/src/ser-des/tokenize.d.ts +5 -0
  116. package/dist/src/ser-des/tokenize.d.ts.map +1 -0
  117. package/dist/src/ser-des/tokenize.js +127 -0
  118. package/dist/src/ser-des/tokenize.js.map +1 -0
  119. package/dist/src/ser-des/types.d.ts +65 -0
  120. package/dist/src/ser-des/types.d.ts.map +1 -0
  121. package/dist/src/ser-des/types.js +3 -0
  122. package/dist/src/ser-des/types.js.map +1 -0
  123. package/dist/src/types/Approval.d.ts +15 -0
  124. package/dist/src/types/Approval.d.ts.map +1 -0
  125. package/dist/src/types/Approval.js +3 -0
  126. package/dist/src/types/Approval.js.map +1 -0
  127. package/dist/src/types/Calculation.d.ts +26 -0
  128. package/dist/src/types/Calculation.d.ts.map +1 -0
  129. package/dist/src/types/Calculation.js +3 -0
  130. package/dist/src/types/Calculation.js.map +1 -0
  131. package/dist/src/types/Figure.d.ts +9 -0
  132. package/dist/src/types/Figure.d.ts.map +1 -0
  133. package/dist/src/types/Figure.js +3 -0
  134. package/dist/src/types/Figure.js.map +1 -0
  135. package/dist/src/types/Form.d.ts +67 -0
  136. package/dist/src/types/Form.d.ts.map +1 -0
  137. package/dist/src/types/Form.js +3 -0
  138. package/dist/src/types/Form.js.map +1 -0
  139. package/dist/src/types/Gateway.d.ts +14 -0
  140. package/dist/src/types/Gateway.d.ts.map +1 -0
  141. package/dist/src/types/Gateway.js +3 -0
  142. package/dist/src/types/Gateway.js.map +1 -0
  143. package/dist/src/types/Link.d.ts +11 -0
  144. package/dist/src/types/Link.d.ts.map +1 -0
  145. package/dist/src/types/Link.js +3 -0
  146. package/dist/src/types/Link.js.map +1 -0
  147. package/dist/src/types/MapProfile.d.ts +9 -0
  148. package/dist/src/types/MapProfile.d.ts.map +1 -0
  149. package/dist/src/types/MapProfile.js +3 -0
  150. package/dist/src/types/MapProfile.js.map +1 -0
  151. package/dist/src/types/Metadata.d.ts +9 -0
  152. package/dist/src/types/Metadata.d.ts.map +1 -0
  153. package/dist/src/types/Metadata.js +3 -0
  154. package/dist/src/types/Metadata.js.map +1 -0
  155. package/dist/src/types/Node.d.ts +4 -0
  156. package/dist/src/types/Node.d.ts.map +1 -0
  157. package/dist/src/types/Node.js +3 -0
  158. package/dist/src/types/Node.js.map +1 -0
  159. package/dist/src/types/Note.d.ts +12 -0
  160. package/dist/src/types/Note.d.ts.map +1 -0
  161. package/dist/src/types/Note.js +3 -0
  162. package/dist/src/types/Note.js.map +1 -0
  163. package/dist/src/types/ParallelGateway.d.ts +3 -0
  164. package/dist/src/types/ParallelGateway.d.ts.map +1 -0
  165. package/dist/src/types/ParallelGateway.js +3 -0
  166. package/dist/src/types/ParallelGateway.js.map +1 -0
  167. package/dist/src/types/Provision.d.ts +11 -0
  168. package/dist/src/types/Provision.d.ts.map +1 -0
  169. package/dist/src/types/Provision.js +3 -0
  170. package/dist/src/types/Provision.js.map +1 -0
  171. package/dist/src/types/Reference.d.ts +6 -0
  172. package/dist/src/types/Reference.d.ts.map +1 -0
  173. package/dist/src/types/Reference.js +3 -0
  174. package/dist/src/types/Reference.js.map +1 -0
  175. package/dist/src/types/Resolvable.d.ts +7 -0
  176. package/dist/src/types/Resolvable.d.ts.map +1 -0
  177. package/dist/src/types/Resolvable.js +3 -0
  178. package/dist/src/types/Resolvable.js.map +1 -0
  179. package/dist/src/types/Role.d.ts +5 -0
  180. package/dist/src/types/Role.d.ts.map +1 -0
  181. package/dist/src/types/Role.js +3 -0
  182. package/dist/src/types/Role.js.map +1 -0
  183. package/dist/src/types/Standard.d.ts +49 -0
  184. package/dist/src/types/Standard.d.ts.map +1 -0
  185. package/dist/src/types/Standard.js +3 -0
  186. package/dist/src/types/Standard.js.map +1 -0
  187. package/dist/src/types/StateMachine.d.ts +38 -0
  188. package/dist/src/types/StateMachine.d.ts.map +1 -0
  189. package/dist/src/types/StateMachine.js +3 -0
  190. package/dist/src/types/StateMachine.js.map +1 -0
  191. package/dist/src/types/Subform.d.ts +30 -0
  192. package/dist/src/types/Subform.d.ts.map +1 -0
  193. package/dist/src/types/Subform.js +3 -0
  194. package/dist/src/types/Subform.js.map +1 -0
  195. package/dist/src/types/Symbol.d.ts +16 -0
  196. package/dist/src/types/Symbol.d.ts.map +1 -0
  197. package/dist/src/types/Symbol.js +3 -0
  198. package/dist/src/types/Symbol.js.map +1 -0
  199. package/dist/src/types/Table.d.ts +12 -0
  200. package/dist/src/types/Table.d.ts.map +1 -0
  201. package/dist/src/types/Table.js +3 -0
  202. package/dist/src/types/Table.js.map +1 -0
  203. package/dist/src/types/ViewProfile.d.ts +10 -0
  204. package/dist/src/types/ViewProfile.d.ts.map +1 -0
  205. package/dist/src/types/ViewProfile.js +3 -0
  206. package/dist/src/types/ViewProfile.js.map +1 -0
  207. package/dist/src/types/data.d.ts +42 -0
  208. package/dist/src/types/data.d.ts.map +1 -0
  209. package/dist/src/types/data.js +3 -0
  210. package/dist/src/types/data.js.map +1 -0
  211. package/dist/src/types/events.d.ts +20 -0
  212. package/dist/src/types/events.d.ts.map +1 -0
  213. package/dist/src/types/events.js +3 -0
  214. package/dist/src/types/events.js.map +1 -0
  215. package/dist/src/types/flow.d.ts +32 -0
  216. package/dist/src/types/flow.d.ts.map +1 -0
  217. package/dist/src/types/flow.js +3 -0
  218. package/dist/src/types/flow.js.map +1 -0
  219. package/dist/src/types/process.d.ts +18 -0
  220. package/dist/src/types/process.d.ts.map +1 -0
  221. package/dist/src/types/process.js +3 -0
  222. package/dist/src/types/process.js.map +1 -0
  223. package/package.json +43 -0
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2021-2026 Primmel project contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.adoc ADDED
@@ -0,0 +1,52 @@
1
+ = @primmel/primmel — TypeScript tools
2
+
3
+ Parser, types, and serializer/deserializer for the
4
+ https://github.com/primmel/spec[Primmel] modelling language (formerly MMEL).
5
+
6
+ == Exports
7
+
8
+ * `load(mmelString: string): Standard` — parse a .mmel file into a typed Standard
9
+ * `dump(standard: Standard): string` — serialize a Standard back to .mmel syntax
10
+ * Types: `Standard`, `Process`, `DataClass`, `Registry`, `Event`, `Gateway`,
11
+ `Approval`, `Provision`, `Reference`, `Role`, `Variable`, `Enum`, plus
12
+ Primmel extensions: `Form`, `Subform`, `Symbol`, `Calculation`, `StateMachine`
13
+
14
+ == Usage
15
+
16
+ [source,ts]
17
+ ----
18
+ import { load, dump } from '@primmel/primmel'
19
+
20
+ const standard = load(mmelString)
21
+ // ...
22
+ const out = dump(standard)
23
+ ----
24
+
25
+ == Primmel extensions
26
+
27
+ This package supports all MMEL 0.1 keywords plus five extensions
28
+ defined in the Primmel spec:
29
+
30
+ [cols="1,2"]
31
+ |===
32
+ |Keyword |Purpose
33
+
34
+ |`form`
35
+ |Declarative data-capture form schema
36
+
37
+ |`subform`
38
+ |Reusable parameterized row shape
39
+
40
+ |`symbol`
41
+ |Typed, unit-aware formal symbol
42
+
43
+ |`calculation`
44
+ |Named OCL computation primitive
45
+
46
+ |`state_machine`
47
+ |Entity lifecycle with declarative cascades
48
+
49
+ |===
50
+
51
+ See the https://github.com/primmel/spec/tree/main/sources[spec sources]
52
+ for the full language reference.
@@ -0,0 +1,23 @@
1
+ export { load, loadFile, dump } from './src/ser-des/index';
2
+ export type { default as Standard } from './src/types/Standard';
3
+ export type { default as Metadata } from './src/types/Metadata';
4
+ export type { default as Role } from './src/types/Role';
5
+ export type { default as Provision } from './src/types/Provision';
6
+ export type { default as Process } from './src/types/process';
7
+ export type { default as Reference } from './src/types/Reference';
8
+ export type { default as Approval } from './src/types/Approval';
9
+ export type { default as Gateway } from './src/types/Gateway';
10
+ export type { default as EventNode } from './src/types/events';
11
+ export type { DataClass, DataAttribute, Registry, Enum, Variable, } from './src/types/data';
12
+ export type { default as Note, NoteType } from './src/types/Note';
13
+ export type { default as Table } from './src/types/Table';
14
+ export type { default as Figure } from './src/types/Figure';
15
+ export type { default as Link } from './src/types/Link';
16
+ export type { default as MapProfile } from './src/types/MapProfile';
17
+ export type { default as ViewProfile } from './src/types/ViewProfile';
18
+ export type { default as Form, FormField, PassFail, ApplicabilityEntry, } from './src/types/Form';
19
+ export type { default as Subform, ParameterDecl } from './src/types/Subform';
20
+ export type { default as Symbol, SymbolType } from './src/types/Symbol';
21
+ export type { default as Calculation, CalculationInput, CalculationOutput, } from './src/types/Calculation';
22
+ export type { default as StateMachine, Transition, Cascade, } from './src/types/StateMachine';
23
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3D,YAAY,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChE,YAAY,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChE,YAAY,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxD,YAAY,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClE,YAAY,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9D,YAAY,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClE,YAAY,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChE,YAAY,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9D,YAAY,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/D,YAAY,EACV,SAAS,EACT,aAAa,EACb,QAAQ,EACR,IAAI,EACJ,QAAQ,GACT,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,OAAO,IAAI,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAClE,YAAY,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1D,YAAY,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5D,YAAY,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxD,YAAY,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpE,YAAY,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtE,YAAY,EACV,OAAO,IAAI,IAAI,EACf,SAAS,EACT,QAAQ,EACR,kBAAkB,GACnB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,OAAO,IAAI,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC7E,YAAY,EAAE,OAAO,IAAI,MAAM,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACxE,YAAY,EACV,OAAO,IAAI,WAAW,EACtB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AACjC,YAAY,EACV,OAAO,IAAI,YAAY,EACvB,UAAU,EACV,OAAO,GACR,MAAM,0BAA0B,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.dump = exports.loadFile = exports.load = void 0;
4
+ // Package entry point — re-exports the public API
5
+ var index_1 = require("./src/ser-des/index");
6
+ Object.defineProperty(exports, "load", { enumerable: true, get: function () { return index_1.load; } });
7
+ Object.defineProperty(exports, "loadFile", { enumerable: true, get: function () { return index_1.loadFile; } });
8
+ Object.defineProperty(exports, "dump", { enumerable: true, get: function () { return index_1.dump; } });
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAAA,kDAAkD;AAClD,6CAA2D;AAAlD,6FAAA,IAAI,OAAA;AAAE,iGAAA,QAAQ,OAAA;AAAE,6FAAA,IAAI,OAAA"}
@@ -0,0 +1,6 @@
1
+ import Approval, { ResolvableApproval } from '../../types/Approval';
2
+ import { Dumper, Parser, Resolver } from '../types';
3
+ export declare const parseApproval: Parser;
4
+ export declare const resolveApproval: Resolver<Approval, ResolvableApproval>;
5
+ export declare const dumpApproval: Dumper<Approval>;
6
+ //# sourceMappingURL=approval.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approval.d.ts","sourceRoot":"","sources":["../../../../src/ser-des/config/approval.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,EAAE,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAGpE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAKpD,eAAO,MAAM,aAAa,EAAE,MAiD3B,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAyBhE,CAAC;AAEJ,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,QAAQ,CA0BzC,CAAC"}
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.dumpApproval = exports.resolveApproval = exports.parseApproval = void 0;
4
+ const resolve_1 = require("../resolve");
5
+ const tokenize_1 = require("../tokenize");
6
+ const parseApproval = function (id, data) {
7
+ const result = {
8
+ id: id,
9
+ name: '',
10
+ modality: '',
11
+ actor: null,
12
+ approver: null,
13
+ records: [],
14
+ ref: [],
15
+ _relations: {
16
+ actor: '',
17
+ approver: '',
18
+ records: [],
19
+ ref: [],
20
+ },
21
+ };
22
+ if (data !== '') {
23
+ const t = (0, tokenize_1.tokenizePackage)(data);
24
+ let i = 0;
25
+ while (i < t.length) {
26
+ const keyword = t[i++];
27
+ if (i < t.length) {
28
+ if (keyword === 'modality') {
29
+ result.modality = t[i++];
30
+ }
31
+ else if (keyword === 'name') {
32
+ result.name = (0, tokenize_1.removePackage)(t[i++]);
33
+ }
34
+ else if (keyword === 'actor') {
35
+ result._relations.actor = t[i++];
36
+ }
37
+ else if (keyword === 'approve_by') {
38
+ result._relations.approver = t[i++];
39
+ }
40
+ else if (keyword === 'approval_record') {
41
+ result._relations.records = (0, tokenize_1.tokenizePackage)(t[i++]);
42
+ }
43
+ else if (keyword === 'reference') {
44
+ result._relations.ref = (0, tokenize_1.tokenizePackage)(t[i++]);
45
+ }
46
+ else {
47
+ i++; // forward-compatible: skip unknown keyword value
48
+ }
49
+ }
50
+ else {
51
+ throw new Error(`Parsing error: approval. ID ${id}: Expecting value for ${keyword}`);
52
+ }
53
+ }
54
+ }
55
+ return ctx => {
56
+ ctx.approvals[id] = result;
57
+ return ctx;
58
+ };
59
+ };
60
+ exports.parseApproval = parseApproval;
61
+ const resolveApproval = function (ctx, unresolved) {
62
+ const { _relations, ...rest } = unresolved;
63
+ const p = { ...rest, records: [], ref: [] };
64
+ if (_relations.actor !== '') {
65
+ p.actor =
66
+ (0, resolve_1.resolveFromContext)(ctx, 'roles', _relations.actor) ?? null;
67
+ }
68
+ if (_relations.approver !== '') {
69
+ p.approver =
70
+ (0, resolve_1.resolveFromContext)(ctx, 'roles', _relations.approver) ?? null;
71
+ }
72
+ for (const id of _relations.records) {
73
+ const r = (0, resolve_1.resolveFromContext)(ctx, 'registers', id);
74
+ if (r !== undefined) {
75
+ p.records.push(r);
76
+ }
77
+ }
78
+ for (const id of _relations.ref) {
79
+ const r = (0, resolve_1.resolveFromContext)(ctx, 'references', id);
80
+ if (r !== undefined) {
81
+ p.ref.push(r);
82
+ }
83
+ }
84
+ return p;
85
+ };
86
+ exports.resolveApproval = resolveApproval;
87
+ const dumpApproval = function (approval) {
88
+ let out = 'approval ' + approval.id + ' {\n';
89
+ out += ' name "' + approval.name + '"\n';
90
+ if (approval.actor !== null) {
91
+ out += ' actor ' + approval.actor.id + '\n';
92
+ }
93
+ out += ' modality ' + approval.modality + '\n';
94
+ if (approval.approver !== null) {
95
+ out += ' approve_by ' + approval.approver.id + '\n';
96
+ }
97
+ if (approval.records.length > 0) {
98
+ out += ' approval_record {\n';
99
+ for (const dr of approval.records) {
100
+ out += ' ' + dr.id + '\n';
101
+ }
102
+ out += ' }\n';
103
+ }
104
+ if (approval.ref.length > 0) {
105
+ out += ' reference {\n';
106
+ for (const r of approval.ref) {
107
+ out += ' ' + r.id + '\n';
108
+ }
109
+ out += ' }\n';
110
+ }
111
+ out += '}\n';
112
+ return out;
113
+ };
114
+ exports.dumpApproval = dumpApproval;
115
+ //# sourceMappingURL=approval.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approval.js","sourceRoot":"","sources":["../../../../src/ser-des/config/approval.ts"],"names":[],"mappings":";;;AACA,wCAAgD;AAChD,0CAA6D;AAMtD,MAAM,aAAa,GAAW,UAAU,EAAE,EAAE,IAAI;IACrD,MAAM,MAAM,GAAuB;QACjC,EAAE,EAAE,EAAE;QACN,IAAI,EAAE,EAAE;QACR,QAAQ,EAAE,EAAE;QACZ,KAAK,EAAE,IAAI;QACX,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,EAAE;QACX,GAAG,EAAE,EAAE;QACP,UAAU,EAAE;YACV,KAAK,EAAE,EAAE;YACT,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,EAAE;YACX,GAAG,EAAE,EAAE;SACR;KACF,CAAC;IAEF,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;QAChB,MAAM,CAAC,GAAa,IAAA,0BAAe,EAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;YACpB,MAAM,OAAO,GAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC/B,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;gBACjB,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;oBAC3B,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC3B,CAAC;qBAAM,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;oBAC9B,MAAM,CAAC,IAAI,GAAG,IAAA,wBAAa,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACtC,CAAC;qBAAM,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;oBAC/B,MAAM,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACnC,CAAC;qBAAM,IAAI,OAAO,KAAK,YAAY,EAAE,CAAC;oBACpC,MAAM,CAAC,UAAU,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACtC,CAAC;qBAAM,IAAI,OAAO,KAAK,iBAAiB,EAAE,CAAC;oBACzC,MAAM,CAAC,UAAU,CAAC,OAAO,GAAG,IAAA,0BAAe,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACtD,CAAC;qBAAM,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;oBACnC,MAAM,CAAC,UAAU,CAAC,GAAG,GAAG,IAAA,0BAAe,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAClD,CAAC;qBAAM,CAAC;oBACN,CAAC,EAAE,CAAC,CAAC,iDAAiD;gBACxD,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,KAAK,CACb,+BAA+B,EAAE,yBAAyB,OAAO,EAAE,CACpE,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC,EAAE;QACX,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC;QAC3B,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC,CAAC;AAjDW,QAAA,aAAa,iBAiDxB;AAEK,MAAM,eAAe,GAC1B,UAAU,GAAG,EAAE,UAAU;IACvB,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,GAAG,UAAU,CAAC;IAC3C,MAAM,CAAC,GAAa,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC;IACtD,IAAI,UAAU,CAAC,KAAK,KAAK,EAAE,EAAE,CAAC;QAC5B,CAAC,CAAC,KAAK;YACL,IAAA,4BAAkB,EAAO,GAAG,EAAE,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC;IACrE,CAAC;IACD,IAAI,UAAU,CAAC,QAAQ,KAAK,EAAE,EAAE,CAAC;QAC/B,CAAC,CAAC,QAAQ;YACR,IAAA,4BAAkB,EAAO,GAAG,EAAE,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;IACxE,CAAC;IACD,KAAK,MAAM,EAAE,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;QACpC,MAAM,CAAC,GAAG,IAAA,4BAAkB,EAAW,GAAG,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;QAC7D,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;YACpB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IACD,KAAK,MAAM,EAAE,IAAI,UAAU,CAAC,GAAG,EAAE,CAAC;QAChC,MAAM,CAAC,GAAG,IAAA,4BAAkB,EAAY,GAAG,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;QAC/D,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;YACpB,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,CAAC;IACH,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AAzBS,QAAA,eAAe,mBAyBxB;AAEG,MAAM,YAAY,GAAqB,UAAU,QAAQ;IAC9D,IAAI,GAAG,GAAW,WAAW,GAAG,QAAQ,CAAC,EAAE,GAAG,MAAM,CAAC;IACrD,GAAG,IAAI,UAAU,GAAG,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAC;IAC1C,IAAI,QAAQ,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;QAC5B,GAAG,IAAI,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC;IAC/C,CAAC;IACD,GAAG,IAAI,aAAa,GAAG,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;IAChD,IAAI,QAAQ,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;QAC/B,GAAG,IAAI,eAAe,GAAG,QAAQ,CAAC,QAAQ,CAAC,EAAE,GAAG,IAAI,CAAC;IACvD,CAAC;IACD,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,GAAG,IAAI,uBAAuB,CAAC;QAC/B,KAAK,MAAM,EAAE,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YAClC,GAAG,IAAI,MAAM,GAAG,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC;QAC/B,CAAC;QACD,GAAG,IAAI,OAAO,CAAC;IACjB,CAAC;IACD,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,GAAG,IAAI,iBAAiB,CAAC;QACzB,KAAK,MAAM,CAAC,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAC;YAC7B,GAAG,IAAI,MAAM,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC;QAC9B,CAAC;QACD,GAAG,IAAI,OAAO,CAAC;IACjB,CAAC;IACD,GAAG,IAAI,KAAK,CAAC;IACb,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AA1BW,QAAA,YAAY,gBA0BvB"}
@@ -0,0 +1,7 @@
1
+ import type { Dumper, Parser, Resolver } from '../types';
2
+ import type Calculation from '../../types/Calculation';
3
+ import type { ResolvableCalculation } from '../../types/Calculation';
4
+ export declare const parseCalculation: Parser;
5
+ export declare const resolveCalculation: Resolver<Calculation, ResolvableCalculation>;
6
+ export declare const dumpCalculation: Dumper<Calculation>;
7
+ //# sourceMappingURL=calculation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calculation.d.ts","sourceRoot":"","sources":["../../../../src/ser-des/config/calculation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEzD,OAAO,KAAK,WAAW,MAAM,yBAAyB,CAAC;AACvD,OAAO,KAAK,EAGV,qBAAqB,EACtB,MAAM,yBAAyB,CAAC;AAIjC,eAAO,MAAM,gBAAgB,EAAE,MA+C9B,CAAC;AA8EF,eAAO,MAAM,kBAAkB,EAAE,QAAQ,CAAC,WAAW,EAAE,qBAAqB,CAUzE,CAAC;AAEJ,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,WAAW,CAiC/C,CAAC"}
@@ -0,0 +1,182 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.dumpCalculation = exports.resolveCalculation = exports.parseCalculation = void 0;
4
+ const tokenize_1 = require("../tokenize");
5
+ const resolve_1 = require("../resolve");
6
+ const parseCalculation = function (id, data) {
7
+ const result = {
8
+ id,
9
+ name: '',
10
+ description: '',
11
+ inputs: [],
12
+ output: { type: 'number', unit: '1' },
13
+ expression: '',
14
+ ref: [],
15
+ _relations: {
16
+ ref: [],
17
+ },
18
+ };
19
+ if (data !== '') {
20
+ const t = (0, tokenize_1.tokenizePackage)(data);
21
+ let i = 0;
22
+ while (i < t.length) {
23
+ const command = t[i++];
24
+ if (i < t.length) {
25
+ if (command === 'name') {
26
+ result.name = (0, tokenize_1.removePackage)(t[i++]);
27
+ }
28
+ else if (command === 'description') {
29
+ result.description = (0, tokenize_1.removePackage)(t[i++]);
30
+ }
31
+ else if (command === 'expression') {
32
+ result.expression = (0, tokenize_1.removePackage)(t[i++]);
33
+ }
34
+ else if (command === 'reference') {
35
+ result._relations.ref = (0, tokenize_1.tokenizePackage)(t[i++]);
36
+ }
37
+ else if (command === 'inputs') {
38
+ result.inputs = parseInputs((0, tokenize_1.removePackage)(t[i++]));
39
+ }
40
+ else if (command === 'output') {
41
+ result.output = parseOutput((0, tokenize_1.removePackage)(t[i++]));
42
+ }
43
+ else {
44
+ i++; // forward-compatible: skip unknown keyword value
45
+ }
46
+ }
47
+ else {
48
+ throw new Error(`Parsing error: calculation. ID ${id}: Expecting value for ${command}`);
49
+ }
50
+ }
51
+ }
52
+ return ctx => {
53
+ ctx.calculations[id] = result;
54
+ return ctx;
55
+ };
56
+ };
57
+ exports.parseCalculation = parseCalculation;
58
+ function parseInputs(block) {
59
+ const inputs = [];
60
+ // inputs block contains entries like: `name : type { unit "..." description "..." default <v> }`
61
+ // We tokenize the block and walk through it
62
+ const t = (0, tokenize_1.tokenizePackage)(block);
63
+ let i = 0;
64
+ while (i < t.length) {
65
+ const name = t[i++];
66
+ if (i >= t.length) {
67
+ break;
68
+ }
69
+ // Expect ':' then type
70
+ if (t[i] === ':') {
71
+ i++;
72
+ }
73
+ const type = i < t.length ? t[i++] : 'number';
74
+ // Optional brace block with properties
75
+ let unit = '1';
76
+ let description = '';
77
+ let defaultValue = '';
78
+ let hasDefault = false;
79
+ if (i < t.length && t[i].startsWith('{')) {
80
+ const propBlock = (0, tokenize_1.removePackage)(t[i++]);
81
+ const pt = (0, tokenize_1.tokenizePackage)(propBlock);
82
+ let j = 0;
83
+ while (j < pt.length) {
84
+ const cmd = pt[j++];
85
+ if (j < pt.length) {
86
+ if (cmd === 'unit') {
87
+ unit = (0, tokenize_1.removePackage)(pt[j++]);
88
+ }
89
+ else if (cmd === 'description') {
90
+ description = (0, tokenize_1.removePackage)(pt[j++]);
91
+ }
92
+ else if (cmd === 'default') {
93
+ defaultValue = (0, tokenize_1.removePackage)(pt[j++]);
94
+ hasDefault = true;
95
+ }
96
+ else {
97
+ j++; // skip unknown
98
+ }
99
+ }
100
+ }
101
+ }
102
+ inputs.push({ name, type, unit, description, defaultValue, hasDefault });
103
+ }
104
+ return inputs;
105
+ }
106
+ function parseOutput(block) {
107
+ // output block: `: type { unit "..." }`
108
+ const t = (0, tokenize_1.tokenizePackage)(block);
109
+ let i = 0;
110
+ let type = 'number';
111
+ let unit = '1';
112
+ if (t[i] === ':') {
113
+ i++;
114
+ }
115
+ if (i < t.length) {
116
+ type = t[i++];
117
+ }
118
+ if (i < t.length && t[i].startsWith('{')) {
119
+ const propBlock = (0, tokenize_1.removePackage)(t[i++]);
120
+ const pt = (0, tokenize_1.tokenizePackage)(propBlock);
121
+ let j = 0;
122
+ while (j < pt.length) {
123
+ const cmd = pt[j++];
124
+ if (j < pt.length) {
125
+ if (cmd === 'unit') {
126
+ unit = (0, tokenize_1.removePackage)(pt[j++]);
127
+ }
128
+ else {
129
+ j++;
130
+ }
131
+ }
132
+ }
133
+ }
134
+ return { type, unit };
135
+ }
136
+ const resolveCalculation = function (ctx, unresolved) {
137
+ const ref = [];
138
+ for (const id of unresolved._relations.ref) {
139
+ const r = (0, resolve_1.resolveFromContext)(ctx, 'references', id);
140
+ if (r !== undefined) {
141
+ ref.push(r);
142
+ }
143
+ }
144
+ return { ...unresolved, ref };
145
+ };
146
+ exports.resolveCalculation = resolveCalculation;
147
+ const dumpCalculation = function (c) {
148
+ let out = 'calculation ' + c.id + ' {\n';
149
+ out += ' name "' + c.name + '"\n';
150
+ if (c.description) {
151
+ out += ' description "' + c.description + '"\n';
152
+ }
153
+ if (c.inputs.length > 0) {
154
+ out += ' inputs {\n';
155
+ for (const inp of c.inputs) {
156
+ let line = ' ' + inp.name + ' : ' + inp.type + ' { ';
157
+ line += 'unit "' + inp.unit + '"';
158
+ if (inp.description) {
159
+ line += ' description "' + inp.description + '"';
160
+ }
161
+ if (inp.hasDefault) {
162
+ line += ' default ' + inp.defaultValue;
163
+ }
164
+ line += ' }\n';
165
+ out += line;
166
+ }
167
+ out += ' }\n';
168
+ }
169
+ out += ' output : ' + c.output.type + ' { unit "' + c.output.unit + '" }\n';
170
+ out += ' expression "' + c.expression + '"\n';
171
+ if (c.ref.length > 0) {
172
+ out += ' reference {\n';
173
+ for (const r of c.ref) {
174
+ out += ' ' + r.id + '\n';
175
+ }
176
+ out += ' }\n';
177
+ }
178
+ out += '}\n';
179
+ return out;
180
+ };
181
+ exports.dumpCalculation = dumpCalculation;
182
+ //# sourceMappingURL=calculation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calculation.js","sourceRoot":"","sources":["../../../../src/ser-des/config/calculation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { DataClass, Enum, Registry, ResolvableDataClass, ResolvableRegistry, Variable } from '../../types/data';
2
+ import { Dumper, Parser, Resolver } from '../types';
3
+ export declare const parseEnum: Parser;
4
+ export declare const parseRegistry: Parser;
5
+ export declare const parseDataClass: Parser;
6
+ export declare const resolveDataClass: Resolver<DataClass, ResolvableDataClass>;
7
+ export declare const resolveRegistry: Resolver<Registry, ResolvableRegistry>;
8
+ export declare const dumpDataClass: Dumper<DataClass>;
9
+ export declare const dumpEnum: Dumper<Enum>;
10
+ export declare const dumpRegistry: Dumper<Registry>;
11
+ export declare const dumpVariable: Dumper<Variable>;
12
+ //# sourceMappingURL=data.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../../../src/ser-des/config/data.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,SAAS,EACT,IAAI,EAGJ,QAAQ,EACR,mBAAmB,EACnB,kBAAkB,EAElB,QAAQ,EACT,MAAM,kBAAkB,CAAC;AAO1B,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpD,eAAO,MAAM,SAAS,EAAE,MAyBvB,CAAC;AA4BF,eAAO,MAAM,aAAa,EAAE,MAkC3B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,MAyB5B,CAAC;AA2DF,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAanE,CAAC;AAEJ,eAAO,MAAM,eAAe,EAAE,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAehE,CAAC;AAEJ,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,SAAS,CAO3C,CAAC;AAwCF,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,IAAI,CAOjC,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,QAAQ,CAQzC,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,QAAQ,CAazC,CAAC"}