@refrakt-md/runes 0.36.0 → 0.38.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 (195) hide show
  1. package/dist/config.d.ts.map +1 -1
  2. package/dist/config.js +6 -6
  3. package/dist/config.js.map +1 -1
  4. package/dist/file-ref-resolve.d.ts.map +1 -1
  5. package/dist/file-ref-resolve.js +36 -1
  6. package/dist/file-ref-resolve.js.map +1 -1
  7. package/dist/index.d.ts +14 -1
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +14 -1
  10. package/dist/index.js.map +1 -1
  11. package/dist/lang-map.d.ts.map +1 -1
  12. package/dist/lang-map.js +8 -0
  13. package/dist/lang-map.js.map +1 -1
  14. package/dist/lib/anchor.d.ts +73 -0
  15. package/dist/lib/anchor.d.ts.map +1 -0
  16. package/dist/lib/anchor.js +521 -0
  17. package/dist/lib/anchor.js.map +1 -0
  18. package/dist/lib/component.d.ts +9 -12
  19. package/dist/lib/component.d.ts.map +1 -1
  20. package/dist/lib/component.js +17 -52
  21. package/dist/lib/component.js.map +1 -1
  22. package/dist/lib/field-metas.d.ts +34 -0
  23. package/dist/lib/field-metas.d.ts.map +1 -0
  24. package/dist/lib/field-metas.js +45 -0
  25. package/dist/lib/field-metas.js.map +1 -0
  26. package/dist/lib/index.d.ts +17 -0
  27. package/dist/lib/index.d.ts.map +1 -1
  28. package/dist/lib/index.js +22 -0
  29. package/dist/lib/index.js.map +1 -1
  30. package/dist/lib/invocation.d.ts +22 -0
  31. package/dist/lib/invocation.d.ts.map +1 -0
  32. package/dist/lib/invocation.js +67 -0
  33. package/dist/lib/invocation.js.map +1 -0
  34. package/dist/lib/languages.d.ts +163 -0
  35. package/dist/lib/languages.d.ts.map +1 -0
  36. package/dist/lib/languages.js +383 -0
  37. package/dist/lib/languages.js.map +1 -0
  38. package/dist/lib/line-diff.d.ts +35 -0
  39. package/dist/lib/line-diff.d.ts.map +1 -0
  40. package/dist/lib/line-diff.js +77 -0
  41. package/dist/lib/line-diff.js.map +1 -0
  42. package/dist/lib/mask.d.ts +116 -0
  43. package/dist/lib/mask.d.ts.map +1 -0
  44. package/dist/lib/mask.js +378 -0
  45. package/dist/lib/mask.js.map +1 -0
  46. package/dist/lib/node.d.ts +23 -1
  47. package/dist/lib/node.d.ts.map +1 -1
  48. package/dist/lib/node.js +32 -0
  49. package/dist/lib/node.js.map +1 -1
  50. package/dist/lib/present.d.ts +73 -0
  51. package/dist/lib/present.d.ts.map +1 -0
  52. package/dist/lib/present.js +127 -0
  53. package/dist/lib/present.js.map +1 -0
  54. package/dist/lib/read-file.d.ts +21 -1
  55. package/dist/lib/read-file.d.ts.map +1 -1
  56. package/dist/lib/read-file.js +46 -0
  57. package/dist/lib/read-file.js.map +1 -1
  58. package/dist/lib/renderable.d.ts +7 -3
  59. package/dist/lib/renderable.d.ts.map +1 -1
  60. package/dist/lib/renderable.js +2 -2
  61. package/dist/lib/renderable.js.map +1 -1
  62. package/dist/lib/resolver.d.ts.map +1 -1
  63. package/dist/lib/resolver.js +8 -1
  64. package/dist/lib/resolver.js.map +1 -1
  65. package/dist/lib/review-marker.d.ts +113 -0
  66. package/dist/lib/review-marker.d.ts.map +1 -0
  67. package/dist/lib/review-marker.js +173 -0
  68. package/dist/lib/review-marker.js.map +1 -0
  69. package/dist/props.d.ts +0 -2
  70. package/dist/props.d.ts.map +1 -1
  71. package/dist/reference.d.ts +19 -0
  72. package/dist/reference.d.ts.map +1 -1
  73. package/dist/reference.js +82 -1
  74. package/dist/reference.js.map +1 -1
  75. package/dist/snippet-pipeline.d.ts.map +1 -1
  76. package/dist/snippet-pipeline.js +70 -2
  77. package/dist/snippet-pipeline.js.map +1 -1
  78. package/dist/tags/accordion.d.ts.map +1 -1
  79. package/dist/tags/accordion.js +4 -7
  80. package/dist/tags/accordion.js.map +1 -1
  81. package/dist/tags/annotate.d.ts.map +1 -1
  82. package/dist/tags/annotate.js +6 -13
  83. package/dist/tags/annotate.js.map +1 -1
  84. package/dist/tags/bar.d.ts.map +1 -1
  85. package/dist/tags/bar.js +2 -5
  86. package/dist/tags/bar.js.map +1 -1
  87. package/dist/tags/blog.d.ts.map +1 -1
  88. package/dist/tags/blog.js +1 -9
  89. package/dist/tags/blog.js.map +1 -1
  90. package/dist/tags/breadcrumb.d.ts.map +1 -1
  91. package/dist/tags/breadcrumb.js +4 -5
  92. package/dist/tags/breadcrumb.js.map +1 -1
  93. package/dist/tags/budget.d.ts.map +1 -1
  94. package/dist/tags/budget.js +2 -10
  95. package/dist/tags/budget.js.map +1 -1
  96. package/dist/tags/card.d.ts.map +1 -1
  97. package/dist/tags/card.js +7 -14
  98. package/dist/tags/card.js.map +1 -1
  99. package/dist/tags/chart.d.ts.map +1 -1
  100. package/dist/tags/chart.js +5 -8
  101. package/dist/tags/chart.js.map +1 -1
  102. package/dist/tags/codegroup.d.ts.map +1 -1
  103. package/dist/tags/codegroup.js +0 -2
  104. package/dist/tags/codegroup.js.map +1 -1
  105. package/dist/tags/common.d.ts.map +1 -1
  106. package/dist/tags/common.js +2 -5
  107. package/dist/tags/common.js.map +1 -1
  108. package/dist/tags/compare.d.ts.map +1 -1
  109. package/dist/tags/compare.js +4 -8
  110. package/dist/tags/compare.js.map +1 -1
  111. package/dist/tags/conversation.d.ts.map +1 -1
  112. package/dist/tags/conversation.js +4 -7
  113. package/dist/tags/conversation.js.map +1 -1
  114. package/dist/tags/datatable.d.ts.map +1 -1
  115. package/dist/tags/datatable.js +4 -8
  116. package/dist/tags/datatable.js.map +1 -1
  117. package/dist/tags/details.d.ts.map +1 -1
  118. package/dist/tags/details.js +3 -7
  119. package/dist/tags/details.js.map +1 -1
  120. package/dist/tags/diagram.js +2 -2
  121. package/dist/tags/diagram.js.map +1 -1
  122. package/dist/tags/diff.d.ts.map +1 -1
  123. package/dist/tags/diff.js +2 -39
  124. package/dist/tags/diff.js.map +1 -1
  125. package/dist/tags/drawer.d.ts.map +1 -1
  126. package/dist/tags/drawer.js +4 -12
  127. package/dist/tags/drawer.js.map +1 -1
  128. package/dist/tags/embed.d.ts.map +1 -1
  129. package/dist/tags/embed.js +4 -5
  130. package/dist/tags/embed.js.map +1 -1
  131. package/dist/tags/figure.d.ts.map +1 -1
  132. package/dist/tags/figure.js +6 -14
  133. package/dist/tags/figure.js.map +1 -1
  134. package/dist/tags/file-ref.d.ts.map +1 -1
  135. package/dist/tags/file-ref.js +59 -1
  136. package/dist/tags/file-ref.js.map +1 -1
  137. package/dist/tags/form.d.ts.map +1 -1
  138. package/dist/tags/form.js +3 -18
  139. package/dist/tags/form.js.map +1 -1
  140. package/dist/tags/gallery.d.ts.map +1 -1
  141. package/dist/tags/gallery.js +6 -11
  142. package/dist/tags/gallery.js.map +1 -1
  143. package/dist/tags/grid.d.ts.map +1 -1
  144. package/dist/tags/grid.js +7 -17
  145. package/dist/tags/grid.js.map +1 -1
  146. package/dist/tags/hint.d.ts.map +1 -1
  147. package/dist/tags/hint.js +4 -8
  148. package/dist/tags/hint.js.map +1 -1
  149. package/dist/tags/juxtapose.js +2 -2
  150. package/dist/tags/juxtapose.js.map +1 -1
  151. package/dist/tags/layout.d.ts.map +1 -1
  152. package/dist/tags/layout.js +2 -5
  153. package/dist/tags/layout.js.map +1 -1
  154. package/dist/tags/mediatext.d.ts.map +1 -1
  155. package/dist/tags/mediatext.js +5 -13
  156. package/dist/tags/mediatext.js.map +1 -1
  157. package/dist/tags/nav.d.ts.map +1 -1
  158. package/dist/tags/nav.js +2 -5
  159. package/dist/tags/nav.js.map +1 -1
  160. package/dist/tags/progress.d.ts.map +1 -1
  161. package/dist/tags/progress.js +4 -8
  162. package/dist/tags/progress.js.map +1 -1
  163. package/dist/tags/pullquote.d.ts.map +1 -1
  164. package/dist/tags/pullquote.js +8 -15
  165. package/dist/tags/pullquote.js.map +1 -1
  166. package/dist/tags/region.d.ts.map +1 -1
  167. package/dist/tags/region.js +2 -5
  168. package/dist/tags/region.js.map +1 -1
  169. package/dist/tags/reveal.d.ts.map +1 -1
  170. package/dist/tags/reveal.js +4 -7
  171. package/dist/tags/reveal.js.map +1 -1
  172. package/dist/tags/section.d.ts.map +1 -1
  173. package/dist/tags/section.js +3 -3
  174. package/dist/tags/section.js.map +1 -1
  175. package/dist/tags/showcase.d.ts.map +1 -1
  176. package/dist/tags/showcase.js +4 -11
  177. package/dist/tags/showcase.js.map +1 -1
  178. package/dist/tags/sidenote.d.ts.map +1 -1
  179. package/dist/tags/sidenote.js +7 -12
  180. package/dist/tags/sidenote.js.map +1 -1
  181. package/dist/tags/snippet.d.ts.map +1 -1
  182. package/dist/tags/snippet.js +53 -2
  183. package/dist/tags/snippet.js.map +1 -1
  184. package/dist/tags/tabs.d.ts.map +1 -1
  185. package/dist/tags/tabs.js +3 -6
  186. package/dist/tags/tabs.js.map +1 -1
  187. package/dist/tags/textblock.d.ts.map +1 -1
  188. package/dist/tags/textblock.js +7 -19
  189. package/dist/tags/textblock.js.map +1 -1
  190. package/dist/tags/tint.d.ts.map +1 -1
  191. package/dist/tags/tint.js +17 -29
  192. package/dist/tags/tint.js.map +1 -1
  193. package/dist/tags/toc.js +1 -1
  194. package/dist/tags/toc.js.map +1 -1
  195. package/package.json +3 -3
package/dist/lib/node.js CHANGED
@@ -15,4 +15,36 @@ export function isFilterMatching(n, match) {
15
15
  }
16
16
  return true;
17
17
  }
18
+ /**
19
+ * Concatenated text of every `text` node under an AST node, unmodified — no
20
+ * trimming, no separator between nodes. For a rendered tree use `textContent`.
21
+ */
22
+ export function extractText(node) {
23
+ return Array.from(node.walk())
24
+ .filter((n) => n.type === 'text')
25
+ .map((n) => n.attributes.content)
26
+ .join('');
27
+ }
28
+ /**
29
+ * The "a heading sets the running group, list items become entries" walk over
30
+ * a rune's children. Only the traversal is shared: what a heading means and how
31
+ * an item parses stay with the rune.
32
+ */
33
+ export function groupByHeading(nodes, handlers) {
34
+ let group = handlers.initial;
35
+ for (const node of nodes) {
36
+ if (node.type === 'heading') {
37
+ group = handlers.heading(node, group);
38
+ }
39
+ else if (node.type === 'list') {
40
+ for (const item of node.children) {
41
+ if (item.type === 'item')
42
+ handlers.item(item, group);
43
+ }
44
+ }
45
+ else {
46
+ handlers.other?.(node);
47
+ }
48
+ }
49
+ }
18
50
  //# sourceMappingURL=node.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/lib/node.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,gBAAgB,CAAC,CAAO,EAAE,KAAiB;IAC1D,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;QACjC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;IAED,MAAM,MAAM,GAAsB,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;IACtF,IAAI,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;QAC3C,OAAO,KAAK,CAAC;IACd,CAAC;IACD,IAAI,MAAM,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1F,OAAO,KAAK,CAAC;IACd,CAAC;IACD,IACC,MAAM,CAAC,aAAa;QACpB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,KAAK,MAAM,CAAC,aAAa,CAAC,EACpF,CAAC;QACF,OAAO,KAAK,CAAC;IACd,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/lib/node.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,gBAAgB,CAAC,CAAO,EAAE,KAAiB;IAC1D,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;QACjC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;IAED,MAAM,MAAM,GAAsB,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;IACtF,IAAI,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;QAC3C,OAAO,KAAK,CAAC;IACd,CAAC;IACD,IAAI,MAAM,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1F,OAAO,KAAK,CAAC;IACd,CAAC;IACD,IACC,MAAM,CAAC,aAAa;QACpB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,KAAK,MAAM,CAAC,aAAa,CAAC,EACpF,CAAC;QACF,OAAO,KAAK,CAAC;IACd,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,IAAU;IACrC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;SAC5B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;SAChC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC;SAChC,IAAI,CAAC,EAAE,CAAC,CAAC;AACZ,CAAC;AAcD;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAC7B,KAAqB,EACrB,QAAmC;IAEnC,IAAI,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC;IAC7B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC7B,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACvC,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACjC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClC,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM;oBAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACtD,CAAC;QACF,CAAC;aAAM,CAAC;YACP,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;IACF,CAAC;AACF,CAAC"}
@@ -0,0 +1,73 @@
1
+ /**
2
+ * Anchor-native presentation (SPEC-131 D13 + D16; WORK-589).
3
+ *
4
+ * Anchoring makes nested targets easy for the first time — a class method, a
5
+ * key inside `"scripts"`, a rule inside `@media`, a step under `jobs:`. Two
6
+ * existing attributes were defined in terms of `lines=` and stop making sense
7
+ * under an anchor, and one new attribute is needed because the old form
8
+ * re-couples the invocation to the coordinates anchoring exists to decouple it
9
+ * from.
10
+ *
11
+ * **These are deliberately separate entry points, not folded into extraction.**
12
+ * Two later items need to call the pipeline at a chosen point and an inlined
13
+ * transform does not allow it:
14
+ *
15
+ * - WORK-590's codemod verifies a rewritten invocation produces a
16
+ * **byte-identical** slice, and that comparison runs **before** `reindent` —
17
+ * otherwise every nested target fails verification for a difference the
18
+ * codemod itself introduced.
19
+ * - WORK-591's review-marker hash applies `reindent` **first**, so that moving
20
+ * a function into a class — which shifts every line two columns without
21
+ * changing a character of content — does not fire the marker.
22
+ *
23
+ * The ordering is easy to get backwards and produces a confusing failure in
24
+ * each direction, which is why it is stated on both sides.
25
+ */
26
+ /**
27
+ * Strip the slice's common leading whitespace.
28
+ *
29
+ * Removing the *common* prefix preserves relative structure exactly, so the
30
+ * result stays valid in indentation-significant languages: a dedented Python
31
+ * method is a function, a dedented YAML subtree is that subtree rooted.
32
+ *
33
+ * Blank lines are ignored when measuring the prefix — a blank line inside a
34
+ * block is not evidence that the block is flush left — and are emitted as
35
+ * empty rather than as whatever whitespace they happened to carry.
36
+ *
37
+ * Tabs and spaces are compared as characters, not as widths: a slice mixing
38
+ * them has no common prefix to strip, and guessing a tab width in order to
39
+ * manufacture one would change bytes the author did not ask to change.
40
+ */
41
+ export declare function reindent(content: string): string;
42
+ /**
43
+ * Whether `reindent` applies, given the addressing mode and the attribute.
44
+ *
45
+ * **The default follows the addressing mode** (D16), for the same reason D9's
46
+ * does. An author writing `lines="10-40"` has seen the file and chosen those
47
+ * columns; changing how they render would be a silent visual change to every
48
+ * existing line-addressed invocation. An author writing `symbol="…"` never saw
49
+ * a column number — the resolver picked the region, so it owns presenting it
50
+ * legibly.
51
+ */
52
+ export declare function shouldReindent(anchored: boolean, attr: boolean | undefined): boolean;
53
+ /**
54
+ * Line numbers within a slice whose text matches any of the given regexes.
55
+ *
56
+ * The anchor-native form of `highlight` (D13). A *numeric* highlight under an
57
+ * anchor is no longer something an author can write from knowledge — the
58
+ * resolver chose the region — so this matches on content instead.
59
+ *
60
+ * Returns 1-based offsets **within the slice**, which is what the fence's
61
+ * `highlight` attribute expects once `linenumbers` has supplied the file
62
+ * offset.
63
+ *
64
+ * @param content The resolved slice.
65
+ * @param patterns One or more regex sources.
66
+ */
67
+ export declare function highlightMatchLines(content: string, patterns: string[]): number[];
68
+ /** Parse a `highlight-match` attribute into regex sources. Comma-separated,
69
+ * because an attribute is a string and authors reach for a list. */
70
+ export declare function parseHighlightMatch(raw: string | undefined): string[];
71
+ /** Render a list of 1-based slice offsets as the fence's `highlight` value. */
72
+ export declare function formatHighlight(lines: number[]): string;
73
+ //# sourceMappingURL=present.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"present.d.ts","sourceRoot":"","sources":["../../src/lib/present.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CA0BhD;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,OAAO,CAEpF;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAajF;AAED;qEACqE;AACrE,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,EAAE,CAMrE;AAED,+EAA+E;AAC/E,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAEvD"}
@@ -0,0 +1,127 @@
1
+ /**
2
+ * Anchor-native presentation (SPEC-131 D13 + D16; WORK-589).
3
+ *
4
+ * Anchoring makes nested targets easy for the first time — a class method, a
5
+ * key inside `"scripts"`, a rule inside `@media`, a step under `jobs:`. Two
6
+ * existing attributes were defined in terms of `lines=` and stop making sense
7
+ * under an anchor, and one new attribute is needed because the old form
8
+ * re-couples the invocation to the coordinates anchoring exists to decouple it
9
+ * from.
10
+ *
11
+ * **These are deliberately separate entry points, not folded into extraction.**
12
+ * Two later items need to call the pipeline at a chosen point and an inlined
13
+ * transform does not allow it:
14
+ *
15
+ * - WORK-590's codemod verifies a rewritten invocation produces a
16
+ * **byte-identical** slice, and that comparison runs **before** `reindent` —
17
+ * otherwise every nested target fails verification for a difference the
18
+ * codemod itself introduced.
19
+ * - WORK-591's review-marker hash applies `reindent` **first**, so that moving
20
+ * a function into a class — which shifts every line two columns without
21
+ * changing a character of content — does not fire the marker.
22
+ *
23
+ * The ordering is easy to get backwards and produces a confusing failure in
24
+ * each direction, which is why it is stated on both sides.
25
+ */
26
+ /**
27
+ * Strip the slice's common leading whitespace.
28
+ *
29
+ * Removing the *common* prefix preserves relative structure exactly, so the
30
+ * result stays valid in indentation-significant languages: a dedented Python
31
+ * method is a function, a dedented YAML subtree is that subtree rooted.
32
+ *
33
+ * Blank lines are ignored when measuring the prefix — a blank line inside a
34
+ * block is not evidence that the block is flush left — and are emitted as
35
+ * empty rather than as whatever whitespace they happened to carry.
36
+ *
37
+ * Tabs and spaces are compared as characters, not as widths: a slice mixing
38
+ * them has no common prefix to strip, and guessing a tab width in order to
39
+ * manufacture one would change bytes the author did not ask to change.
40
+ */
41
+ export function reindent(content) {
42
+ const lines = content.split('\n');
43
+ let prefix;
44
+ for (const line of lines) {
45
+ if (line.trim().length === 0)
46
+ continue;
47
+ const indent = line.slice(0, line.length - line.trimStart().length);
48
+ if (prefix === undefined) {
49
+ prefix = indent;
50
+ continue;
51
+ }
52
+ // Shrink to the longest shared prefix.
53
+ let i = 0;
54
+ while (i < prefix.length && i < indent.length && prefix[i] === indent[i])
55
+ i++;
56
+ prefix = prefix.slice(0, i);
57
+ if (prefix.length === 0)
58
+ break;
59
+ }
60
+ if (prefix === undefined || prefix.length === 0)
61
+ return content;
62
+ return lines
63
+ .map((line) => {
64
+ if (line.trim().length === 0)
65
+ return '';
66
+ return line.startsWith(prefix) ? line.slice(prefix.length) : line.trimStart();
67
+ })
68
+ .join('\n');
69
+ }
70
+ /**
71
+ * Whether `reindent` applies, given the addressing mode and the attribute.
72
+ *
73
+ * **The default follows the addressing mode** (D16), for the same reason D9's
74
+ * does. An author writing `lines="10-40"` has seen the file and chosen those
75
+ * columns; changing how they render would be a silent visual change to every
76
+ * existing line-addressed invocation. An author writing `symbol="…"` never saw
77
+ * a column number — the resolver picked the region, so it owns presenting it
78
+ * legibly.
79
+ */
80
+ export function shouldReindent(anchored, attr) {
81
+ return attr ?? anchored;
82
+ }
83
+ /**
84
+ * Line numbers within a slice whose text matches any of the given regexes.
85
+ *
86
+ * The anchor-native form of `highlight` (D13). A *numeric* highlight under an
87
+ * anchor is no longer something an author can write from knowledge — the
88
+ * resolver chose the region — so this matches on content instead.
89
+ *
90
+ * Returns 1-based offsets **within the slice**, which is what the fence's
91
+ * `highlight` attribute expects once `linenumbers` has supplied the file
92
+ * offset.
93
+ *
94
+ * @param content The resolved slice.
95
+ * @param patterns One or more regex sources.
96
+ */
97
+ export function highlightMatchLines(content, patterns) {
98
+ const compiled = [];
99
+ for (const raw of patterns) {
100
+ if (raw.length === 0)
101
+ continue;
102
+ compiled.push(new RegExp(raw));
103
+ }
104
+ if (compiled.length === 0)
105
+ return [];
106
+ const hits = [];
107
+ content.split('\n').forEach((line, i) => {
108
+ if (compiled.some((re) => re.test(line)))
109
+ hits.push(i + 1);
110
+ });
111
+ return hits;
112
+ }
113
+ /** Parse a `highlight-match` attribute into regex sources. Comma-separated,
114
+ * because an attribute is a string and authors reach for a list. */
115
+ export function parseHighlightMatch(raw) {
116
+ if (typeof raw !== 'string' || raw.trim().length === 0)
117
+ return [];
118
+ return raw
119
+ .split(',')
120
+ .map((s) => s.trim())
121
+ .filter((s) => s.length > 0);
122
+ }
123
+ /** Render a list of 1-based slice offsets as the fence's `highlight` value. */
124
+ export function formatHighlight(lines) {
125
+ return lines.join(',');
126
+ }
127
+ //# sourceMappingURL=present.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"present.js","sourceRoot":"","sources":["../../src/lib/present.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,QAAQ,CAAC,OAAe;IACvC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,MAA0B,CAAC;IAE/B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC;QACpE,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,GAAG,MAAM,CAAC;YAChB,SAAS;QACV,CAAC;QACD,uCAAuC;QACvC,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC;YAAE,CAAC,EAAE,CAAC;QAC9E,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM;IAChC,CAAC;IAED,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC;IAEhE,OAAO,KAAK;SACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACb,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACxC,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;IAC/E,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;AACd,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,cAAc,CAAC,QAAiB,EAAE,IAAyB;IAC1E,OAAO,IAAI,IAAI,QAAQ,CAAC;AACzB,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAe,EAAE,QAAkB;IACtE,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC5B,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAC/B,QAAQ,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IAChC,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAErC,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;QACvC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAAE,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AACb,CAAC;AAED;qEACqE;AACrE,MAAM,UAAU,mBAAmB,CAAC,GAAuB;IAC1D,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClE,OAAO,GAAG;SACR,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAC/B,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,eAAe,CAAC,KAAe;IAC9C,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACxB,CAAC"}
@@ -14,14 +14,29 @@
14
14
  * runes package tree-shakable for browser bundles.
15
15
  */
16
16
  import type { ProjectFiles } from '@refrakt-md/types';
17
+ import { type AnchorOptions } from './anchor.js';
17
18
  /** Diagnostics from a single read. */
18
19
  export interface ReadFileResult {
19
- /** Resolved file content (possibly sliced by `lines`). */
20
+ /** Resolved file content (possibly sliced by `lines` or by an anchor). */
20
21
  content: string;
21
22
  /** Project-root-relative POSIX path — what `data-snippet-source` carries. */
22
23
  relativePath: string;
23
24
  /** Warnings the preprocess hook should surface (e.g., end-clamp). */
24
25
  warnings: string[];
26
+ /**
27
+ * 1-indexed inclusive start line of the slice, in **file** coordinates.
28
+ *
29
+ * The coordinate frame survives anchoring on purpose (D13): `linenumbers`
30
+ * keeps starting at the real line and numeric `highlight` keeps meaning
31
+ * file lines, so the displayed numbers stay a usable pointer back into the
32
+ * file. Undefined only when the whole file was returned.
33
+ */
34
+ start?: number;
35
+ /** 1-indexed inclusive end line, in file coordinates. */
36
+ end?: number;
37
+ /** Whether the slice was located by anchor rather than by `lines=`. Drives
38
+ * the `reindent` and `doc` defaults, which follow the addressing mode. */
39
+ anchored: boolean;
25
40
  }
26
41
  export interface ReadFileOptions {
27
42
  /** The project's files, rooted at the project root. Reads go through this. */
@@ -33,6 +48,11 @@ export interface ReadFileOptions {
33
48
  /** Optional source-page context used in error messages
34
49
  * ("Referenced from: docs/getting-started.md:42"). */
35
50
  referencingPage?: string;
51
+ /** Optional anchor attributes — `symbol`, `match`, `extent` and friends.
52
+ * Mutually exclusive with `lines`. */
53
+ anchor?: AnchorOptions;
54
+ /** Optional explicit language id, overriding extension inference. */
55
+ lang?: string;
36
56
  }
37
57
  /** Range parsed from the `lines=` attribute. */
38
58
  interface LineRange {
@@ -1 +1 @@
1
- {"version":3,"file":"read-file.d.ts","sourceRoot":"","sources":["../../src/lib/read-file.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,sCAAsC;AACtC,MAAM,WAAW,cAAc;IAC9B,0DAA0D;IAC1D,OAAO,EAAE,MAAM,CAAC;IAChB,6EAA6E;IAC7E,YAAY,EAAE,MAAM,CAAC;IACrB,qEAAqE;IACrE,QAAQ,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC/B,8EAA8E;IAC9E,KAAK,EAAE,YAAY,CAAC;IACpB,2EAA2E;IAC3E,QAAQ,EAAE,MAAM,CAAC;IACjB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;2DACuD;IACvD,eAAe,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,gDAAgD;AAChD,UAAU,SAAS;IAClB,yEAAyE;IACzE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mEAAmE;IACnE,GAAG,CAAC,EAAE,MAAM,CAAC;CACb;AAED;uDACuD;AACvD,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,IAAI,CA2CxE;AAED;;gBAEgB;AAChB,wBAAgB,YAAY,CAC3B,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,SAAS,GAAG,IAAI,GACrB;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,CAuBxC;AAED;;iFAEiF;AACjF,wBAAgB,eAAe,CAAC,IAAI,EAAE,eAAe,GAAG,cAAc,CAiBrE;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE;IAC5C,KAAK,EAAE,YAAY,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACrB,GAAG,MAAM,CAQT;AAED;oDACoD;AACpD,qBAAa,mBAAoB,SAAQ,KAAK;gBACjC,OAAO,EAAE,MAAM;CAI3B"}
1
+ {"version":3,"file":"read-file.d.ts","sourceRoot":"","sources":["../../src/lib/read-file.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,KAAK,aAAa,EAAwC,MAAM,aAAa,CAAC;AAGvF,sCAAsC;AACtC,MAAM,WAAW,cAAc;IAC9B,0EAA0E;IAC1E,OAAO,EAAE,MAAM,CAAC;IAChB,6EAA6E;IAC7E,YAAY,EAAE,MAAM,CAAC;IACrB,qEAAqE;IACrE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yDAAyD;IACzD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;+EAC2E;IAC3E,QAAQ,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC/B,8EAA8E;IAC9E,KAAK,EAAE,YAAY,CAAC;IACpB,2EAA2E;IAC3E,QAAQ,EAAE,MAAM,CAAC;IACjB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;2DACuD;IACvD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;2CACuC;IACvC,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,qEAAqE;IACrE,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED,gDAAgD;AAChD,UAAU,SAAS;IAClB,yEAAyE;IACzE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mEAAmE;IACnE,GAAG,CAAC,EAAE,MAAM,CAAC;CACb;AAED;uDACuD;AACvD,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,IAAI,CA2CxE;AAED;;gBAEgB;AAChB,wBAAgB,YAAY,CAC3B,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,SAAS,GAAG,IAAI,GACrB;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,CAuBxC;AAED;;iFAEiF;AACjF,wBAAgB,eAAe,CAAC,IAAI,EAAE,eAAe,GAAG,cAAc,CAoErE;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE;IAC5C,KAAK,EAAE,YAAY,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACrB,GAAG,MAAM,CAQT;AAED;oDACoD;AACpD,qBAAa,mBAAoB,SAAQ,KAAK;gBACjC,OAAO,EAAE,MAAM;CAI3B"}
@@ -13,6 +13,8 @@
13
13
  * No `node:fs` import — all I/O goes through the provider, which keeps the
14
14
  * runes package tree-shakable for browser bundles.
15
15
  */
16
+ import { AnchorResolutionError, resolveAnchor } from './anchor.js';
17
+ import { resolveLanguage } from './languages.js';
16
18
  /** Parse a `lines=` attribute. Returns null when the attribute is empty/absent;
17
19
  * throws `SnippetSandboxError` on malformed input. */
18
20
  export function parseLineRange(raw) {
@@ -83,12 +85,56 @@ export function readSnippetFile(opts) {
83
85
  const referenced = opts.referencingPage ? `\n\nReferenced from: ${opts.referencingPage}` : '';
84
86
  throw new SnippetSandboxError(`snippet path "${opts.pathAttr}" cannot be resolved — the file is missing, not a regular file, or outside the project root.${referenced}`);
85
87
  }
88
+ const anchor = opts.anchor;
89
+ const hasAnchor = anchor !== undefined &&
90
+ ((typeof anchor.symbol === 'string' && anchor.symbol.length > 0) ||
91
+ (typeof anchor.match === 'string' && anchor.match.length > 0));
92
+ const hasLines = typeof opts.lines === 'string' && opts.lines.length > 0;
93
+ if (hasAnchor && hasLines) {
94
+ throw new SnippetSandboxError(`snippet "${opts.pathAttr}" sets both \`lines\` and an anchor (\`symbol\`/\`match\`), ` +
95
+ 'which are mutually exclusive — an anchor names a region and `lines` addresses one by ' +
96
+ 'coordinate. Remove one.');
97
+ }
98
+ if (hasAnchor) {
99
+ const lang = resolveLanguage(opts.lang ?? opts.pathAttr);
100
+ let resolved;
101
+ try {
102
+ resolved = resolveAnchor(rawContent, lang, anchor, opts.pathAttr);
103
+ }
104
+ catch (err) {
105
+ // One failure channel. D6: resolution failures raise
106
+ // `SnippetSandboxError`, which the existing path turns into an error
107
+ // fence plus a `ctx.error` diagnostic. No new channel.
108
+ if (err instanceof AnchorResolutionError) {
109
+ const referenced = opts.referencingPage
110
+ ? `\n\nReferenced from: ${opts.referencingPage}`
111
+ : '';
112
+ throw new SnippetSandboxError(`snippet ${err.message}${referenced}`);
113
+ }
114
+ throw err;
115
+ }
116
+ const allLines = rawContent.split('\n');
117
+ return {
118
+ content: allLines.slice(resolved.start - 1, resolved.end).join('\n'),
119
+ relativePath: opts.pathAttr,
120
+ warnings: resolved.warnings,
121
+ start: resolved.start,
122
+ end: resolved.end,
123
+ anchored: true,
124
+ };
125
+ }
86
126
  const range = parseLineRange(opts.lines);
87
127
  const { sliced, warnings } = sliceContent(rawContent, range);
128
+ const total = rawContent.split('\n').length;
129
+ const start = range ? (range.start ?? 1) : undefined;
130
+ const end = range ? Math.min(range.end ?? total, total) : undefined;
88
131
  return {
89
132
  content: sliced,
90
133
  relativePath: opts.pathAttr,
91
134
  warnings,
135
+ start,
136
+ end,
137
+ anchored: false,
92
138
  };
93
139
  }
94
140
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"read-file.js","sourceRoot":"","sources":["../../src/lib/read-file.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"read-file.js","sourceRoot":"","sources":["../../src/lib/read-file.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import Markdoc from '@markdoc/markdoc';
2
2
  import type { Tag, RenderableTreeNode } from '@markdoc/markdoc';
3
- import { NodeType } from '@refrakt-md/types';
3
+ import type { NodeType } from '@refrakt-md/types';
4
4
  export declare class RenderableNodeCursor<T extends RenderableTreeNode = RenderableTreeNode> {
5
5
  readonly nodes: T[];
6
6
  private offset;
@@ -11,8 +11,12 @@ export declare class RenderableNodeCursor<T extends RenderableTreeNode = Rendera
11
11
  tags<TagNames extends NodeType[]>(...tags: TagNames): RenderableNodeCursor<Tag<TagNames[number]>>;
12
12
  headings(): RenderableNodeCursor<Markdoc.Tag<"h1" | "h2" | "h3" | "h4" | "h5" | "h6", Record<string, any>>>;
13
13
  typeof(type: string): RenderableNodeCursor<T>;
14
- concat(...other: (RenderableTreeNode | RenderableNodeCursor)[]): RenderableNodeCursor<Markdoc.RenderableTreeNode>;
15
- flatten(): RenderableNodeCursor<Markdoc.RenderableTreeNode | (T extends readonly (infer InnerArr)[] ? InnerArr : T)>;
14
+ concat(...other: (RenderableTreeNode | RenderableNodeCursor)[]): RenderableNodeCursor<string | number | boolean | Markdoc.Scalar[] | {
15
+ [key: string]: Markdoc.Scalar;
16
+ } | Markdoc.Tag<string, Record<string, any>> | null>;
17
+ flatten(): RenderableNodeCursor<string | number | boolean | Markdoc.Scalar[] | {
18
+ [key: string]: Markdoc.Scalar;
19
+ } | Markdoc.Tag<string, Record<string, any>> | null>;
16
20
  limit(count: number): RenderableNodeCursor<T>;
17
21
  slice(start: number, end?: number): RenderableNodeCursor<T>;
18
22
  toArray(): T[];
@@ -1 +1 @@
1
- {"version":3,"file":"renderable.d.ts","sourceRoot":"","sources":["../../src/lib/renderable.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,EAAE,GAAG,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAI7C,qBAAa,oBAAoB,CAAC,CAAC,SAAS,kBAAkB,GAAG,kBAAkB;aAGtD,KAAK,EAAE,CAAC,EAAE;IAFtC,OAAO,CAAC,MAAM,CAAK;gBAES,KAAK,EAAE,CAAC,EAAE;IAEtC,MAAM,CAAC,QAAQ,CAAC,OAAO,SAAS,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO;IAIjE,IAAI,CAAC,OAAO,SAAS,MAAM,EAC1B,GAAG,EAAE,OAAO,EACZ,UAAU,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAClC,oBAAoB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAIrC,GAAG,CAAC,OAAO,SAAS,QAAQ,EAAE,GAAG,EAAE,OAAO,GAAG,oBAAoB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAO/E,IAAI,CAAC,QAAQ,SAAS,QAAQ,EAAE,EAC/B,GAAG,IAAI,EAAE,QAAQ,GACf,oBAAoB,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAO9C,QAAQ;IAIR,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,CAAC,CAAC,CAAC;IAQ7C,MAAM,CAAC,GAAG,KAAK,EAAE,CAAC,kBAAkB,GAAG,oBAAoB,CAAC,EAAE;IAK9D,OAAO;IAKP,KAAK,CAAC,KAAK,EAAE,MAAM;IAInB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM;IAIjC,OAAO,IAAI,CAAC,EAAE;IAId,KAAK,IAAI,MAAM;IAIf,IAAI,IAAI,CAAC;CAGT"}
1
+ {"version":3,"file":"renderable.d.ts","sourceRoot":"","sources":["../../src/lib/renderable.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,EAAE,GAAG,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAIlD,qBAAa,oBAAoB,CAAC,CAAC,SAAS,kBAAkB,GAAG,kBAAkB;aAGtD,KAAK,EAAE,CAAC,EAAE;IAFtC,OAAO,CAAC,MAAM,CAAK;gBAES,KAAK,EAAE,CAAC,EAAE;IAEtC,MAAM,CAAC,QAAQ,CAAC,OAAO,SAAS,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO;IAIjE,IAAI,CAAC,OAAO,SAAS,MAAM,EAC1B,GAAG,EAAE,OAAO,EACZ,UAAU,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAClC,oBAAoB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAIrC,GAAG,CAAC,OAAO,SAAS,QAAQ,EAAE,GAAG,EAAE,OAAO,GAAG,oBAAoB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAO/E,IAAI,CAAC,QAAQ,SAAS,QAAQ,EAAE,EAC/B,GAAG,IAAI,EAAE,QAAQ,GACf,oBAAoB,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAO9C,QAAQ;IAIR,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,CAAC,CAAC,CAAC;IAQ7C,MAAM,CAAC,GAAG,KAAK,EAAE,CAAC,kBAAkB,GAAG,oBAAoB,CAAC,EAAE;;;IAK9D,OAAO;;;IAKP,KAAK,CAAC,KAAK,EAAE,MAAM;IAInB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM;IAIjC,OAAO,IAAI,CAAC,EAAE;IAId,KAAK,IAAI,MAAM;IAIf,IAAI,IAAI,CAAC;CAGT"}
@@ -27,11 +27,11 @@ export class RenderableNodeCursor {
27
27
  return new RenderableNodeCursor(this.nodes.filter((n) => Markdoc.Tag.isTag(n) && n.attributes['data-rune'] === toKebabCase(type)));
28
28
  }
29
29
  concat(...other) {
30
- const nodes = other.map((o) => (o instanceof RenderableNodeCursor ? o.nodes : o)).flat();
30
+ const nodes = other.flatMap((o) => (o instanceof RenderableNodeCursor ? o.nodes : o));
31
31
  return new RenderableNodeCursor([...this.nodes, ...nodes]);
32
32
  }
33
33
  flatten() {
34
- const nodes = this.nodes.map((t) => (Markdoc.Tag.isTag(t) ? Array.from(walkTag(t)) : t)).flat();
34
+ const nodes = this.nodes.flatMap((t) => (Markdoc.Tag.isTag(t) ? Array.from(walkTag(t)) : t));
35
35
  return new RenderableNodeCursor(nodes);
36
36
  }
37
37
  limit(count) {
@@ -1 +1 @@
1
- {"version":3,"file":"renderable.js","sourceRoot":"","sources":["../../src/lib/renderable.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"renderable.js","sourceRoot":"","sources":["../../src/lib/renderable.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../src/lib/resolver.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAE7C,OAAO,KAAK,EACX,YAAY,EACZ,sBAAsB,EACtB,cAAc,EAEd,aAAa,EAGb,qBAAqB,EACrB,SAAS,EAIT,eAAe,EACf,MAAM,mBAAmB,CAAC;AAM3B,MAAM,WAAW,aAAa;IAC7B,+BAA+B;IAC/B,OAAO,EAAE,eAAe,CAAC;IAEzB,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,IAAI,CAAC;IAEhB,2CAA2C;IAC3C,MAAM,CAAC,EAAE,IAAI,CAAC;CACd;AAiCD;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAmC9D;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAWxD;AAMD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC9B,QAAQ,EAAE,IAAI,EAAE,EAChB,MAAM,EAAE,sBAAsB,EAAE,GAC9B,eAAe,CA8FjB;AAMD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,cAAc,GAAG,eAAe,CAuCzF;AA2FD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC9B,QAAQ,EAAE,IAAI,EAAE,EAChB,KAAK,EAAE,aAAa,EACpB,MAAM,CAAC,EAAE,MAAM,GACb,eAAe,CA2IjB;AAMD;;GAEG;AACH,wBAAgB,iBAAiB,CAChC,SAAS,EAAE,qBAAqB,EAChC,QAAQ,EAAE,IAAI,EAAE,EAChB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC,OAAO,CAYT;AAiDD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAgHhG;AAMD;;;GAGG;AACH,wBAAgB,OAAO,CACtB,QAAQ,EAAE,IAAI,EAAE,EAChB,KAAK,EAAE,YAAY,EACnB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpC,MAAM,CAAC,EAAE,MAAM,GACb,eAAe,CAuBjB;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAClC,QAAQ,EAAE,IAAI,EAAE,EAChB,KAAK,EAAE,YAAY,EACnB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpC,MAAM,CAAC,EAAE,MAAM,GACb,aAAa,CAIf"}
1
+ {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../src/lib/resolver.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAE7C,OAAO,KAAK,EACX,YAAY,EACZ,sBAAsB,EACtB,cAAc,EAEd,aAAa,EAGb,qBAAqB,EACrB,SAAS,EAIT,eAAe,EACf,MAAM,mBAAmB,CAAC;AAM3B,MAAM,WAAW,aAAa;IAC7B,+BAA+B;IAC/B,OAAO,EAAE,eAAe,CAAC;IAEzB,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,IAAI,CAAC;IAEhB,2CAA2C;IAC3C,MAAM,CAAC,EAAE,IAAI,CAAC;CACd;AAiCD;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAmC9D;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAWxD;AAMD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC9B,QAAQ,EAAE,IAAI,EAAE,EAChB,MAAM,EAAE,sBAAsB,EAAE,GAC9B,eAAe,CAqGjB;AAMD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,cAAc,GAAG,eAAe,CAuCzF;AA2FD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC9B,QAAQ,EAAE,IAAI,EAAE,EAChB,KAAK,EAAE,aAAa,EACpB,MAAM,CAAC,EAAE,MAAM,GACb,eAAe,CA2IjB;AAMD;;GAEG;AACH,wBAAgB,iBAAiB,CAChC,SAAS,EAAE,qBAAqB,EAChC,QAAQ,EAAE,IAAI,EAAE,EAChB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC,OAAO,CAYT;AAiDD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAgHhG;AAMD;;;GAGG;AACH,wBAAgB,OAAO,CACtB,QAAQ,EAAE,IAAI,EAAE,EAChB,KAAK,EAAE,YAAY,EACnB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpC,MAAM,CAAC,EAAE,MAAM,GACb,eAAe,CAuBjB;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAClC,QAAQ,EAAE,IAAI,EAAE,EAChB,KAAK,EAAE,YAAY,EACnB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpC,MAAM,CAAC,EAAE,MAAM,GACb,aAAa,CAIf"}
@@ -133,8 +133,15 @@ export function resolveSequence(children, fields) {
133
133
  : [result[field.name]];
134
134
  const tagNodes = [];
135
135
  for (const listNode of listNodes) {
136
- if (!listNode || listNode.type !== 'list')
136
+ if (!listNode)
137
137
  continue;
138
+ // BUG-030 — a mixed `list|tag:x` field also collects tags the author
139
+ // wrote. They are already tags: keep each in its place rather than
140
+ // dropping it when the field is replaced with the emitted nodes.
141
+ if (listNode.type !== 'list') {
142
+ tagNodes.push(listNode);
143
+ continue;
144
+ }
138
145
  const items = resolveListItems(listNode, field.itemModel);
139
146
  const listItems = listNode.children ?? [];
140
147
  for (let i = 0; i < items.length; i++) {
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../src/lib/resolver.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAEvC,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;AAgCxB;;;GAGG;AACH,SAAS,kBAAkB,CAAC,QAAgB;IAK3C,IAAI,QAA0B,CAAC;IAC/B,IAAI,MAAwB,CAAC;IAE7B,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QACtC,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,KAAK,MAAM,EAAE,CAAC;YAC1C,QAAQ,GAAG,CAAC,CAAC;YACb,OAAO,KAAK,CAAC;QACd,CAAC;QACD,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,KAAK,IAAI,EAAE,CAAC;YACxC,MAAM,GAAG,CAAC,CAAC;YACX,OAAO,KAAK,CAAC;QACd,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AACvC,CAAC;AAED,8EAA8E;AAC9E,gBAAgB;AAChB,8EAA8E;AAE9E;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CAAC,IAAU,EAAE,KAAa;IACpD,IAAI,KAAK,KAAK,KAAK;QAAE,OAAO,IAAI,CAAC;IAEjC,2DAA2D;IAC3D,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED,YAAY;IACZ,IAAI,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAClC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3C,OAAO,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,KAAK,KAAK,KAAK,CAAC;IACpE,CAAC;IAED,gCAAgC;IAChC,IAAI,KAAK,KAAK,cAAc,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,CAAC;IAClE,CAAC;IACD,IAAI,KAAK,KAAK,gBAAgB,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,CAAC;IAClE,CAAC;IAED,WAAW;IACX,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC,IAAI,KAAK,KAAK,IAAK,IAAY,CAAC,GAAG,KAAK,OAAO,CAAC;IAC7D,CAAC;IAED,6EAA6E;IAC7E,yEAAyE;IACzE,+EAA+E;IAC/E,IAAI,KAAK,KAAK,OAAO;QAAE,OAAO,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,gBAAgB,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;IAEvF,oBAAoB;IACpB,OAAO,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC;AAC5B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAU;IAC1C,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW;QAAE,OAAO,IAAI,CAAC;IAC3C,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CACtD,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAC9C,CAAC;IACF,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,CACnC,CAAC,CAAC,EAAE,EAAE,CACL,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,UAAU,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;QACzE,CAAC,CAAC,IAAI,KAAK,WAAW,CACvB,CAAC;IACF,OAAO,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACzF,CAAC;AAED,8EAA8E;AAC9E,oBAAoB;AACpB,8EAA8E;AAE9E;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAC9B,QAAgB,EAChB,MAAgC;IAEhC,MAAM,MAAM,GAAoB,EAAE,CAAC;IACnC,IAAI,UAAU,GAAG,CAAC,CAAC;IAEnB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC5B,IAAI,UAAU,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;YACnC,SAAS;QACV,CAAC;QAED,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;QAEnC,IAAI,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YACrC,oEAAoE;YACpE,uEAAuE;YACvE,uEAAuE;YACvE,gCAAgC;YAChC,MAAM,WAAW,GAChB,KAAK,CAAC,KAAK,KAAK,OAAO;gBACtB,CAAC,CAAC,CAAC,CAAO,EAAQ,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC7C,CAAC,CAAC,CAAC,CAAO,EAAQ,EAAE,CAAC,CAAC,CAAC;YACzB,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBAClB,MAAM,SAAS,GAAW,EAAE,CAAC;gBAC7B,OAAO,UAAU,GAAG,QAAQ,CAAC,MAAM,IAAI,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;oBACvF,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;oBAClD,UAAU,EAAE,CAAC;gBACd,CAAC;gBACD,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC;YAChC,CAAC;iBAAM,CAAC;gBACP,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;gBACxC,UAAU,EAAE,CAAC;YACd,CAAC;YAED,+DAA+D;YAC/D,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;gBACrB,IAAK,KAAa,CAAC,OAAO,EAAE,CAAC;oBAC5B,sDAAsD;oBACtD,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM;wBAC7B,CAAC,CAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAY;wBAChC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAS,CAAC,CAAC;oBAChC,MAAM,QAAQ,GAAW,EAAE,CAAC;oBAC5B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;wBAClC,IAAI,CAAC,QAAQ,IAAK,QAAgB,CAAC,IAAI,KAAK,MAAM;4BAAE,SAAS;wBAC7D,MAAM,KAAK,GAAG,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;wBAC1D,MAAM,SAAS,GAAI,QAAiB,CAAC,QAAQ,IAAI,EAAE,CAAC;wBACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;4BACvC,MAAM,KAAK,GAAwB,EAAE,CAAC;4BACtC,MAAM,SAAS,GAAI,KAAa,CAAC,cAAoD,CAAC;4BACtF,IAAI,SAAS,EAAE,CAAC;gCACf,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;oCACpD,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;wCACzB,4CAA4C;wCAC5C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;wCACtC,KAAK,CAAC,GAAG,CAAC;4CACT,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC;oCAChF,CAAC;yCAAM,CAAC;wCACP,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;oCAClB,CAAC;gCACF,CAAC;4BACF,CAAC;4BACD,wEAAwE;4BACxE,MAAM,YAAY,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;4BAC5D,QAAQ,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,YAAY,EAAG,KAAa,CAAC,OAAO,CAAC,CAAC,CAAC;wBACjF,CAAC;oBACF,CAAC;oBACD,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC;gBAC/B,CAAC;qBAAM,CAAC;oBACP,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAChC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;wBACzB,oEAAoE;wBACpE,kEAAkE;wBAClE,gEAAgE;wBAChE,iEAAiE;wBACjE,iEAAiE;wBACjE,qCAAqC;wBACrC,MAAM,KAAK,GAA8B,EAAE,CAAC;wBAC5C,KAAK,MAAM,CAAC,IAAI,IAAc,EAAE,CAAC;4BAChC,IAAI,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAK,CAAU,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gCAC/D,KAAK,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAS,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;4BAC7D,CAAC;wBACF,CAAC;wBACD,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,MAAM,CAAC,GAAG,KAAK,CAAC;oBACrC,CAAC;yBAAM,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,MAAM,IAAK,IAAY,EAAE,CAAC;wBACxE,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,MAAM,CAAC,GAAG,gBAAgB,CAAC,IAAY,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;oBAC/E,CAAC;gBACF,CAAC;YACF,CAAC;QACF,CAAC;aAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC5B,2DAA2D;YAC3D,UAAU,EAAE,CAAC;QACd,CAAC;QACD,2EAA2E;IAC5E,CAAC;IAED,OAAO,MAAM,CAAC;AACf,CAAC;AAED,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAgB,EAAE,KAAqB;IACvE,+CAA+C;IAC/C,MAAM,MAAM,GAAa,CAAC,EAAE,CAAC,CAAC;IAE9B,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC9B,IAAI,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YACzC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC;aAAM,CAAC;YACP,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC;IACF,CAAC;IAED,IAAI,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QAC3C,OAAO;YACN,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,SAAU,CAAC,CAAC;SAC9D,CAAC;IACH,CAAC;IAED,qEAAqE;IACrE,0EAA0E;IAC1E,oEAAoE;IACpE,oEAAoE;IACpE,2DAA2D;IAC3D,MAAM,MAAM,GAAoB,EAAE,CAAC;IACnC,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QACjB,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACtF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,KAAa,CAAC;YAClB,IAAI,UAAU,IAAI,CAAC,EAAE,CAAC;gBACrB,KAAK,GAAG,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,CAAC;iBAAM,CAAC;gBACP,KAAK,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5C,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACzD,CAAC;IACF,CAAC;IAED,OAAO,MAAM,CAAC;AACf,CAAC;AAED,8EAA8E;AAC9E,oBAAoB;AACpB,8EAA8E;AAE9E,0EAA0E;AAC1E,SAAS,kBAAkB,CAAC,WAAiB;IAC5C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC;QACxC,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC;YACxD,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;IACF,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACxB,CAAC;AAED;;;GAGG;AACH,SAAS,mBAAmB,CAAC,IAAY,EAAE,OAAuB;IACjE,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,IAAI,SAAS,GAAG,IAAI,CAAC;IAErB,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACpC,IAAI,KAAK,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;YACnC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;YACtC,SAAS,GAAG,EAAE,CAAC;QAChB,CAAC;aAAM,CAAC;YACP,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC7C,IAAI,KAAK,EAAE,CAAC;gBACX,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBACnD,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAC9C,CAAC;iBAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;gBAC5B,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;YACvC,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO,MAAM,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH;+DAC+D;AAC/D,SAAS,gBAAgB,CAAC,IAAY;IACrC,OAAO,IAAI;SACT,WAAW,EAAE;SACb,IAAI,EAAE;SACN,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;SACxB,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC;SACvB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;SACnB,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,iBAAiB,CACzB,WAAmB,EACnB,aAAqD,EACrD,MAAe;IAEf,MAAM,UAAU,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;IACpD,+EAA+E;IAC/E,4EAA4E;IAC5E,MAAM,gBAAgB,GAAG,MAAM;QAC9B,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpF,CAAC,CAAC,EAAE,CAAC;IAEN,KAAK,MAAM,CAAC,aAAa,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;QACzE,IAAI,aAAa,CAAC,WAAW,EAAE,KAAK,UAAU,EAAE,CAAC;YAChD,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC;QACtC,CAAC;QACD,IAAI,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,EAAE,CAAC;YACnE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC;QACtC,CAAC;QACD,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC;YAC5B,KAAK,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;gBACpC,IAAI,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,EAAE,CAAC;oBAC9E,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC;gBACtC,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO,SAAS,CAAC;AAClB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAC9B,QAAgB,EAChB,KAAoB,EACpB,MAAe;IAEf,6BAA6B;IAC7B,MAAM,WAAW,GAAG,KAAK,CAAC,cAAc,CAAC;IACzC,IAAI,KAAyB,CAAC;IAE9B,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/B,KAAK,GAAG,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACjD,CAAC;SAAM,CAAC;QACP,2DAA2D;QAC3D,sEAAsE;QACtE,oEAAoE;QACpE,kEAAkE;QAClE,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;QAC9D,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAC1B,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,KAAK,CAAC;YACjD,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,KAAK,CAAC;YAClD,IAAI,UAAU,KAAK,SAAS,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW,GAAG,UAAU,EAAE,CAAC;gBACvF,MAAM,kBAAkB,GAAG,QAAQ,CAAC,MAAM,CACzC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,KAAK,KAAK,WAAW,CAC1C,CAAC,MAAM,CAAC;gBACT,KAAK,GAAG,kBAAkB,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC;YAC5D,CAAC;iBAAM,CAAC;gBACP,KAAK,GAAG,UAAU,CAAC;YACpB,CAAC;QACF,CAAC;aAAM,CAAC;YACP,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC;QACxC,CAAC;IACF,CAAC;IAED,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACzB,oBAAoB;QACpB,IAAI,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAC5C,4CAA4C;YAC5C,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACvE,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,IAAI,CAC3B,KAAK,EACL,EAAE,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,EAC/C,QAAQ,EACR,KAAK,CAAC,OAAO,CACb,CAAC;YACF,OAAO,EAAE,GAAG,QAAQ,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7C,CAAC;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7E,OAAO,EAAE,GAAG,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IACtC,CAAC;IAED,qCAAqC;IACrC,MAAM,aAAa,GAAW,EAAE,CAAC;IACjC,MAAM,WAAW,GAA0C,EAAE,CAAC;IAC9D,IAAI,OAAO,GAA+C,IAAI,CAAC;IAE/D,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC9B,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC;YACnE,IAAI,OAAO;gBAAE,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvC,OAAO,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QAC5C,CAAC;aAAM,IAAI,OAAO,EAAE,CAAC;YACpB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;aAAM,CAAC;YACP,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC;IACF,CAAC;IACD,IAAI,OAAO;QAAE,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEvC,mFAAmF;IACnF,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QACxE,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,IAAI,CAC3B,KAAK,EACL,EAAE,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,EAC/C,QAAQ,EACR,KAAK,CAAC,OAAO,CACb,CAAC;QACF,OAAO,EAAE,GAAG,QAAQ,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC7C,CAAC;IAED,6BAA6B;IAC7B,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAElF,0BAA0B;IAC1B,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QACnB,6CAA6C;QAC7C,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YAC5C,MAAM,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YAC5D,MAAM,SAAS,GAAG,KAAK,CAAC,cAAc;gBACrC,CAAC,CAAC,mBAAmB,CAAC,WAAW,EAAE,KAAK,CAAC,cAAc,CAAC;gBACxD,CAAC,CAAC,EAAE,CAAC;YAEN,MAAM,KAAK,GAAwB,EAAE,CAAC;YACtC,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;gBAC1B,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC;oBAC/D,IAAI,GAAG,KAAK,UAAU,EAAE,CAAC;wBACxB,KAAK,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;oBAC1B,CAAC;yBAAM,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;wBAChC,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;oBAC5C,CAAC;yBAAM,CAAC;wBACP,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;oBAClB,CAAC;gBACF,CAAC;YACF,CAAC;YAED,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,OAAQ,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QAEH,OAAO,EAAE,GAAG,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;IAC5C,CAAC;IAED,2CAA2C;IAC3C,MAAM,gBAAgB,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QACpD,MAAM,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC5D,MAAM,SAAS,GAAG,KAAK,CAAC,cAAc;YACrC,CAAC,CAAC,mBAAmB,CAAC,WAAW,EAAE,KAAK,CAAC,cAAc,CAAC;YACxD,CAAC,CAAC,EAAE,CAAC;QAEN,2EAA2E;QAC3E,MAAM,UAAU,GAAG,KAAK,CAAC,aAAa;YACrC,CAAC,CAAC,iBAAiB,CAAC,WAAW,EAAE,KAAK,CAAC,aAAa,EAAE,MAAM,CAAC;YAC7D,CAAC,CAAC,SAAS,CAAC;QACb,MAAM,YAAY,GAAG,UAAU,EAAE,UAAU,CAAC,KAAK,IAAI,KAAK,CAAC,YAAY,CAAC;QACxE,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAEzD,oEAAoE;QACpE,2EAA2E;QAC3E,gFAAgF;QAChF,MAAM,aAAa,GAAG,UAAU;YAC/B,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,aAAa,IAAI,gBAAgB,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;YACrF,CAAC,CAAC,SAAS,CAAC;QAEb,OAAO;YACN,QAAQ,EAAE,WAAW;YACrB,YAAY,EAAE,OAAO,CAAC,WAAW;YACjC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3D,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;YAC9E,GAAG,YAAY;SACf,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,GAAG,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC;AACpD,CAAC;AAED,8EAA8E;AAC9E,yBAAyB;AACzB,8EAA8E;AAE9E;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAChC,SAAgC,EAChC,QAAgB,EAChB,UAAmC;IAEnC,IAAI,UAAU,IAAI,SAAS,EAAE,CAAC;QAC7B,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjE,CAAC;IACD,IAAI,IAAI,IAAI,SAAS,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QAC5D,OAAO,SAAS,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IACD,IAAI,QAAQ,IAAI,SAAS,EAAE,CAAC;QAC3B,OAAO,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,IAAI,IAAI,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;IAC1F,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AAED;;GAEG;AACH,SAAS,aAAa,CAAC,KAAmB;IACzC,OAAO,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO,CAAE,KAAiC,CAAC,IAAI,CAAC,CAAC;AAClF,CAAC;AAED,8EAA8E;AAC9E,6BAA6B;AAC7B,8EAA8E;AAE9E,mEAAmE;AACnE,SAAS,eAAe,CAAC,CAAO;IAC/B,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,CAAC,CAAC,UAAU,EAAE,OAAO,IAAI,EAAE,CAAC;IAC1D,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,KAAK,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QAC9B,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC;YACxD,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;IACF,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACvB,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe,CAAC,CAAO,EAAE,SAAiB;IAClD,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS;QAAE,OAAO,CAAC,CAAC;IAEnC,6CAA6C;IAC7C,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;QAC/C,KAAK,MAAM,KAAK,IAAI,CAAC,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;YACtC,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;gBAAE,OAAO,KAAK,CAAC;QAC5C,CAAC;IACF,CAAC;IAED,0CAA0C;IAC1C,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,SAAS,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;QACtE,KAAK,MAAM,KAAK,IAAI,CAAC,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;YACtC,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;gBAAE,OAAO,KAAK,CAAC;QAC5C,CAAC;IACF,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAc,EAAE,SAAoB;IACpE,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,IAAI,EAAE,CAAC;IAE1C,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;QACjC,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,mEAAmE;QACnE,8DAA8D;QAC9D,mEAAmE;QACnE,MAAM,cAAc,GAAW,EAAE,CAAC;QAClC,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;YAC7C,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC7B,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC;YAChD,CAAC;iBAAM,CAAC;gBACP,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC5B,CAAC;QACF,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;QAEnC,oCAAoC;QACpC,oEAAoE;QACpE,qEAAqE;QACrE,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;QAEvC,KAAK,MAAM,KAAK,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;YACtC,IAAI,KAAK,CAAC,KAAK,KAAK,MAAM;gBAAE,SAAS,CAAC,oBAAoB;YAE1D,sCAAsC;YACtC,IAAI,KAAK,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;gBAC5B,MAAM,GAAG,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;gBACtF,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;oBACd,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBAClB,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,SAAS;wBACnC,CAAC,CAAC,gBAAgB,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;wBACxD,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;gBACxB,CAAC;gBACD,SAAS;YACV,CAAC;YAED,qDAAqD;YACrD,IAAI,KAAK,CAAC,KAAK,KAAK,WAAW,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBACjD,MAAM,UAAU,GAAW,EAAE,CAAC;gBAC9B,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;oBAC/B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;wBAChD,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;wBAChB,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBACpB,CAAC;gBACF,CAAC,CAAC,CAAC;gBACH,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;oBAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC;gBAC3D,SAAS;YACV,CAAC;YAED,uDAAuD;YACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAChD,6DAA6D;gBAC7D,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;oBAAE,SAAS;gBAC9B,IAAI,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,KAAK,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI;oBAAE,SAAS;gBAC5E,MAAM,KAAK,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;gBAEhC,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;gBACpD,IAAI,OAAO,EAAE,CAAC;oBACb,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;wBACvB,8BAA8B;wBAC9B,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oBACjB,CAAC;yBAAM,CAAC;wBACP,sCAAsC;wBACtC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oBACrB,CAAC;oBACD,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;wBACnB,yEAAyE;wBACzE,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;wBAC3E,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBACzD,CAAC;yBAAM,CAAC;wBACP,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;oBAC/C,CAAC;oBACD,MAAM;gBACP,CAAC;YACF,CAAC;QACF,CAAC;QAED,wDAAwD;QACxD,KAAK,MAAM,GAAG,IAAI,YAAY;YAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAElD,sDAAsD;QACtD,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC;QACtE,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,aAAa,GAAG,cAAc;iBAClC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;iBAClC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC;iBAC1D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,OAAO,IAAI,EAAE,CAAC;iBACvC,IAAI,CAAC,EAAE,CAAC;iBACR,IAAI,EAAE,CAAC;YAET,IAAI,aAAa,GAAG,aAAa,CAAC;YAElC,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;gBAChC,IAAI,KAAK,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;oBACnC,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC;oBACrC,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;wBAChC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;oBAC9B,CAAC;gBACF,CAAC;qBAAM,IAAI,KAAK,CAAC,OAAO,YAAY,MAAM,EAAE,CAAC;oBAC5C,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBACjD,IAAI,KAAK,EAAE,CAAC;wBACX,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;wBAC1C,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;oBAC1D,CAAC;gBACF,CAAC;YACF,CAAC;QACF,CAAC;QAED,OAAO,MAAM,CAAC;IACf,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E;;;GAGG;AACH,MAAM,UAAU,OAAO,CACtB,QAAgB,EAChB,KAAmB,EACnB,UAAoC,EACpC,MAAe;IAEf,4BAA4B;IAC5B,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;YACjC,IAAI,iBAAiB,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC;gBACrE,OAAO,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;YAC5D,CAAC;QACF,CAAC;QACD,OAAO,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAC7D,CAAC;IAED,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,UAAU;YACd,OAAO,eAAe,CAAC,QAAQ,EAAG,KAAuB,CAAC,MAAM,CAAC,CAAC;QACnE,KAAK,UAAU;YACd,OAAO,eAAe,CAAC,QAAQ,EAAE,KAAsB,EAAE,MAAM,CAAC,CAAC;QAClE,KAAK,WAAW;YACf,OAAO,gBAAgB,CAAC,QAAQ,EAAE,KAAuB,CAAC,CAAC;QAC5D,KAAK,QAAQ;YACZ,OAAO,EAAE,QAAQ,EAAG,KAAqB,CAAC,eAAe,CAAC,QAAQ,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC;QACzF;YACC,OAAO,EAAE,CAAC;IACZ,CAAC;AACF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAClC,QAAgB,EAChB,KAAmB,EACnB,UAAoC,EACpC,MAAe;IAEf,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACpE,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAC7D,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AACtC,CAAC"}
1
+ {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../src/lib/resolver.ts"],"names":[],"mappings":"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"}