@refrakt-md/runes 0.37.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 (143) 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/index.d.ts +3 -1
  5. package/dist/index.d.ts.map +1 -1
  6. package/dist/index.js +1 -1
  7. package/dist/index.js.map +1 -1
  8. package/dist/lib/component.d.ts +8 -11
  9. package/dist/lib/component.d.ts.map +1 -1
  10. package/dist/lib/component.js +17 -52
  11. package/dist/lib/component.js.map +1 -1
  12. package/dist/lib/field-metas.d.ts +34 -0
  13. package/dist/lib/field-metas.d.ts.map +1 -0
  14. package/dist/lib/field-metas.js +45 -0
  15. package/dist/lib/field-metas.js.map +1 -0
  16. package/dist/lib/index.d.ts +17 -0
  17. package/dist/lib/index.d.ts.map +1 -1
  18. package/dist/lib/index.js +22 -0
  19. package/dist/lib/index.js.map +1 -1
  20. package/dist/lib/node.d.ts +22 -0
  21. package/dist/lib/node.d.ts.map +1 -1
  22. package/dist/lib/node.js +32 -0
  23. package/dist/lib/node.js.map +1 -1
  24. package/dist/lib/resolver.d.ts.map +1 -1
  25. package/dist/lib/resolver.js +8 -1
  26. package/dist/lib/resolver.js.map +1 -1
  27. package/dist/props.d.ts +0 -2
  28. package/dist/props.d.ts.map +1 -1
  29. package/dist/reference.d.ts +19 -0
  30. package/dist/reference.d.ts.map +1 -1
  31. package/dist/reference.js +82 -1
  32. package/dist/reference.js.map +1 -1
  33. package/dist/tags/accordion.d.ts.map +1 -1
  34. package/dist/tags/accordion.js +4 -7
  35. package/dist/tags/accordion.js.map +1 -1
  36. package/dist/tags/annotate.d.ts.map +1 -1
  37. package/dist/tags/annotate.js +6 -13
  38. package/dist/tags/annotate.js.map +1 -1
  39. package/dist/tags/bar.d.ts.map +1 -1
  40. package/dist/tags/bar.js +2 -5
  41. package/dist/tags/bar.js.map +1 -1
  42. package/dist/tags/blog.d.ts.map +1 -1
  43. package/dist/tags/blog.js +1 -9
  44. package/dist/tags/blog.js.map +1 -1
  45. package/dist/tags/breadcrumb.d.ts.map +1 -1
  46. package/dist/tags/breadcrumb.js +4 -5
  47. package/dist/tags/breadcrumb.js.map +1 -1
  48. package/dist/tags/budget.d.ts.map +1 -1
  49. package/dist/tags/budget.js +2 -10
  50. package/dist/tags/budget.js.map +1 -1
  51. package/dist/tags/card.d.ts.map +1 -1
  52. package/dist/tags/card.js +7 -14
  53. package/dist/tags/card.js.map +1 -1
  54. package/dist/tags/chart.d.ts.map +1 -1
  55. package/dist/tags/chart.js +5 -8
  56. package/dist/tags/chart.js.map +1 -1
  57. package/dist/tags/codegroup.d.ts.map +1 -1
  58. package/dist/tags/codegroup.js +0 -2
  59. package/dist/tags/codegroup.js.map +1 -1
  60. package/dist/tags/common.d.ts.map +1 -1
  61. package/dist/tags/common.js +2 -5
  62. package/dist/tags/common.js.map +1 -1
  63. package/dist/tags/compare.d.ts.map +1 -1
  64. package/dist/tags/compare.js +4 -8
  65. package/dist/tags/compare.js.map +1 -1
  66. package/dist/tags/conversation.d.ts.map +1 -1
  67. package/dist/tags/conversation.js +4 -7
  68. package/dist/tags/conversation.js.map +1 -1
  69. package/dist/tags/datatable.d.ts.map +1 -1
  70. package/dist/tags/datatable.js +4 -8
  71. package/dist/tags/datatable.js.map +1 -1
  72. package/dist/tags/details.d.ts.map +1 -1
  73. package/dist/tags/details.js +3 -7
  74. package/dist/tags/details.js.map +1 -1
  75. package/dist/tags/diagram.js +2 -2
  76. package/dist/tags/diagram.js.map +1 -1
  77. package/dist/tags/diff.js +1 -1
  78. package/dist/tags/diff.js.map +1 -1
  79. package/dist/tags/drawer.d.ts.map +1 -1
  80. package/dist/tags/drawer.js +4 -12
  81. package/dist/tags/drawer.js.map +1 -1
  82. package/dist/tags/embed.d.ts.map +1 -1
  83. package/dist/tags/embed.js +4 -5
  84. package/dist/tags/embed.js.map +1 -1
  85. package/dist/tags/figure.d.ts.map +1 -1
  86. package/dist/tags/figure.js +6 -14
  87. package/dist/tags/figure.js.map +1 -1
  88. package/dist/tags/form.d.ts.map +1 -1
  89. package/dist/tags/form.js +3 -18
  90. package/dist/tags/form.js.map +1 -1
  91. package/dist/tags/gallery.d.ts.map +1 -1
  92. package/dist/tags/gallery.js +6 -11
  93. package/dist/tags/gallery.js.map +1 -1
  94. package/dist/tags/grid.d.ts.map +1 -1
  95. package/dist/tags/grid.js +7 -17
  96. package/dist/tags/grid.js.map +1 -1
  97. package/dist/tags/hint.d.ts.map +1 -1
  98. package/dist/tags/hint.js +4 -8
  99. package/dist/tags/hint.js.map +1 -1
  100. package/dist/tags/juxtapose.js +2 -2
  101. package/dist/tags/juxtapose.js.map +1 -1
  102. package/dist/tags/layout.d.ts.map +1 -1
  103. package/dist/tags/layout.js +2 -5
  104. package/dist/tags/layout.js.map +1 -1
  105. package/dist/tags/mediatext.d.ts.map +1 -1
  106. package/dist/tags/mediatext.js +5 -13
  107. package/dist/tags/mediatext.js.map +1 -1
  108. package/dist/tags/nav.d.ts.map +1 -1
  109. package/dist/tags/nav.js +2 -5
  110. package/dist/tags/nav.js.map +1 -1
  111. package/dist/tags/progress.d.ts.map +1 -1
  112. package/dist/tags/progress.js +4 -8
  113. package/dist/tags/progress.js.map +1 -1
  114. package/dist/tags/pullquote.d.ts.map +1 -1
  115. package/dist/tags/pullquote.js +8 -15
  116. package/dist/tags/pullquote.js.map +1 -1
  117. package/dist/tags/region.d.ts.map +1 -1
  118. package/dist/tags/region.js +2 -5
  119. package/dist/tags/region.js.map +1 -1
  120. package/dist/tags/reveal.d.ts.map +1 -1
  121. package/dist/tags/reveal.js +4 -7
  122. package/dist/tags/reveal.js.map +1 -1
  123. package/dist/tags/section.d.ts.map +1 -1
  124. package/dist/tags/section.js +3 -3
  125. package/dist/tags/section.js.map +1 -1
  126. package/dist/tags/showcase.d.ts.map +1 -1
  127. package/dist/tags/showcase.js +4 -11
  128. package/dist/tags/showcase.js.map +1 -1
  129. package/dist/tags/sidenote.d.ts.map +1 -1
  130. package/dist/tags/sidenote.js +7 -12
  131. package/dist/tags/sidenote.js.map +1 -1
  132. package/dist/tags/tabs.d.ts.map +1 -1
  133. package/dist/tags/tabs.js +3 -6
  134. package/dist/tags/tabs.js.map +1 -1
  135. package/dist/tags/textblock.d.ts.map +1 -1
  136. package/dist/tags/textblock.js +7 -19
  137. package/dist/tags/textblock.js.map +1 -1
  138. package/dist/tags/tint.d.ts.map +1 -1
  139. package/dist/tags/tint.js +17 -29
  140. package/dist/tags/tint.js.map +1 -1
  141. package/dist/tags/toc.js +1 -1
  142. package/dist/tags/toc.js.map +1 -1
  143. package/package.json +3 -3
@@ -9,32 +9,29 @@ export interface TransformResult {
9
9
  class?: string;
10
10
  /** Structural property name — becomes data-field on the wrapper (BEM/theming) */
11
11
  property?: string;
12
- properties?: Record<string, RenderableNodeCursor<Tag> | Tag | Tag[] | undefined>;
13
- refs?: Record<string, RenderableNodeCursor<Tag> | Tag | Tag[] | undefined>;
14
- /** Schema.org property mappings — sets RDFa `property` attribute on referenced tags */
15
- schema?: Record<string, RenderableNodeCursor<Tag> | Tag | Tag[] | undefined>;
16
- /** Override the schema.org typeof attribute */
17
- typeof?: string;
12
+ /** A `null` or `undefined` slot value is skipped, so pass optional tags directly. */
13
+ properties?: Record<string, RenderableNodeCursor<Tag> | Tag | Tag[] | null | undefined>;
14
+ refs?: Record<string, RenderableNodeCursor<Tag> | Tag | Tag[] | null | undefined>;
18
15
  children: RenderableTreeNodes;
19
16
  }
20
17
  /** Rune identity + transform result — single-object form for createComponentRenderable */
21
18
  export interface InlineTransformResult extends TransformResult {
22
19
  /** Rune name in kebab-case (e.g. 'hint', 'accordion-item') */
23
20
  rune: string;
24
- /** Schema.org type (e.g. 'FAQPage') — only needed for runes with structured data */
25
- schemaOrgType?: string;
26
21
  }
27
22
  /**
28
23
  * Create a renderable tag with rune identity and structural metadata.
29
24
  *
30
- * Pass a single object with `rune` (kebab-case name), the tag spec, and
31
- * optional `schemaOrgType` for Schema.org structured data.
25
+ * Pass a single object with `rune` (kebab-case name) and the tag spec.
26
+ * Structured data is not set here: a rune declares its schema.org row on
27
+ * `createContentModelSchema({ schema })`, and the table applier stamps
28
+ * `typeof` / `property` (SPEC-130).
32
29
  */
33
30
  export declare function createComponentRenderable(result: InlineTransformResult): Tag;
34
31
  /**
35
32
  * Remove the schema.org channel from a subtree (WORK-552).
36
33
  *
37
- * `typeof` and `property` are the whole channel: `createComponentRenderable`
34
+ * `typeof` and `property` are the whole channel: the schema-table applier
38
35
  * stamps them, and `collectJsonLd` *derives* the JSON-LD by walking the tree for
39
36
  * `typeof`. Deleting both therefore removes the RDFa and the JSON-LD together —
40
37
  * there is no third place structured data hides.
@@ -1 +1 @@
1
- {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../src/lib/component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAElD,OAAO,KAAK,EAAE,GAAG,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAEvD,OAAO,EAAE,WAAW,EAAE,CAAC;AAEvB,MAAM,WAAW,eAAe;IAC/B,GAAG,EAAE,QAAQ,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;IACjF,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;IAC3E,uFAAuF;IACvF,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;IAC7E,+CAA+C;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,mBAAmB,CAAC;CAC9B;AAED,0FAA0F;AAC1F,MAAM,WAAW,qBAAsB,SAAQ,eAAe;IAC7D,8DAA8D;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb,oFAAoF;IACpF,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,qBAAqB,GAAG,GAAG,CA6G5E;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAc7C"}
1
+ {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../src/lib/component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAElD,OAAO,KAAK,EAAE,GAAG,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAEvD,OAAO,EAAE,WAAW,EAAE,CAAC;AAEvB,MAAM,WAAW,eAAe;IAC/B,GAAG,EAAE,QAAQ,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qFAAqF;IACrF,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;IACxF,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;IAClF,QAAQ,EAAE,mBAAmB,CAAC;CAC9B;AAED,0FAA0F;AAC1F,MAAM,WAAW,qBAAsB,SAAQ,eAAe;IAC7D,8DAA8D;IAC9D,IAAI,EAAE,MAAM,CAAC;CACb;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,qBAAqB,GAAG,GAAG,CAwE5E;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAc7C"}
@@ -5,12 +5,13 @@ export { toKebabCase };
5
5
  /**
6
6
  * Create a renderable tag with rune identity and structural metadata.
7
7
  *
8
- * Pass a single object with `rune` (kebab-case name), the tag spec, and
9
- * optional `schemaOrgType` for Schema.org structured data.
8
+ * Pass a single object with `rune` (kebab-case name) and the tag spec.
9
+ * Structured data is not set here: a rune declares its schema.org row on
10
+ * `createContentModelSchema({ schema })`, and the table applier stamps
11
+ * `typeof` / `property` (SPEC-130).
10
12
  */
11
13
  export function createComponentRenderable(result) {
12
14
  const runeName = result.rune;
13
- const schemaOrgType = result.typeof ?? result.schemaOrgType;
14
15
  // Validate that property and ref names don't collide (ADR-008: flat namespace)
15
16
  if (result.properties && result.refs) {
16
17
  const propKeys = new Set(Object.keys(result.properties));
@@ -20,44 +21,28 @@ export function createComponentRenderable(result) {
20
21
  `Properties and refs share a flat namespace (ADR-008) and must have unique names.`);
21
22
  }
22
23
  }
23
- // SPEC-082 (WORK-329): the schema.org SEO channel is independent of the data
24
- // channel. Collect the `schema`-mapped tags up front so the properties loop
25
- // can distinguish an SEO carrier from a pure data carrier.
26
- const schemaTags = new Set();
27
- for (const v of Object.values(result.schema ?? {})) {
28
- if (v === undefined)
29
- continue;
30
- const tags = v instanceof RenderableNodeCursor ? v.nodes : Array.isArray(v) ? v : [v];
31
- for (const t of tags)
32
- schemaTags.add(t);
33
- }
34
24
  // Project scalar field values into the reserved `data-rune-fields` attribute
35
- // (the data channel). A meta that also carries schema.org `property=` is an
36
- // SEO carrier — it does NOT get `data-field` (data and SEO are separate
37
- // channels), but its value still lands in the bag. Pure-data metas keep
38
- // `data-field` (dropped by WORK-323). Content-marker properties (non-meta,
39
- // e.g. budget's `category`) get `data-field` but no field entry. Keys stay as
40
- // authored (camelCase, matching modifier names — no kebab transit).
25
+ // (the data channel). Every property tag gets `data-field`; a meta's content
26
+ // also lands in the bag. Content-marker properties (non-meta, e.g. budget's
27
+ // `category`) get `data-field` but no field entry. Keys stay as authored
28
+ // (camelCase, matching modifier names — no kebab transit).
41
29
  // SPEC-082 (WORK-331): the `data-rune-fields` bag is the sole field-data
42
- // representation. Collect the pure-data metas (those that got `data-field` and
43
- // aren't SEO carriers) so they can be dropped from the emitted children — the
44
- // value already lives in the bag.
30
+ // representation. Collect the data metas so they can be dropped from the
31
+ // emitted children — the value already lives in the bag. A meta with
32
+ // undefined content contributes no value and is not dropped.
45
33
  const fields = {};
46
34
  const pureDataMetas = new Set();
47
35
  for (const [k, v] of Object.entries(result.properties ?? {})) {
48
- if (v === undefined)
36
+ if (v == null)
49
37
  continue;
50
38
  const tags = v instanceof RenderableNodeCursor ? v.nodes : Array.isArray(v) ? v : [v];
51
39
  const values = [];
52
40
  tags.forEach((n) => {
53
41
  if (Markdoc.Tag.isTag(n)) {
54
- const isSeoMeta = n.name === 'meta' && schemaTags.has(n);
55
- if (!isSeoMeta)
56
- n.attributes['data-field'] = toKebabCase(k);
42
+ n.attributes['data-field'] = toKebabCase(k);
57
43
  if (n.name === 'meta' && n.attributes.content !== undefined) {
58
44
  values.push(n.attributes.content);
59
- if (!isSeoMeta)
60
- pureDataMetas.add(n);
45
+ pureDataMetas.add(n);
61
46
  }
62
47
  }
63
48
  });
@@ -67,7 +52,7 @@ export function createComponentRenderable(result) {
67
52
  fields[k] = values;
68
53
  }
69
54
  for (const [k, v] of Object.entries(result.refs || {})) {
70
- if (v === undefined)
55
+ if (v == null)
71
56
  continue;
72
57
  const tags = v instanceof RenderableNodeCursor ? v.nodes : Array.isArray(v) ? v : [v];
73
58
  tags.forEach((n) => {
@@ -76,31 +61,11 @@ export function createComponentRenderable(result) {
76
61
  }
77
62
  });
78
63
  }
79
- // Schema.org channel: stamp `property=` on SEO carriers (they render inline as
80
- // RDFa — Option B). Skip empty-content metas (skip-empties) — an empty SEO
81
- // value is noise in both HTML and JSON-LD; drop them from the output too.
82
- const emptySeoMetas = new Set();
83
- for (const [k, v] of Object.entries(result.schema ?? {})) {
84
- if (v === undefined)
85
- continue;
86
- const tags = v instanceof RenderableNodeCursor ? v.nodes : Array.isArray(v) ? v : [v];
87
- tags.forEach((n) => {
88
- if (Markdoc.Tag.isTag(n)) {
89
- if (n.name === 'meta' &&
90
- (n.attributes.content === undefined || n.attributes.content === '')) {
91
- emptySeoMetas.add(n);
92
- return;
93
- }
94
- n.attributes['property'] = k;
95
- }
96
- });
97
- }
98
- const childArray = (Array.isArray(result.children) ? result.children : [result.children]).filter((c) => !emptySeoMetas.has(c) && !pureDataMetas.has(c));
64
+ const childArray = (Array.isArray(result.children) ? result.children : [result.children]).filter((c) => !pureDataMetas.has(c));
99
65
  const tag = new Markdoc.Tag(result.tag, {
100
66
  id: result.id,
101
67
  'data-field': result.property ? toKebabCase(result.property) : result.property,
102
68
  'data-rune': runeName,
103
- typeof: schemaOrgType,
104
69
  class: result.class,
105
70
  ...(Object.keys(fields).length > 0 ? { 'data-rune-fields': JSON.stringify(fields) } : {}),
106
71
  }, childArray);
@@ -109,7 +74,7 @@ export function createComponentRenderable(result) {
109
74
  /**
110
75
  * Remove the schema.org channel from a subtree (WORK-552).
111
76
  *
112
- * `typeof` and `property` are the whole channel: `createComponentRenderable`
77
+ * `typeof` and `property` are the whole channel: the schema-table applier
113
78
  * stamps them, and `collectJsonLd` *derives* the JSON-LD by walking the tree for
114
79
  * `typeof`. Deleting both therefore removes the RDFa and the JSON-LD together —
115
80
  * there is no third place structured data hides.
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../../src/lib/component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../src/lib/component.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ import type { Config, Tag } from '@markdoc/markdoc';
2
+ /** A value source: an attribute of the rune, or a file variable (`config.variables.file`). */
3
+ export type FieldMetaSource = `attrs.${string}` | `file.${string}`;
4
+ /**
5
+ * One field: a bare string is the default for the attribute of the same name
6
+ * (`attrs[key] ?? default`); `{ from, default }` takes the first non-empty value
7
+ * among the listed sources, else the literal default.
8
+ */
9
+ export type FieldMetaEntry = string | {
10
+ from: FieldMetaSource[];
11
+ default: string;
12
+ };
13
+ /**
14
+ * A `fieldMetas` declaration. Plain data — no entry is a function — so a spec
15
+ * can cross a JSON boundary unchanged.
16
+ */
17
+ export type FieldMetaSpec = Record<string, FieldMetaEntry>;
18
+ /**
19
+ * Build a rune's property metas from a declaration, for use directly as
20
+ * `properties` on `createComponentRenderable`:
21
+ *
22
+ * ```ts
23
+ * properties: fieldMetas(attrs, config, {
24
+ * status: 'draft',
25
+ * created: { from: ['attrs.created', 'file.created'], default: '' },
26
+ * }),
27
+ * ```
28
+ *
29
+ * Keys come out in declaration order, which is the order of the
30
+ * `data-rune-fields` bag. For a meta that is conditional, or that must render
31
+ * outside `properties`, build the tag by hand — this covers the bulk case only.
32
+ */
33
+ export declare function fieldMetas(attrs: Record<string, unknown>, config: Config, spec: FieldMetaSpec): Record<string, Tag>;
34
+ //# sourceMappingURL=field-metas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"field-metas.d.ts","sourceRoot":"","sources":["../../src/lib/field-metas.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAEpD,8FAA8F;AAC9F,MAAM,MAAM,eAAe,GAAG,SAAS,MAAM,EAAE,GAAG,QAAQ,MAAM,EAAE,CAAC;AAEnE;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG;IAAE,IAAI,EAAE,eAAe,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnF;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;AAoB3D;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,UAAU,CACzB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,aAAa,GACjB,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAgBrB"}
@@ -0,0 +1,45 @@
1
+ import Markdoc from '@markdoc/markdoc';
2
+ const ROOTS = ['attrs', 'file'];
3
+ function readSource(source, attrs, file) {
4
+ const dot = source.indexOf('.');
5
+ const root = dot === -1 ? source : source.slice(0, dot);
6
+ const key = dot === -1 ? '' : source.slice(dot + 1);
7
+ if (!ROOTS.includes(root) || key === '') {
8
+ throw new Error(`fieldMetas: unknown source "${source}" — sources are "attrs.<name>" or "file.<name>".`);
9
+ }
10
+ return root === 'attrs' ? attrs[key] : file?.[key];
11
+ }
12
+ /**
13
+ * Build a rune's property metas from a declaration, for use directly as
14
+ * `properties` on `createComponentRenderable`:
15
+ *
16
+ * ```ts
17
+ * properties: fieldMetas(attrs, config, {
18
+ * status: 'draft',
19
+ * created: { from: ['attrs.created', 'file.created'], default: '' },
20
+ * }),
21
+ * ```
22
+ *
23
+ * Keys come out in declaration order, which is the order of the
24
+ * `data-rune-fields` bag. For a meta that is conditional, or that must render
25
+ * outside `properties`, build the tag by hand — this covers the bulk case only.
26
+ */
27
+ export function fieldMetas(attrs, config, spec) {
28
+ const file = config.variables?.file;
29
+ const out = {};
30
+ for (const [key, entry] of Object.entries(spec)) {
31
+ let content;
32
+ if (typeof entry === 'string') {
33
+ content = attrs[key] ?? entry;
34
+ }
35
+ else {
36
+ // Read every source before choosing, so a bad one is rejected even
37
+ // when an earlier source already has a value.
38
+ const values = entry.from.map((source) => readSource(source, attrs, file));
39
+ content = values.find((v) => v != null && v !== '') ?? entry.default;
40
+ }
41
+ out[key] = new Markdoc.Tag('meta', { content });
42
+ }
43
+ return out;
44
+ }
45
+ //# sourceMappingURL=field-metas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"field-metas.js","sourceRoot":"","sources":["../../src/lib/field-metas.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAmBvC,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE,MAAM,CAAU,CAAC;AAEzC,SAAS,UAAU,CAClB,MAAc,EACd,KAA8B,EAC9B,IAAyC;IAEzC,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAChC,MAAM,IAAI,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACxD,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;IACpD,IAAI,CAAE,KAA2B,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;QAChE,MAAM,IAAI,KAAK,CACd,+BAA+B,MAAM,kDAAkD,CACvF,CAAC;IACH,CAAC;IACD,OAAO,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC;AACpD,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,UAAU,CACzB,KAA8B,EAC9B,MAAc,EACd,IAAmB;IAEnB,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,EAAE,IAA2C,CAAC;IAC3E,MAAM,GAAG,GAAwB,EAAE,CAAC;IACpC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACjD,IAAI,OAAgB,CAAC;QACrB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC/B,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC;QAC/B,CAAC;aAAM,CAAC;YACP,mEAAmE;YACnE,8CAA8C;YAC9C,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;YAC3E,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC;QACtE,CAAC;QACD,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IACjD,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC"}
@@ -3,12 +3,17 @@ import Markdoc from '@markdoc/markdoc';
3
3
  import type { Config, Node, RenderableTreeNodes, Schema, SchemaAttribute } from '@markdoc/markdoc';
4
4
  import type { UniversalAttributePosture } from '../universal-attributes.js';
5
5
  export { createComponentRenderable, stripSchemaOrg } from './component.js';
6
+ import { RenderableNodeCursor } from './renderable.js';
6
7
  import type { SchemaTable } from './schema-table.js';
7
8
  export { applySchemaTable, validateSchemaTable, selectRow, findByName, SCHEMA_TYPE_EXPLICIT, } from './schema-table.js';
8
9
  export type { SchemaTable, SchemaRow, EntityRow, PropertyMap } from './schema-table.js';
9
10
  export type { InlineTransformResult } from './component.js';
10
11
  export { resolve, resolveSequence, resolveDelimited, resolveSections, resolveContentModel, resolveListItems, evaluateCondition, matchesType, } from './resolver.js';
11
12
  export { sanitizeSandboxContent } from './sanitize.js';
13
+ export { extractText, groupByHeading } from './node.js';
14
+ export type { GroupByHeadingHandlers } from './node.js';
15
+ export { fieldMetas } from './field-metas.js';
16
+ export type { FieldMetaSpec, FieldMetaEntry, FieldMetaSource } from './field-metas.js';
12
17
  /**
13
18
  * Maps a Markdoc Schema to its content model declaration.
14
19
  * Populated by `createContentModelSchema()` so consumers (editor, language server)
@@ -82,6 +87,18 @@ export declare function declareUniversalPosture(schema: Schema, posture: Univers
82
87
  export type SectionRole = 'header' | 'preamble' | 'title' | 'description' | 'body' | 'footer' | 'media';
83
88
  /** Normalize resolver output (single Node, Node[], or undefined) into Node[]. */
84
89
  export declare function asNodes(value: unknown): Node[];
90
+ /**
91
+ * Transform resolved content into a cursor over its renderable nodes — the
92
+ * `new RenderableNodeCursor(Markdoc.transform(asNodes(x), config))` spelling in
93
+ * one call. Takes anything `asNodes` accepts.
94
+ */
95
+ export declare function renderNodes(value: unknown, config: Config): RenderableNodeCursor;
96
+ /**
97
+ * The content model of a rune whose children are all body: a single optional,
98
+ * greedy `body` field matching anything. Returns a fresh object per call, so a
99
+ * rune that spreads and overrides it cannot change it for anyone else.
100
+ */
101
+ export declare function bodyOnly(): ContentModel;
85
102
  /** Rule for mapping a deprecated attribute to its replacement */
86
103
  export interface DeprecationRule {
87
104
  /** New attribute name to copy the value to */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"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"}
package/dist/lib/index.js CHANGED
@@ -4,10 +4,13 @@ import { schemaBasePresets } from '../attribute-presets.js';
4
4
  import { resolveUniversalAttributes } from '../universal-attributes.js';
5
5
  export { createComponentRenderable, stripSchemaOrg } from './component.js';
6
6
  import { stripSchemaOrg } from './component.js';
7
+ import { RenderableNodeCursor } from './renderable.js';
7
8
  import { applySchemaTable, validateSchemaTable } from './schema-table.js';
8
9
  export { applySchemaTable, validateSchemaTable, selectRow, findByName, SCHEMA_TYPE_EXPLICIT, } from './schema-table.js';
9
10
  export { resolve, resolveSequence, resolveDelimited, resolveSections, resolveContentModel, resolveListItems, evaluateCondition, matchesType, } from './resolver.js';
10
11
  export { sanitizeSandboxContent } from './sanitize.js';
12
+ export { extractText, groupByHeading } from './node.js';
13
+ export { fieldMetas } from './field-metas.js';
11
14
  /**
12
15
  * Maps a Markdoc Schema to its content model declaration.
13
16
  * Populated by `createContentModelSchema()` so consumers (editor, language server)
@@ -52,6 +55,25 @@ export function asNodes(value) {
52
55
  return [value];
53
56
  return [];
54
57
  }
58
+ /**
59
+ * Transform resolved content into a cursor over its renderable nodes — the
60
+ * `new RenderableNodeCursor(Markdoc.transform(asNodes(x), config))` spelling in
61
+ * one call. Takes anything `asNodes` accepts.
62
+ */
63
+ export function renderNodes(value, config) {
64
+ return new RenderableNodeCursor(Markdoc.transform(asNodes(value), config));
65
+ }
66
+ /**
67
+ * The content model of a rune whose children are all body: a single optional,
68
+ * greedy `body` field matching anything. Returns a fresh object per call, so a
69
+ * rune that spreads and overrides it cannot change it for anyone else.
70
+ */
71
+ export function bodyOnly() {
72
+ return {
73
+ type: 'sequence',
74
+ fields: [{ name: 'body', match: 'any', optional: true, greedy: true }],
75
+ };
76
+ }
55
77
  // ---------------------------------------------------------------------------
56
78
  // Universal attribute definitions
57
79
  // ---------------------------------------------------------------------------
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,26 @@
1
1
  import type { Node } from '@markdoc/markdoc';
2
2
  import type { NodeFilter } from '../interfaces.js';
3
3
  export declare function isFilterMatching(n: Node, match: NodeFilter): boolean;
4
+ /**
5
+ * Concatenated text of every `text` node under an AST node, unmodified — no
6
+ * trimming, no separator between nodes. For a rendered tree use `textContent`.
7
+ */
8
+ export declare function extractText(node: Node): string;
9
+ /** Callbacks for `groupByHeading`. `G` is whatever the rune tracks per group. */
10
+ export interface GroupByHeadingHandlers<G> {
11
+ /** The group in effect before the first heading. */
12
+ initial: G;
13
+ /** A heading starts a group: return the one now in effect. */
14
+ heading: (heading: Node, current: G) => G;
15
+ /** Each item of a list, with the group in effect where the list appears. */
16
+ item: (item: Node, group: G) => void;
17
+ /** Any other child (neither heading nor list), in document order. */
18
+ other?: (node: Node) => void;
19
+ }
20
+ /**
21
+ * The "a heading sets the running group, list items become entries" walk over
22
+ * a rune's children. Only the traversal is shared: what a heading means and how
23
+ * an item parses stay with the rune.
24
+ */
25
+ export declare function groupByHeading<G>(nodes: Iterable<Node>, handlers: GroupByHeadingHandlers<G>): void;
4
26
  //# sourceMappingURL=node.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/lib/node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,EAAE,UAAU,EAAqB,MAAM,kBAAkB,CAAC;AAEtE,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,WAmB1D"}
1
+ {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/lib/node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,EAAE,UAAU,EAAqB,MAAM,kBAAkB,CAAC;AAEtE,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,WAmB1D;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAK9C;AAED,iFAAiF;AACjF,MAAM,WAAW,sBAAsB,CAAC,CAAC;IACxC,oDAAoD;IACpD,OAAO,EAAE,CAAC,CAAC;IACX,8DAA8D;IAC9D,OAAO,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;IAC1C,4EAA4E;IAC5E,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IACrC,qEAAqE;IACrE,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;CAC7B;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAC/B,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,EACrB,QAAQ,EAAE,sBAAsB,CAAC,CAAC,CAAC,GACjC,IAAI,CAaN"}
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"}
@@ -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++) {