@refrakt-md/runes 0.32.0 → 0.34.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.
- package/dist/aggregate-resolve.d.ts.map +1 -1
- package/dist/aggregate-resolve.js +18 -4
- package/dist/aggregate-resolve.js.map +1 -1
- package/dist/attributes.d.ts +15 -0
- package/dist/attributes.d.ts.map +1 -1
- package/dist/attributes.js +22 -7
- package/dist/attributes.js.map +1 -1
- package/dist/collection-helpers.d.ts.map +1 -1
- package/dist/collection-helpers.js +1 -1
- package/dist/collection-helpers.js.map +1 -1
- package/dist/collection-resolve.d.ts.map +1 -1
- package/dist/collection-resolve.js +31 -8
- package/dist/collection-resolve.js.map +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +214 -77
- package/dist/config.js.map +1 -1
- package/dist/data-adapters.d.ts.map +1 -1
- package/dist/data-adapters.js +28 -11
- package/dist/data-adapters.js.map +1 -1
- package/dist/data-emit.d.ts +1 -0
- package/dist/data-emit.d.ts.map +1 -1
- package/dist/data-emit.js +40 -0
- package/dist/data-emit.js.map +1 -1
- package/dist/data-pipeline.d.ts +10 -4
- package/dist/data-pipeline.d.ts.map +1 -1
- package/dist/data-pipeline.js +331 -32
- package/dist/data-pipeline.js.map +1 -1
- package/dist/data-projection.d.ts +21 -0
- package/dist/data-projection.d.ts.map +1 -1
- package/dist/data-projection.js +41 -3
- package/dist/data-projection.js.map +1 -1
- package/dist/data-resolve.d.ts.map +1 -1
- package/dist/data-resolve.js +5 -2
- package/dist/data-resolve.js.map +1 -1
- package/dist/documents/page.d.ts.map +1 -1
- package/dist/documents/page.js.map +1 -1
- package/dist/drawer-pipeline.d.ts.map +1 -1
- package/dist/drawer-pipeline.js +3 -2
- package/dist/drawer-pipeline.js.map +1 -1
- package/dist/expand-pipeline.d.ts.map +1 -1
- package/dist/expand-pipeline.js +3 -3
- package/dist/expand-pipeline.js.map +1 -1
- package/dist/fence-escape.d.ts.map +1 -1
- package/dist/fence-escape.js +1 -3
- package/dist/fence-escape.js.map +1 -1
- package/dist/field-match.d.ts.map +1 -1
- package/dist/field-match.js.map +1 -1
- package/dist/file-ref-resolve.js +6 -4
- package/dist/file-ref-resolve.js.map +1 -1
- package/dist/fixtures.js +2 -2
- package/dist/fixtures.js.map +1 -1
- package/dist/functions.d.ts.map +1 -1
- package/dist/functions.js +16 -3
- package/dist/functions.js.map +1 -1
- package/dist/include-pipeline.d.ts +52 -0
- package/dist/include-pipeline.d.ts.map +1 -0
- package/dist/include-pipeline.js +206 -0
- package/dist/include-pipeline.js.map +1 -0
- package/dist/index.d.ts +94 -37
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +298 -59
- package/dist/index.js.map +1 -1
- package/dist/interfaces.d.ts.map +1 -1
- package/dist/interfaces.js.map +1 -1
- package/dist/layouts/grid.d.ts +1 -1
- package/dist/layouts/grid.d.ts.map +1 -1
- package/dist/layouts/grid.js +4 -6
- package/dist/layouts/grid.js.map +1 -1
- package/dist/lib/component.d.ts +20 -0
- package/dist/lib/component.d.ts.map +1 -1
- package/dist/lib/component.js +42 -7
- package/dist/lib/component.js.map +1 -1
- package/dist/lib/icon-resolve.d.ts.map +1 -1
- package/dist/lib/icon-resolve.js.map +1 -1
- package/dist/lib/image-schemes.js +2 -2
- package/dist/lib/image-schemes.js.map +1 -1
- package/dist/lib/index.d.ts +2 -2
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +252 -51
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/node.d.ts.map +1 -1
- package/dist/lib/node.js +3 -2
- package/dist/lib/node.js.map +1 -1
- package/dist/lib/placeholder.d.ts.map +1 -1
- package/dist/lib/placeholder.js +6 -9
- package/dist/lib/placeholder.js.map +1 -1
- package/dist/lib/read-file.d.ts.map +1 -1
- package/dist/lib/read-file.js.map +1 -1
- package/dist/lib/renderable.d.ts.map +1 -1
- package/dist/lib/renderable.js +5 -5
- package/dist/lib/renderable.js.map +1 -1
- package/dist/lib/resolver.d.ts.map +1 -1
- package/dist/lib/resolver.js +26 -35
- package/dist/lib/resolver.js.map +1 -1
- package/dist/lib/svg.d.ts.map +1 -1
- package/dist/lib/svg.js.map +1 -1
- package/dist/nodes.d.ts.map +1 -1
- package/dist/nodes.js +24 -22
- package/dist/nodes.js.map +1 -1
- package/dist/outline-scope.js +1 -3
- package/dist/outline-scope.js.map +1 -1
- package/dist/plugins.d.ts.map +1 -1
- package/dist/plugins.js +13 -10
- package/dist/plugins.js.map +1 -1
- package/dist/reference.d.ts +27 -2
- package/dist/reference.d.ts.map +1 -1
- package/dist/reference.js +58 -25
- package/dist/reference.js.map +1 -1
- package/dist/relationships-resolve.d.ts.map +1 -1
- package/dist/relationships-resolve.js +31 -7
- package/dist/relationships-resolve.js.map +1 -1
- package/dist/rune.d.ts.map +1 -1
- package/dist/rune.js.map +1 -1
- package/dist/sandbox-sources.js +6 -6
- package/dist/sandbox-sources.js.map +1 -1
- package/dist/seo.d.ts.map +1 -1
- package/dist/seo.js +4 -4
- package/dist/seo.js.map +1 -1
- package/dist/snippet-pipeline.d.ts.map +1 -1
- package/dist/snippet-pipeline.js +1 -1
- package/dist/snippet-pipeline.js.map +1 -1
- package/dist/tags/accordion.d.ts.map +1 -1
- package/dist/tags/accordion.js +43 -11
- package/dist/tags/accordion.js.map +1 -1
- package/dist/tags/aggregate.d.ts.map +1 -1
- package/dist/tags/aggregate.js +65 -10
- package/dist/tags/aggregate.js.map +1 -1
- package/dist/tags/annotate.d.ts.map +1 -1
- package/dist/tags/annotate.js +12 -9
- package/dist/tags/annotate.js.map +1 -1
- package/dist/tags/badge.d.ts.map +1 -1
- package/dist/tags/badge.js.map +1 -1
- package/dist/tags/bar.d.ts.map +1 -1
- package/dist/tags/bar.js +3 -7
- package/dist/tags/bar.js.map +1 -1
- package/dist/tags/bg.d.ts.map +1 -1
- package/dist/tags/bg.js +60 -12
- package/dist/tags/bg.js.map +1 -1
- package/dist/tags/blog.d.ts.map +1 -1
- package/dist/tags/blog.js +35 -10
- package/dist/tags/blog.js.map +1 -1
- package/dist/tags/breadcrumb.d.ts.map +1 -1
- package/dist/tags/breadcrumb.js +33 -11
- package/dist/tags/breadcrumb.js.map +1 -1
- package/dist/tags/budget.d.ts.map +1 -1
- package/dist/tags/budget.js +54 -16
- package/dist/tags/budget.js.map +1 -1
- package/dist/tags/card.d.ts.map +1 -1
- package/dist/tags/card.js +24 -6
- package/dist/tags/card.js.map +1 -1
- package/dist/tags/chart.d.ts.map +1 -1
- package/dist/tags/chart.js +33 -11
- package/dist/tags/chart.js.map +1 -1
- package/dist/tags/code.d.ts +25 -0
- package/dist/tags/code.d.ts.map +1 -0
- package/dist/tags/code.js +36 -0
- package/dist/tags/code.js.map +1 -0
- package/dist/tags/codegroup.d.ts.map +1 -1
- package/dist/tags/codegroup.js +39 -21
- package/dist/tags/codegroup.js.map +1 -1
- package/dist/tags/collection.d.ts.map +1 -1
- package/dist/tags/collection.js +55 -9
- package/dist/tags/collection.js.map +1 -1
- package/dist/tags/common.d.ts.map +1 -1
- package/dist/tags/common.js +34 -9
- package/dist/tags/common.js.map +1 -1
- package/dist/tags/compare.d.ts.map +1 -1
- package/dist/tags/compare.js +26 -14
- package/dist/tags/compare.js.map +1 -1
- package/dist/tags/conversation.d.ts.map +1 -1
- package/dist/tags/conversation.js +19 -17
- package/dist/tags/conversation.js.map +1 -1
- package/dist/tags/data.d.ts.map +1 -1
- package/dist/tags/data.js +91 -15
- package/dist/tags/data.js.map +1 -1
- package/dist/tags/datatable.d.ts.map +1 -1
- package/dist/tags/datatable.js +22 -8
- package/dist/tags/datatable.js.map +1 -1
- package/dist/tags/deflist.d.ts.map +1 -1
- package/dist/tags/deflist.js +5 -11
- package/dist/tags/deflist.js.map +1 -1
- package/dist/tags/details.d.ts.map +1 -1
- package/dist/tags/details.js +8 -5
- package/dist/tags/details.js.map +1 -1
- package/dist/tags/diagram.d.ts.map +1 -1
- package/dist/tags/diagram.js +9 -5
- package/dist/tags/diagram.js.map +1 -1
- package/dist/tags/diff.d.ts.map +1 -1
- package/dist/tags/diff.js +43 -24
- package/dist/tags/diff.js.map +1 -1
- package/dist/tags/drawer.d.ts.map +1 -1
- package/dist/tags/drawer.js +4 -6
- package/dist/tags/drawer.js.map +1 -1
- package/dist/tags/embed.d.ts.map +1 -1
- package/dist/tags/embed.js +10 -5
- package/dist/tags/embed.js.map +1 -1
- package/dist/tags/expand.d.ts.map +1 -1
- package/dist/tags/expand.js.map +1 -1
- package/dist/tags/figure.d.ts.map +1 -1
- package/dist/tags/figure.js +29 -9
- package/dist/tags/figure.js.map +1 -1
- package/dist/tags/file-ref.d.ts.map +1 -1
- package/dist/tags/file-ref.js.map +1 -1
- package/dist/tags/form.d.ts.map +1 -1
- package/dist/tags/form.js +52 -25
- package/dist/tags/form.js.map +1 -1
- package/dist/tags/gallery.d.ts.map +1 -1
- package/dist/tags/gallery.js +26 -12
- package/dist/tags/gallery.js.map +1 -1
- package/dist/tags/grid.d.ts.map +1 -1
- package/dist/tags/grid.js +57 -14
- package/dist/tags/grid.js.map +1 -1
- package/dist/tags/hint.d.ts.map +1 -1
- package/dist/tags/hint.js +9 -5
- package/dist/tags/hint.js.map +1 -1
- package/dist/tags/icon.d.ts.map +1 -1
- package/dist/tags/icon.js +5 -1
- package/dist/tags/icon.js.map +1 -1
- package/dist/tags/include.d.ts +24 -0
- package/dist/tags/include.d.ts.map +1 -0
- package/dist/tags/include.js +46 -0
- package/dist/tags/include.js.map +1 -0
- package/dist/tags/juxtapose.d.ts.map +1 -1
- package/dist/tags/juxtapose.js +32 -14
- package/dist/tags/juxtapose.js.map +1 -1
- package/dist/tags/layout.d.ts.map +1 -1
- package/dist/tags/layout.js +7 -4
- package/dist/tags/layout.js.map +1 -1
- package/dist/tags/mediatext.d.ts.map +1 -1
- package/dist/tags/mediatext.js +19 -8
- package/dist/tags/mediatext.js.map +1 -1
- package/dist/tags/nav.d.ts.map +1 -1
- package/dist/tags/nav.js +43 -23
- package/dist/tags/nav.js.map +1 -1
- package/dist/tags/pagination.d.ts.map +1 -1
- package/dist/tags/pagination.js +27 -5
- package/dist/tags/pagination.js.map +1 -1
- package/dist/tags/progress.d.ts.map +1 -1
- package/dist/tags/progress.js +25 -5
- package/dist/tags/progress.js.map +1 -1
- package/dist/tags/pullquote.d.ts.map +1 -1
- package/dist/tags/pullquote.js +16 -9
- package/dist/tags/pullquote.js.map +1 -1
- package/dist/tags/region.d.ts.map +1 -1
- package/dist/tags/region.js +9 -4
- package/dist/tags/region.js.map +1 -1
- package/dist/tags/relationships.d.ts.map +1 -1
- package/dist/tags/relationships.js +55 -9
- package/dist/tags/relationships.js.map +1 -1
- package/dist/tags/reveal.d.ts.map +1 -1
- package/dist/tags/reveal.js +16 -7
- package/dist/tags/reveal.js.map +1 -1
- package/dist/tags/sandbox.d.ts.map +1 -1
- package/dist/tags/sandbox.js +104 -44
- package/dist/tags/sandbox.js.map +1 -1
- package/dist/tags/section.d.ts.map +1 -1
- package/dist/tags/section.js +13 -3
- package/dist/tags/section.js.map +1 -1
- package/dist/tags/showcase.d.ts.map +1 -1
- package/dist/tags/showcase.js +33 -11
- package/dist/tags/showcase.js.map +1 -1
- package/dist/tags/sidenote.d.ts.map +1 -1
- package/dist/tags/sidenote.js +9 -5
- package/dist/tags/sidenote.js.map +1 -1
- package/dist/tags/snippet.d.ts.map +1 -1
- package/dist/tags/snippet.js +14 -6
- package/dist/tags/snippet.js.map +1 -1
- package/dist/tags/tabs.d.ts.map +1 -1
- package/dist/tags/tabs.js +16 -9
- package/dist/tags/tabs.js.map +1 -1
- package/dist/tags/textblock.d.ts.map +1 -1
- package/dist/tags/textblock.js +9 -5
- package/dist/tags/textblock.js.map +1 -1
- package/dist/tags/tint.d.ts +1 -1
- package/dist/tags/tint.d.ts.map +1 -1
- package/dist/tags/tint.js +14 -2
- package/dist/tags/tint.js.map +1 -1
- package/dist/tags/toc.d.ts.map +1 -1
- package/dist/tags/toc.js +16 -7
- package/dist/tags/toc.js.map +1 -1
- package/dist/tags/xref.d.ts.map +1 -1
- package/dist/tags/xref.js.map +1 -1
- package/dist/universal-attributes.d.ts.map +1 -1
- package/dist/universal-attributes.js +28 -5
- package/dist/universal-attributes.js.map +1 -1
- package/dist/util.d.ts +41 -1
- package/dist/util.d.ts.map +1 -1
- package/dist/util.js +72 -14
- package/dist/util.js.map +1 -1
- package/dist/xref-patterns.js +1 -1
- package/dist/xref-patterns.js.map +1 -1
- package/dist/xref-preview-resolve.js +3 -4
- package/dist/xref-preview-resolve.js.map +1 -1
- package/dist/xref-resolve.d.ts.map +1 -1
- package/dist/xref-resolve.js +4 -4
- package/dist/xref-resolve.js.map +1 -1
- package/i18n/de.json +67 -67
- package/i18n/en.json +67 -67
- package/package.json +3 -3
- package/dist/tags/error.d.ts +0 -3
- package/dist/tags/error.d.ts.map +0 -1
- package/dist/tags/error.js +0 -34
- package/dist/tags/error.js.map +0 -1
package/dist/tags/sidenote.js
CHANGED
|
@@ -11,19 +11,23 @@ export const sidenote = createContentModelSchema({
|
|
|
11
11
|
sections: sidenoteSections,
|
|
12
12
|
provides: ['prose'],
|
|
13
13
|
attributes: {
|
|
14
|
-
variant: {
|
|
14
|
+
variant: {
|
|
15
|
+
type: String,
|
|
16
|
+
required: false,
|
|
17
|
+
matches: variantType.slice(),
|
|
18
|
+
description: 'Display style: sidenote, footnote, or tooltip',
|
|
19
|
+
},
|
|
15
20
|
},
|
|
16
21
|
contentModel: {
|
|
17
22
|
type: 'sequence',
|
|
18
|
-
fields: [
|
|
19
|
-
{ name: 'body', match: 'any', optional: true, greedy: true },
|
|
20
|
-
],
|
|
23
|
+
fields: [{ name: 'body', match: 'any', optional: true, greedy: true }],
|
|
21
24
|
},
|
|
22
25
|
transform(resolved, attrs, config) {
|
|
23
26
|
const variantMeta = new Tag('meta', { content: attrs.variant ?? 'sidenote' });
|
|
24
27
|
const body = new RenderableNodeCursor(Markdoc.transform(asNodes(resolved.body), config));
|
|
25
28
|
const bodyDiv = body.wrap('div');
|
|
26
|
-
return createComponentRenderable({
|
|
29
|
+
return createComponentRenderable({
|
|
30
|
+
rune: 'sidenote',
|
|
27
31
|
tag: 'aside',
|
|
28
32
|
properties: {
|
|
29
33
|
variant: variantMeta,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sidenote.js","sourceRoot":"","sources":["../../src/tags/sidenote.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAEvC,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC/F,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE5D,MAAM,WAAW,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,CAAU,CAAC;AAEjE,4EAA4E;AAC5E,0EAA0E;AAC1E,iCAAiC;AACjC,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAW,CAAC;AAE1D,MAAM,CAAC,MAAM,QAAQ,GAAG,wBAAwB,CAAC;IAChD,QAAQ,EAAE,gBAAgB;IAC1B,QAAQ,EAAE,CAAC,OAAO,CAAC;IACnB,UAAU,EAAE;QACX,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"sidenote.js","sourceRoot":"","sources":["../../src/tags/sidenote.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAEvC,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC/F,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE5D,MAAM,WAAW,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,CAAU,CAAC;AAEjE,4EAA4E;AAC5E,0EAA0E;AAC1E,iCAAiC;AACjC,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAW,CAAC;AAE1D,MAAM,CAAC,MAAM,QAAQ,GAAG,wBAAwB,CAAC;IAChD,QAAQ,EAAE,gBAAgB;IAC1B,QAAQ,EAAE,CAAC,OAAO,CAAC;IACnB,UAAU,EAAE;QACX,OAAO,EAAE;YACR,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,WAAW,CAAC,KAAK,EAAE;YAC5B,WAAW,EAAE,+CAA+C;SAC5D;KACD;IACD,YAAY,EAAE;QACb,IAAI,EAAE,UAAU;QAChB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;KACtE;IACD,SAAS,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM;QAChC,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,UAAU,EAAE,CAAC,CAAC;QAC9E,MAAM,IAAI,GAAG,IAAI,oBAAoB,CACpC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAyB,CACzE,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEjC,OAAO,yBAAyB,CAAC;YAChC,IAAI,EAAE,UAAU;YAChB,GAAG,EAAE,OAAO;YACZ,UAAU,EAAE;gBACX,OAAO,EAAE,WAAW;aACpB;YACD,IAAI,EAAE;gBACL,IAAI,EAAE,OAAO;aACb;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;SACvC,CAAC,CAAC;IACJ,CAAC;CACD,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snippet.d.ts","sourceRoot":"","sources":["../../src/tags/snippet.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"snippet.d.ts","sourceRoot":"","sources":["../../src/tags/snippet.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,OAAO,mCAqDlB,CAAC"}
|
package/dist/tags/snippet.js
CHANGED
|
@@ -48,12 +48,20 @@ export const snippet = createContentModelSchema({
|
|
|
48
48
|
transform(_resolved, _attrs) {
|
|
49
49
|
// Unreachable in normal operation — corePipelineHooks.preprocess
|
|
50
50
|
// replaces snippet tags with fence nodes before the transform runs.
|
|
51
|
-
//
|
|
52
|
-
//
|
|
53
|
-
//
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
'
|
|
51
|
+
//
|
|
52
|
+
// The reachable case is a content author's, not a framework author's:
|
|
53
|
+
// the file was pulled in with `{% partial %}`, which expands during the
|
|
54
|
+
// transform — after the preprocess phase. Name that fix first (SPEC-129).
|
|
55
|
+
throw new Error('{% snippet %} reached the transform phase unresolved.\n\n' +
|
|
56
|
+
'If this file is pulled in with {% partial %}: use {% include %} instead. ' +
|
|
57
|
+
'Markdoc expands partials during the transform, which is after the preprocess ' +
|
|
58
|
+
'phase that resolves `snippet` — so a `snippet` tag inside a partial never gets ' +
|
|
59
|
+
'read. {% include file="..." /%} pastes the file before preprocess, so `snippet` ' +
|
|
60
|
+
'and `data` inside it resolve. Both runes read the same `_partials/` directory ' +
|
|
61
|
+
'and file roots, so only the call site changes.\n\n' +
|
|
62
|
+
'If you are building a custom pipeline: registered `preprocess` hooks must run ' +
|
|
63
|
+
'before `Markdoc.transform` (snippet pre-resolves to a Markdoc `fence` node; ' +
|
|
64
|
+
'see SPEC-062 § Composition).');
|
|
57
65
|
},
|
|
58
66
|
});
|
|
59
67
|
//# sourceMappingURL=snippet.js.map
|
package/dist/tags/snippet.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snippet.js","sourceRoot":"","sources":["../../src/tags/snippet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAE3D;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,wBAAwB,CAAC;IAC/C,UAAU,EAAE;QACX,IAAI,EAAE;YACL,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,IAAI;YACd,WAAW,
|
|
1
|
+
{"version":3,"file":"snippet.js","sourceRoot":"","sources":["../../src/tags/snippet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAE3D;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,wBAAwB,CAAC;IAC/C,UAAU,EAAE;QACX,IAAI,EAAE;YACL,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,IAAI;YACd,WAAW,EACV,yFAAyF;SAC1F;QACD,KAAK,EAAE;YACN,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,KAAK;YACf,WAAW,EACV,6GAA6G;SAC9G;QACD,IAAI,EAAE;YACL,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,6EAA6E;SAC1F;QACD,WAAW,EAAE;YACZ,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,KAAK;YACf,WAAW,EACV,wLAAwL;SACzL;QACD,SAAS,EAAE;YACV,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,KAAK;YACf,WAAW,EACV,kPAAkP;SACnP;KACD;IACD,YAAY,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE;IAC9C,SAAS,CAAC,SAAS,EAAE,MAAM;QAC1B,iEAAiE;QACjE,oEAAoE;QACpE,EAAE;QACF,sEAAsE;QACtE,wEAAwE;QACxE,0EAA0E;QAC1E,MAAM,IAAI,KAAK,CACd,2DAA2D;YAC1D,2EAA2E;YAC3E,+EAA+E;YAC/E,iFAAiF;YACjF,kFAAkF;YAClF,gFAAgF;YAChF,oDAAoD;YACpD,gFAAgF;YAChF,8EAA8E;YAC9E,8BAA8B,CAC/B,CAAC;IACH,CAAC;CACD,CAAC,CAAC"}
|
package/dist/tags/tabs.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../src/tags/tabs.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAQvC,eAAO,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../src/tags/tabs.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAQvC,eAAO,MAAM,GAAG,gBA2Cd,CAAC;AA8BH,eAAO,MAAM,gBAAgB;;;;CAInB,CAAC;AAEX,eAAO,MAAM,IAAI,gBAmDf,CAAC"}
|
package/dist/tags/tabs.js
CHANGED
|
@@ -11,9 +11,7 @@ export const tab = createContentModelSchema({
|
|
|
11
11
|
},
|
|
12
12
|
contentModel: {
|
|
13
13
|
type: 'sequence',
|
|
14
|
-
fields: [
|
|
15
|
-
{ name: 'body', match: 'any', optional: true, greedy: true },
|
|
16
|
-
],
|
|
14
|
+
fields: [{ name: 'body', match: 'any', optional: true, greedy: true }],
|
|
17
15
|
},
|
|
18
16
|
transform(resolved, attrs, config) {
|
|
19
17
|
let tabCursor = new RenderableNodeCursor([]);
|
|
@@ -25,17 +23,19 @@ export const tab = createContentModelSchema({
|
|
|
25
23
|
const name = tabCursor.tag('span');
|
|
26
24
|
const image = tabCursor.tag('svg');
|
|
27
25
|
return [
|
|
28
|
-
createComponentRenderable({
|
|
26
|
+
createComponentRenderable({
|
|
27
|
+
rune: 'tab',
|
|
29
28
|
tag: 'button',
|
|
30
29
|
properties: { image },
|
|
31
30
|
refs: { name },
|
|
32
31
|
children: tabCursor.toArray(),
|
|
33
32
|
}),
|
|
34
|
-
createComponentRenderable({
|
|
33
|
+
createComponentRenderable({
|
|
34
|
+
rune: 'tab-panel',
|
|
35
35
|
tag: 'div',
|
|
36
36
|
properties: {},
|
|
37
37
|
children: panel.toArray(),
|
|
38
|
-
})
|
|
38
|
+
}),
|
|
39
39
|
];
|
|
40
40
|
},
|
|
41
41
|
});
|
|
@@ -47,7 +47,9 @@ function convertHeadings(nodes) {
|
|
|
47
47
|
const tags = converted[n].children.map((item) => {
|
|
48
48
|
const heading = item.children[0];
|
|
49
49
|
const image = Array.from(heading.walk()).find((n) => n.type === 'image');
|
|
50
|
-
const name = Array.from(heading.walk())
|
|
50
|
+
const name = Array.from(heading.walk())
|
|
51
|
+
.filter((n) => n.type === 'text')
|
|
52
|
+
.map((t) => t.attributes.content);
|
|
51
53
|
return new Ast.Node('tag', {
|
|
52
54
|
name,
|
|
53
55
|
image: image ? image.attributes.src : undefined,
|
|
@@ -59,7 +61,11 @@ function convertHeadings(nodes) {
|
|
|
59
61
|
// SPEC-125 Phase 2 — join tables the rune declares about itself. Referenced
|
|
60
62
|
// from the theme config rather than owned by it: a theme may not redefine
|
|
61
63
|
// what a section *is* (ADR-028).
|
|
62
|
-
export const tabGroupSections = {
|
|
64
|
+
export const tabGroupSections = {
|
|
65
|
+
preamble: 'preamble',
|
|
66
|
+
headline: 'title',
|
|
67
|
+
blurb: 'description',
|
|
68
|
+
};
|
|
63
69
|
export const tabs = createContentModelSchema({
|
|
64
70
|
sections: tabGroupSections,
|
|
65
71
|
attributes: {},
|
|
@@ -90,7 +96,8 @@ export const tabs = createContentModelSchema({
|
|
|
90
96
|
const children = headerNodes.count() > 0
|
|
91
97
|
? [headerNodes.wrap('header').next(), tabList.next(), panelList.next()]
|
|
92
98
|
: [tabList.next(), panelList.next()];
|
|
93
|
-
return createComponentRenderable({
|
|
99
|
+
return createComponentRenderable({
|
|
100
|
+
rune: 'tab-group',
|
|
94
101
|
tag: 'section',
|
|
95
102
|
class: attrs.class,
|
|
96
103
|
property: 'contentSection',
|
package/dist/tags/tabs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../src/tags/tabs.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAEvC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC/F,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEpD,MAAM,CAAC,MAAM,GAAG,GAAG,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../src/tags/tabs.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textblock.d.ts","sourceRoot":"","sources":["../../src/tags/textblock.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAWvC,eAAO,MAAM,iBAAiB;;CAA4B,CAAC;AAE3D,eAAO,MAAM,SAAS,
|
|
1
|
+
{"version":3,"file":"textblock.d.ts","sourceRoot":"","sources":["../../src/tags/textblock.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAWvC,eAAO,MAAM,iBAAiB;;CAA4B,CAAC;AAE3D,eAAO,MAAM,SAAS,gBAsDpB,CAAC"}
|
package/dist/tags/textblock.js
CHANGED
|
@@ -13,13 +13,16 @@ export const textblock = createContentModelSchema({
|
|
|
13
13
|
attributes: {
|
|
14
14
|
columns: { type: Number, required: false, description: 'Number of text columns' },
|
|
15
15
|
lead: { type: Boolean, required: false, description: 'Style the first paragraph as a lead' },
|
|
16
|
-
align: {
|
|
16
|
+
align: {
|
|
17
|
+
type: String,
|
|
18
|
+
required: false,
|
|
19
|
+
matches: alignValues.slice(),
|
|
20
|
+
description: 'Text alignment',
|
|
21
|
+
},
|
|
17
22
|
},
|
|
18
23
|
contentModel: {
|
|
19
24
|
type: 'sequence',
|
|
20
|
-
fields: [
|
|
21
|
-
{ name: 'body', match: 'any', optional: true, greedy: true },
|
|
22
|
-
],
|
|
25
|
+
fields: [{ name: 'body', match: 'any', optional: true, greedy: true }],
|
|
23
26
|
},
|
|
24
27
|
transform(resolved, attrs, config) {
|
|
25
28
|
const children = new RenderableNodeCursor(Markdoc.transform(asNodes(resolved.body), config));
|
|
@@ -41,7 +44,8 @@ export const textblock = createContentModelSchema({
|
|
|
41
44
|
if (alignMeta)
|
|
42
45
|
childNodes.push(alignMeta);
|
|
43
46
|
childNodes.push(body.next());
|
|
44
|
-
return createComponentRenderable({
|
|
47
|
+
return createComponentRenderable({
|
|
48
|
+
rune: 'text-block',
|
|
45
49
|
tag: 'div',
|
|
46
50
|
properties: {
|
|
47
51
|
...(columnsMeta ? { columns: columnsMeta } : {}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textblock.js","sourceRoot":"","sources":["../../src/tags/textblock.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAEvC,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC/F,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE5D,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAU,CAAC;AAEpE,4EAA4E;AAC5E,0EAA0E;AAC1E,iCAAiC;AACjC,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAW,CAAC;AAE3D,MAAM,CAAC,MAAM,SAAS,GAAG,wBAAwB,CAAC;IACjD,QAAQ,EAAE,iBAAiB;IAC3B,QAAQ,EAAE,CAAC,OAAO,CAAC;IACnB,UAAU,EAAE;QACX,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,wBAAwB,EAAE;QACjF,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,qCAAqC,EAAE;QAC5F,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"textblock.js","sourceRoot":"","sources":["../../src/tags/textblock.ts"],"names":[],"mappings":"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"}
|
package/dist/tags/tint.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Schema } from '@markdoc/markdoc';
|
|
2
2
|
/** The 6 tint token names */
|
|
3
3
|
export declare const TINT_TOKENS: readonly ["background", "surface", "primary", "secondary", "accent", "border"];
|
|
4
|
-
export type TintToken = typeof TINT_TOKENS[number];
|
|
4
|
+
export type TintToken = (typeof TINT_TOKENS)[number];
|
|
5
5
|
/**
|
|
6
6
|
* Tint rune schema.
|
|
7
7
|
*
|
package/dist/tags/tint.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tint.d.ts","sourceRoot":"","sources":["../../src/tags/tint.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAQ,MAAM,EAAuB,MAAM,kBAAkB,CAAC;AAI1E,6BAA6B;AAC7B,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"tint.d.ts","sourceRoot":"","sources":["../../src/tags/tint.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAQ,MAAM,EAAuB,MAAM,kBAAkB,CAAC;AAI1E,6BAA6B;AAC7B,eAAO,MAAM,WAAW,gFAOd,CAAC;AACX,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAsDrD;;;;;GAKG;AACH,eAAO,MAAM,IAAI,EAAE,MAyClB,CAAC"}
|
package/dist/tags/tint.js
CHANGED
|
@@ -2,7 +2,14 @@ import Markdoc from '@markdoc/markdoc';
|
|
|
2
2
|
import { declareUniversalPosture } from '../lib/index.js';
|
|
3
3
|
const { Tag } = Markdoc;
|
|
4
4
|
/** The 6 tint token names */
|
|
5
|
-
export const TINT_TOKENS = [
|
|
5
|
+
export const TINT_TOKENS = [
|
|
6
|
+
'background',
|
|
7
|
+
'surface',
|
|
8
|
+
'primary',
|
|
9
|
+
'secondary',
|
|
10
|
+
'accent',
|
|
11
|
+
'border',
|
|
12
|
+
];
|
|
6
13
|
const TOKEN_PATTERN = /^\s*(\w+)\s*:\s*(.+)\s*$/;
|
|
7
14
|
/** Extract plain text from an AST node by walking its children */
|
|
8
15
|
function textContent(node) {
|
|
@@ -58,7 +65,12 @@ function parseTintBody(children) {
|
|
|
58
65
|
export const tint = {
|
|
59
66
|
attributes: {
|
|
60
67
|
preset: { type: String, required: false, description: 'Named tint preset from the theme' },
|
|
61
|
-
mode: {
|
|
68
|
+
mode: {
|
|
69
|
+
type: String,
|
|
70
|
+
required: false,
|
|
71
|
+
matches: ['auto', 'dark', 'light'],
|
|
72
|
+
description: 'Whether the tint adapts to auto, dark, or light mode',
|
|
73
|
+
},
|
|
62
74
|
},
|
|
63
75
|
transform(node, config) {
|
|
64
76
|
const preset = node.transformAttributes(config).preset;
|
package/dist/tags/tint.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tint.js","sourceRoot":"","sources":["../../src/tags/tint.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAEvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;AAExB,6BAA6B;AAC7B,MAAM,CAAC,MAAM,WAAW,GAAG,
|
|
1
|
+
{"version":3,"file":"tint.js","sourceRoot":"","sources":["../../src/tags/tint.ts"],"names":[],"mappings":"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"}
|
package/dist/tags/toc.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toc.d.ts","sourceRoot":"","sources":["../../src/tags/toc.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAKvC,eAAO,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"toc.d.ts","sourceRoot":"","sources":["../../src/tags/toc.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAKvC,eAAO,MAAM,GAAG,gBAgDd,CAAC"}
|
package/dist/tags/toc.js
CHANGED
|
@@ -3,8 +3,18 @@ const { Tag } = Markdoc;
|
|
|
3
3
|
import { createContentModelSchema, createComponentRenderable } from '../lib/index.js';
|
|
4
4
|
export const toc = createContentModelSchema({
|
|
5
5
|
attributes: {
|
|
6
|
-
depth: {
|
|
7
|
-
|
|
6
|
+
depth: {
|
|
7
|
+
type: Number,
|
|
8
|
+
required: false,
|
|
9
|
+
default: 3,
|
|
10
|
+
description: 'Maximum heading depth to include',
|
|
11
|
+
},
|
|
12
|
+
ordered: {
|
|
13
|
+
type: Boolean,
|
|
14
|
+
required: false,
|
|
15
|
+
default: false,
|
|
16
|
+
description: 'Use numbered list instead of bullets',
|
|
17
|
+
},
|
|
8
18
|
},
|
|
9
19
|
contentModel: {
|
|
10
20
|
type: 'sequence',
|
|
@@ -14,14 +24,13 @@ export const toc = createContentModelSchema({
|
|
|
14
24
|
const headings = config.variables?.headings || [];
|
|
15
25
|
// Filter to h2..h{depth+1}
|
|
16
26
|
const maxLevel = attrs.depth + 1;
|
|
17
|
-
const filtered = headings.filter(h => h.level >= 2 && h.level <= maxLevel);
|
|
18
|
-
const items = filtered.map(h => new Tag('li', { 'data-level': h.level }, [
|
|
19
|
-
new Tag('a', { href: `#${h.id}` }, [h.text]),
|
|
20
|
-
]));
|
|
27
|
+
const filtered = headings.filter((h) => h.level >= 2 && h.level <= maxLevel);
|
|
28
|
+
const items = filtered.map((h) => new Tag('li', { 'data-level': h.level }, [new Tag('a', { href: `#${h.id}` }, [h.text])]));
|
|
21
29
|
const list = new Tag('ul', {}, items);
|
|
22
30
|
const depthMeta = new Tag('meta', { content: attrs.depth });
|
|
23
31
|
const orderedMeta = new Tag('meta', { content: attrs.ordered });
|
|
24
|
-
return createComponentRenderable({
|
|
32
|
+
return createComponentRenderable({
|
|
33
|
+
rune: 'table-of-contents',
|
|
25
34
|
tag: 'nav',
|
|
26
35
|
properties: {
|
|
27
36
|
depth: depthMeta,
|
package/dist/tags/toc.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toc.js","sourceRoot":"","sources":["../../src/tags/toc.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAGtF,MAAM,CAAC,MAAM,GAAG,GAAG,wBAAwB,CAAC;IAC3C,UAAU,EAAE;QACX,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"toc.js","sourceRoot":"","sources":["../../src/tags/toc.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAGtF,MAAM,CAAC,MAAM,GAAG,GAAG,wBAAwB,CAAC;IAC3C,UAAU,EAAE;QACX,KAAK,EAAE;YACN,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,CAAC;YACV,WAAW,EAAE,kCAAkC;SAC/C;QACD,OAAO,EAAE;YACR,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,KAAK;YACd,WAAW,EAAE,sCAAsC;SACnD;KACD;IACD,YAAY,EAAE;QACb,IAAI,EAAE,UAAU;QAChB,MAAM,EAAE,EAAE;KACV;IACD,SAAS,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM;QACjC,MAAM,QAAQ,GAAkB,MAAM,CAAC,SAAS,EAAE,QAAQ,IAAI,EAAE,CAAC;QAEjE,2BAA2B;QAC3B,MAAM,QAAQ,GAAI,KAAK,CAAC,KAAgB,GAAG,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,QAAQ,CAAC,CAAC;QAE7E,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CACzB,CAAC,CAAC,EAAE,EAAE,CACL,IAAI,GAAG,CAAC,IAAI,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CACzF,CAAC;QAEF,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;QACtC,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QAC5D,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAEhE,OAAO,yBAAyB,CAAC;YAChC,IAAI,EAAE,mBAAmB;YACzB,GAAG,EAAE,KAAK;YACV,UAAU,EAAE;gBACX,KAAK,EAAE,SAAS;gBAChB,OAAO,EAAE,WAAW;aACpB;YACD,IAAI,EAAE;gBACL,IAAI;aACJ;YACD,QAAQ,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,IAAI,CAAC;SACxC,CAAC,CAAC;IACJ,CAAC;CACD,CAAC,CAAC"}
|
package/dist/tags/xref.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xref.d.ts","sourceRoot":"","sources":["../../src/tags/xref.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAgB,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAI7D,yFAAyF;AACzF,eAAO,MAAM,gBAAgB,SAAS,CAAC;AAEvC;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"xref.d.ts","sourceRoot":"","sources":["../../src/tags/xref.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAgB,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAI7D,yFAAyF;AACzF,eAAO,MAAM,gBAAgB,SAAS,CAAC;AAEvC;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,IAAI,EAAE,MA6ClB,CAAC"}
|
package/dist/tags/xref.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xref.js","sourceRoot":"","sources":["../../src/tags/xref.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAEvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;AAExB,yFAAyF;AACzF,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAEvC;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,IAAI,GAAW;IAC3B,WAAW,EAAE,IAAI;IACjB,MAAM,EAAE,IAAI;IACZ,UAAU,EAAE;QACX,OAAO,EAAE;YACR,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,8BAA8B;SAC3C;QACD,KAAK,EAAE;YACN,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,6CAA6C;SAC1D;QACD,IAAI,EAAE;YACL,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,qCAAqC;SAClD;QACD,OAAO,EAAE;YACR,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,CAAC,QAAQ,CAAC;YACnB,WAAW,
|
|
1
|
+
{"version":3,"file":"xref.js","sourceRoot":"","sources":["../../src/tags/xref.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAEvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;AAExB,yFAAyF;AACzF,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAEvC;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,IAAI,GAAW;IAC3B,WAAW,EAAE,IAAI;IACjB,MAAM,EAAE,IAAI;IACZ,UAAU,EAAE;QACX,OAAO,EAAE;YACR,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,8BAA8B;SAC3C;QACD,KAAK,EAAE;YACN,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,6CAA6C;SAC1D;QACD,IAAI,EAAE;YACL,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,qCAAqC;SAClD;QACD,OAAO,EAAE;YACR,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,CAAC,QAAQ,CAAC;YACnB,WAAW,EACV,mQAAmQ;SACpQ;KACD;IACD,SAAS,CAAC,IAAU,EAAE,MAAc;QACnC,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,OAAiB,CAAC;QAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,KAA2B,CAAC;QAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAA0B,CAAC;QACxD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAA6B,CAAC;QAE9D,MAAM,KAAK,GAA2B;YACrC,WAAW,EAAE,gBAAgB;YAC7B,cAAc,EAAE,EAAE;SAClB,CAAC;QAEF,IAAI,KAAK;YAAE,KAAK,CAAC,iBAAiB,CAAC,GAAG,KAAK,CAAC;QAC5C,IAAI,IAAI;YAAE,KAAK,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC;QACzC,IAAI,OAAO;YAAE,KAAK,CAAC,mBAAmB,CAAC,GAAG,OAAO,CAAC;QAElD,6DAA6D;QAC7D,OAAO,IAAI,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9C,CAAC;CACD,CAAC;AAEF,4EAA4E;AAC5E,uBAAuB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"universal-attributes.d.ts","sourceRoot":"","sources":["../src/universal-attributes.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD;;;;;;;;;;;;;;;;GAgBG;AAEH;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"universal-attributes.d.ts","sourceRoot":"","sources":["../src/universal-attributes.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD;;;;;;;;;;;;;;;;GAgBG;AAEH;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAmDvE,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,MAAM,yBAAyB,GAAG,MAAM,GAAG,QAAQ,GAAG,cAAc,GAAG,MAAM,CAAC;AAEpF;;6DAE6D;AAC7D,eAAO,MAAM,eAAe,8DAA4B,CAAC;AAEzD,MAAM,WAAW,uBAAuB;IACvC,0BAA0B;IAC1B,OAAO,CAAC,EAAE,yBAAyB,CAAC;IACpC,4EAA4E;IAC5E,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B;;;gFAG4E;IAC5E,kBAAkB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,8BAA8B;IAC9C,qDAAqD;IACrD,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/B;yDACqD;IACrD,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACzC,KAAK,GAAE,uBAA4B,GACjC,8BAA8B,CAwChC"}
|
|
@@ -35,8 +35,17 @@ export const AXIS_ATTRIBUTES = {
|
|
|
35
35
|
// is gated on a `media-position` modifier) narrowed a working attribute off
|
|
36
36
|
// 82 of 83 runes; see WORK-536.
|
|
37
37
|
bg: [
|
|
38
|
-
'bg',
|
|
39
|
-
'
|
|
38
|
+
'bg',
|
|
39
|
+
'bg-gradient',
|
|
40
|
+
'bg-from',
|
|
41
|
+
'bg-to',
|
|
42
|
+
'bg-via',
|
|
43
|
+
'bg-gradient-type',
|
|
44
|
+
'scrim',
|
|
45
|
+
'scrim-type',
|
|
46
|
+
'scrim-strength',
|
|
47
|
+
'scrim-blur',
|
|
48
|
+
'scrim-tone',
|
|
40
49
|
],
|
|
41
50
|
width: ['width'],
|
|
42
51
|
spacing: ['spacing'],
|
|
@@ -47,10 +56,24 @@ export const AXIS_ATTRIBUTES = {
|
|
|
47
56
|
dropcap: ['dropcap'],
|
|
48
57
|
motion: ['reveal', 'stagger'],
|
|
49
58
|
frame: [
|
|
50
|
-
'frame',
|
|
51
|
-
'frame-
|
|
59
|
+
'frame',
|
|
60
|
+
'frame-aspect',
|
|
61
|
+
'frame-displace',
|
|
62
|
+
'frame-displace-mode',
|
|
63
|
+
'frame-offset',
|
|
64
|
+
'frame-oversize',
|
|
65
|
+
'frame-place',
|
|
66
|
+
'frame-anchor',
|
|
67
|
+
'frame-overflow',
|
|
68
|
+
'frame-shadow',
|
|
69
|
+
],
|
|
70
|
+
substrate: [
|
|
71
|
+
'substrate',
|
|
72
|
+
'substrate-size',
|
|
73
|
+
'substrate-opacity',
|
|
74
|
+
'substrate-fill',
|
|
75
|
+
'substrate-target',
|
|
52
76
|
],
|
|
53
|
-
substrate: ['substrate', 'substrate-size', 'substrate-opacity', 'substrate-fill', 'substrate-target'],
|
|
54
77
|
// `cover` owns no author-facing attribute of its own — like `density`,
|
|
55
78
|
// `content-measure` and `content-place`, it can still be reported unavailable
|
|
56
79
|
// on a rune, it simply removes nothing from the schema.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"universal-attributes.js","sourceRoot":"","sources":["../src/universal-attributes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAIzF;;;;;;;;;;;;;;;;GAgBG;AAEH;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,eAAe,GAAgD;IAC3E,IAAI,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;IAC3B,4EAA4E;IAC5E,8EAA8E;IAC9E,2EAA2E;IAC3E,6EAA6E;IAC7E,4EAA4E;IAC5E,gCAAgC;IAChC,EAAE,EAAE;QACH,IAAI,
|
|
1
|
+
{"version":3,"file":"universal-attributes.js","sourceRoot":"","sources":["../src/universal-attributes.ts"],"names":[],"mappings":"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"}
|
package/dist/util.d.ts
CHANGED
|
@@ -14,9 +14,49 @@ export interface HeadingInfo {
|
|
|
14
14
|
/** Canonical name of the known section this heading belongs to, if any. */
|
|
15
15
|
knownSection?: string;
|
|
16
16
|
}
|
|
17
|
+
/**
|
|
18
|
+
* Build a heading's `id` from its plain text.
|
|
19
|
+
*
|
|
20
|
+
* The single implementation behind both the parse-time heading index
|
|
21
|
+
* (`extractHeadings`) and the rendered `<h*>` id (the `heading` node
|
|
22
|
+
* transform). They used to be two near-copies that had drifted apart — one
|
|
23
|
+
* stripped `?`, the other `?{}%` — so a heading containing `{`, `}` or `%` was
|
|
24
|
+
* indexed under one id and rendered under another (BUG-005).
|
|
25
|
+
*
|
|
26
|
+
* The rules are the ones an author writing an anchor by hand already assumes,
|
|
27
|
+
* and they match GitHub closely enough to be guessable: lowercase, drop
|
|
28
|
+
* punctuation, collapse whitespace and separator runs to a single `-`. Dropping
|
|
29
|
+
* punctuation also subsumes the reason `%` was stripped — a literal `%` not
|
|
30
|
+
* followed by a hex pair used to crash SvelteKit's prerender crawler in
|
|
31
|
+
* `decodeURI`.
|
|
32
|
+
*/
|
|
33
|
+
export declare function headingSlug(text: string): string;
|
|
34
|
+
/**
|
|
35
|
+
* Collect a heading node's plain text, including the content of inline `code`.
|
|
36
|
+
*
|
|
37
|
+
* Concatenated rather than joined with a space: the AST's own text nodes carry
|
|
38
|
+
* the spacing, so joining would double it. Inline code used to be skipped
|
|
39
|
+
* entirely — `` ### `fileRoots` — named directories `` indexed as
|
|
40
|
+
* `" — named directories"`, losing the heading's actual subject (BUG-005).
|
|
41
|
+
*/
|
|
42
|
+
export declare function headingText(n: Node): string;
|
|
43
|
+
/**
|
|
44
|
+
* Collect the plain text of already-transformed children, walking into tags.
|
|
45
|
+
*
|
|
46
|
+
* The renderable counterpart to {@link headingText}: inline code is a `Tag` by
|
|
47
|
+
* this point, and a variable has been resolved to its value. Used for the
|
|
48
|
+
* rendered heading id, where both of those matter.
|
|
49
|
+
*/
|
|
50
|
+
export declare function renderableText(children: RenderableTreeNode[]): string;
|
|
17
51
|
/**
|
|
18
52
|
* Pre-scan an AST for heading nodes, extracting their text and generating
|
|
19
|
-
* IDs
|
|
53
|
+
* IDs with {@link headingSlug} — the same slug rules the `heading` node
|
|
54
|
+
* transform applies, so the index and the rendered anchor agree.
|
|
55
|
+
*
|
|
56
|
+
* The two necessarily read different phases: this runs at parse time, so a
|
|
57
|
+
* heading whose text comes from a variable (`### {% $row.name %}` inside a
|
|
58
|
+
* `{% data %}` body) is not knowable here and is indexed under its unresolved
|
|
59
|
+
* form. The rendered anchor, which is what a link targets, is correct.
|
|
20
60
|
*/
|
|
21
61
|
export declare function extractHeadings(node: Node): HeadingInfo[];
|
|
22
62
|
/**
|
package/dist/util.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE9E,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAG7C,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,QAoB7D;AAED,wBAAiB,OAAO,CAAC,GAAG,EAAE,GAAG,GAAG,SAAS,CAAC,kBAAkB,CAAC,CAShE;AAED,MAAM,WAAW,qBAAqB;
|
|
1
|
+
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE9E,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAG7C,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,QAoB7D;AAED,wBAAiB,OAAO,CAAC,GAAG,EAAE,GAAG,GAAG,SAAS,CAAC,kBAAkB,CAAC,CAShE;AAED,MAAM,WAAW,qBAAqB;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,WAAW;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,2EAA2E;IAC3E,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAYhD;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,IAAI,GAAG,MAAM,CAQ3C;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,kBAAkB,EAAE,GAAG,MAAM,CAOrE;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,WAAW,EAAE,CAsBzD;AAED;;;;;;;;;GASG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAyBtD;AAED,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE,qBAAqB,IAIrD,OAAO,IAAI,EAAE,oBAkCrB"}
|
package/dist/util.js
CHANGED
|
@@ -30,25 +30,83 @@ export function* walkTag(tag) {
|
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
|
+
/**
|
|
34
|
+
* Build a heading's `id` from its plain text.
|
|
35
|
+
*
|
|
36
|
+
* The single implementation behind both the parse-time heading index
|
|
37
|
+
* (`extractHeadings`) and the rendered `<h*>` id (the `heading` node
|
|
38
|
+
* transform). They used to be two near-copies that had drifted apart — one
|
|
39
|
+
* stripped `?`, the other `?{}%` — so a heading containing `{`, `}` or `%` was
|
|
40
|
+
* indexed under one id and rendered under another (BUG-005).
|
|
41
|
+
*
|
|
42
|
+
* The rules are the ones an author writing an anchor by hand already assumes,
|
|
43
|
+
* and they match GitHub closely enough to be guessable: lowercase, drop
|
|
44
|
+
* punctuation, collapse whitespace and separator runs to a single `-`. Dropping
|
|
45
|
+
* punctuation also subsumes the reason `%` was stripped — a literal `%` not
|
|
46
|
+
* followed by a hex pair used to crash SvelteKit's prerender crawler in
|
|
47
|
+
* `decodeURI`.
|
|
48
|
+
*/
|
|
49
|
+
export function headingSlug(text) {
|
|
50
|
+
return (text
|
|
51
|
+
.toLowerCase()
|
|
52
|
+
// Keep letters, numbers, whitespace and hyphens; drop everything else.
|
|
53
|
+
// Unicode-aware so non-ASCII headings keep their words rather than
|
|
54
|
+
// collapsing to an empty id.
|
|
55
|
+
.replace(/[^\p{L}\p{N}\s-]/gu, '')
|
|
56
|
+
.trim()
|
|
57
|
+
.replace(/[\s-]+/g, '-')
|
|
58
|
+
.replace(/^-+|-+$/g, ''));
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Collect a heading node's plain text, including the content of inline `code`.
|
|
62
|
+
*
|
|
63
|
+
* Concatenated rather than joined with a space: the AST's own text nodes carry
|
|
64
|
+
* the spacing, so joining would double it. Inline code used to be skipped
|
|
65
|
+
* entirely — `` ### `fileRoots` — named directories `` indexed as
|
|
66
|
+
* `" — named directories"`, losing the heading's actual subject (BUG-005).
|
|
67
|
+
*/
|
|
68
|
+
export function headingText(n) {
|
|
69
|
+
let text = '';
|
|
70
|
+
for (const child of n.walk()) {
|
|
71
|
+
if ((child.type === 'text' || child.type === 'code') && child.attributes.content) {
|
|
72
|
+
text += String(child.attributes.content);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
return text;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Collect the plain text of already-transformed children, walking into tags.
|
|
79
|
+
*
|
|
80
|
+
* The renderable counterpart to {@link headingText}: inline code is a `Tag` by
|
|
81
|
+
* this point, and a variable has been resolved to its value. Used for the
|
|
82
|
+
* rendered heading id, where both of those matter.
|
|
83
|
+
*/
|
|
84
|
+
export function renderableText(children) {
|
|
85
|
+
let text = '';
|
|
86
|
+
for (const child of children) {
|
|
87
|
+
if (typeof child === 'string')
|
|
88
|
+
text += child;
|
|
89
|
+
else if (Markdoc.Tag.isTag(child))
|
|
90
|
+
text += renderableText(child.children ?? []);
|
|
91
|
+
}
|
|
92
|
+
return text;
|
|
93
|
+
}
|
|
33
94
|
/**
|
|
34
95
|
* Pre-scan an AST for heading nodes, extracting their text and generating
|
|
35
|
-
* IDs
|
|
96
|
+
* IDs with {@link headingSlug} — the same slug rules the `heading` node
|
|
97
|
+
* transform applies, so the index and the rendered anchor agree.
|
|
98
|
+
*
|
|
99
|
+
* The two necessarily read different phases: this runs at parse time, so a
|
|
100
|
+
* heading whose text comes from a variable (`### {% $row.name %}` inside a
|
|
101
|
+
* `{% data %}` body) is not knowable here and is indexed under its unresolved
|
|
102
|
+
* form. The rendered anchor, which is what a link targets, is correct.
|
|
36
103
|
*/
|
|
37
104
|
export function extractHeadings(node) {
|
|
38
105
|
const headings = [];
|
|
39
106
|
function walk(n) {
|
|
40
107
|
if (n.type === 'heading') {
|
|
41
|
-
const
|
|
42
|
-
|
|
43
|
-
if (child.type === 'text' && child.attributes.content) {
|
|
44
|
-
textParts.push(child.attributes.content);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
const text = textParts.join(' ');
|
|
48
|
-
const id = n.attributes.id || text
|
|
49
|
-
.replace(/[?]/g, '')
|
|
50
|
-
.replace(/\s+/g, '-')
|
|
51
|
-
.toLowerCase();
|
|
108
|
+
const text = headingText(n);
|
|
109
|
+
const id = n.attributes.id || headingSlug(text);
|
|
52
110
|
headings.push({
|
|
53
111
|
level: n.attributes.level,
|
|
54
112
|
text,
|
|
@@ -102,7 +160,7 @@ export function headingsToList(options) {
|
|
|
102
160
|
const include = options?.include;
|
|
103
161
|
return (nodes) => {
|
|
104
162
|
// Auto-detect level from first heading if not specified
|
|
105
|
-
const level = explicitLevel ?? nodes.find(n => n.type === 'heading')?.attributes.level;
|
|
163
|
+
const level = explicitLevel ?? nodes.find((n) => n.type === 'heading')?.attributes.level;
|
|
106
164
|
if (!level)
|
|
107
165
|
return nodes;
|
|
108
166
|
let start;
|
|
@@ -118,7 +176,7 @@ export function headingsToList(options) {
|
|
|
118
176
|
else if (start === undefined) {
|
|
119
177
|
head.push(node);
|
|
120
178
|
}
|
|
121
|
-
else if (!include || include.some(filter => isFilterMatching(node, filter))) {
|
|
179
|
+
else if (!include || include.some((filter) => isFilterMatching(node, filter))) {
|
|
122
180
|
const lastItem = list.children.at(-1);
|
|
123
181
|
if (lastItem) {
|
|
124
182
|
lastItem.children.push(node);
|