@primmel/primmel 1.20.0 → 1.21.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 (136) hide show
  1. package/dist/index.d.ts +2 -1
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +7 -3
  4. package/dist/index.js.map +1 -1
  5. package/dist/src/check-rules.d.ts +1 -1
  6. package/dist/src/check-rules.d.ts.map +1 -1
  7. package/dist/src/check-rules.js +36 -15
  8. package/dist/src/check-rules.js.map +1 -1
  9. package/dist/src/check.d.ts +4 -0
  10. package/dist/src/check.d.ts.map +1 -1
  11. package/dist/src/check.js +428 -137
  12. package/dist/src/check.js.map +1 -1
  13. package/dist/src/export/cddal.d.ts +25 -0
  14. package/dist/src/export/cddal.d.ts.map +1 -0
  15. package/dist/src/export/cddal.js +213 -0
  16. package/dist/src/export/cddal.js.map +1 -0
  17. package/dist/src/export/retrieval.d.ts +147 -6
  18. package/dist/src/export/retrieval.d.ts.map +1 -1
  19. package/dist/src/export/retrieval.js +254 -25
  20. package/dist/src/export/retrieval.js.map +1 -1
  21. package/dist/src/export/unitsdb.d.ts +19 -0
  22. package/dist/src/export/unitsdb.d.ts.map +1 -0
  23. package/dist/src/export/unitsdb.js +82 -0
  24. package/dist/src/export/unitsdb.js.map +1 -0
  25. package/dist/src/export/yaml-lite.d.ts +13 -0
  26. package/dist/src/export/yaml-lite.d.ts.map +1 -0
  27. package/dist/src/export/yaml-lite.js +219 -0
  28. package/dist/src/export/yaml-lite.js.map +1 -0
  29. package/dist/src/instance-resolution.d.ts +19 -0
  30. package/dist/src/instance-resolution.d.ts.map +1 -1
  31. package/dist/src/instance-resolution.js +87 -1
  32. package/dist/src/instance-resolution.js.map +1 -1
  33. package/dist/src/model-diff.d.ts.map +1 -1
  34. package/dist/src/model-diff.js +0 -5
  35. package/dist/src/model-diff.js.map +1 -1
  36. package/dist/src/runtime.d.ts +143 -0
  37. package/dist/src/runtime.d.ts.map +1 -0
  38. package/dist/src/runtime.js +648 -0
  39. package/dist/src/runtime.js.map +1 -0
  40. package/dist/src/ser-des/config/artifact.d.ts.map +1 -1
  41. package/dist/src/ser-des/config/artifact.js +6 -0
  42. package/dist/src/ser-des/config/artifact.js.map +1 -1
  43. package/dist/src/ser-des/config/attestation.d.ts +5 -0
  44. package/dist/src/ser-des/config/attestation.d.ts.map +1 -0
  45. package/dist/src/ser-des/config/attestation.js +143 -0
  46. package/dist/src/ser-des/config/attestation.js.map +1 -0
  47. package/dist/src/ser-des/config/data.d.ts.map +1 -1
  48. package/dist/src/ser-des/config/data.js +98 -0
  49. package/dist/src/ser-des/config/data.js.map +1 -1
  50. package/dist/src/ser-des/config/documentModule.js +5 -5
  51. package/dist/src/ser-des/config/documentModule.js.map +1 -1
  52. package/dist/src/ser-des/config/index.d.ts +8 -0
  53. package/dist/src/ser-des/config/index.d.ts.map +1 -1
  54. package/dist/src/ser-des/config/index.js +22 -49
  55. package/dist/src/ser-des/config/index.js.map +1 -1
  56. package/dist/src/ser-des/config/instance.d.ts.map +1 -1
  57. package/dist/src/ser-des/config/instance.js +24 -0
  58. package/dist/src/ser-des/config/instance.js.map +1 -1
  59. package/dist/src/ser-des/config/process.d.ts.map +1 -1
  60. package/dist/src/ser-des/config/process.js +8 -0
  61. package/dist/src/ser-des/config/process.js.map +1 -1
  62. package/dist/src/ser-des/config/processSequence.d.ts +19 -0
  63. package/dist/src/ser-des/config/processSequence.d.ts.map +1 -0
  64. package/dist/src/ser-des/config/processSequence.js +77 -0
  65. package/dist/src/ser-des/config/processSequence.js.map +1 -0
  66. package/dist/src/ser-des/config/quantity.d.ts +4 -1
  67. package/dist/src/ser-des/config/quantity.d.ts.map +1 -1
  68. package/dist/src/ser-des/config/quantity.js +63 -1
  69. package/dist/src/ser-des/config/quantity.js.map +1 -1
  70. package/dist/src/ser-des/config/subject.d.ts.map +1 -1
  71. package/dist/src/ser-des/config/subject.js +14 -0
  72. package/dist/src/ser-des/config/subject.js.map +1 -1
  73. package/dist/src/ser-des/index.d.ts +4 -1
  74. package/dist/src/ser-des/index.d.ts.map +1 -1
  75. package/dist/src/ser-des/index.js +3 -1
  76. package/dist/src/ser-des/index.js.map +1 -1
  77. package/dist/src/ser-des/package.d.ts.map +1 -1
  78. package/dist/src/ser-des/package.js +9 -7
  79. package/dist/src/ser-des/package.js.map +1 -1
  80. package/dist/src/ser-des/parse.d.ts +24 -0
  81. package/dist/src/ser-des/parse.d.ts.map +1 -1
  82. package/dist/src/ser-des/parse.js +69 -33
  83. package/dist/src/ser-des/parse.js.map +1 -1
  84. package/dist/src/ser-des/shape-front-end.d.ts +8 -0
  85. package/dist/src/ser-des/shape-front-end.d.ts.map +1 -0
  86. package/dist/src/ser-des/shape-front-end.js +215 -0
  87. package/dist/src/ser-des/shape-front-end.js.map +1 -0
  88. package/dist/src/ser-des/types.d.ts +4 -10
  89. package/dist/src/ser-des/types.d.ts.map +1 -1
  90. package/dist/src/types/Artifact.d.ts +7 -0
  91. package/dist/src/types/Artifact.d.ts.map +1 -1
  92. package/dist/src/types/Attestation.d.ts +60 -0
  93. package/dist/src/types/Attestation.d.ts.map +1 -0
  94. package/dist/src/types/Attestation.js +20 -0
  95. package/dist/src/types/Attestation.js.map +1 -0
  96. package/dist/src/types/DocumentModule.d.ts +1 -1
  97. package/dist/src/types/DocumentModule.d.ts.map +1 -1
  98. package/dist/src/types/Instance.d.ts +6 -2
  99. package/dist/src/types/Instance.d.ts.map +1 -1
  100. package/dist/src/types/ProcessModel.d.ts +0 -11
  101. package/dist/src/types/ProcessModel.d.ts.map +1 -1
  102. package/dist/src/types/ProcessModel.js +2 -28
  103. package/dist/src/types/ProcessModel.js.map +1 -1
  104. package/dist/src/types/Quantity.d.ts +22 -0
  105. package/dist/src/types/Quantity.d.ts.map +1 -1
  106. package/dist/src/types/Standard.d.ts +2 -13
  107. package/dist/src/types/Standard.d.ts.map +1 -1
  108. package/dist/src/types/Subject.d.ts +14 -0
  109. package/dist/src/types/Subject.d.ts.map +1 -1
  110. package/dist/src/types/data.d.ts +13 -0
  111. package/dist/src/types/data.d.ts.map +1 -1
  112. package/dist/src/types/process.d.ts +8 -0
  113. package/dist/src/types/process.d.ts.map +1 -1
  114. package/dist-browser/index.mjs +1746 -1829
  115. package/dist-cli/primmel.mjs +1630 -845
  116. package/package.json +15 -3
  117. package/dist/src/ser-des/config/processModel.d.ts +0 -13
  118. package/dist/src/ser-des/config/processModel.d.ts.map +0 -1
  119. package/dist/src/ser-des/config/processModel.js +0 -163
  120. package/dist/src/ser-des/config/processModel.js.map +0 -1
  121. package/dist/src/ser-des/config/storyline.d.ts +0 -7
  122. package/dist/src/ser-des/config/storyline.d.ts.map +0 -1
  123. package/dist/src/ser-des/config/storyline.js +0 -264
  124. package/dist/src/ser-des/config/storyline.js.map +0 -1
  125. package/dist/src/ser-des/config/workflowConfig.d.ts +0 -5
  126. package/dist/src/ser-des/config/workflowConfig.d.ts.map +0 -1
  127. package/dist/src/ser-des/config/workflowConfig.js +0 -129
  128. package/dist/src/ser-des/config/workflowConfig.js.map +0 -1
  129. package/dist/src/ser-des/config/workflowStage.d.ts +0 -5
  130. package/dist/src/ser-des/config/workflowStage.d.ts.map +0 -1
  131. package/dist/src/ser-des/config/workflowStage.js +0 -96
  132. package/dist/src/ser-des/config/workflowStage.js.map +0 -1
  133. package/dist/src/types/Storyline.d.ts +0 -62
  134. package/dist/src/types/Storyline.d.ts.map +0 -1
  135. package/dist/src/types/Storyline.js +0 -51
  136. package/dist/src/types/Storyline.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"package.js","sourceRoot":"","sources":["../../../src/ser-des/package.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"package.js","sourceRoot":"","sources":["../../../src/ser-des/package.ts"],"names":[],"mappings":"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"}
@@ -28,5 +28,29 @@ export interface ParseOptions {
28
28
  * detection itself lives in `duplicate-id.ts` — this module just calls
29
29
  * it at the moment each declaration is parsed.
30
30
  */
31
+ /** One top-level declaration in the dispatch core's terms: the
32
+ * keyword, its id (when the construct takes one), the payload text
33
+ * (the block or the bare/string token), and the keyword's position
34
+ * (issues, provenance). Built from TOKENS by parse() and from the
35
+ * PARG SHAPE TREE by parseFromShape() — the two front ends of one
36
+ * dispatch core (the full flow's phase 2, the S2 endgame).
37
+ */
38
+ export interface SourceDeclaration {
39
+ keyword: string;
40
+ id?: string;
41
+ payload?: string;
42
+ start: {
43
+ line: number;
44
+ col: number;
45
+ offset: number;
46
+ };
47
+ /** The payload's end (provenance spans). */
48
+ end?: {
49
+ line: number;
50
+ col: number;
51
+ offset: number;
52
+ };
53
+ }
31
54
  export default function parse(mmelString: string, parsers: ParserConfiguration, options?: ParseOptions): ParseContext;
55
+ export declare function parseDeclarations(declarations: SourceDeclaration[], parsers: ParserConfiguration, options?: ParseOptions): ParseContext;
32
56
  //# sourceMappingURL=parse.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../src/ser-des/parse.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAI5D,MAAM,WAAW,YAAY;IAC3B;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,OAAO,UAAU,KAAK,CAC3B,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,mBAAmB,EAC5B,OAAO,GAAE,YAAiB,GACzB,YAAY,CAsOd"}
1
+ {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../src/ser-des/parse.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAI5D,MAAM,WAAW,YAAY;IAC3B;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;;;;;;;;;;;GAYG;AACH;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACrD,4CAA4C;IAC5C,GAAG,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CACrD;AAED,MAAM,CAAC,OAAO,UAAU,KAAK,CAC3B,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,mBAAmB,EAC5B,OAAO,GAAE,YAAiB,GACzB,YAAY,CAiDd;AAED,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,iBAAiB,EAAE,EACjC,OAAO,EAAE,mBAAmB,EAC5B,OAAO,GAAE,YAAiB,GACzB,YAAY,CAyOd"}
@@ -1,23 +1,55 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = parse;
4
+ exports.parseDeclarations = parseDeclarations;
4
5
  const tokenize_1 = require("./tokenize");
5
6
  const duplicate_id_1 = require("../duplicate-id");
6
- /**
7
- * Parse a .mmel string into a ParseContext.
8
- *
9
- * Position tracking is enabled by default — every parser error message
10
- * includes the line:column of the offending token. Positions are also
11
- * recorded on each ValidationIssue, so consumers can point at the
12
- * exact source location of any model problem.
13
- *
14
- * Duplicate-ID detection runs during parsing (not post-resolution),
15
- * because the parser silently overwrites duplicate ctx entries. The
16
- * detection itself lives in `duplicate-id.ts` — this module just calls
17
- * it at the moment each declaration is parsed.
18
- */
19
7
  function parse(mmelString, parsers, options = {}) {
20
8
  const tokens = (0, tokenize_1.tokenizeWithPositions)(mmelString);
9
+ const declarations = [];
10
+ let i = 0;
11
+ while (i < tokens.length) {
12
+ const tok = tokens[i++];
13
+ const cfg = parsers[tok.value];
14
+ // Unknown keywords skip ONE token at a time (the lenient
15
+ // forward-compat rule): consuming a payload for an unknown keyword
16
+ // desyncs the walk — the next real keyword's id would be eaten.
17
+ if (!cfg) {
18
+ if (options.strict) {
19
+ throw new Error(`Unknown keyword "${tok.value}" at line ${tok.start.line} col ${tok.start.col}. Use lenient mode (default) to skip unknown keywords.`);
20
+ }
21
+ continue;
22
+ }
23
+ if (cfg.takesID) {
24
+ if (i + 1 > tokens.length) {
25
+ throw new Error(`Keyword "${tok.value}" at line ${tok.start.line} col ${tok.start.col} expects an ID and payload, but only ${tokens.length - i + 1} token(s) remain.`);
26
+ }
27
+ const idTok = tokens[i++];
28
+ const payloadTok = tokens[i++];
29
+ declarations.push({
30
+ keyword: tok.value,
31
+ id: idTok.value,
32
+ payload: payloadTok.value,
33
+ start: tok.start,
34
+ end: payloadTok.end,
35
+ });
36
+ }
37
+ else {
38
+ if (i >= tokens.length) {
39
+ throw new Error(`Keyword "${tok.value}" at line ${tok.start.line} col ${tok.start.col} expects a payload, but no tokens remain.`);
40
+ }
41
+ const payloadTok = tokens[i++];
42
+ declarations.push({
43
+ keyword: tok.value,
44
+ payload: payloadTok.value,
45
+ start: tok.start,
46
+ end: payloadTok.end,
47
+ });
48
+ }
49
+ }
50
+ return parseDeclarations(declarations, parsers, options);
51
+ }
52
+ function parseDeclarations(declarations, parsers, options = {}) {
21
53
  const dupChecker = (0, duplicate_id_1.createDuplicateIdChecker)();
22
54
  // Opt-in construct provenance (withProvenance): collected aside and
23
55
  // attached at the end so parser functions that swap the ctx object
@@ -33,7 +65,6 @@ function parse(mmelString, parsers, options = {}) {
33
65
  roles: {},
34
66
  processes: {},
35
67
  // The abstract-process models (smart TODO.roadmap/40 batch 2)
36
- processModels: {},
37
68
  pages: {},
38
69
  gateways: {},
39
70
  regs: {},
@@ -95,11 +126,10 @@ function parse(mmelString, parsers, options = {}) {
95
126
  evaluationDimensions: {},
96
127
  evaluationProfiles: {},
97
128
  // The certificate rendering contract (batch 3)
129
+ attestations: {},
98
130
  certificateTemplates: {},
99
131
  // The certification workflow step register (batch 3)
100
- workflowConfigs: {},
101
132
  // The named pipeline stages (batch 5)
102
- workflowStages: {},
103
133
  // The verification pathways (batch 3)
104
134
  verificationPathways: {},
105
135
  // The selection rules (batch 3)
@@ -135,8 +165,6 @@ function parse(mmelString, parsers, options = {}) {
135
165
  documentModules: {},
136
166
  informativeAnnexes: {},
137
167
  partAnnexes: {},
138
- demoWorlds: {},
139
- storylines: {},
140
168
  // Primmel v3 twin interface (TODO.roadmap/32)
141
169
  connectorProfiles: {},
142
170
  // Primmel v3 continuous compliance (TODO.roadmap/34)
@@ -159,11 +187,25 @@ function parse(mmelString, parsers, options = {}) {
159
187
  // Issue collection (duplicate IDs, etc.)
160
188
  issues: [],
161
189
  };
162
- let i = 0;
163
- while (i < tokens.length) {
164
- const tok = tokens[i++];
165
- const keyword = tok.value;
190
+ for (const decl of declarations) {
191
+ const tok = { start: decl.start };
192
+ const keyword = decl.keyword;
166
193
  const cfg = parsers[keyword];
194
+ // The deprecation report (phase 2): a construct whose definition
195
+ // carries a migration note warns on every use, under C154.
196
+ if (cfg?.deprecated) {
197
+ ctx.issues.push({
198
+ severity: 'warning',
199
+ code: 'construct-deprecated',
200
+ construct: keyword,
201
+ message: `construct "${keyword}" at line ${tok.start.line} col ${tok.start.col} is deprecated: ${cfg.deprecated} (construct-deprecated)`,
202
+ position: {
203
+ line: tok.start.line,
204
+ col: tok.start.col,
205
+ offset: tok.start.offset,
206
+ },
207
+ });
208
+ }
167
209
  if (!cfg) {
168
210
  if (options.strict) {
169
211
  throw new Error(`Unknown keyword "${keyword}" at line ${tok.start.line} col ${tok.start.col}. Use lenient mode (default) to skip unknown keywords.`);
@@ -173,11 +215,8 @@ function parse(mmelString, parsers, options = {}) {
173
215
  }
174
216
  let updateCtx;
175
217
  if (cfg.takesID) {
176
- if (i + 1 > tokens.length) {
177
- throw new Error(`Keyword "${keyword}" at line ${tok.start.line} col ${tok.start.col} expects an ID and payload, but only ${tokens.length - i + 1} token(s) remain.`);
178
- }
179
- const idTok = tokens[i++];
180
- const payloadTok = tokens[i++];
218
+ const idTok = { value: decl.id ?? '', start: decl.start };
219
+ const payloadTok = { value: decl.payload ?? '', end: decl.start };
181
220
  // Duplicate-ID detection runs at parse time because the parser
182
221
  // silently overwrites ctx entries — without this check, the
183
222
  // issue would never surface.
@@ -193,23 +232,20 @@ function parse(mmelString, parsers, options = {}) {
193
232
  id: idTok.value,
194
233
  keyword,
195
234
  start: tok.start,
196
- end: payloadTok.end,
235
+ end: decl.end ?? payloadTok.end,
197
236
  });
198
237
  }
199
238
  updateCtx = cfg.parse(idTok.value, payloadTok.value);
200
239
  }
201
240
  else {
202
- if (i >= tokens.length) {
203
- throw new Error(`Keyword "${keyword}" at line ${tok.start.line} col ${tok.start.col} expects a payload, but no tokens remain.`);
204
- }
205
- const payloadTok = tokens[i++];
241
+ const payloadTok = { value: decl.payload ?? '', end: decl.start };
206
242
  if (options.withProvenance) {
207
243
  constructs.push({
208
244
  field: cfg.field ?? keyword,
209
245
  id: '',
210
246
  keyword,
211
247
  start: tok.start,
212
- end: payloadTok.end,
248
+ end: decl.end ?? payloadTok.end,
213
249
  });
214
250
  }
215
251
  updateCtx = cfg.parse(payloadTok.value);
@@ -1 +1 @@
1
- {"version":3,"file":"parse.js","sourceRoot":"","sources":["../../../src/ser-des/parse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parse.js","sourceRoot":"","sources":["../../../src/ser-des/parse.ts"],"names":[],"mappings":";;AAmDA,wBAqDC;AAED,8CA6OC;AAvVD,yCAA+D;AAG/D,kDAA2D;AAgD3D,SAAwB,KAAK,CAC3B,UAAkB,EAClB,OAA4B,EAC5B,UAAwB,EAAE;IAE1B,MAAM,MAAM,GAAY,IAAA,gCAAqB,EAAC,UAAU,CAAC,CAAC;IAC1D,MAAM,YAAY,GAAwB,EAAE,CAAC;IAC7C,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,EAAE,CAAE,CAAC;QACzB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC/B,yDAAyD;QACzD,mEAAmE;QACnE,gEAAgE;QAChE,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,MAAM,IAAI,KAAK,CACb,oBAAoB,GAAG,CAAC,KAAK,aAAa,GAAG,CAAC,KAAK,CAAC,IAAI,QAAQ,GAAG,CAAC,KAAK,CAAC,GAAG,wDAAwD,CACtI,CAAC;YACJ,CAAC;YACD,SAAS;QACX,CAAC;QACD,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YAChB,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CACb,YAAY,GAAG,CAAC,KAAK,aAAa,GAAG,CAAC,KAAK,CAAC,IAAI,QAAQ,GAAG,CAAC,KAAK,CAAC,GAAG,wCAAwC,MAAM,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,mBAAmB,CACtJ,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,EAAE,CAAE,CAAC;YAC3B,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,EAAE,CAAE,CAAC;YAChC,YAAY,CAAC,IAAI,CAAC;gBAChB,OAAO,EAAE,GAAG,CAAC,KAAK;gBAClB,EAAE,EAAE,KAAK,CAAC,KAAK;gBACf,OAAO,EAAE,UAAU,CAAC,KAAK;gBACzB,KAAK,EAAE,GAAG,CAAC,KAAK;gBAChB,GAAG,EAAE,UAAU,CAAC,GAAG;aACpB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBACvB,MAAM,IAAI,KAAK,CACb,YAAY,GAAG,CAAC,KAAK,aAAa,GAAG,CAAC,KAAK,CAAC,IAAI,QAAQ,GAAG,CAAC,KAAK,CAAC,GAAG,2CAA2C,CACjH,CAAC;YACJ,CAAC;YACD,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;YAC/B,YAAY,CAAC,IAAI,CAAC;gBAChB,OAAO,EAAE,GAAG,CAAC,KAAK;gBAClB,OAAO,EAAE,UAAU,CAAC,KAAK;gBACzB,KAAK,EAAE,GAAG,CAAC,KAAK;gBAChB,GAAG,EAAE,UAAU,CAAC,GAAG;aACpB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,iBAAiB,CAAC,YAAY,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAC3D,CAAC;AAED,SAAgB,iBAAiB,CAC/B,YAAiC,EACjC,OAA4B,EAC5B,UAAwB,EAAE;IAE1B,MAAM,UAAU,GAAG,IAAA,uCAAwB,GAAE,CAAC;IAC9C,oEAAoE;IACpE,mEAAmE;IACnE,2CAA2C;IAC3C,MAAM,UAAU,GAAsB,EAAE,CAAC;IAEzC,gEAAgE;IAChE,6DAA6D;IAC7D,IAAI,GAAG,GAAiB;QACtB,IAAI,EAAE,EAAE;QACR,QAAQ,EAAE,IAAI;QACd,eAAe,EAAE,IAAI;QACrB,SAAS,EAAE,EAAE;QACb,KAAK,EAAE,EAAE;QACT,SAAS,EAAE,EAAE;QACb,8DAA8D;QAE9D,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE,EAAE;QACZ,IAAI,EAAE,EAAE;QACR,UAAU,EAAE,EAAE;QACd,UAAU,EAAE,EAAE;QACd,WAAW,EAAE,EAAE;QACf,MAAM,EAAE,EAAE;QACV,KAAK,EAAE,EAAE;QACT,SAAS,EAAE,EAAE;QACb,2DAA2D;QAC3D,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,EAAE;QACX,KAAK,EAAE,EAAE;QACT,WAAW,EAAE,EAAE;QACf,YAAY,EAAE,EAAE;QAChB,mCAAmC;QACnC,QAAQ,EAAE,EAAE;QACZ,0CAA0C;QAC1C,KAAK,EAAE,EAAE;QACT,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE,EAAE;QACZ,OAAO,EAAE,EAAE;QACX,YAAY,EAAE,EAAE;QAChB,YAAY,EAAE,EAAE;QAChB,QAAQ,EAAE,EAAE;QACZ,kBAAkB,EAAE,EAAE;QACtB,aAAa,EAAE,EAAE;QACjB,oBAAoB,EAAE,EAAE;QACxB,eAAe,EAAE,EAAE;QACnB,yEAAyE;QACzE,mBAAmB,EAAE,EAAE;QACvB,WAAW,EAAE,EAAE;QACf,UAAU,EAAE,EAAE;QACd,WAAW,EAAE,EAAE;QACf,kBAAkB,EAAE,EAAE;QACtB,aAAa,EAAE,EAAE;QACjB,gBAAgB,EAAE,EAAE;QACpB,kBAAkB,EAAE,EAAE;QACtB,0CAA0C;QAC1C,YAAY,EAAE,EAAE;QAChB,kBAAkB,EAAE,EAAE;QACtB,WAAW,EAAE,EAAE;QACf,oBAAoB,EAAE,EAAE;QACxB,YAAY,EAAE,EAAE;QAChB,SAAS,EAAE,EAAE;QACb,aAAa,EAAE,EAAE;QACjB,6DAA6D;QAC7D,QAAQ,EAAE,EAAE;QACZ,uEAAuE;QACvE,aAAa,EAAE,EAAE;QACjB,OAAO,EAAE,EAAE;QACX,4DAA4D;QAC5D,WAAW,EAAE,EAAE;QACf,wDAAwD;QACxD,uBAAuB,EAAE,EAAE;QAC3B,gEAAgE;QAChE,mBAAmB,EAAE,EAAE;QACvB,oBAAoB,EAAE,EAAE;QACxB,kBAAkB,EAAE,EAAE;QACtB,+CAA+C;QAC/C,YAAY,EAAE,EAAE;QAChB,oBAAoB,EAAE,EAAE;QACxB,qDAAqD;QAErD,sCAAsC;QAEtC,sCAAsC;QACtC,oBAAoB,EAAE,EAAE;QACxB,gCAAgC;QAChC,oBAAoB,EAAE,EAAE;QACxB,oBAAoB,EAAE,EAAE;QACxB,uBAAuB,EAAE,EAAE;QAC3B,iDAAiD;QACjD,mBAAmB,EAAE,EAAE;QACvB,oBAAoB,EAAE,EAAE;QACxB,6CAA6C;QAC7C,SAAS,EAAE,EAAE;QACb,yCAAyC;QACzC,mBAAmB,EAAE,EAAE;QACvB,iBAAiB,EAAE,EAAE;QACrB,uDAAuD;QACvD,iBAAiB,EAAE,EAAE;QACrB,KAAK,EAAE,EAAE;QACT,+DAA+D;QAC/D,kBAAkB,EAAE,EAAE;QACtB,mEAAmE;QACnE,gBAAgB,EAAE,EAAE;QACpB,gBAAgB,EAAE,EAAE;QACpB,gBAAgB,EAAE,EAAE;QACpB,mBAAmB,EAAE,EAAE;QACvB,gBAAgB,EAAE,EAAE;QACpB,iBAAiB,EAAE,EAAE;QACrB,gBAAgB,EAAE,EAAE;QACpB,kBAAkB,EAAE,EAAE;QACtB,mBAAmB,EAAE,EAAE;QACvB,cAAc,EAAE,EAAE;QAClB,aAAa,EAAE,EAAE;QACjB,6EAA6E;QAC7E,eAAe,EAAE,EAAE;QACnB,kBAAkB,EAAE,EAAE;QACtB,WAAW,EAAE,EAAE;QACf,8CAA8C;QAC9C,iBAAiB,EAAE,EAAE;QACrB,qDAAqD;QACrD,QAAQ,EAAE,EAAE;QACZ,gDAAgD;QAChD,SAAS,EAAE,EAAE;QACb,mDAAmD;QACnD,UAAU,EAAE,EAAE;QACd,oDAAoD;QACpD,aAAa,EAAE,EAAE;QACjB,+DAA+D;QAC/D,YAAY,EAAE,EAAE;QAChB,yDAAyD;QACzD,KAAK,EAAE,EAAE;QACT,mDAAmD;QACnD,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,EAAE;QACZ,wDAAwD;QACxD,UAAU,EAAE,EAAE;QACd,yCAAyC;QACzC,MAAM,EAAE,EAAE;KACX,CAAC;IAEF,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QAE7B,iEAAiE;QACjE,2DAA2D;QAC3D,IAAI,GAAG,EAAE,UAAU,EAAE,CAAC;YACpB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;gBACd,QAAQ,EAAE,SAAS;gBACnB,IAAI,EAAE,sBAAsB;gBAC5B,SAAS,EAAE,OAAO;gBAClB,OAAO,EAAE,cAAc,OAAO,aAAa,GAAG,CAAC,KAAK,CAAC,IAAI,QAAQ,GAAG,CAAC,KAAK,CAAC,GAAG,mBAAmB,GAAG,CAAC,UAAU,yBAAyB;gBACxI,QAAQ,EAAE;oBACR,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI;oBACpB,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG;oBAClB,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM;iBACzB;aACF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,MAAM,IAAI,KAAK,CACb,oBAAoB,OAAO,aAAa,GAAG,CAAC,KAAK,CAAC,IAAI,QAAQ,GAAG,CAAC,KAAK,CAAC,GAAG,wDAAwD,CACpI,CAAC;YACJ,CAAC;YACD,4DAA4D;YAC5D,SAAS;QACX,CAAC;QAED,IAAI,SAA8C,CAAC;QACnD,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YAChB,MAAM,KAAK,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;YAC1D,MAAM,UAAU,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;YAElE,+DAA+D;YAC/D,4DAA4D;YAC5D,6BAA6B;YAC7B,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;gBACd,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAC5B,GAAG,CAAC,KAAK,EACT,OAAO,EACP,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,KAAK,CACZ,CAAC;gBACF,IAAI,KAAK,EAAE,CAAC;oBACV,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;YAED,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;gBAC3B,UAAU,CAAC,IAAI,CAAC;oBACd,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,OAAO;oBAC3B,EAAE,EAAE,KAAK,CAAC,KAAK;oBACf,OAAO;oBACP,KAAK,EAAE,GAAG,CAAC,KAAK;oBAChB,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,UAAU,CAAC,GAAG;iBAChC,CAAC,CAAC;YACL,CAAC;YAED,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;QACvD,CAAC;aAAM,CAAC;YACN,MAAM,UAAU,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;YAClE,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;gBAC3B,UAAU,CAAC,IAAI,CAAC;oBACd,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,OAAO;oBAC3B,EAAE,EAAE,EAAE;oBACN,OAAO;oBACP,KAAK,EAAE,GAAG,CAAC,KAAK;oBAChB,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,UAAU,CAAC,GAAG;iBAChC,CAAC,CAAC;YACL,CAAC;YACD,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAC1C,CAAC;QAED,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;QAC5B,gEAAgE;QAChE,qDAAqD;QACrD,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACjB,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QAC3B,CAAC;QACD,GAAG,GAAG,IAAI,CAAC;IACb,CAAC;IAED,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;QAC3B,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC;IAC9B,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,8 @@
1
+ import parse, { type ParseOptions } from './parse';
2
+ import type { ParseContext, ParserConfiguration } from './types';
3
+ export declare function resolveParsanolTs(rootGuess: string): string | null;
4
+ /** Load one document's ParseContext from the SHAPE TREE (the grammar
5
+ * decides the surface; the dispatch core is the kernel's own). */
6
+ export declare function parseFromShape(source: string, parsers: ParserConfiguration, options?: ParseOptions, artifact?: string): Promise<ParseContext>;
7
+ export { parse };
8
+ //# sourceMappingURL=shape-front-end.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shape-front-end.d.ts","sourceRoot":"","sources":["../../../src/ser-des/shape-front-end.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,EAEZ,KAAK,YAAY,EAElB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAQjE,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOlE;AA2MD;mEACmE;AACnE,wBAAsB,cAAc,CAClC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,mBAAmB,EAC5B,OAAO,GAAE,YAAiB,EAC1B,QAAQ,SASP,GACA,OAAO,CAAC,YAAY,CAAC,CAIvB;AAED,OAAO,EAAE,KAAK,EAAE,CAAC"}
@@ -0,0 +1,215 @@
1
+ "use strict";
2
+ // ─────────────────────────────────────────────────────────────────────
3
+ // The shape front end (the full flow's phase 2 — the S2 endgame):
4
+ // the PARG SHAPE TREE drives the kernel's dispatch core. The grammar
5
+ // artifact decides the surface; this module materializes the
6
+ // declarations (keyword, id, payload) from the shape tree and the
7
+ // source spans, and the SAME parseDeclarations core that the token
8
+ // front end uses builds the ParseContext. Two front ends, one
9
+ // kernel — and the equivalence test pins that they agree.
10
+ // ─────────────────────────────────────────────────────────────────────
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.parse = void 0;
13
+ exports.resolveParsanolTs = resolveParsanolTs;
14
+ exports.parseFromShape = parseFromShape;
15
+ const node_fs_1 = require("node:fs");
16
+ const node_path_1 = require("node:path");
17
+ const parse_1 = require("./parse");
18
+ exports.parse = parse_1.default;
19
+ function resolveParsanolTs(rootGuess) {
20
+ const env = process.env.PRIMMEL_PARSANOL_TS;
21
+ if (env) {
22
+ return env;
23
+ }
24
+ const sibling = (0, node_path_1.join)(rootGuess, '..', '..', 'parsanol', 'parsanol-ts');
25
+ return (0, node_fs_1.existsSync)(sibling) ? sibling : null;
26
+ }
27
+ let cached = null;
28
+ async function shapeParser(artifact) {
29
+ if (cached) {
30
+ return cached;
31
+ }
32
+ // here = packages/primmel/src/ser-des — four ups to the repository
33
+ // root, then the workspace sibling. (__dirname, never import.meta —
34
+ // the package builds as CommonJS.)
35
+ const parsanol = resolveParsanolTs((0, node_path_1.join)(__dirname, '..', '..', '..', '..'));
36
+ if (!parsanol || !(0, node_fs_1.existsSync)(artifact)) {
37
+ throw new Error('the shape front end needs the parsanol checkout (PRIMMEL_PARSANOL_TS) and the grammar artifact');
38
+ }
39
+ const { PargRuntime } = (await Promise.resolve(`${(0, node_path_1.join)(parsanol, 'dist', 'runtime.js')}`).then(s => require(s)));
40
+ const rt = PargRuntime.fromFile(artifact);
41
+ cached = (src) => rt.parseShape(src);
42
+ return cached;
43
+ }
44
+ /** The whole-token occurrence of value NEAREST the anchor offset —
45
+ * the shape tree's spans index the preprocessed text and drift, but
46
+ * the drift is bounded, so the nearest whole-token occurrence (past
47
+ * comments and prose that may contain the same word) is the token's
48
+ * address. */
49
+ function indexOfToken(source, value, anchor) {
50
+ let best = -1;
51
+ let from = 0;
52
+ for (;;) {
53
+ const i = source.indexOf(value, from);
54
+ if (i < 0) {
55
+ return best;
56
+ }
57
+ const prev = i === 0 ? ' ' : source[i - 1];
58
+ if (!/[\w#]/.test(prev)) {
59
+ if (best < 0 || Math.abs(i - anchor) < Math.abs(best - anchor)) {
60
+ best = i;
61
+ }
62
+ }
63
+ from = i + 1;
64
+ }
65
+ }
66
+ function pos(node) {
67
+ if (node !== null &&
68
+ typeof node === 'object' &&
69
+ 'value' in node &&
70
+ typeof node['value'] === 'string' &&
71
+ 'offset' in node) {
72
+ return node;
73
+ }
74
+ return null;
75
+ }
76
+ /** The payload block sliced from the source: the brace-balanced span
77
+ * starting at/after `from` (string-aware, matching the tokenizer's
78
+ * block rule). */
79
+ function payloadBlock(source, from) {
80
+ let i = from;
81
+ while (i < source.length && /\s/.test(source[i])) {
82
+ i++;
83
+ }
84
+ if (source[i] !== '{') {
85
+ return '';
86
+ }
87
+ let depth = 0;
88
+ let quoted = false;
89
+ const start = i;
90
+ for (; i < source.length; i++) {
91
+ const ch = source[i];
92
+ if (quoted) {
93
+ quoted = ch !== '"';
94
+ continue;
95
+ }
96
+ if (ch === '"') {
97
+ quoted = true;
98
+ }
99
+ else if (ch === '{') {
100
+ depth++;
101
+ }
102
+ else if (ch === '}') {
103
+ depth--;
104
+ if (depth === 0) {
105
+ return source.slice(start, i + 1);
106
+ }
107
+ }
108
+ }
109
+ return source.slice(start);
110
+ }
111
+ /** The last position node in a shape subtree (the end anchor for
112
+ * keyword-line payloads). */
113
+ function lastPos(node, best = null) {
114
+ const p = pos(node);
115
+ if (p) {
116
+ return p.offset > (best?.offset ?? -1) ? p : best;
117
+ }
118
+ if (Array.isArray(node)) {
119
+ for (const n of node) {
120
+ best = lastPos(n, best);
121
+ }
122
+ }
123
+ else if (node !== null && typeof node === 'object') {
124
+ for (const v of Object.values(node)) {
125
+ best = lastPos(v, best);
126
+ }
127
+ }
128
+ return best;
129
+ }
130
+ function toDeclarations(shape, source, parsers) {
131
+ const out = [];
132
+ if (!Array.isArray(shape)) {
133
+ return out;
134
+ }
135
+ for (const item of shape) {
136
+ if (typeof item !== 'object' || item === null) {
137
+ continue;
138
+ }
139
+ const n = item;
140
+ if ('construct' in n) {
141
+ const c = n['construct'];
142
+ const kw = pos(c['keyword']);
143
+ const id = pos(c['ident']);
144
+ if (!kw) {
145
+ continue;
146
+ }
147
+ // Locate the token in the source by VALUE as a WHOLE token — the
148
+ // shape tree's offsets index the preprocessed text (comments
149
+ // stripped) and drift, and shorter ids prefix-match inside
150
+ // longer ones (Signatory#data inside IASignatory#data).
151
+ const anchor = id ? id.offset : kw.offset;
152
+ const afterIdent = id
153
+ ? indexOfToken(source, id.value, anchor) + id.value.length
154
+ : indexOfToken(source, kw.value, anchor) + kw.value.length;
155
+ out.push({
156
+ keyword: kw.value,
157
+ id: id?.value,
158
+ payload: payloadBlock(source, afterIdent),
159
+ start: { line: -1, col: -1, offset: kw.offset },
160
+ });
161
+ }
162
+ else if ('kwline' in n || 'entry' in n) {
163
+ const line = (n['kwline'] ?? n['entry']);
164
+ const key = pos(line['key']);
165
+ const valueEnd = lastPos(line['value']);
166
+ if (!key) {
167
+ continue;
168
+ }
169
+ const afterKey = indexOfToken(source, key.value, key.offset) + key.value.length;
170
+ const end = valueEnd ? valueEnd.offset + valueEnd.length : afterKey;
171
+ out.push({
172
+ keyword: key.value,
173
+ payload: source.slice(afterKey, end).trim(),
174
+ start: { line: -1, col: -1, offset: key.offset },
175
+ });
176
+ }
177
+ else {
178
+ // A raw item: an uncaptured line (`root Root`, `include "…"`, a
179
+ // comment, a value declaration). Tokenize the matched text; a
180
+ // known keyword heads a declaration, anything else is skipped —
181
+ // matching the token front end's lenient unknown-keyword rule.
182
+ const raw = pos(item) ??
183
+ (typeof item === 'string'
184
+ ? { value: item, offset: -1, length: 0 }
185
+ : null);
186
+ if (!raw) {
187
+ continue;
188
+ }
189
+ // A raw node can span lines (comments swallow the declaration
190
+ // lines beside them) — walk line by line, comments stripped at
191
+ // the word boundary.
192
+ for (const line of raw.value.split('\n')) {
193
+ const stripped = line.replace(/(^|\s)(#|\/\/).*$/, '');
194
+ const words = stripped.trim().split(/\s+/).filter(Boolean);
195
+ const kw = words[0];
196
+ if (kw && parsers[kw] !== undefined) {
197
+ out.push({
198
+ keyword: kw,
199
+ payload: words.slice(1).join(' '),
200
+ start: { line: -1, col: -1, offset: Math.max(0, raw.offset) },
201
+ });
202
+ }
203
+ }
204
+ }
205
+ }
206
+ return out;
207
+ }
208
+ /** Load one document's ParseContext from the SHAPE TREE (the grammar
209
+ * decides the surface; the dispatch core is the kernel's own). */
210
+ async function parseFromShape(source, parsers, options = {}, artifact = (0, node_path_1.join)(__dirname, '..', '..', '..', '..', 'grammar', 'artifacts', 'primmel.json')) {
211
+ const parseShape = await shapeParser(artifact);
212
+ const declarations = toDeclarations(parseShape(source), source, parsers);
213
+ return (0, parse_1.parseDeclarations)(declarations, parsers, options);
214
+ }
215
+ //# sourceMappingURL=shape-front-end.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shape-front-end.js","sourceRoot":"","sources":["../../../src/ser-des/shape-front-end.ts"],"names":[],"mappings":"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"}