@refrakt-md/runes 0.8.5 → 0.9.1
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/config.d.ts.map +1 -1
- package/dist/config.js +201 -29
- package/dist/config.js.map +1 -1
- package/dist/fence-escape.d.ts +19 -0
- package/dist/fence-escape.d.ts.map +1 -0
- package/dist/fence-escape.js +53 -0
- package/dist/fence-escape.js.map +1 -0
- package/dist/index.d.ts +6 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +53 -50
- package/dist/index.js.map +1 -1
- package/dist/interfaces.d.ts +0 -4
- package/dist/interfaces.d.ts.map +1 -1
- package/dist/interfaces.js.map +1 -1
- package/dist/lib/component.d.ts +16 -10
- package/dist/lib/component.d.ts.map +1 -1
- package/dist/lib/component.js +11 -3
- package/dist/lib/component.js.map +1 -1
- package/dist/lib/index.d.ts +11 -16
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +7 -164
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/node.d.ts +1 -15
- package/dist/lib/node.d.ts.map +1 -1
- package/dist/lib/node.js +0 -35
- package/dist/lib/node.js.map +1 -1
- package/dist/nodes.d.ts.map +1 -1
- package/dist/nodes.js +2 -1
- package/dist/nodes.js.map +1 -1
- package/dist/packages.js +1 -1
- package/dist/packages.js.map +1 -1
- package/dist/rune.d.ts +6 -4
- package/dist/rune.d.ts.map +1 -1
- package/dist/rune.js +2 -1
- package/dist/rune.js.map +1 -1
- package/dist/sandbox-sources.d.ts +34 -0
- package/dist/sandbox-sources.d.ts.map +1 -0
- package/dist/sandbox-sources.js +204 -0
- package/dist/sandbox-sources.js.map +1 -0
- package/dist/tags/accordion.d.ts.map +1 -1
- package/dist/tags/accordion.js +21 -38
- package/dist/tags/accordion.js.map +1 -1
- package/dist/tags/annotate.d.ts.map +1 -1
- package/dist/tags/annotate.js +2 -3
- package/dist/tags/annotate.js.map +1 -1
- package/dist/tags/blog.d.ts.map +1 -1
- package/dist/tags/blog.js +1 -2
- package/dist/tags/blog.js.map +1 -1
- package/dist/tags/breadcrumb.d.ts.map +1 -1
- package/dist/tags/breadcrumb.js +4 -5
- package/dist/tags/breadcrumb.js.map +1 -1
- package/dist/tags/budget.d.ts.map +1 -1
- package/dist/tags/budget.js +77 -90
- package/dist/tags/budget.js.map +1 -1
- package/dist/tags/chart.d.ts.map +1 -1
- package/dist/tags/chart.js +1 -2
- package/dist/tags/chart.js.map +1 -1
- package/dist/tags/codegroup.d.ts.map +1 -1
- package/dist/tags/codegroup.js +1 -2
- package/dist/tags/codegroup.js.map +1 -1
- package/dist/tags/common.d.ts +46 -15
- package/dist/tags/common.d.ts.map +1 -1
- package/dist/tags/common.js +115 -65
- package/dist/tags/common.js.map +1 -1
- package/dist/tags/compare.d.ts.map +1 -1
- package/dist/tags/compare.js +1 -2
- package/dist/tags/compare.js.map +1 -1
- package/dist/tags/conversation.d.ts.map +1 -1
- package/dist/tags/conversation.js +20 -34
- package/dist/tags/conversation.js.map +1 -1
- package/dist/tags/datatable.d.ts.map +1 -1
- package/dist/tags/datatable.js +1 -2
- package/dist/tags/datatable.js.map +1 -1
- package/dist/tags/details.d.ts.map +1 -1
- package/dist/tags/details.js +1 -2
- package/dist/tags/details.js.map +1 -1
- package/dist/tags/diagram.d.ts.map +1 -1
- package/dist/tags/diagram.js +1 -2
- package/dist/tags/diagram.js.map +1 -1
- package/dist/tags/diff.d.ts.map +1 -1
- package/dist/tags/diff.js +1 -2
- package/dist/tags/diff.js.map +1 -1
- package/dist/tags/embed.d.ts.map +1 -1
- package/dist/tags/embed.js +1 -2
- package/dist/tags/embed.js.map +1 -1
- package/dist/tags/error.d.ts.map +1 -1
- package/dist/tags/error.js +1 -2
- package/dist/tags/error.js.map +1 -1
- package/dist/tags/figure.d.ts.map +1 -1
- package/dist/tags/figure.js +1 -2
- package/dist/tags/figure.js.map +1 -1
- package/dist/tags/form.d.ts +2 -1
- package/dist/tags/form.d.ts.map +1 -1
- package/dist/tags/form.js +49 -72
- package/dist/tags/form.js.map +1 -1
- package/dist/tags/gallery.d.ts.map +1 -1
- package/dist/tags/gallery.js +1 -2
- package/dist/tags/gallery.js.map +1 -1
- package/dist/tags/grid.d.ts.map +1 -1
- package/dist/tags/grid.js +1 -2
- package/dist/tags/grid.js.map +1 -1
- package/dist/tags/hint.d.ts.map +1 -1
- package/dist/tags/hint.js +1 -2
- package/dist/tags/hint.js.map +1 -1
- package/dist/tags/juxtapose.d.ts.map +1 -1
- package/dist/tags/juxtapose.js +4 -4
- package/dist/tags/juxtapose.js.map +1 -1
- package/dist/tags/mediatext.d.ts.map +1 -1
- package/dist/tags/mediatext.js +1 -2
- package/dist/tags/mediatext.js.map +1 -1
- package/dist/tags/nav.d.ts.map +1 -1
- package/dist/tags/nav.js +29 -19
- package/dist/tags/nav.js.map +1 -1
- package/dist/tags/pullquote.d.ts.map +1 -1
- package/dist/tags/pullquote.js +1 -2
- package/dist/tags/pullquote.js.map +1 -1
- package/dist/tags/reveal.d.ts.map +1 -1
- package/dist/tags/reveal.js +18 -24
- package/dist/tags/reveal.js.map +1 -1
- package/dist/tags/sandbox.d.ts.map +1 -1
- package/dist/tags/sandbox.js +82 -60
- package/dist/tags/sandbox.js.map +1 -1
- package/dist/tags/showcase.d.ts.map +1 -1
- package/dist/tags/showcase.js +1 -2
- package/dist/tags/showcase.js.map +1 -1
- package/dist/tags/sidenote.d.ts.map +1 -1
- package/dist/tags/sidenote.js +1 -2
- package/dist/tags/sidenote.js.map +1 -1
- package/dist/tags/tabs.d.ts.map +1 -1
- package/dist/tags/tabs.js +26 -35
- package/dist/tags/tabs.js.map +1 -1
- package/dist/tags/textblock.d.ts.map +1 -1
- package/dist/tags/textblock.js +1 -2
- package/dist/tags/textblock.js.map +1 -1
- package/dist/tags/toc.d.ts.map +1 -1
- package/dist/tags/toc.js +1 -2
- package/dist/tags/toc.js.map +1 -1
- package/dist/tags/xref.d.ts +18 -0
- package/dist/tags/xref.d.ts.map +1 -0
- package/dist/tags/xref.js +54 -0
- package/dist/tags/xref.js.map +1 -0
- package/package.json +3 -3
- package/dist/lib/annotations/annotation.d.ts +0 -11
- package/dist/lib/annotations/annotation.d.ts.map +0 -1
- package/dist/lib/annotations/annotation.js +0 -39
- package/dist/lib/annotations/annotation.js.map +0 -1
- package/dist/lib/annotations/attribute.d.ts +0 -12
- package/dist/lib/annotations/attribute.d.ts.map +0 -1
- package/dist/lib/annotations/attribute.js +0 -17
- package/dist/lib/annotations/attribute.js.map +0 -1
- package/dist/lib/annotations/decoration.d.ts +0 -10
- package/dist/lib/annotations/decoration.d.ts.map +0 -1
- package/dist/lib/annotations/decoration.js +0 -46
- package/dist/lib/annotations/decoration.js.map +0 -1
- package/dist/lib/annotations/group.d.ts +0 -24
- package/dist/lib/annotations/group.d.ts.map +0 -1
- package/dist/lib/annotations/group.js +0 -78
- package/dist/lib/annotations/group.js.map +0 -1
- package/dist/lib/annotations/id.d.ts +0 -19
- package/dist/lib/annotations/id.d.ts.map +0 -1
- package/dist/lib/annotations/id.js +0 -32
- package/dist/lib/annotations/id.js.map +0 -1
- package/dist/lib/annotations/interfaces.d.ts +0 -27
- package/dist/lib/annotations/interfaces.d.ts.map +0 -1
- package/dist/lib/annotations/interfaces.js +0 -2
- package/dist/lib/annotations/interfaces.js.map +0 -1
- package/dist/lib/model.d.ts +0 -17
- package/dist/lib/model.d.ts.map +0 -1
- package/dist/lib/model.js +0 -50
- package/dist/lib/model.js.map +0 -1
- package/dist/registry.d.ts +0 -94
- package/dist/registry.d.ts.map +0 -1
- package/dist/registry.js +0 -94
- package/dist/registry.js.map +0 -1
- package/dist/schema/accordion.d.ts +0 -8
- package/dist/schema/accordion.d.ts.map +0 -1
- package/dist/schema/accordion.js +0 -13
- package/dist/schema/accordion.js.map +0 -1
- package/dist/schema/annotate.d.ts +0 -6
- package/dist/schema/annotate.d.ts.map +0 -1
- package/dist/schema/annotate.js +0 -8
- package/dist/schema/annotate.js.map +0 -1
- package/dist/schema/bg.d.ts +0 -11
- package/dist/schema/bg.d.ts.map +0 -1
- package/dist/schema/bg.js +0 -13
- package/dist/schema/bg.js.map +0 -1
- package/dist/schema/blog.d.ts +0 -16
- package/dist/schema/blog.d.ts.map +0 -1
- package/dist/schema/blog.js +0 -21
- package/dist/schema/blog.js.map +0 -1
- package/dist/schema/breadcrumb.d.ts +0 -8
- package/dist/schema/breadcrumb.d.ts.map +0 -1
- package/dist/schema/breadcrumb.js +0 -12
- package/dist/schema/breadcrumb.js.map +0 -1
- package/dist/schema/budget.d.ts +0 -21
- package/dist/schema/budget.d.ts.map +0 -1
- package/dist/schema/budget.js +0 -27
- package/dist/schema/budget.js.map +0 -1
- package/dist/schema/chart.d.ts +0 -6
- package/dist/schema/chart.d.ts.map +0 -1
- package/dist/schema/chart.js +0 -8
- package/dist/schema/chart.js.map +0 -1
- package/dist/schema/codegroup.d.ts +0 -7
- package/dist/schema/codegroup.d.ts.map +0 -1
- package/dist/schema/codegroup.js +0 -8
- package/dist/schema/codegroup.js.map +0 -1
- package/dist/schema/compare.d.ts +0 -4
- package/dist/schema/compare.d.ts.map +0 -1
- package/dist/schema/compare.js +0 -6
- package/dist/schema/compare.js.map +0 -1
- package/dist/schema/conversation.d.ts +0 -8
- package/dist/schema/conversation.d.ts.map +0 -1
- package/dist/schema/conversation.js +0 -12
- package/dist/schema/conversation.js.map +0 -1
- package/dist/schema/datatable.d.ts +0 -7
- package/dist/schema/datatable.d.ts.map +0 -1
- package/dist/schema/datatable.js +0 -9
- package/dist/schema/datatable.js.map +0 -1
- package/dist/schema/details.d.ts +0 -4
- package/dist/schema/details.d.ts.map +0 -1
- package/dist/schema/details.js +0 -6
- package/dist/schema/details.js.map +0 -1
- package/dist/schema/diagram.d.ts +0 -5
- package/dist/schema/diagram.d.ts.map +0 -1
- package/dist/schema/diagram.js +0 -7
- package/dist/schema/diagram.js.map +0 -1
- package/dist/schema/diff.d.ts +0 -5
- package/dist/schema/diff.d.ts.map +0 -1
- package/dist/schema/diff.js +0 -7
- package/dist/schema/diff.js.map +0 -1
- package/dist/schema/docpage.d.ts +0 -11
- package/dist/schema/docpage.d.ts.map +0 -1
- package/dist/schema/docpage.js +0 -15
- package/dist/schema/docpage.js.map +0 -1
- package/dist/schema/embed.d.ts +0 -9
- package/dist/schema/embed.d.ts.map +0 -1
- package/dist/schema/embed.js +0 -11
- package/dist/schema/embed.js.map +0 -1
- package/dist/schema/error.d.ts +0 -10
- package/dist/schema/error.d.ts.map +0 -1
- package/dist/schema/error.js +0 -14
- package/dist/schema/error.js.map +0 -1
- package/dist/schema/figure.d.ts +0 -6
- package/dist/schema/figure.d.ts.map +0 -1
- package/dist/schema/figure.js +0 -8
- package/dist/schema/figure.js.map +0 -1
- package/dist/schema/form.d.ts +0 -13
- package/dist/schema/form.d.ts.map +0 -1
- package/dist/schema/form.js +0 -17
- package/dist/schema/form.js.map +0 -1
- package/dist/schema/gallery.d.ts +0 -8
- package/dist/schema/gallery.d.ts.map +0 -1
- package/dist/schema/gallery.js +0 -10
- package/dist/schema/gallery.js.map +0 -1
- package/dist/schema/grid.d.ts +0 -3
- package/dist/schema/grid.d.ts.map +0 -1
- package/dist/schema/grid.js +0 -3
- package/dist/schema/grid.js.map +0 -1
- package/dist/schema/hint.d.ts +0 -4
- package/dist/schema/hint.d.ts.map +0 -1
- package/dist/schema/hint.js +0 -6
- package/dist/schema/hint.js.map +0 -1
- package/dist/schema/juxtapose.d.ts +0 -7
- package/dist/schema/juxtapose.d.ts.map +0 -1
- package/dist/schema/juxtapose.js +0 -11
- package/dist/schema/juxtapose.js.map +0 -1
- package/dist/schema/mediatext.d.ts +0 -6
- package/dist/schema/mediatext.d.ts.map +0 -1
- package/dist/schema/mediatext.js +0 -8
- package/dist/schema/mediatext.js.map +0 -1
- package/dist/schema/nav.d.ts +0 -13
- package/dist/schema/nav.d.ts.map +0 -1
- package/dist/schema/nav.js +0 -19
- package/dist/schema/nav.js.map +0 -1
- package/dist/schema/pagination.d.ts +0 -5
- package/dist/schema/pagination.d.ts.map +0 -1
- package/dist/schema/pagination.js +0 -7
- package/dist/schema/pagination.js.map +0 -1
- package/dist/schema/pullquote.d.ts +0 -5
- package/dist/schema/pullquote.d.ts.map +0 -1
- package/dist/schema/pullquote.js +0 -7
- package/dist/schema/pullquote.js.map +0 -1
- package/dist/schema/reveal.d.ts +0 -8
- package/dist/schema/reveal.d.ts.map +0 -1
- package/dist/schema/reveal.js +0 -13
- package/dist/schema/reveal.js.map +0 -1
- package/dist/schema/sandbox.d.ts +0 -9
- package/dist/schema/sandbox.d.ts.map +0 -1
- package/dist/schema/sandbox.js +0 -11
- package/dist/schema/sandbox.js.map +0 -1
- package/dist/schema/showcase.d.ts +0 -8
- package/dist/schema/showcase.d.ts.map +0 -1
- package/dist/schema/showcase.js +0 -10
- package/dist/schema/showcase.js.map +0 -1
- package/dist/schema/sidenote.d.ts +0 -4
- package/dist/schema/sidenote.d.ts.map +0 -1
- package/dist/schema/sidenote.js +0 -6
- package/dist/schema/sidenote.js.map +0 -1
- package/dist/schema/tabs.d.ts +0 -12
- package/dist/schema/tabs.d.ts.map +0 -1
- package/dist/schema/tabs.js +0 -17
- package/dist/schema/tabs.js.map +0 -1
- package/dist/schema/textblock.d.ts +0 -7
- package/dist/schema/textblock.d.ts.map +0 -1
- package/dist/schema/textblock.js +0 -9
- package/dist/schema/textblock.js.map +0 -1
- package/dist/schema/tint.d.ts +0 -5
- package/dist/schema/tint.d.ts.map +0 -1
- package/dist/schema/tint.js +0 -7
- package/dist/schema/tint.js.map +0 -1
- package/dist/schema/toc.d.ts +0 -5
- package/dist/schema/toc.d.ts.map +0 -1
- package/dist/schema/toc.js +0 -7
- package/dist/schema/toc.js.map +0 -1
package/dist/tags/toc.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import Markdoc from '@markdoc/markdoc';
|
|
2
2
|
const { Tag } = Markdoc;
|
|
3
|
-
import { schema } from '../registry.js';
|
|
4
3
|
import { createContentModelSchema, createComponentRenderable } from '../lib/index.js';
|
|
5
4
|
export const toc = createContentModelSchema({
|
|
6
5
|
attributes: {
|
|
@@ -22,7 +21,7 @@ export const toc = createContentModelSchema({
|
|
|
22
21
|
const list = new Tag('ul', {}, items);
|
|
23
22
|
const depthMeta = new Tag('meta', { content: attrs.depth });
|
|
24
23
|
const orderedMeta = new Tag('meta', { content: attrs.ordered });
|
|
25
|
-
return createComponentRenderable(
|
|
24
|
+
return createComponentRenderable({ rune: 'table-of-contents',
|
|
26
25
|
tag: 'nav',
|
|
27
26
|
properties: {
|
|
28
27
|
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,
|
|
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,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,kCAAkC,EAAE;QACrG,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,sCAAsC,EAAE;KAChH;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,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,QAAQ,CAAC,CAAC;QAE3E,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAC9B,IAAI,GAAG,CAAC,IAAI,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE;YACxC,IAAI,GAAG,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;SAC5C,CAAC,CACF,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,EAAE,IAAI,EAAE,mBAAmB;YAC3D,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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Schema } from '@markdoc/markdoc';
|
|
2
|
+
/** Sentinel attribute value used to identify xref placeholders in the renderable tree */
|
|
3
|
+
export declare const XREF_RUNE_MARKER = "xref";
|
|
4
|
+
/**
|
|
5
|
+
* Xref rune — inline self-closing tag that resolves an entity by ID or name
|
|
6
|
+
* from the entity registry and renders a navigable link.
|
|
7
|
+
*
|
|
8
|
+
* At Phase 1 (transform time) the registry isn't populated yet, so the rune
|
|
9
|
+
* emits a placeholder span. Phase 4 (postProcess) resolves the placeholder
|
|
10
|
+
* into a link or an unresolved indicator.
|
|
11
|
+
*
|
|
12
|
+
* Usage:
|
|
13
|
+
* {% xref "RF-138" /%}
|
|
14
|
+
* {% xref "Veshra" label="the exile" /%}
|
|
15
|
+
* {% xref "Sanctuary" type="realm" /%}
|
|
16
|
+
*/
|
|
17
|
+
export declare const xref: Schema;
|
|
18
|
+
//# sourceMappingURL=xref.d.ts.map
|
|
@@ -0,0 +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;AAG7D,yFAAyF;AACzF,eAAO,MAAM,gBAAgB,SAAS,CAAC;AAEvC;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,IAAI,EAAE,MAoClB,CAAC"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import Markdoc from '@markdoc/markdoc';
|
|
2
|
+
const { Tag } = Markdoc;
|
|
3
|
+
/** Sentinel attribute value used to identify xref placeholders in the renderable tree */
|
|
4
|
+
export const XREF_RUNE_MARKER = 'xref';
|
|
5
|
+
/**
|
|
6
|
+
* Xref rune — inline self-closing tag that resolves an entity by ID or name
|
|
7
|
+
* from the entity registry and renders a navigable link.
|
|
8
|
+
*
|
|
9
|
+
* At Phase 1 (transform time) the registry isn't populated yet, so the rune
|
|
10
|
+
* emits a placeholder span. Phase 4 (postProcess) resolves the placeholder
|
|
11
|
+
* into a link or an unresolved indicator.
|
|
12
|
+
*
|
|
13
|
+
* Usage:
|
|
14
|
+
* {% xref "RF-138" /%}
|
|
15
|
+
* {% xref "Veshra" label="the exile" /%}
|
|
16
|
+
* {% xref "Sanctuary" type="realm" /%}
|
|
17
|
+
*/
|
|
18
|
+
export const xref = {
|
|
19
|
+
selfClosing: true,
|
|
20
|
+
inline: true,
|
|
21
|
+
attributes: {
|
|
22
|
+
primary: {
|
|
23
|
+
type: String,
|
|
24
|
+
required: true,
|
|
25
|
+
description: 'Entity ID or name to resolve',
|
|
26
|
+
},
|
|
27
|
+
label: {
|
|
28
|
+
type: String,
|
|
29
|
+
required: false,
|
|
30
|
+
description: 'Custom link text (defaults to entity title)',
|
|
31
|
+
},
|
|
32
|
+
type: {
|
|
33
|
+
type: String,
|
|
34
|
+
required: false,
|
|
35
|
+
description: 'Entity type hint for disambiguation',
|
|
36
|
+
},
|
|
37
|
+
},
|
|
38
|
+
transform(node, config) {
|
|
39
|
+
const id = node.attributes.primary;
|
|
40
|
+
const label = node.attributes.label;
|
|
41
|
+
const type = node.attributes.type;
|
|
42
|
+
const attrs = {
|
|
43
|
+
'data-rune': XREF_RUNE_MARKER,
|
|
44
|
+
'data-xref-id': id,
|
|
45
|
+
};
|
|
46
|
+
if (label)
|
|
47
|
+
attrs['data-xref-label'] = label;
|
|
48
|
+
if (type)
|
|
49
|
+
attrs['data-xref-type'] = type;
|
|
50
|
+
// Placeholder text: custom label or the raw reference string
|
|
51
|
+
return new Tag('span', attrs, [label || id]);
|
|
52
|
+
},
|
|
53
|
+
};
|
|
54
|
+
//# sourceMappingURL=xref.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xref.js","sourceRoot":"","sources":["../../src/tags/xref.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAEvC,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;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;QAExD,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;QAEzC,6DAA6D;QAC7D,OAAO,IAAI,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9C,CAAC;CACD,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@refrakt-md/runes",
|
|
3
3
|
"description": "Semantic Markdoc runes for refrakt.md",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.9.1",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"repository": {
|
|
@@ -23,8 +23,8 @@
|
|
|
23
23
|
"build": "tsc"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@refrakt-md/types": "0.
|
|
27
|
-
"@refrakt-md/transform": "0.
|
|
26
|
+
"@refrakt-md/types": "0.9.1",
|
|
27
|
+
"@refrakt-md/transform": "0.9.1",
|
|
28
28
|
"@markdoc/markdoc": "0.4.0",
|
|
29
29
|
"reflect-metadata": "^0.2.0",
|
|
30
30
|
"fast-xml-parser": "4.5.1",
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { Constructor } from './interfaces.js';
|
|
2
|
-
export type StaticThis<T> = {
|
|
3
|
-
new (...args: any[]): T;
|
|
4
|
-
};
|
|
5
|
-
export declare class Annotation {
|
|
6
|
-
static onClass<T extends Annotation>(this: StaticThis<T>, ctr: Function | Constructor<any>, inherit?: boolean): T[];
|
|
7
|
-
static onProperty<T extends Annotation>(this: StaticThis<T>, ctr: Function | Constructor<any>, key: string): T[];
|
|
8
|
-
static onParameters<T extends Annotation>(this: StaticThis<T>, ctr: Function | Constructor<any>, methodName?: string): T[];
|
|
9
|
-
static existsOnClass<T extends Annotation>(this: StaticThis<T> & typeof Annotation, ctr: Function | Constructor<any>, inherit?: boolean): boolean;
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=annotation.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"annotation.d.ts","sourceRoot":"","sources":["../../../src/lib/annotations/annotation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI;IAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;CAAE,CAAC;AAMxD,qBAAa,UAAU;WACP,OAAO,CAAC,CAAC,SAAS,UAAU,EACxC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE;WAuBlE,UAAU,CAAC,CAAC,SAAS,UAAU,EAC3C,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,EAAE;WAK5D,YAAY,CAAC,CAAC,SAAS,UAAU,EAC7C,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,CAAC,EAAE;WAQpE,aAAa,CAAC,CAAC,SAAS,UAAU,EAC9C,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,OAAO,UAAU,EAAE,GAAG,EAAE,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO;CAIzG"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { annotations, parameters, propMetadata } from './decoration.js';
|
|
2
|
-
function ofInstance(cls, annotations = []) {
|
|
3
|
-
return annotations.filter(a => a instanceof cls);
|
|
4
|
-
}
|
|
5
|
-
export class Annotation {
|
|
6
|
-
static onClass(ctr, inherit) {
|
|
7
|
-
if (!inherit) {
|
|
8
|
-
return ofInstance(this, annotations(ctr).read(false));
|
|
9
|
-
}
|
|
10
|
-
// Walk prototype chain explicitly and merge annotations from all ancestors.
|
|
11
|
-
// Reflect.getMetadata returns only the first match, which misses parent
|
|
12
|
-
// annotations when a child class defines its own decorators.
|
|
13
|
-
const seen = new Set();
|
|
14
|
-
const all = [];
|
|
15
|
-
let current = ctr;
|
|
16
|
-
while (current && current !== Function.prototype) {
|
|
17
|
-
for (const a of (annotations(current).read(false) || [])) {
|
|
18
|
-
if (!seen.has(a)) {
|
|
19
|
-
seen.add(a);
|
|
20
|
-
all.push(a);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
current = Object.getPrototypeOf(current);
|
|
24
|
-
}
|
|
25
|
-
return ofInstance(this, all);
|
|
26
|
-
}
|
|
27
|
-
static onProperty(ctr, key) {
|
|
28
|
-
return ofInstance(this, propMetadata(ctr).read(true)[key]);
|
|
29
|
-
}
|
|
30
|
-
static onParameters(ctr, methodName) {
|
|
31
|
-
return ofInstance(this, methodName
|
|
32
|
-
? parameters(ctr, methodName).read(true)
|
|
33
|
-
: parameters(ctr.constructor).read(true));
|
|
34
|
-
}
|
|
35
|
-
static existsOnClass(ctr, inherit) {
|
|
36
|
-
return this.onClass(ctr, inherit).length > 0;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
//# sourceMappingURL=annotation.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"annotation.js","sourceRoot":"","sources":["../../../src/lib/annotations/annotation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAKxE,SAAS,UAAU,CAAI,GAAkB,EAAE,cAAqB,EAAE;IAChE,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,OAAO,UAAU;IACd,MAAM,CAAC,OAAO,CACE,GAAgC,EAAE,OAAiB;QAExE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,UAAU,CAAC,IAAI,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACxD,CAAC;QACD,4EAA4E;QAC5E,wEAAwE;QACxE,6DAA6D;QAC7D,MAAM,IAAI,GAAG,IAAI,GAAG,EAAO,CAAC;QAC5B,MAAM,GAAG,GAAU,EAAE,CAAC;QACtB,IAAI,OAAO,GAAQ,GAAG,CAAC;QACvB,OAAO,OAAO,IAAI,OAAO,KAAK,QAAQ,CAAC,SAAS,EAAE,CAAC;YACjD,KAAK,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;gBACzD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oBACjB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oBACZ,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACd,CAAC;YACH,CAAC;YACD,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC/B,CAAC;IAEM,MAAM,CAAC,UAAU,CACD,GAAgC,EAAE,GAAW;QAElE,OAAO,UAAU,CAAC,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7D,CAAC;IAEM,MAAM,CAAC,YAAY,CACH,GAAgC,EAAE,UAAmB;QAE1E,OAAO,UAAU,CAAC,IAAI,EAAE,UAAU;YAChC,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YACxC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CACzC,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,aAAa,CACgB,GAAgC,EAAE,OAAiB;QAE5F,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAC/C,CAAC;CACF"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type { SchemaAttribute } from '@markdoc/markdoc';
|
|
2
|
-
import { Annotation } from './annotation.js';
|
|
3
|
-
export type AttributeAnnotationOptions = Omit<SchemaAttribute, 'default'>;
|
|
4
|
-
export declare class AttributeAnnotation extends Annotation {
|
|
5
|
-
private target;
|
|
6
|
-
propertyKey: string;
|
|
7
|
-
private options;
|
|
8
|
-
constructor(target: any, propertyKey: string, options: AttributeAnnotationOptions);
|
|
9
|
-
get schema(): SchemaAttribute;
|
|
10
|
-
}
|
|
11
|
-
export declare function attribute(options: AttributeAnnotationOptions): import("./interfaces.js").PropertyDecorator<any>;
|
|
12
|
-
//# sourceMappingURL=attribute.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"attribute.d.ts","sourceRoot":"","sources":["../../../src/lib/annotations/attribute.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAG7C,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;AAE1E,qBAAa,mBAAoB,SAAQ,UAAU;IAE/C,OAAO,CAAC,MAAM;IACP,WAAW,EAAE,MAAM;IAC1B,OAAO,CAAC,OAAO;gBAFP,MAAM,EAAE,GAAG,EACZ,WAAW,EAAE,MAAM,EAClB,OAAO,EAAE,0BAA0B;IAG7C,IAAI,MAAM,IAAI,eAAe,CAE5B;CACF;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE,0BAA0B,oDAE5D"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { Annotation } from './annotation.js';
|
|
2
|
-
import { propertyDecorator } from './decoration.js';
|
|
3
|
-
export class AttributeAnnotation extends Annotation {
|
|
4
|
-
constructor(target, propertyKey, options) {
|
|
5
|
-
super();
|
|
6
|
-
this.target = target;
|
|
7
|
-
this.propertyKey = propertyKey;
|
|
8
|
-
this.options = options;
|
|
9
|
-
}
|
|
10
|
-
get schema() {
|
|
11
|
-
return this.options;
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
export function attribute(options) {
|
|
15
|
-
return propertyDecorator(({ target, propertyKey }) => new AttributeAnnotation(target, propertyKey, options));
|
|
16
|
-
}
|
|
17
|
-
//# sourceMappingURL=attribute.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"attribute.js","sourceRoot":"","sources":["../../../src/lib/annotations/attribute.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAIpD,MAAM,OAAO,mBAAoB,SAAQ,UAAU;IACjD,YACU,MAAW,EACZ,WAAmB,EAClB,OAAmC;QACzC,KAAK,EAAE,CAAC;QAHF,WAAM,GAAN,MAAM,CAAK;QACZ,gBAAW,GAAX,WAAW,CAAQ;QAClB,YAAO,GAAP,OAAO,CAA4B;IAChC,CAAC;IAEd,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;CACF;AAED,MAAM,UAAU,SAAS,CAAC,OAAmC;IAC3D,OAAO,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,IAAI,mBAAmB,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;AAC/G,CAAC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import 'reflect-metadata';
|
|
2
|
-
import { ClassDecorator, Metadata, MethodDecorator, MethodDecoratorConfig, Newable, ParameterDecorator, ParameterDecoratorConfig, PropertyDecorator, PropertyDecoratorConfig } from './interfaces.js';
|
|
3
|
-
export declare const annotations: (target: any) => Metadata<any[]>;
|
|
4
|
-
export declare const propMetadata: (target: any) => Metadata<Record<string | symbol, any>>;
|
|
5
|
-
export declare const parameters: (target: any, propertyKey?: string | symbol) => Metadata<any[]>;
|
|
6
|
-
export declare function classDecorator<T>(factory: (target: Newable<any>) => any): ClassDecorator<T>;
|
|
7
|
-
export declare function methodDecorator<T = any>(factory: (config: MethodDecoratorConfig) => any): MethodDecorator<T>;
|
|
8
|
-
export declare function propertyDecorator<T = any>(factory: (config: PropertyDecoratorConfig) => any): PropertyDecorator<T>;
|
|
9
|
-
export declare function parameterDecorator(factory: (config: ParameterDecoratorConfig) => any): ParameterDecorator;
|
|
10
|
-
//# sourceMappingURL=decoration.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"decoration.d.ts","sourceRoot":"","sources":["../../../src/lib/annotations/decoration.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EACL,cAAc,EACd,QAAQ,EACR,eAAe,EACf,qBAAqB,EACrB,OAAO,EACP,kBAAkB,EAClB,wBAAwB,EACxB,iBAAiB,EACjB,uBAAuB,EACxB,MAAM,iBAAiB,CAAC;AAuBzB,eAAO,MAAM,WAAW,GAAI,QAAQ,GAAG,oBACK,CAAC;AAE7C,eAAO,MAAM,YAAY,GAAI,QAAQ,GAAG,2CAC4B,CAAC;AAErE,eAAO,MAAM,UAAU,GAAI,QAAQ,GAAG,EAAE,cAAc,MAAM,GAAG,MAAM,oBACb,CAAC;AAYzD,wBAAgB,cAAc,CAAC,CAAC,EAC9B,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,GACrC,cAAc,CAAC,CAAC,CAAC,CAKnB;AAED,wBAAgB,eAAe,CAAC,CAAC,GAAG,GAAG,EACrC,OAAO,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,GAAG,GAC9C,eAAe,CAAC,CAAC,CAAC,CAGpB;AAED,wBAAgB,iBAAiB,CAAC,CAAC,GAAG,GAAG,EACvC,OAAO,EAAE,CAAC,MAAM,EAAE,uBAAuB,KAAK,GAAG,GAChD,iBAAiB,CAAC,CAAC,CAAC,CAGtB;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,CAAC,MAAM,EAAE,wBAAwB,KAAK,GAAG,GACjD,kBAAkB,CAIpB"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import 'reflect-metadata';
|
|
2
|
-
function metadata(name, target, initialState, propertyKey) {
|
|
3
|
-
const read = (inherit) => {
|
|
4
|
-
const reader = inherit ? Reflect.getMetadata : Reflect.getOwnMetadata;
|
|
5
|
-
return reader(name, target, propertyKey) || initialState;
|
|
6
|
-
};
|
|
7
|
-
return {
|
|
8
|
-
mutate: (fn) => {
|
|
9
|
-
const data = fn(read());
|
|
10
|
-
if (propertyKey) {
|
|
11
|
-
Reflect.defineMetadata(name, data, target, propertyKey);
|
|
12
|
-
}
|
|
13
|
-
else {
|
|
14
|
-
Reflect.defineMetadata(name, data, target);
|
|
15
|
-
}
|
|
16
|
-
},
|
|
17
|
-
read,
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
export const annotations = (target) => metadata('annotations', target, []);
|
|
21
|
-
export const propMetadata = (target) => metadata('propMetadata', target, {});
|
|
22
|
-
export const parameters = (target, propertyKey) => metadata('parameters', target, [], propertyKey);
|
|
23
|
-
function decorate(target, annotation) {
|
|
24
|
-
annotations(target).mutate(data => data.concat(annotation));
|
|
25
|
-
}
|
|
26
|
-
function decorateProperty(target, propertyKey, annotation) {
|
|
27
|
-
propMetadata(target.constructor).mutate(props => Object.assign(props, { [propertyKey]: (props[propertyKey] || []).concat(annotation) }));
|
|
28
|
-
decorate(target.constructor, annotation);
|
|
29
|
-
}
|
|
30
|
-
export function classDecorator(factory) {
|
|
31
|
-
return target => {
|
|
32
|
-
decorate(target, factory(target));
|
|
33
|
-
return target;
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
export function methodDecorator(factory) {
|
|
37
|
-
return (target, propertyKey, descriptor) => decorateProperty(target, propertyKey, factory({ target, propertyKey, descriptor }));
|
|
38
|
-
}
|
|
39
|
-
export function propertyDecorator(factory) {
|
|
40
|
-
return (target, propertyKey) => decorateProperty(target, propertyKey, factory({ target, propertyKey }));
|
|
41
|
-
}
|
|
42
|
-
export function parameterDecorator(factory) {
|
|
43
|
-
return (target, propertyKey, parameterIndex) => parameters(target.constructor, propertyKey)
|
|
44
|
-
.mutate(p => p.concat(factory({ target, propertyKey, parameterIndex })));
|
|
45
|
-
}
|
|
46
|
-
//# sourceMappingURL=decoration.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"decoration.js","sourceRoot":"","sources":["../../../src/lib/annotations/decoration.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import type { Config, Node, NodeType } from '@markdoc/markdoc';
|
|
2
|
-
import { Annotation } from './annotation.js';
|
|
3
|
-
import { Group } from '../../interfaces.js';
|
|
4
|
-
import { NodeStream } from '../node.js';
|
|
5
|
-
export type GroupAnnotationOptions = Omit<Group, 'name'>;
|
|
6
|
-
export declare class AbstractGroupAnnotation extends Annotation {
|
|
7
|
-
protected target: any;
|
|
8
|
-
protected propertyKey: string;
|
|
9
|
-
constructor(target: any, propertyKey: string);
|
|
10
|
-
create(nodes: Node[], index: number, config: Config): number;
|
|
11
|
-
}
|
|
12
|
-
export declare class GroupAnnotation extends AbstractGroupAnnotation {
|
|
13
|
-
private options;
|
|
14
|
-
constructor(target: any, propertyKey: string, options: GroupAnnotationOptions);
|
|
15
|
-
create(nodes: Node[], index: number, config: Config): number;
|
|
16
|
-
private includes;
|
|
17
|
-
}
|
|
18
|
-
interface GroupListOptions {
|
|
19
|
-
delimiter: NodeType;
|
|
20
|
-
}
|
|
21
|
-
export declare function group(options: GroupAnnotationOptions): import("./interfaces.js").PropertyDecorator<any>;
|
|
22
|
-
export declare function groupList(options: GroupListOptions): import("./interfaces.js").PropertyDecorator<NodeStream[]>;
|
|
23
|
-
export {};
|
|
24
|
-
//# sourceMappingURL=group.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../../src/lib/annotations/group.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC5C,OAAO,EAAoB,UAAU,EAAE,MAAM,YAAY,CAAC;AAE1D,MAAM,MAAM,sBAAsB,GAAG,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AAEzD,qBAAa,uBAAwB,SAAQ,UAAU;IAEnD,SAAS,CAAC,MAAM,EAAE,GAAG;IACrB,SAAS,CAAC,WAAW,EAAE,MAAM;gBADnB,MAAM,EAAE,GAAG,EACX,WAAW,EAAE,MAAM;IAK/B,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAGpD;AAED,qBAAa,eAAgB,SAAQ,uBAAuB;IAIxD,OAAO,CAAC,OAAO;gBAFf,MAAM,EAAE,GAAG,EACX,WAAW,EAAE,MAAM,EACX,OAAO,EAAE,sBAAsB;IAKlC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAsB1D,OAAO,CAAC,QAAQ;CAWjB;AAED,UAAU,gBAAgB;IACxB,SAAS,EAAE,QAAQ,CAAC;CACrB;AAkCD,wBAAgB,KAAK,CAAC,OAAO,EAAE,sBAAsB,oDAEpD;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE,gBAAgB,6DAElD"}
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
import { Annotation } from './annotation.js';
|
|
2
|
-
import { propertyDecorator } from './decoration.js';
|
|
3
|
-
import { isFilterMatching, NodeStream } from '../node.js';
|
|
4
|
-
export class AbstractGroupAnnotation extends Annotation {
|
|
5
|
-
constructor(target, propertyKey) {
|
|
6
|
-
super();
|
|
7
|
-
this.target = target;
|
|
8
|
-
this.propertyKey = propertyKey;
|
|
9
|
-
}
|
|
10
|
-
create(nodes, index, config) {
|
|
11
|
-
return index;
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
export class GroupAnnotation extends AbstractGroupAnnotation {
|
|
15
|
-
constructor(target, propertyKey, options) {
|
|
16
|
-
super(target, propertyKey);
|
|
17
|
-
this.options = options;
|
|
18
|
-
}
|
|
19
|
-
create(nodes, index, config) {
|
|
20
|
-
let section = nodes.slice(0, index).filter(n => n.type === 'hr').length;
|
|
21
|
-
const group = new NodeStream([], config);
|
|
22
|
-
for (const n of nodes.slice(index)) {
|
|
23
|
-
if (n.type === 'hr') {
|
|
24
|
-
section++;
|
|
25
|
-
continue;
|
|
26
|
-
}
|
|
27
|
-
if (this.includes(n, section) || n.type === 'comment') {
|
|
28
|
-
group.push(n);
|
|
29
|
-
}
|
|
30
|
-
else {
|
|
31
|
-
break;
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
this.target[this.propertyKey] = group;
|
|
35
|
-
return index + group.length;
|
|
36
|
-
}
|
|
37
|
-
includes(node, section) {
|
|
38
|
-
const group = this.options;
|
|
39
|
-
if (group.section !== undefined && group.section !== section) {
|
|
40
|
-
return false;
|
|
41
|
-
}
|
|
42
|
-
if (group.include) {
|
|
43
|
-
return group.include.some(g => isFilterMatching(node, g));
|
|
44
|
-
}
|
|
45
|
-
return true;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
class GroupListAnnotation extends AbstractGroupAnnotation {
|
|
49
|
-
constructor(target, propertyKey, options) {
|
|
50
|
-
super(target, propertyKey);
|
|
51
|
-
this.options = options;
|
|
52
|
-
}
|
|
53
|
-
create(nodes, index, config) {
|
|
54
|
-
const streams = [];
|
|
55
|
-
let current = new NodeStream([], config);
|
|
56
|
-
for (const n of nodes.slice(index)) {
|
|
57
|
-
if (n.type === this.options.delimiter && current.length > 0) {
|
|
58
|
-
streams.push(current);
|
|
59
|
-
current = new NodeStream([], config);
|
|
60
|
-
}
|
|
61
|
-
else {
|
|
62
|
-
current.push(n);
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
if (current.length > 0) {
|
|
66
|
-
streams.push(current);
|
|
67
|
-
}
|
|
68
|
-
this.target[this.propertyKey] = streams;
|
|
69
|
-
return nodes.length - 1;
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
export function group(options) {
|
|
73
|
-
return propertyDecorator(({ target, propertyKey }) => new GroupAnnotation(target, propertyKey, options));
|
|
74
|
-
}
|
|
75
|
-
export function groupList(options) {
|
|
76
|
-
return propertyDecorator(({ target, propertyKey }) => new GroupListAnnotation(target, propertyKey, options));
|
|
77
|
-
}
|
|
78
|
-
//# sourceMappingURL=group.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"group.js","sourceRoot":"","sources":["../../../src/lib/annotations/group.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import type { Config, Node } from '@markdoc/markdoc';
|
|
2
|
-
import { Annotation } from './annotation.js';
|
|
3
|
-
export interface IdOptions {
|
|
4
|
-
generate: boolean;
|
|
5
|
-
}
|
|
6
|
-
export declare class GeneratedAttributeAnnotation<T> extends Annotation {
|
|
7
|
-
private target;
|
|
8
|
-
propertyKey: string;
|
|
9
|
-
constructor(target: any, propertyKey: string);
|
|
10
|
-
create(node: Node, config: Config): void;
|
|
11
|
-
protected generate(node: Node, config: Config): T;
|
|
12
|
-
}
|
|
13
|
-
export declare class IdAnnotation extends GeneratedAttributeAnnotation<string> {
|
|
14
|
-
private options;
|
|
15
|
-
constructor(target: any, propertyKey: string, options: IdOptions);
|
|
16
|
-
generate(node: Node, config: Config): string;
|
|
17
|
-
}
|
|
18
|
-
export declare function id(options: IdOptions): import("./interfaces.js").PropertyDecorator<string>;
|
|
19
|
-
//# sourceMappingURL=id.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"id.d.ts","sourceRoot":"","sources":["../../../src/lib/annotations/id.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAI7C,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,qBAAa,4BAA4B,CAAC,CAAC,CAAE,SAAQ,UAAU;IAE3D,OAAO,CAAC,MAAM;IACP,WAAW,EAAE,MAAM;gBADlB,MAAM,EAAE,GAAG,EACZ,WAAW,EAAE,MAAM;IAG5B,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAIxC,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC;CAGlD;AAED,qBAAa,YAAa,SAAQ,4BAA4B,CAAC,MAAM,CAAC;IAIlE,OAAO,CAAC,OAAO;gBAFf,MAAM,EAAE,GAAG,EACX,WAAW,EAAE,MAAM,EACX,OAAO,EAAE,SAAS;IAG5B,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;CAM7C;AAED,wBAAgB,EAAE,CAAC,OAAO,EAAE,SAAS,uDAEpC"}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { Annotation } from './annotation.js';
|
|
2
|
-
import { propertyDecorator } from './decoration.js';
|
|
3
|
-
import { generateIdIfMissing } from '../../util.js';
|
|
4
|
-
export class GeneratedAttributeAnnotation extends Annotation {
|
|
5
|
-
constructor(target, propertyKey) {
|
|
6
|
-
super();
|
|
7
|
-
this.target = target;
|
|
8
|
-
this.propertyKey = propertyKey;
|
|
9
|
-
}
|
|
10
|
-
create(node, config) {
|
|
11
|
-
this.target[this.propertyKey] = this.generate(node, config);
|
|
12
|
-
}
|
|
13
|
-
generate(node, config) {
|
|
14
|
-
throw Error('generate method not implemented');
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
export class IdAnnotation extends GeneratedAttributeAnnotation {
|
|
18
|
-
constructor(target, propertyKey, options) {
|
|
19
|
-
super(target, propertyKey);
|
|
20
|
-
this.options = options;
|
|
21
|
-
}
|
|
22
|
-
generate(node, config) {
|
|
23
|
-
if (this.options.generate) {
|
|
24
|
-
generateIdIfMissing(node, config);
|
|
25
|
-
}
|
|
26
|
-
return node.attributes.id;
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
export function id(options) {
|
|
30
|
-
return propertyDecorator(({ target, propertyKey }) => new IdAnnotation(target, propertyKey, options));
|
|
31
|
-
}
|
|
32
|
-
//# sourceMappingURL=id.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"id.js","sourceRoot":"","sources":["../../../src/lib/annotations/id.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAMpD,MAAM,OAAO,4BAAgC,SAAQ,UAAU;IAC7D,YACU,MAAW,EACZ,WAAmB;QACxB,KAAK,EAAE,CAAC;QAFF,WAAM,GAAN,MAAM,CAAK;QACZ,gBAAW,GAAX,WAAW,CAAQ;IACf,CAAC;IAEd,MAAM,CAAC,IAAU,EAAE,MAAc;QAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC;IAES,QAAQ,CAAC,IAAU,EAAE,MAAc;QAC3C,MAAM,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACjD,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,4BAAoC;IACpE,YACE,MAAW,EACX,WAAmB,EACX,OAAkB;QACxB,KAAK,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QADrB,YAAO,GAAP,OAAO,CAAW;IACI,CAAC;IAEjC,QAAQ,CAAC,IAAU,EAAE,MAAc;QACjC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YAC1B,mBAAmB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACpC,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;IAC5B,CAAC;CACF;AAED,MAAM,UAAU,EAAE,CAAC,OAAkB;IACnC,OAAO,iBAAiB,CAAS,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,IAAI,YAAY,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;AAChH,CAAC"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { Newable } from '@refrakt-md/types';
|
|
2
|
-
export { Newable };
|
|
3
|
-
export interface Abstract<T> {
|
|
4
|
-
prototype: T;
|
|
5
|
-
}
|
|
6
|
-
export interface Constructor<T> extends Newable<T> {
|
|
7
|
-
name?: string;
|
|
8
|
-
}
|
|
9
|
-
export interface Metadata<T> {
|
|
10
|
-
mutate(fn: (data: T) => T): void;
|
|
11
|
-
read(inherit?: boolean): T;
|
|
12
|
-
}
|
|
13
|
-
export type ClassDecorator<T> = <C extends Newable<T>>(target: C) => C;
|
|
14
|
-
export type PropertyDecorator<T> = <K extends string, C extends Record<K, T>>(target: C, propertyKey: K) => void;
|
|
15
|
-
export type MethodDecorator<T> = <K extends string, C extends Record<K, T>>(target: C, propertyKey: K, descriptor: PropertyDescriptor) => void;
|
|
16
|
-
export type ParameterDecorator = (target: any, propertyKey: string, parameterIndex: number) => void;
|
|
17
|
-
export interface PropertyDecoratorConfig {
|
|
18
|
-
target: any;
|
|
19
|
-
propertyKey: string;
|
|
20
|
-
}
|
|
21
|
-
export interface MethodDecoratorConfig extends PropertyDecoratorConfig {
|
|
22
|
-
descriptor: PropertyDescriptor;
|
|
23
|
-
}
|
|
24
|
-
export interface ParameterDecoratorConfig extends PropertyDecoratorConfig {
|
|
25
|
-
parameterIndex: number;
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=interfaces.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/lib/annotations/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAE,OAAO,EAAE,CAAC;AAEnB,MAAM,WAAW,QAAQ,CAAC,CAAC;IACzB,SAAS,EAAE,CAAC,CAAC;CACd;AAED,MAAM,WAAW,WAAW,CAAC,CAAC,CAAE,SAAQ,OAAO,CAAC,CAAC,CAAC;IAChD,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,QAAQ,CAAC,CAAC;IACzB,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IAEjC,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC;CAC5B;AAED,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC;AAEvE,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAC1E,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,KAAK,IAAI,CAAC;AAErC,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EACxE,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,UAAU,EAAE,kBAAkB,KAAK,IAAI,CAAC;AAErE,MAAM,MAAM,kBAAkB,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,KAAK,IAAI,CAAC;AAEpG,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,GAAG,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,qBAAsB,SAAQ,uBAAuB;IACpE,UAAU,EAAE,kBAAkB,CAAC;CAChC;AAED,MAAM,WAAW,wBAAyB,SAAQ,uBAAuB;IACvE,cAAc,EAAE,MAAM,CAAC;CACxB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/lib/annotations/interfaces.ts"],"names":[],"mappings":""}
|
package/dist/lib/model.d.ts
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import Markdoc from '@markdoc/markdoc';
|
|
2
|
-
import type { Config, Node, NodeType, RenderableTreeNodes, Schema } from '@markdoc/markdoc';
|
|
3
|
-
import { NodeType as RenderableNodeType } from '@refrakt-md/types';
|
|
4
|
-
import { RenderableNodeCursor } from './renderable.js';
|
|
5
|
-
export declare class Model {
|
|
6
|
-
readonly node: Node;
|
|
7
|
-
readonly config: Config;
|
|
8
|
-
/** Extracted tint child node (set by processChildren before @group runs) */
|
|
9
|
-
_tintNode: Node | null;
|
|
10
|
-
/** Extracted bg child node (set by processChildren before @group runs) */
|
|
11
|
-
_bgNode: Node | null;
|
|
12
|
-
constructor(node: Node, config: Config);
|
|
13
|
-
processChildren(nodes: Node[]): Markdoc.Node[];
|
|
14
|
-
transform(): RenderableTreeNodes;
|
|
15
|
-
transformChildren(nodes?: Partial<Record<NodeType, Schema | RenderableNodeType | ((node: Node, config: Config) => RenderableTreeNodes)>>): RenderableNodeCursor;
|
|
16
|
-
}
|
|
17
|
-
//# sourceMappingURL=model.d.ts.map
|
package/dist/lib/model.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/lib/model.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC5F,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAKvD,qBAAa,KAAK;aAOE,IAAI,EAAE,IAAI;aACV,MAAM,EAAE,MAAM;IAPhC,4EAA4E;IAC5E,SAAS,EAAE,IAAI,GAAG,IAAI,CAAQ;IAC9B,0EAA0E;IAC1E,OAAO,EAAE,IAAI,GAAG,IAAI,CAAQ;gBAGV,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM;IAOhC,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE;IAwB7B,SAAS,IAAI,mBAAmB;IAIhC,iBAAiB,CACf,KAAK,GAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,kBAAkB,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,KAAK,mBAAmB,CAAC,CAAC,CAAM,GACzH,oBAAoB;CAQxB"}
|
package/dist/lib/model.js
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import Markdoc from '@markdoc/markdoc';
|
|
2
|
-
import { RenderableNodeCursor } from './renderable.js';
|
|
3
|
-
import { makeSchema } from './node.js';
|
|
4
|
-
import { GeneratedAttributeAnnotation } from './annotations/id.js';
|
|
5
|
-
import { AbstractGroupAnnotation } from './annotations/group.js';
|
|
6
|
-
export class Model {
|
|
7
|
-
constructor(node, config) {
|
|
8
|
-
this.node = node;
|
|
9
|
-
this.config = config;
|
|
10
|
-
/** Extracted tint child node (set by processChildren before @group runs) */
|
|
11
|
-
this._tintNode = null;
|
|
12
|
-
/** Extracted bg child node (set by processChildren before @group runs) */
|
|
13
|
-
this._bgNode = null;
|
|
14
|
-
for (const annotation of GeneratedAttributeAnnotation.onClass(this.constructor, true)) {
|
|
15
|
-
annotation.create(node, config);
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
processChildren(nodes) {
|
|
19
|
-
// Extract tint tag before @group processing so it doesn't interfere
|
|
20
|
-
// with header/body splitting (tint has type 'tag', which breaks @group)
|
|
21
|
-
const tintIdx = nodes.findIndex(n => n.type === 'tag' && n.tag === 'tint');
|
|
22
|
-
if (tintIdx !== -1) {
|
|
23
|
-
this._tintNode = nodes[tintIdx];
|
|
24
|
-
nodes = [...nodes.slice(0, tintIdx), ...nodes.slice(tintIdx + 1)];
|
|
25
|
-
}
|
|
26
|
-
// Extract bg tag before @group processing (same pattern as tint)
|
|
27
|
-
const bgIdx = nodes.findIndex(n => n.type === 'tag' && n.tag === 'bg');
|
|
28
|
-
if (bgIdx !== -1) {
|
|
29
|
-
this._bgNode = nodes[bgIdx];
|
|
30
|
-
nodes = [...nodes.slice(0, bgIdx), ...nodes.slice(bgIdx + 1)];
|
|
31
|
-
}
|
|
32
|
-
let index = 0;
|
|
33
|
-
for (const annotation of AbstractGroupAnnotation.onClass(this.constructor, true)) {
|
|
34
|
-
index = annotation.create(nodes, index, this.config);
|
|
35
|
-
}
|
|
36
|
-
return nodes;
|
|
37
|
-
}
|
|
38
|
-
transform() {
|
|
39
|
-
return this.transformChildren({}).nodes;
|
|
40
|
-
}
|
|
41
|
-
transformChildren(nodes = {}) {
|
|
42
|
-
const extraNodes = {};
|
|
43
|
-
for (const [name, t] of Object.entries(nodes)) {
|
|
44
|
-
extraNodes[name] = makeSchema(t);
|
|
45
|
-
}
|
|
46
|
-
const config = { ...this.config, nodes: { ...this.config.nodes, ...extraNodes } };
|
|
47
|
-
return new RenderableNodeCursor(Markdoc.transform(this.node.children, config));
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
//# sourceMappingURL=model.js.map
|
package/dist/lib/model.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../src/lib/model.ts"],"names":[],"mappings":"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"}
|