@refrakt-md/runes 0.38.0 → 0.40.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 (106) hide show
  1. package/dist/attribute-presets.d.ts +3 -2
  2. package/dist/attribute-presets.d.ts.map +1 -1
  3. package/dist/attribute-presets.js +2 -1
  4. package/dist/attribute-presets.js.map +1 -1
  5. package/dist/collection-helpers.d.ts +21 -2
  6. package/dist/collection-helpers.d.ts.map +1 -1
  7. package/dist/collection-helpers.js +72 -15
  8. package/dist/collection-helpers.js.map +1 -1
  9. package/dist/composed-rune.d.ts +59 -0
  10. package/dist/composed-rune.d.ts.map +1 -0
  11. package/dist/composed-rune.js +129 -0
  12. package/dist/composed-rune.js.map +1 -0
  13. package/dist/config.d.ts.map +1 -1
  14. package/dist/config.js +73 -40
  15. package/dist/config.js.map +1 -1
  16. package/dist/data-pipeline.d.ts +24 -10
  17. package/dist/data-pipeline.d.ts.map +1 -1
  18. package/dist/data-pipeline.js +34 -56
  19. package/dist/data-pipeline.js.map +1 -1
  20. package/dist/file-ref-resolve.js +9 -13
  21. package/dist/file-ref-resolve.js.map +1 -1
  22. package/dist/index.d.ts +14 -4
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +19 -5
  25. package/dist/index.js.map +1 -1
  26. package/dist/lib/composition.d.ts +152 -0
  27. package/dist/lib/composition.d.ts.map +1 -0
  28. package/dist/lib/composition.js +1120 -0
  29. package/dist/lib/composition.js.map +1 -0
  30. package/dist/lib/index.d.ts +63 -4
  31. package/dist/lib/index.d.ts.map +1 -1
  32. package/dist/lib/index.js +137 -8
  33. package/dist/lib/index.js.map +1 -1
  34. package/dist/lib/preprocess.d.ts +64 -0
  35. package/dist/lib/preprocess.d.ts.map +1 -0
  36. package/dist/lib/preprocess.js +72 -0
  37. package/dist/lib/preprocess.js.map +1 -0
  38. package/dist/lib/registers.d.ts +132 -0
  39. package/dist/lib/registers.d.ts.map +1 -0
  40. package/dist/lib/registers.js +329 -0
  41. package/dist/lib/registers.js.map +1 -0
  42. package/dist/lib/resolver.d.ts +21 -1
  43. package/dist/lib/resolver.d.ts.map +1 -1
  44. package/dist/lib/resolver.js +41 -18
  45. package/dist/lib/resolver.js.map +1 -1
  46. package/dist/lib/schema-side-table.d.ts +26 -0
  47. package/dist/lib/schema-side-table.d.ts.map +1 -0
  48. package/dist/lib/schema-side-table.js +34 -0
  49. package/dist/lib/schema-side-table.js.map +1 -0
  50. package/dist/lib/schema-table.d.ts +59 -9
  51. package/dist/lib/schema-table.d.ts.map +1 -1
  52. package/dist/lib/schema-table.js +158 -22
  53. package/dist/lib/schema-table.js.map +1 -1
  54. package/dist/lib/slot-markers.d.ts +38 -0
  55. package/dist/lib/slot-markers.d.ts.map +1 -0
  56. package/dist/lib/slot-markers.js +105 -0
  57. package/dist/lib/slot-markers.js.map +1 -0
  58. package/dist/lib/slots.d.ts +99 -0
  59. package/dist/lib/slots.d.ts.map +1 -0
  60. package/dist/lib/slots.js +448 -0
  61. package/dist/lib/slots.js.map +1 -0
  62. package/dist/plugins.d.ts +3 -0
  63. package/dist/plugins.d.ts.map +1 -1
  64. package/dist/plugins.js +53 -4
  65. package/dist/plugins.js.map +1 -1
  66. package/dist/reference.d.ts +18 -0
  67. package/dist/reference.d.ts.map +1 -1
  68. package/dist/reference.js +34 -1
  69. package/dist/reference.js.map +1 -1
  70. package/dist/registers-pipeline.d.ts +51 -0
  71. package/dist/registers-pipeline.d.ts.map +1 -0
  72. package/dist/registers-pipeline.js +224 -0
  73. package/dist/registers-pipeline.js.map +1 -0
  74. package/dist/schema-row.d.ts +5 -0
  75. package/dist/schema-row.d.ts.map +1 -1
  76. package/dist/schema-row.js +1 -0
  77. package/dist/schema-row.js.map +1 -1
  78. package/dist/tags/data.d.ts +2 -2
  79. package/dist/tags/data.d.ts.map +1 -1
  80. package/dist/tags/data.js +6 -4
  81. package/dist/tags/data.js.map +1 -1
  82. package/dist/tags/figure.d.ts +10 -4
  83. package/dist/tags/figure.d.ts.map +1 -1
  84. package/dist/tags/figure.js +65 -20
  85. package/dist/tags/figure.js.map +1 -1
  86. package/dist/tags/include.d.ts +51 -7
  87. package/dist/tags/include.d.ts.map +1 -1
  88. package/dist/tags/include.js +216 -7
  89. package/dist/tags/include.js.map +1 -1
  90. package/dist/tags/sandbox.d.ts.map +1 -1
  91. package/dist/tags/sandbox.js +13 -3
  92. package/dist/tags/sandbox.js.map +1 -1
  93. package/dist/tags/snippet.d.ts +9 -10
  94. package/dist/tags/snippet.d.ts.map +1 -1
  95. package/dist/tags/snippet.js +213 -10
  96. package/dist/tags/snippet.js.map +1 -1
  97. package/dist/universal-attributes.d.ts +1 -1
  98. package/package.json +3 -3
  99. package/dist/include-pipeline.d.ts +0 -52
  100. package/dist/include-pipeline.d.ts.map +0 -1
  101. package/dist/include-pipeline.js +0 -206
  102. package/dist/include-pipeline.js.map +0 -1
  103. package/dist/snippet-pipeline.d.ts +0 -44
  104. package/dist/snippet-pipeline.d.ts.map +0 -1
  105. package/dist/snippet-pipeline.js +0 -307
  106. package/dist/snippet-pipeline.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"composition.js","sourceRoot":"","sources":["../../src/lib/composition.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,30 @@
1
1
  import type { ContentModel, ResolvedContent } from '@refrakt-md/types';
2
2
  import Markdoc from '@markdoc/markdoc';
3
3
  import type { Config, Node, RenderableTreeNodes, Schema, SchemaAttribute } from '@markdoc/markdoc';
4
+ import type { EmitsDeclaration } from './slots.js';
4
5
  import type { UniversalAttributePosture } from '../universal-attributes.js';
5
6
  export { createComponentRenderable, stripSchemaOrg } from './component.js';
6
7
  import { RenderableNodeCursor } from './renderable.js';
7
8
  import type { SchemaTable } from './schema-table.js';
8
- export { applySchemaTable, validateSchemaTable, selectRow, findByName, SCHEMA_TYPE_EXPLICIT, } from './schema-table.js';
9
+ import { SchemaSideTable } from './schema-side-table.js';
10
+ import type { RegistersDeclaration } from './registers.js';
11
+ import type { CompositionTemplate } from './composition.js';
12
+ export { applySchemaTable, validateSchemaTable, selectRow, findByName, SCHEMA_TYPE_EXPLICIT, OWNER_ATTR, SLOT_ATTR, } from './schema-table.js';
13
+ export { declareSlotMarkers, declareSlotMarkersOnNodes } from './slot-markers.js';
14
+ export { compileComposition, compositionFor, schemaCompositions, parseCompositionDefinition, composedRuneConfig, composedTypeName, checkCompositions, SUBORDINATE_SCHEMA_TYPES, } from './composition.js';
15
+ export type { CompositionTemplate, CompositionInfo, CompositionOutlineNode, CompositionDefinition, CompositionCatalogEntry, CompiledComposition, } from './composition.js';
9
16
  export type { SchemaTable, SchemaRow, EntityRow, PropertyMap } from './schema-table.js';
10
17
  export type { InlineTransformResult } from './component.js';
11
18
  export { resolve, resolveSequence, resolveDelimited, resolveSections, resolveContentModel, resolveListItems, evaluateCondition, matchesType, } from './resolver.js';
12
19
  export { sanitizeSandboxContent } from './sanitize.js';
20
+ export { preprocessTree, schemaPreprocessors } from './preprocess.js';
21
+ export type { RunePreprocess, RunePreprocessContext } from './preprocess.js';
22
+ import type { RunePreprocess } from './preprocess.js';
13
23
  export { extractText, groupByHeading } from './node.js';
14
24
  export type { GroupByHeadingHandlers } from './node.js';
15
25
  export { fieldMetas } from './field-metas.js';
26
+ export { makeSlotTransform, slotSections, validateEmits, describeSlots, formatSlotLine, } from './slots.js';
27
+ export type { DescribedSlot, EmitsDeclaration, SlotDeclaration, SlotEntry, SlotKind, SlotRole, } from './slots.js';
16
28
  export type { FieldMetaSpec, FieldMetaEntry, FieldMetaSource } from './field-metas.js';
17
29
  /**
18
30
  * Maps a Markdoc Schema to its content model declaration.
@@ -58,7 +70,7 @@ export interface RuneStructure {
58
70
  */
59
71
  provides?: readonly string[];
60
72
  }
61
- export declare const schemaRuneStructures: WeakMap<Markdoc.Schema, RuneStructure>;
73
+ export declare const schemaRuneStructures: SchemaSideTable<RuneStructure>;
62
74
  /**
63
75
  * A rune's declarative schema.org table, keyed by its Markdoc schema — SPEC-130
64
76
  * / WORK-566.
@@ -73,7 +85,14 @@ export declare const schemaRuneStructures: WeakMap<Markdoc.Schema, RuneStructure
73
85
  * structure contract showed none of WORK-561's new `data-name`s. Recording the
74
86
  * table here is what lets the review surface D5 depends on exist at all.
75
87
  */
76
- export declare const schemaTables: WeakMap<Markdoc.Schema, SchemaTable>;
88
+ export declare const schemaTables: SchemaSideTable<SchemaTable>;
89
+ /**
90
+ * A declaratively-labelled rune's slot declaration, keyed by its Markdoc schema
91
+ * — SPEC-143. Same shape and purpose as `schemaTables`: the declaration lives in
92
+ * the tag module, and `inspect` and `reference` have only the schema to read.
93
+ * Absent for a rune that keeps a hand-written transform.
94
+ */
95
+ export declare const schemaEmits: SchemaSideTable<EmitsDeclaration>;
77
96
  /**
78
97
  * Record a hand-written schema's universal-attribute posture.
79
98
  *
@@ -120,8 +139,28 @@ export interface ContentModelSchemaOptions {
120
139
  * Transform function that receives resolved content, the rune's
121
140
  * attributes, the Markdoc config, and optionally the AST node.
122
141
  * Returns the renderable output.
142
+ *
143
+ * Exactly one of `transform`, `emits` and `template` (SPEC-143 D8, SPEC-145
144
+ * D5). Keep a transform
145
+ * when the rune unwraps, filters, reorders or merges what the content model
146
+ * resolved — the family test (D4).
147
+ */
148
+ transform?: (resolved: ResolvedContent, attrs: Record<string, any>, config: Config, node: Node) => RenderableTreeNodes;
149
+ /**
150
+ * SPEC-143 — the slot declaration: the renderable's identity, its property
151
+ * metas, and its named content slots, as data. When present the schema
152
+ * builds the transform from it once, here, and calls it where it would call
153
+ * `transform`. Also supplies the rune's `sections` join table, so that is not
154
+ * authored a second time beside it.
155
+ */
156
+ emits?: EmitsDeclaration;
157
+ /**
158
+ * SPEC-145 — a composition template: the rune's output is a Markdoc template
159
+ * placing its resolved fields into slots of other runes. Checked against the
160
+ * content model and compiled here, once; the transform it yields is called
161
+ * where `transform` would be (D4). See `lib/composition.ts`.
123
162
  */
124
- transform: (resolved: ResolvedContent, attrs: Record<string, any>, config: Config, node: Node) => RenderableTreeNodes;
163
+ template?: CompositionTemplate;
125
164
  /**
126
165
  * SPEC-130 / WORK-565 — the rune's declarative schema.org table.
127
166
  *
@@ -132,6 +171,26 @@ export interface ContentModelSchemaOptions {
132
171
  * schema knowledge at all.
133
172
  */
134
173
  schema?: SchemaTable;
174
+ /**
175
+ * SPEC-144 / WORK-611 — the entity or edge this rune registers in the
176
+ * cross-page registry. Inert data in a closed vocabulary (ADR-036), checked
177
+ * here at construction; the core participant in `registers-pipeline.ts`
178
+ * does the registering. See `lib/registers.ts`.
179
+ */
180
+ registers?: RegistersDeclaration;
181
+ /**
182
+ * SPEC-141 — resolve this rune before the transform. Receives the rune's
183
+ * own tag node and returns a replacement, several (spliced in its place),
184
+ * or nothing (left alone). One walk over the page dispatches to it in tree
185
+ * order and descends into what it returns, so the hook never resolves the
186
+ * runes its own output contains. See {@link RunePreprocess}.
187
+ *
188
+ * Whether a rune resolves itself before the transform is rune identity, so
189
+ * it is declared here rather than wired from config. A rune that sets it
190
+ * normally never reaches its own `transform`, which then exists to explain
191
+ * an unresolved tag (SPEC-141 D7).
192
+ */
193
+ preprocess?: RunePreprocess;
135
194
  /** Deprecated attribute mappings. */
136
195
  deprecations?: Record<string, DeprecationRule>;
137
196
  /** Whether this tag is self-closing (no children). */
@@ -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
@@ -1,23 +1,32 @@
1
1
  import Markdoc from '@markdoc/markdoc';
2
2
  import { resolveContentModel } from './resolver.js';
3
+ import { makeSlotTransform, slotSections } from './slots.js';
3
4
  import { schemaBasePresets } from '../attribute-presets.js';
4
5
  import { resolveUniversalAttributes } from '../universal-attributes.js';
5
6
  export { createComponentRenderable, stripSchemaOrg } from './component.js';
6
7
  import { stripSchemaOrg } from './component.js';
7
8
  import { RenderableNodeCursor } from './renderable.js';
8
- import { applySchemaTable, validateSchemaTable } from './schema-table.js';
9
- export { applySchemaTable, validateSchemaTable, selectRow, findByName, SCHEMA_TYPE_EXPLICIT, } from './schema-table.js';
9
+ import { applySchemaTable, releaseOwnedNodes, validateSchemaTable } from './schema-table.js';
10
+ import { SchemaSideTable } from './schema-side-table.js';
11
+ import { auditRegistersSources, registersSources, schemaRegisters, validateRegistersDeclaration, } from './registers.js';
12
+ import { compileComposition, schemaCompositions } from './composition.js';
13
+ export { applySchemaTable, validateSchemaTable, selectRow, findByName, SCHEMA_TYPE_EXPLICIT, OWNER_ATTR, SLOT_ATTR, } from './schema-table.js';
14
+ export { declareSlotMarkers, declareSlotMarkersOnNodes } from './slot-markers.js';
15
+ export { compileComposition, compositionFor, schemaCompositions, parseCompositionDefinition, composedRuneConfig, composedTypeName, checkCompositions, SUBORDINATE_SCHEMA_TYPES, } from './composition.js';
10
16
  export { resolve, resolveSequence, resolveDelimited, resolveSections, resolveContentModel, resolveListItems, evaluateCondition, matchesType, } from './resolver.js';
11
17
  export { sanitizeSandboxContent } from './sanitize.js';
18
+ export { preprocessTree, schemaPreprocessors } from './preprocess.js';
19
+ import { schemaPreprocessors } from './preprocess.js';
12
20
  export { extractText, groupByHeading } from './node.js';
13
21
  export { fieldMetas } from './field-metas.js';
22
+ export { makeSlotTransform, slotSections, validateEmits, describeSlots, formatSlotLine, } from './slots.js';
14
23
  /**
15
24
  * Maps a Markdoc Schema to its content model declaration.
16
25
  * Populated by `createContentModelSchema()` so consumers (editor, language server)
17
26
  * can introspect a rune's expected content structure without re-parsing.
18
27
  */
19
28
  export const schemaContentModels = new WeakMap();
20
- export const schemaRuneStructures = new WeakMap();
29
+ export const schemaRuneStructures = new SchemaSideTable();
21
30
  /**
22
31
  * A rune's declarative schema.org table, keyed by its Markdoc schema — SPEC-130
23
32
  * / WORK-566.
@@ -32,7 +41,14 @@ export const schemaRuneStructures = new WeakMap();
32
41
  * structure contract showed none of WORK-561's new `data-name`s. Recording the
33
42
  * table here is what lets the review surface D5 depends on exist at all.
34
43
  */
35
- export const schemaTables = new WeakMap();
44
+ export const schemaTables = new SchemaSideTable();
45
+ /**
46
+ * A declaratively-labelled rune's slot declaration, keyed by its Markdoc schema
47
+ * — SPEC-143. Same shape and purpose as `schemaTables`: the declaration lives in
48
+ * the tag module, and `inspect` and `reference` have only the schema to read.
49
+ * Absent for a rune that keeps a hand-written transform.
50
+ */
51
+ export const schemaEmits = new SchemaSideTable();
36
52
  /**
37
53
  * Record a hand-written schema's universal-attribute posture.
38
54
  *
@@ -522,6 +538,56 @@ function injectSubstrateMetas(result, attrs) {
522
538
  result.children = [...result.children, ...metas];
523
539
  return result;
524
540
  }
541
+ /** Sources each registering schema has been seen to provide. A source the rune
542
+ * emits structurally is emitted by every instance, so once seen it needs no
543
+ * second transform — which keeps the audit at one extra transform per rune
544
+ * per process rather than one per instance. */
545
+ const resolvedRegistersSources = new SchemaSideTable();
546
+ /**
547
+ * The validate-time audit of a `registers` block — WORK-611.
548
+ *
549
+ * A source that resolves to nothing registers an empty id or an empty data
550
+ * field on every instance, silently. Reported as `registers-source-unresolved`
551
+ * against the instance's own line, by the rule `auditRegistersSources` shares
552
+ * with `inspect`. Declared attributes resolve without a transform; anything
553
+ * else needs the rune's output, which is produced here against a copy of the
554
+ * page's variables so the audit cannot disturb the real transform (generated
555
+ * heading ids, chiefly).
556
+ */
557
+ function auditRegistersOnValidate(schema, decl, node, config) {
558
+ const seen = resolvedRegistersSources.get(schema) ?? new Set();
559
+ resolvedRegistersSources.set(schema, seen);
560
+ const declared = Object.keys(schema.attributes ?? {});
561
+ const pending = auditRegistersSources(decl, [], declared).filter((s) => !seen.has(s.source));
562
+ if (pending.length === 0)
563
+ return [];
564
+ let tree;
565
+ try {
566
+ const variables = config.variables ?? {};
567
+ tree = Markdoc.transform(node, {
568
+ ...config,
569
+ variables: {
570
+ ...variables,
571
+ generatedIds: new Set(variables.generatedIds ?? []),
572
+ },
573
+ });
574
+ }
575
+ catch {
576
+ // A rune that cannot transform here reports that through its own path.
577
+ return [];
578
+ }
579
+ const unresolved = auditRegistersSources(decl, tree, declared);
580
+ const missing = new Set(unresolved.map((u) => u.source));
581
+ for (const { source } of registersSources(decl))
582
+ if (!missing.has(source))
583
+ seen.add(source);
584
+ return unresolved.map(({ source, role }) => ({
585
+ id: 'registers-source-unresolved',
586
+ level: 'warning',
587
+ message: `registers ${role} reads "${source}", which matches no emitted node, no field-bag entry ` +
588
+ `and no declared attribute of {% ${node.tag} %} — it would always be empty`,
589
+ }));
590
+ }
525
591
  /**
526
592
  * Create a Markdoc Schema from a declarative content model.
527
593
  *
@@ -529,6 +595,49 @@ function injectSubstrateMetas(result, attrs) {
529
595
  * that receives the resolver's output.
530
596
  */
531
597
  export function createContentModelSchema(options) {
598
+ // SPEC-143 D8, extended to three by SPEC-145 D5 — exactly one emit path. A
599
+ // rune that declared some slots and patched the rest in a transform would
600
+ // leave neither half able to say what the output is.
601
+ const named = options.emits?.rune ?? options.template?.rune;
602
+ const declared = [
603
+ options.transform && '`transform`',
604
+ options.emits && 'a slot declaration (`emits`)',
605
+ options.template && 'a composition template',
606
+ ].filter((x) => Boolean(x));
607
+ if (declared.length > 1) {
608
+ throw new Error(`Rune "${named}": declares ${declared.length === 2 ? `both ${declared.join(' and ')}` : `${declared.slice(0, -1).join(', ')} and ${declared.at(-1)}`}. Use exactly one of a slot declaration, a composition template or a \`transform\` (SPEC-143 D8, SPEC-145 D5) — the declaration for a rune that only labels its fields, the template for one composed from other runes, the transform for one that restructures them.`);
609
+ }
610
+ if (declared.length === 0) {
611
+ const attrNames = Object.keys(options.attributes ?? {});
612
+ throw new Error(`A rune${attrNames.length ? ` (attributes: ${attrNames.join(', ')})` : ''} declares neither \`transform\` nor \`emits\` nor a composition template. It needs exactly one (SPEC-143 D8, SPEC-145 D5).`);
613
+ }
614
+ // Built once, at construction — not per page, not per instance.
615
+ const composition = options.template
616
+ ? compileComposition(options.template, {
617
+ contentModel: options.contentModel,
618
+ attributes: Object.keys({ ...options.base, ...options.attributes }),
619
+ schema: options.schema,
620
+ registers: options.registers,
621
+ })
622
+ : undefined;
623
+ const transform = options.transform ??
624
+ composition?.transform ??
625
+ makeSlotTransform(options.emits, options.contentModel);
626
+ // The `sections` join table follows from the declaration. A rune may still
627
+ // state roles for names `layout` creates (a `preamble` header), but not
628
+ // restate a slot's — that would be the identity authored twice.
629
+ let sections = options.sections;
630
+ if (options.emits) {
631
+ const derived = slotSections(options.emits);
632
+ const restated = Object.keys(options.sections ?? {}).filter((k) => k in options.emits.slots);
633
+ if (restated.length > 0) {
634
+ throw new Error(`Rune "${options.emits.rune}": \`sections\` restates the role of slot(s) ${restated.join(', ')}, which the \`emits\` declaration already gives. Declare it on the slot (\`role\`) instead.`);
635
+ }
636
+ sections =
637
+ options.sections || Object.keys(derived).length > 0
638
+ ? { ...derived, ...options.sections }
639
+ : undefined;
640
+ }
532
641
  const attributes = {};
533
642
  // Merge base attributes
534
643
  if (options.base) {
@@ -548,7 +657,7 @@ export function createContentModelSchema(options) {
548
657
  const { available: applicableUniversals } = resolveUniversalAttributes({
549
658
  posture: options.universalAttributes,
550
659
  structure: {
551
- ...(options.sections && { sections: options.sections }),
660
+ ...(sections && { sections }),
552
661
  ...(options.mediaSlots && { mediaSlots: options.mediaSlots }),
553
662
  ...(options.frameTarget && { frameTarget: options.frameTarget }),
554
663
  ...(options.provides && { provides: options.provides }),
@@ -615,8 +724,9 @@ export function createContentModelSchema(options) {
615
724
  ? options.contentModel(attrs)
616
725
  : options.contentModel;
617
726
  const { content, tintNode, bgNode } = resolveContentModel(node.children, resolvedModel, attrs);
618
- // Call the user's transform function
619
- let result = options.transform(content, attrs, config, node);
727
+ // Call the rune's transform — hand-written, or built from `emits`
728
+ // (SPEC-143). The one call site either way.
729
+ let result = transform(content, attrs, config, node);
620
730
  // SPEC-130 / WORK-565 — realise the rune's schema table against its own
621
731
  // output. Here, not in the engine: `site.ts` harvests `extractSeo` from
622
732
  // the `Markdoc.transform` tree, and the engine runs later at render
@@ -625,6 +735,8 @@ export function createContentModelSchema(options) {
625
735
  if (options.schema) {
626
736
  result = applySchemaTable(result, options.schema, attrs);
627
737
  }
738
+ // SPEC-146 D4 — this rune is the last that could read its ownership marks.
739
+ releaseOwnedNodes(result);
628
740
  // `schema="none"` strips the whole subtree, not just the root: a child
629
741
  // rune declares its own type independently, so stripping only the root
630
742
  // would leave orphan typed nodes with no container (WORK-552).
@@ -690,6 +802,21 @@ export function createContentModelSchema(options) {
690
802
  }
691
803
  if (options.schema)
692
804
  schemaTables.set(schema, options.schema);
805
+ if (options.emits)
806
+ schemaEmits.set(schema, options.emits);
807
+ if (composition)
808
+ schemaCompositions.set(schema, composition.info);
809
+ // SPEC-144 / WORK-611 — record the registration declaration, and audit its
810
+ // sources at validate time, where Markdoc attaches file and line.
811
+ if (options.registers) {
812
+ validateRegistersDeclaration(options.registers);
813
+ schemaRegisters.set(schema, options.registers);
814
+ const ownValidate = schema.validate;
815
+ schema.validate = (node, config) => [
816
+ ...(ownValidate?.(node, config) ?? []),
817
+ ...auditRegistersOnValidate(schema, options.registers, node, config),
818
+ ];
819
+ }
693
820
  // Register content model for introspection by editor / language server
694
821
  schemaContentModels.set(schema, options.contentModel);
695
822
  // SPEC-125 Phase 2 — record the rune's own join tables, so the applicability
@@ -698,7 +825,7 @@ export function createContentModelSchema(options) {
698
825
  // is the `auto` default, so a consumer can tell "this rune was built through
699
826
  // the schema builder and is structurally gated" from "nothing is known".
700
827
  schemaRuneStructures.set(schema, {
701
- ...(options.sections && { sections: options.sections }),
828
+ ...(sections && { sections }),
702
829
  ...(options.mediaSlots && { mediaSlots: options.mediaSlots }),
703
830
  ...(options.frameTarget && { frameTarget: options.frameTarget }),
704
831
  universalAttributes: options.universalAttributes ?? 'auto',
@@ -709,6 +836,8 @@ export function createContentModelSchema(options) {
709
836
  if (options.base) {
710
837
  schemaBasePresets.set(schema, options.base);
711
838
  }
839
+ if (options.preprocess)
840
+ schemaPreprocessors.set(schema, options.preprocess);
712
841
  return schema;
713
842
  }
714
843
  //# sourceMappingURL=index.js.map
@@ -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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"}