@refrakt-md/runes 0.26.0 → 0.29.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 (74) hide show
  1. package/dist/config.d.ts +4 -1
  2. package/dist/config.d.ts.map +1 -1
  3. package/dist/config.js +21 -2
  4. package/dist/config.js.map +1 -1
  5. package/dist/data-adapters.d.ts +64 -0
  6. package/dist/data-adapters.d.ts.map +1 -0
  7. package/dist/data-adapters.js +281 -0
  8. package/dist/data-adapters.js.map +1 -0
  9. package/dist/data-emit.d.ts +24 -0
  10. package/dist/data-emit.d.ts.map +1 -0
  11. package/dist/data-emit.js +48 -0
  12. package/dist/data-emit.js.map +1 -0
  13. package/dist/data-pipeline.d.ts +24 -0
  14. package/dist/data-pipeline.d.ts.map +1 -0
  15. package/dist/data-pipeline.js +154 -0
  16. package/dist/data-pipeline.js.map +1 -0
  17. package/dist/data-projection.d.ts +79 -0
  18. package/dist/data-projection.d.ts.map +1 -0
  19. package/dist/data-projection.js +212 -0
  20. package/dist/data-projection.js.map +1 -0
  21. package/dist/drawer-pipeline.d.ts +8 -5
  22. package/dist/drawer-pipeline.d.ts.map +1 -1
  23. package/dist/drawer-pipeline.js +2 -2
  24. package/dist/drawer-pipeline.js.map +1 -1
  25. package/dist/expand-pipeline.d.ts +4 -1
  26. package/dist/expand-pipeline.d.ts.map +1 -1
  27. package/dist/expand-pipeline.js +11 -11
  28. package/dist/expand-pipeline.js.map +1 -1
  29. package/dist/field-match.d.ts +4 -0
  30. package/dist/field-match.d.ts.map +1 -1
  31. package/dist/field-match.js +4 -2
  32. package/dist/field-match.js.map +1 -1
  33. package/dist/file-ref-resolve.js +3 -3
  34. package/dist/file-ref-resolve.js.map +1 -1
  35. package/dist/index.d.ts +3 -0
  36. package/dist/index.d.ts.map +1 -1
  37. package/dist/index.js +13 -1
  38. package/dist/index.js.map +1 -1
  39. package/dist/lib/read-file.d.ts +21 -26
  40. package/dist/lib/read-file.d.ts.map +1 -1
  41. package/dist/lib/read-file.js +25 -77
  42. package/dist/lib/read-file.js.map +1 -1
  43. package/dist/lib/resolver.d.ts +3 -3
  44. package/dist/lib/resolver.d.ts.map +1 -1
  45. package/dist/lib/resolver.js +38 -12
  46. package/dist/lib/resolver.js.map +1 -1
  47. package/dist/nodes.d.ts +9 -0
  48. package/dist/nodes.d.ts.map +1 -1
  49. package/dist/nodes.js +15 -0
  50. package/dist/nodes.js.map +1 -1
  51. package/dist/plugins.d.ts +14 -1
  52. package/dist/plugins.d.ts.map +1 -1
  53. package/dist/plugins.js +27 -0
  54. package/dist/plugins.js.map +1 -1
  55. package/dist/snippet-pipeline.d.ts.map +1 -1
  56. package/dist/snippet-pipeline.js +10 -9
  57. package/dist/snippet-pipeline.js.map +1 -1
  58. package/dist/tags/budget.d.ts.map +1 -1
  59. package/dist/tags/budget.js +30 -6
  60. package/dist/tags/budget.js.map +1 -1
  61. package/dist/tags/data.d.ts +19 -0
  62. package/dist/tags/data.d.ts.map +1 -0
  63. package/dist/tags/data.js +50 -0
  64. package/dist/tags/data.js.map +1 -0
  65. package/dist/tags/sandbox.d.ts.map +1 -1
  66. package/dist/tags/sandbox.js +11 -6
  67. package/dist/tags/sandbox.js.map +1 -1
  68. package/dist/translations.generated.d.ts +5 -0
  69. package/dist/translations.generated.d.ts.map +1 -0
  70. package/dist/translations.generated.js +76 -0
  71. package/dist/translations.generated.js.map +1 -0
  72. package/i18n/de.json +69 -0
  73. package/i18n/en.json +69 -0
  74. package/package.json +8 -6
package/dist/index.d.ts CHANGED
@@ -56,6 +56,7 @@ export type { ReadingRegister, ReadingResolutionInput } from '@refrakt-md/transf
56
56
  export { loadPlugin, mergePlugins, applyAliases, loadLocalRunes, discoverPluginFixtures, discoverPluginFixtureManifest, assertFileRootNamespaceAllowed } from './plugins.js';
57
57
  export type { LoadedPlugin, MergedPluginResult } from './plugins.js';
58
58
  export { coreConfig, baseConfig, corePipelineHooks, createCorePipelineHooks, resolveCoreSentinels, type PageTreeNode, type CorePipelineHooksOptions } from './config.js';
59
+ export { coreTranslations } from './translations.generated.js';
59
60
  export { BREADCRUMB_AUTO_SENTINEL } from './tags/breadcrumb.js';
60
61
  export { NAV_AUTO_SENTINEL } from './tags/nav.js';
61
62
  export { PAGINATION_AUTO_SENTINEL } from './tags/pagination.js';
@@ -97,6 +98,7 @@ export declare const runes: {
97
98
  datatable: import("./rune.js").Rune;
98
99
  diff: import("./rune.js").Rune;
99
100
  snippet: import("./rune.js").Rune;
101
+ data: import("./rune.js").Rune;
100
102
  chart: import("./rune.js").Rune;
101
103
  diagram: import("./rune.js").Rune;
102
104
  sidenote: import("./rune.js").Rune;
@@ -218,6 +220,7 @@ export declare const nodes: {
218
220
  tbody: Markdoc.Schema;
219
221
  th: Markdoc.Schema;
220
222
  tr: Markdoc.Schema;
223
+ td: Markdoc.Schema;
221
224
  error: {};
222
225
  };
223
226
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAkD7C,OAAO,uBAAuB,CAAC;AAE/B,OAAO,2BAA2B,CAAC;AAMnC,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAIvC,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAC3I,YAAY,EAAE,eAAe,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AACjF,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACtJ,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACjG,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACtF,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACnE,YAAY,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACrG,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EACN,aAAa,EACb,YAAY,EACZ,oBAAoB,EACpB,0BAA0B,EAC1B,YAAY,GACZ,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClG,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC7G,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAC5F,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC5H,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EACN,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,UAAU,EACV,qBAAqB,GACrB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EACN,QAAQ,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,OAAO,EAC7D,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,kBAAkB,GAC9E,MAAM,yBAAyB,CAAC;AACjC,YAAY,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC3F,OAAO,EAAE,QAAQ,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,WAAW,EAAE,iBAAiB,EAAE,IAAI,IAAI,UAAU,EAAE,WAAW,IAAI,iBAAiB,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC/S,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACvE,YAAY,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAClE,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACjE,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EACN,YAAY,EACZ,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,aAAa,EACb,mBAAmB,EACnB,uBAAuB,EACvB,cAAc,EACd,iBAAiB,GACjB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACX,QAAQ,EACR,kBAAkB,EAClB,QAAQ,EACR,cAAc,EACd,gBAAgB,EAChB,cAAc,EACd,sBAAsB,EACtB,mBAAmB,EACnB,cAAc,EACd,sBAAsB,EACtB,uBAAuB,EACvB,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EACvB,6BAA6B,EAC7B,sBAAsB,GACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACN,uBAAuB,EACvB,qBAAqB,EACrB,iBAAiB,EACjB,yBAAyB,GACzB,MAAM,wBAAwB,CAAC;AAChC,YAAY,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAClF,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,oBAAoB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACjI,YAAY,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,sBAAsB,EAAE,6BAA6B,EAAE,8BAA8B,EAAE,MAAM,cAAc,CAAC;AAC7K,YAAY,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,KAAK,YAAY,EAAE,KAAK,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAEzK,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,YAAY,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAC1F,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,YAAY,EACX,kBAAkB,EAAE,cAAc,EAClC,iBAAiB,EAAE,aAAa,EAChC,SAAS,EACT,mBAAmB,EAAE,eAAe,EACpC,mBAAmB,EAAE,mBAAmB,EAAE,WAAW,EACrD,UAAU,EACV,cAAc,EACd,YAAY,EACZ,wBAAwB,EAAE,iBAAiB,EAC3C,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,UAAU,EACV,UAAU,EACV,WAAW,EACX,SAAS,EACT,YAAY,EACZ,SAAS,EACT,SAAS,EACT,mBAAmB,EAAE,cAAc,EACnC,cAAc,EACd,YAAY,EAAE,aAAa,EAAE,QAAQ,EACrC,cAAc,EACd,eAAe,EAAE,WAAW,EAC5B,YAAY,EACZ,aAAa,EACb,aAAa,EACb,QAAQ,EAAE,aAAa,EAAE,aAAa,EACtC,cAAc,EACd,oBAAoB,GACpB,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,SAAS;;CAErB,CAAA;AAED,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0djB,CAAC;AAEF;;;;;;2BAM2B;AAC3B,eAAO,MAAM,IAAI;;;;;;;kBAvrBc,CAAC;mBAChB,CAAC;6BAEV,CAAA;uBACG,CAAC;;;;;;;;;kBAU6B,CAAC;mBAAuB,CAAC;6BAElD,CAAC;uBACF,CAAA;;;;;;;;;kBAUX,CAAC;mBAAuB,CAAC;6BAEd,CAAC;uBACH,CAAC;;;;;;;;;kBAWH,CAAC;mBAAuB,CAAC;6BACwB,CAAC;uBAC9B,CAAC;;;;;;;;;kBAamB,CAAC;mBACnC,CAAC;6BACU,CAAC;uBAA8C,CAAC;;;;CAioB1E,CAAC;AAEF,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;CAmBjB,CAAA"}
package/dist/index.js CHANGED
@@ -1,10 +1,11 @@
1
- import { heading, paragraph, fence, list, item, em, strong, text, link, hardbreak, image, table } from './nodes.js';
1
+ import { heading, paragraph, fence, list, item, em, strong, text, link, hardbreak, image, table, td } from './nodes.js';
2
2
  export { Page } from './documents/page.js';
3
3
  import { DocPage } from './documents/doc.js';
4
4
  import { error } from './tags/error.js';
5
5
  import { grid } from './tags/grid.js';
6
6
  import { codegroup } from './tags/codegroup.js';
7
7
  import { snippet } from './tags/snippet.js';
8
+ import { data } from './tags/data.js';
8
9
  import { hint } from './tags/hint.js';
9
10
  import { tab, tabs } from './tags/tabs.js';
10
11
  import { nav } from './tags/nav.js';
@@ -94,6 +95,8 @@ export { LAYOUT, CANONICAL_LAYOUTS, layoutMatches } from './layout-vocabulary.js
94
95
  export { READING_REGISTERS, DEFAULT_READING, READING_CAPABILITIES, resolveReading, coerceRegister } from '@refrakt-md/transform';
95
96
  export { loadPlugin, mergePlugins, applyAliases, loadLocalRunes, discoverPluginFixtures, discoverPluginFixtureManifest, assertFileRootNamespaceAllowed } from './plugins.js';
96
97
  export { coreConfig, baseConfig, corePipelineHooks, createCorePipelineHooks, resolveCoreSentinels } from './config.js';
98
+ // SPEC-035 — first-party core translation bundles (generated from i18n/*.json).
99
+ export { coreTranslations } from './translations.generated.js';
97
100
  export { BREADCRUMB_AUTO_SENTINEL } from './tags/breadcrumb.js';
98
101
  export { NAV_AUTO_SENTINEL } from './tags/nav.js';
99
102
  export { PAGINATION_AUTO_SENTINEL } from './tags/pagination.js';
@@ -314,6 +317,14 @@ export const runes = {
314
317
  category: 'Code & Data',
315
318
  snippet: ['{% snippet path="${1:src/lib/foo.ts}" /%}'],
316
319
  }),
320
+ data: defineRune({
321
+ name: 'data',
322
+ schema: data,
323
+ description: 'Ingest an external tabular source (CSV/TSV/JSON/NDJSON) and emit a Markdown table. Composes inside chart and datatable, and renders standalone, via pre-resolve (SPEC-103).',
324
+ typeName: 'Data',
325
+ category: 'Code & Data',
326
+ snippet: ['{% data src="${1:data/revenue.csv}" /%}'],
327
+ }),
317
328
  chart: defineRune({
318
329
  name: 'chart',
319
330
  schema: chart,
@@ -601,6 +612,7 @@ export const nodes = {
601
612
  tbody: Markdoc.nodes.tbody,
602
613
  th: Markdoc.nodes.th,
603
614
  tr: Markdoc.nodes.tr,
615
+ td,
604
616
  error: Markdoc.nodes.error,
605
617
  };
606
618
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,43 +1,39 @@
1
1
  /**
2
- * Sandboxed file reader for the snippet rune (SPEC-062).
2
+ * Sandboxed file reader for the snippet rune (SPEC-062) and its siblings
3
+ * (expand SPEC-066, file-ref SPEC-078).
3
4
  *
4
- * Resolves a project-root-relative path, enforces the snippet sandbox
5
- * (absolute-path reject, traversal reject, symlink-escape reject,
6
- * existence + file-type check), and optionally slices by line range.
5
+ * Reads a project-root-relative path through an injected {@link ProjectFiles}
6
+ * provider (SPEC-113) and optionally slices it by line range. The provider
7
+ * owns containment — absolute-path reject, traversal reject, symlink-escape
8
+ * reject — so this module no longer re-implements it; a denied or missing
9
+ * read simply comes back as `null`. What stays here is the snippet-specific
10
+ * value-add: line-range parsing, slicing, clamp warnings, and the structured
11
+ * `SnippetSandboxError` the preprocess hook formats for the user.
7
12
  *
8
- * Pure synchronous I/O — runs at build time during the preprocess
9
- * phase. Errors are thrown as `Error` instances with structured messages
10
- * the preprocess hook formats for the user.
13
+ * No `node:fs` import — all I/O goes through the provider, which keeps the
14
+ * runes package tree-shakable for browser bundles.
11
15
  */
16
+ import type { ProjectFiles } from '@refrakt-md/types';
12
17
  /** Diagnostics from a single read. */
13
18
  export interface ReadFileResult {
14
19
  /** Resolved file content (possibly sliced by `lines`). */
15
20
  content: string;
16
- /** Absolute resolved path. */
17
- absolutePath: string;
18
21
  /** Project-root-relative POSIX path — what `data-snippet-source` carries. */
19
22
  relativePath: string;
20
23
  /** Warnings the preprocess hook should surface (e.g., end-clamp). */
21
24
  warnings: string[];
22
25
  }
23
26
  export interface ReadFileOptions {
27
+ /** The project's files, rooted at the project root. Reads go through this. */
28
+ files: ProjectFiles;
24
29
  /** The author-supplied `path=` attribute value (project-root-relative). */
25
30
  pathAttr: string;
26
- /** Absolute path to the project root (the directory containing
27
- * `refrakt.config.json`). The sandbox anchor. */
28
- projectRoot: string;
29
31
  /** Optional `lines=` attribute value (`"10-25"`, `"10-"`, `"-20"`, `"10"`). */
30
32
  lines?: string;
31
33
  /** Optional source-page context used in error messages
32
34
  * ("Referenced from: docs/getting-started.md:42"). */
33
35
  referencingPage?: string;
34
36
  }
35
- /**
36
- * Validate a path attribute against the snippet sandbox rules.
37
- * Throws `SnippetSandboxError` on rejection; returns the absolute resolved
38
- * path on success.
39
- */
40
- export declare function resolveSnippetPath(pathAttr: string, projectRoot: string): string;
41
37
  /** Range parsed from the `lines=` attribute. */
42
38
  interface LineRange {
43
39
  /** 1-indexed start (inclusive). Undefined means "from start of file". */
@@ -55,19 +51,18 @@ export declare function sliceContent(content: string, range: LineRange | null):
55
51
  sliced: string;
56
52
  warnings: string[];
57
53
  };
58
- /** Read a snippet's source file with full sandbox enforcement + line slicing. */
54
+ /** Read a snippet's source file through the provider, with line slicing. The
55
+ * provider denies absolute / traversal / symlink-escape paths (and reports a
56
+ * missing or non-file path) as `null`, which becomes a single in-band error. */
59
57
  export declare function readSnippetFile(opts: ReadFileOptions): ReadFileResult;
60
58
  /**
61
- * Read a file's raw text content with the snippet sandbox applied.
62
- * Used by expand (SPEC-066) when it needs the whole file (no line
63
- * slicing) to parse as Markdoc. Lives here so the `node:fs` import
64
- * stays inside this Node-only helper module — expand-pipeline.ts
65
- * imports the function, not `fs` directly, which keeps the runes
66
- * package tree-shakable for browser bundles.
59
+ * Read a file's raw text content through the provider. Used by expand
60
+ * (SPEC-066) when it needs the whole file (no line slicing) to parse as
61
+ * Markdoc. The provider applies the same containment as snippet.
67
62
  */
68
63
  export declare function readWholeSandboxedFile(opts: {
64
+ files: ProjectFiles;
69
65
  relativePath: string;
70
- projectRoot: string;
71
66
  }): string;
72
67
  /** All sandbox-rejection cases throw this — the preprocess hook can catch and
73
68
  * format with source-line context for the user. */
@@ -1 +1 @@
1
- {"version":3,"file":"read-file.d.ts","sourceRoot":"","sources":["../../src/lib/read-file.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAKH,sCAAsC;AACtC,MAAM,WAAW,cAAc;IAC9B,0DAA0D;IAC1D,OAAO,EAAE,MAAM,CAAC;IAChB,8BAA8B;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,6EAA6E;IAC7E,YAAY,EAAE,MAAM,CAAC;IACrB,qEAAqE;IACrE,QAAQ,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC/B,2EAA2E;IAC3E,QAAQ,EAAE,MAAM,CAAC;IACjB;sDACkD;IAClD,WAAW,EAAE,MAAM,CAAC;IACpB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;2DACuD;IACvD,eAAe,CAAC,EAAE,MAAM,CAAC;CACzB;AAOD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAkChF;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,CAkCxE;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,CAyBxC;AAED,iFAAiF;AACjF,wBAAgB,eAAe,CAAC,IAAI,EAAE,eAAe,GAAG,cAAc,CA8BrE;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE;IAC5C,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACpB,GAAG,MAAM,CAYT;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;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,CAkCxE;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,CAyBxC;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,55 +1,18 @@
1
1
  /**
2
- * Sandboxed file reader for the snippet rune (SPEC-062).
2
+ * Sandboxed file reader for the snippet rune (SPEC-062) and its siblings
3
+ * (expand SPEC-066, file-ref SPEC-078).
3
4
  *
4
- * Resolves a project-root-relative path, enforces the snippet sandbox
5
- * (absolute-path reject, traversal reject, symlink-escape reject,
6
- * existence + file-type check), and optionally slices by line range.
5
+ * Reads a project-root-relative path through an injected {@link ProjectFiles}
6
+ * provider (SPEC-113) and optionally slices it by line range. The provider
7
+ * owns containment — absolute-path reject, traversal reject, symlink-escape
8
+ * reject — so this module no longer re-implements it; a denied or missing
9
+ * read simply comes back as `null`. What stays here is the snippet-specific
10
+ * value-add: line-range parsing, slicing, clamp warnings, and the structured
11
+ * `SnippetSandboxError` the preprocess hook formats for the user.
7
12
  *
8
- * Pure synchronous I/O — runs at build time during the preprocess
9
- * phase. Errors are thrown as `Error` instances with structured messages
10
- * the preprocess hook formats for the user.
13
+ * No `node:fs` import — all I/O goes through the provider, which keeps the
14
+ * runes package tree-shakable for browser bundles.
11
15
  */
12
- import * as fs from 'node:fs';
13
- import * as path from 'node:path';
14
- /** Convert host-OS file path to POSIX form (forward slashes). */
15
- function posixPath(p) {
16
- return path.sep === '/' ? p : p.split(path.sep).join('/');
17
- }
18
- /**
19
- * Validate a path attribute against the snippet sandbox rules.
20
- * Throws `SnippetSandboxError` on rejection; returns the absolute resolved
21
- * path on success.
22
- */
23
- export function resolveSnippetPath(pathAttr, projectRoot) {
24
- if (typeof pathAttr !== 'string' || pathAttr.length === 0) {
25
- throw new SnippetSandboxError('snippet `path` attribute is required');
26
- }
27
- if (path.isAbsolute(pathAttr)) {
28
- throw new SnippetSandboxError(`snippet path "${pathAttr}" is absolute; project-root-relative paths only`);
29
- }
30
- const joined = path.resolve(projectRoot, pathAttr);
31
- const normalized = path.normalize(joined);
32
- const rootWithSep = projectRoot.endsWith(path.sep) ? projectRoot : projectRoot + path.sep;
33
- if (!normalized.startsWith(rootWithSep) && normalized !== projectRoot) {
34
- throw new SnippetSandboxError(`snippet path "${pathAttr}" escapes the project root after normalization`);
35
- }
36
- // Symlink-escape check via realpath. Fails open if realpath errors
37
- // (which mostly means the file doesn't exist — we'll surface that below).
38
- try {
39
- const real = fs.realpathSync(normalized);
40
- if (!real.startsWith(rootWithSep) && real !== projectRoot) {
41
- throw new SnippetSandboxError(`snippet path "${pathAttr}" resolves through a symlink that escapes the project root`);
42
- }
43
- }
44
- catch (err) {
45
- if (err.code !== 'ENOENT') {
46
- throw err;
47
- }
48
- // File doesn't exist — let the stat check below produce the canonical
49
- // "file not found" error with the resolved path in the message.
50
- }
51
- return normalized;
52
- }
53
16
  /** Parse a `lines=` attribute. Returns null when the attribute is empty/absent;
54
17
  * throws `SnippetSandboxError` on malformed input. */
55
18
  export function parseLineRange(raw) {
@@ -111,49 +74,34 @@ export function sliceContent(content, range) {
111
74
  const sliced = lines.slice(startLine - 1, endLine).join('\n');
112
75
  return { sliced, warnings };
113
76
  }
114
- /** Read a snippet's source file with full sandbox enforcement + line slicing. */
77
+ /** Read a snippet's source file through the provider, with line slicing. The
78
+ * provider denies absolute / traversal / symlink-escape paths (and reports a
79
+ * missing or non-file path) as `null`, which becomes a single in-band error. */
115
80
  export function readSnippetFile(opts) {
116
- const absolutePath = resolveSnippetPath(opts.pathAttr, opts.projectRoot);
117
- let stat;
118
- try {
119
- stat = fs.statSync(absolutePath);
120
- }
121
- catch {
81
+ const rawContent = opts.files.read(opts.pathAttr);
82
+ if (rawContent === null) {
122
83
  const referenced = opts.referencingPage ? `\n\nReferenced from: ${opts.referencingPage}` : '';
123
- throw new SnippetSandboxError(`snippet path "${opts.pathAttr}" cannot be resolved.\n\nResolved to: ${absolutePath}\nReason: file not found${referenced}`);
124
- }
125
- if (!stat.isFile()) {
126
- throw new SnippetSandboxError(`snippet path "${opts.pathAttr}" must be a file (got ${stat.isDirectory() ? 'directory' : 'other'})`);
84
+ throw new SnippetSandboxError(`snippet path "${opts.pathAttr}" cannot be resolved — the file is missing, not a regular file, or outside the project root.${referenced}`);
127
85
  }
128
- const rawContent = fs.readFileSync(absolutePath, 'utf-8');
129
86
  const range = parseLineRange(opts.lines);
130
87
  const { sliced, warnings } = sliceContent(rawContent, range);
131
- const relativePath = posixPath(path.relative(opts.projectRoot, absolutePath));
132
88
  return {
133
89
  content: sliced,
134
- absolutePath,
135
- relativePath,
90
+ relativePath: opts.pathAttr,
136
91
  warnings,
137
92
  };
138
93
  }
139
94
  /**
140
- * Read a file's raw text content with the snippet sandbox applied.
141
- * Used by expand (SPEC-066) when it needs the whole file (no line
142
- * slicing) to parse as Markdoc. Lives here so the `node:fs` import
143
- * stays inside this Node-only helper module — expand-pipeline.ts
144
- * imports the function, not `fs` directly, which keeps the runes
145
- * package tree-shakable for browser bundles.
95
+ * Read a file's raw text content through the provider. Used by expand
96
+ * (SPEC-066) when it needs the whole file (no line slicing) to parse as
97
+ * Markdoc. The provider applies the same containment as snippet.
146
98
  */
147
99
  export function readWholeSandboxedFile(opts) {
148
- const absolutePath = resolveSnippetPath(opts.relativePath, opts.projectRoot);
149
- if (!fs.existsSync(absolutePath)) {
150
- throw new SnippetSandboxError(`source file "${opts.relativePath}" does not exist`);
151
- }
152
- const stat = fs.statSync(absolutePath);
153
- if (!stat.isFile()) {
154
- throw new SnippetSandboxError(`source file "${opts.relativePath}" must be a regular file (got ${stat.isDirectory() ? 'directory' : 'other'})`);
100
+ const raw = opts.files.read(opts.relativePath);
101
+ if (raw === null) {
102
+ throw new SnippetSandboxError(`source file "${opts.relativePath}" cannot be resolved — it is missing, not a regular file, or outside the project root`);
155
103
  }
156
- return fs.readFileSync(absolutePath, 'utf-8');
104
+ return raw;
157
105
  }
158
106
  /** All sandbox-rejection cases throw this — the preprocess hook can catch and
159
107
  * format with source-line context for the user. */
@@ -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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"}
@@ -54,7 +54,7 @@ export declare function resolveDelimited(children: Node[], model: DelimitedModel
54
54
  * - When `emitTag` is set, sections become AST tag nodes for child rune processing.
55
55
  * - When `emitTag` is absent, sections are resolved objects with heading info + body.
56
56
  */
57
- export declare function resolveSections(children: Node[], model: SectionsModel): ResolvedContent;
57
+ export declare function resolveSections(children: Node[], model: SectionsModel, locale?: string): ResolvedContent;
58
58
  /**
59
59
  * Evaluate a content model condition against children and attributes.
60
60
  */
@@ -71,10 +71,10 @@ export declare function resolveListItems(listNode: Node, itemModel: ItemModel):
71
71
  * Resolve a content model against AST children.
72
72
  * Dispatches to the pattern-specific resolver based on `model.type`.
73
73
  */
74
- export declare function resolve(children: Node[], model: ContentModel, attributes?: Record<string, unknown>): ResolvedContent;
74
+ export declare function resolve(children: Node[], model: ContentModel, attributes?: Record<string, unknown>, locale?: string): ResolvedContent;
75
75
  /**
76
76
  * Full resolution entry point: extracts special tags (tint, bg), then
77
77
  * resolves the content model.
78
78
  */
79
- export declare function resolveContentModel(children: Node[], model: ContentModel, attributes?: Record<string, unknown>): ResolveResult;
79
+ export declare function resolveContentModel(children: Node[], model: ContentModel, attributes?: Record<string, unknown>, locale?: string): ResolveResult;
80
80
  //# sourceMappingURL=resolver.d.ts.map
@@ -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,CASxD;AAMD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC9B,QAAQ,EAAE,IAAI,EAAE,EAChB,MAAM,EAAE,sBAAsB,EAAE,GAC9B,eAAe,CAmFjB;AAMD;;;GAGG;AACH,wBAAgB,gBAAgB,CAC/B,QAAQ,EAAE,IAAI,EAAE,EAChB,KAAK,EAAE,cAAc,GACnB,eAAe,CAuCjB;AAyED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC9B,QAAQ,EAAE,IAAI,EAAE,EAChB,KAAK,EAAE,aAAa,GAClB,eAAe,CA6IjB;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,CAC/B,QAAQ,EAAE,IAAI,EACd,SAAS,EAAE,SAAS,GAClB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAiH3B;AAMD;;;GAGG;AACH,wBAAgB,OAAO,CACtB,QAAQ,EAAE,IAAI,EAAE,EAChB,KAAK,EAAE,YAAY,EACnB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,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,GAClC,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,CASxD;AAMD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC9B,QAAQ,EAAE,IAAI,EAAE,EAChB,MAAM,EAAE,sBAAsB,EAAE,GAC9B,eAAe,CAmFjB;AAMD;;;GAGG;AACH,wBAAgB,gBAAgB,CAC/B,QAAQ,EAAE,IAAI,EAAE,EAChB,KAAK,EAAE,cAAc,GACnB,eAAe,CAuCjB;AA8FD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC9B,QAAQ,EAAE,IAAI,EAAE,EAChB,KAAK,EAAE,aAAa,EACpB,MAAM,CAAC,EAAE,MAAM,GACb,eAAe,CAqJjB;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,CAC/B,QAAQ,EAAE,IAAI,EACd,SAAS,EAAE,SAAS,GAClB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAiH3B;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"}
@@ -265,15 +265,34 @@ function applyHeadingExtract(text, extract) {
265
265
  * Matching is case-insensitive against canonical names and aliases.
266
266
  * Returns the canonical name and definition, or undefined if no match.
267
267
  */
268
- function matchKnownSection(headingText, knownSections) {
268
+ /** Kebab-case a canonical section name into a language-stable slug (matches the
269
+ * plan `slugify` semantics for the ASCII canonical names). */
270
+ function slugifyCanonical(text) {
271
+ return text
272
+ .toLowerCase()
273
+ .trim()
274
+ .replace(/[^\w\s-]/g, '')
275
+ .replace(/[\s_]+/g, '-')
276
+ .replace(/-+/g, '-')
277
+ .replace(/^-|-$/g, '');
278
+ }
279
+ function matchKnownSection(headingText, knownSections, locale) {
269
280
  const normalized = headingText.toLowerCase().trim();
281
+ // SPEC-035 Zone 7 — when a locale is configured, its `i18nAliases` are matched
282
+ // in addition to the base `alias` list (BCP 47 region-strip, `de-AT`→`de`).
283
+ const localeCandidates = locale
284
+ ? locale.split('-').map((_, i, parts) => parts.slice(0, parts.length - i).join('-'))
285
+ : [];
270
286
  for (const [canonicalName, definition] of Object.entries(knownSections)) {
271
287
  if (canonicalName.toLowerCase() === normalized) {
272
288
  return { canonicalName, definition };
273
289
  }
274
- if (definition.alias) {
275
- for (const alias of definition.alias) {
276
- if (alias.toLowerCase() === normalized) {
290
+ if (definition.alias?.some(a => a.toLowerCase() === normalized)) {
291
+ return { canonicalName, definition };
292
+ }
293
+ if (definition.i18nAliases) {
294
+ for (const tag of localeCandidates) {
295
+ if (definition.i18nAliases[tag]?.some(a => a.toLowerCase() === normalized)) {
277
296
  return { canonicalName, definition };
278
297
  }
279
298
  }
@@ -289,7 +308,7 @@ function matchKnownSection(headingText, knownSections) {
289
308
  * - When `emitTag` is set, sections become AST tag nodes for child rune processing.
290
309
  * - When `emitTag` is absent, sections are resolved objects with heading info + body.
291
310
  */
292
- export function resolveSections(children, model) {
311
+ export function resolveSections(children, model, locale) {
293
312
  // 1. Determine heading level
294
313
  const headingSpec = model.sectionHeading;
295
314
  let level;
@@ -397,14 +416,21 @@ export function resolveSections(children, model) {
397
416
  : {};
398
417
  // Resolve knownSections: match heading against canonical names and aliases
399
418
  const knownMatch = model.knownSections
400
- ? matchKnownSection(headingText, model.knownSections)
419
+ ? matchKnownSection(headingText, model.knownSections, locale)
401
420
  : undefined;
402
421
  const sectionModel = knownMatch?.definition.model ?? model.sectionModel;
403
422
  const bodyResolved = resolve(section.body, sectionModel);
423
+ // SPEC-035 Zone 7 — attach the language-stable slug for the section
424
+ // wrapper's `data-name`: an explicit `canonicalSlug` if declared, else the
425
+ // slugified canonical name. `buildSections` prefers this over the heading text.
426
+ const canonicalSlug = knownMatch
427
+ ? (knownMatch.definition.canonicalSlug ?? slugifyCanonical(knownMatch.canonicalName))
428
+ : undefined;
404
429
  return {
405
430
  $heading: headingText,
406
431
  $headingNode: section.headingNode,
407
432
  ...(knownMatch ? { $canonicalName: knownMatch.canonicalName } : {}),
433
+ ...(canonicalSlug ? { $canonicalSlug: canonicalSlug } : {}),
408
434
  ...Object.fromEntries(Object.entries(extracted).map(([k, v]) => [`$${k}`, v])),
409
435
  ...bodyResolved,
410
436
  };
@@ -598,21 +624,21 @@ export function resolveListItems(listNode, itemModel) {
598
624
  * Resolve a content model against AST children.
599
625
  * Dispatches to the pattern-specific resolver based on `model.type`.
600
626
  */
601
- export function resolve(children, model, attributes) {
627
+ export function resolve(children, model, attributes, locale) {
602
628
  // Handle conditional models
603
629
  if (isConditional(model)) {
604
630
  for (const branch of model.when) {
605
631
  if (evaluateCondition(branch.condition, children, attributes ?? {})) {
606
- return resolve(children, branch.model, attributes);
632
+ return resolve(children, branch.model, attributes, locale);
607
633
  }
608
634
  }
609
- return resolve(children, model.default, attributes);
635
+ return resolve(children, model.default, attributes, locale);
610
636
  }
611
637
  switch (model.type) {
612
638
  case 'sequence':
613
639
  return resolveSequence(children, model.fields);
614
640
  case 'sections':
615
- return resolveSections(children, model);
641
+ return resolveSections(children, model, locale);
616
642
  case 'delimited':
617
643
  return resolveDelimited(children, model);
618
644
  case 'custom':
@@ -625,9 +651,9 @@ export function resolve(children, model, attributes) {
625
651
  * Full resolution entry point: extracts special tags (tint, bg), then
626
652
  * resolves the content model.
627
653
  */
628
- export function resolveContentModel(children, model, attributes) {
654
+ export function resolveContentModel(children, model, attributes, locale) {
629
655
  const { filtered, tintNode, bgNode } = extractSpecialTags(children);
630
- const content = resolve(filtered, model, attributes);
656
+ const content = resolve(filtered, model, attributes, locale);
631
657
  return { content, tintNode, bgNode };
632
658
  }
633
659
  //# sourceMappingURL=resolver.js.map