@refrakt-md/runes 0.14.4 → 0.15.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/config.d.ts +40 -4
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +154 -88
- package/dist/config.js.map +1 -1
- package/dist/drawer-pipeline.d.ts +33 -0
- package/dist/drawer-pipeline.d.ts.map +1 -0
- package/dist/drawer-pipeline.js +206 -0
- package/dist/drawer-pipeline.js.map +1 -0
- package/dist/expand-pipeline.d.ts +51 -0
- package/dist/expand-pipeline.d.ts.map +1 -0
- package/dist/expand-pipeline.js +305 -0
- package/dist/expand-pipeline.js.map +1 -0
- package/dist/index.d.ts +9 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +32 -3
- package/dist/index.js.map +1 -1
- package/dist/lang-map.d.ts +32 -0
- package/dist/lang-map.d.ts.map +1 -0
- package/dist/lang-map.js +76 -0
- package/dist/lang-map.js.map +1 -0
- package/dist/lib/read-file.d.ts +78 -0
- package/dist/lib/read-file.d.ts.map +1 -0
- package/dist/lib/read-file.js +166 -0
- package/dist/lib/read-file.js.map +1 -0
- package/dist/nodes.d.ts.map +1 -1
- package/dist/nodes.js +12 -1
- package/dist/nodes.js.map +1 -1
- package/dist/outline-scope.d.ts +29 -0
- package/dist/outline-scope.d.ts.map +1 -0
- package/dist/outline-scope.js +149 -0
- package/dist/outline-scope.js.map +1 -0
- package/dist/plugins.d.ts +13 -0
- package/dist/plugins.d.ts.map +1 -1
- package/dist/plugins.js +65 -1
- package/dist/plugins.js.map +1 -1
- package/dist/snippet-pipeline.d.ts +42 -0
- package/dist/snippet-pipeline.d.ts.map +1 -0
- package/dist/snippet-pipeline.js +219 -0
- package/dist/snippet-pipeline.js.map +1 -0
- package/dist/tags/drawer.d.ts +26 -0
- package/dist/tags/drawer.d.ts.map +1 -0
- package/dist/tags/drawer.js +134 -0
- package/dist/tags/drawer.js.map +1 -0
- package/dist/tags/expand.d.ts +22 -0
- package/dist/tags/expand.d.ts.map +1 -0
- package/dist/tags/expand.js +76 -0
- package/dist/tags/expand.js.map +1 -0
- package/dist/tags/snippet.d.ts +19 -0
- package/dist/tags/snippet.d.ts.map +1 -0
- package/dist/tags/snippet.js +49 -0
- package/dist/tags/snippet.js.map +1 -0
- package/dist/util.d.ts +11 -0
- package/dist/util.d.ts.map +1 -1
- package/dist/util.js +35 -0
- package/dist/util.js.map +1 -1
- package/dist/xref-patterns.d.ts +57 -0
- package/dist/xref-patterns.d.ts.map +1 -0
- package/dist/xref-patterns.js +140 -0
- package/dist/xref-patterns.js.map +1 -0
- package/dist/xref-resolve.d.ts +22 -5
- package/dist/xref-resolve.d.ts.map +1 -1
- package/dist/xref-resolve.js +203 -79
- package/dist/xref-resolve.js.map +1 -1
- package/package.json +3 -3
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -4,12 +4,14 @@ import { DocPage } from './documents/doc.js';
|
|
|
4
4
|
import { error } from './tags/error.js';
|
|
5
5
|
import { grid } from './tags/grid.js';
|
|
6
6
|
import { codegroup } from './tags/codegroup.js';
|
|
7
|
+
import { snippet } from './tags/snippet.js';
|
|
7
8
|
import { hint } from './tags/hint.js';
|
|
8
9
|
import { tab, tabs } from './tags/tabs.js';
|
|
9
10
|
import { nav } from './tags/nav.js';
|
|
10
11
|
import { region } from './tags/region.js';
|
|
11
12
|
import { layout } from './tags/layout.js';
|
|
12
13
|
import { details } from './tags/details.js';
|
|
14
|
+
import { drawer } from './tags/drawer.js';
|
|
13
15
|
import { figure } from './tags/figure.js';
|
|
14
16
|
import { gallery } from './tags/gallery.js';
|
|
15
17
|
import { accordion, accordionItem } from './tags/accordion.js';
|
|
@@ -39,6 +41,7 @@ import { showcase } from './tags/showcase.js';
|
|
|
39
41
|
import { bg } from './tags/bg.js';
|
|
40
42
|
import { blog } from './tags/blog.js';
|
|
41
43
|
import { xref } from './tags/xref.js';
|
|
44
|
+
import { expand } from './tags/expand.js';
|
|
42
45
|
import { badge } from './tags/badge.js';
|
|
43
46
|
import Markdoc from '@markdoc/markdoc';
|
|
44
47
|
import { defineRune, runeTagMap } from './rune.js';
|
|
@@ -48,20 +51,22 @@ export { RenderableNodeCursor } from './lib/renderable.js';
|
|
|
48
51
|
export { createContentModelSchema, createComponentRenderable, asNodes, schemaContentModels, sanitizeSandboxContent } from './lib/index.js';
|
|
49
52
|
export { resolve, resolveSequence, resolveDelimited, resolveContentModel, resolveListItems, evaluateCondition, matchesType } from './lib/resolver.js';
|
|
50
53
|
export { linkItem, pageSectionProperties, buildLayoutMetas, extractMediaImage, unwrapParagraphImages, name as nameHelper, description as descriptionHelper, SplitablePageSectionModel, SplitLayoutModel, splitLayoutAttributes } from './tags/common.js';
|
|
51
|
-
export { extractHeadings, headingsToList } from './util.js';
|
|
54
|
+
export { extractHeadings, firstH1, headingsToList } from './util.js';
|
|
55
|
+
export { LANG_MAP, FALLBACK_LANG, inferLanguage } from './lang-map.js';
|
|
52
56
|
export { extractSeo, collectJsonLd, textContent } from './seo.js';
|
|
53
57
|
export { serialize, serializeTree } from './serialize.js';
|
|
54
58
|
export { RUNE_EXAMPLES } from './examples.js';
|
|
55
59
|
export { describeRune, renderContentModel, serializeContentModel, stripContentModel, hydrateRuneInfo, hydrateAllRuneInfos, hydrateRuneByName, serializeRune, groupReferenceInfos, renderReferenceMarkdown, EXCLUDED_RUNES, HIDDEN_ATTRIBUTES, } from './reference.js';
|
|
56
60
|
export { registerAttributePreset, lookupAttributePreset, schemaBasePresets, UNIVERSAL_ATTRIBUTE_NAMES, } from './attribute-presets.js';
|
|
57
|
-
export { loadPlugin, mergePlugins, applyAliases, loadLocalRunes, discoverPluginFixtures } from './plugins.js';
|
|
58
|
-
export { coreConfig, baseConfig, corePipelineHooks, resolveCoreSentinels } from './config.js';
|
|
61
|
+
export { loadPlugin, mergePlugins, applyAliases, loadLocalRunes, discoverPluginFixtures, assertFileRootNamespaceAllowed } from './plugins.js';
|
|
62
|
+
export { coreConfig, baseConfig, corePipelineHooks, createCorePipelineHooks, resolveCoreSentinels } from './config.js';
|
|
59
63
|
export { BREADCRUMB_AUTO_SENTINEL } from './tags/breadcrumb.js';
|
|
60
64
|
export { NAV_AUTO_SENTINEL } from './tags/nav.js';
|
|
61
65
|
export { PAGINATION_AUTO_SENTINEL } from './tags/pagination.js';
|
|
62
66
|
export { TINT_TOKENS } from './tags/tint.js';
|
|
63
67
|
export { XREF_RUNE_MARKER } from './tags/xref.js';
|
|
64
68
|
export { resolveXrefs } from './xref-resolve.js';
|
|
69
|
+
export { compileXrefPatterns } from './xref-patterns.js';
|
|
65
70
|
export { escapeFenceTags } from './fence-escape.js';
|
|
66
71
|
export const documents = {
|
|
67
72
|
doc: new DocPage(),
|
|
@@ -143,6 +148,14 @@ export const runes = {
|
|
|
143
148
|
category: 'Content',
|
|
144
149
|
snippet: ['{% details summary="${1:Click to expand}" %}', '$0', '{% /details %}'],
|
|
145
150
|
}),
|
|
151
|
+
drawer: defineRune({
|
|
152
|
+
name: 'drawer',
|
|
153
|
+
schema: drawer,
|
|
154
|
+
description: 'Modal side panel addressed by id. Triggered by xrefs anywhere on the page; falls back to in-flow rendering without JS.',
|
|
155
|
+
typeName: 'Drawer',
|
|
156
|
+
category: 'Layout',
|
|
157
|
+
snippet: ['{% drawer id="${1:auth-explainer}" title="${2:Auth system}" %}', '$0', '{% /drawer %}'],
|
|
158
|
+
}),
|
|
146
159
|
figure: defineRune({
|
|
147
160
|
name: 'figure',
|
|
148
161
|
schema: figure,
|
|
@@ -259,6 +272,14 @@ export const runes = {
|
|
|
259
272
|
category: 'Code & Data',
|
|
260
273
|
snippet: ['{% diff %}', '```${1:js}', '${2:// Before}', '```', '', '```${3:js}', '${4:// After}', '```', '{% /diff %}'],
|
|
261
274
|
}),
|
|
275
|
+
snippet: defineRune({
|
|
276
|
+
name: 'snippet',
|
|
277
|
+
schema: snippet,
|
|
278
|
+
description: 'Embed a project file as a syntax-highlighted code block. Composes inside codegroup, diff, and any future fence-consuming rune via pre-resolve (SPEC-062).',
|
|
279
|
+
typeName: 'Snippet',
|
|
280
|
+
category: 'Code & Data',
|
|
281
|
+
snippet: ['{% snippet path="${1:src/lib/foo.ts}" /%}'],
|
|
282
|
+
}),
|
|
262
283
|
chart: defineRune({
|
|
263
284
|
name: 'chart',
|
|
264
285
|
schema: chart,
|
|
@@ -427,6 +448,14 @@ export const runes = {
|
|
|
427
448
|
schema: xref,
|
|
428
449
|
description: 'Inline cross-reference that resolves an entity by ID or name from the registry. Self-closing.',
|
|
429
450
|
}),
|
|
451
|
+
expand: defineRune({
|
|
452
|
+
name: 'expand',
|
|
453
|
+
schema: expand,
|
|
454
|
+
description: 'Substitute a registered entity\'s source content inline. Reads the entity\'s sourceFile via the plan plugin (or any plugin that registers extractable entities) and inlines it. Symmetric with `xref`: same lookup chain, different output (content rather than a link).',
|
|
455
|
+
typeName: 'Expand',
|
|
456
|
+
category: 'Content',
|
|
457
|
+
snippet: ['{% expand "${1:SPEC-001}" /%}'],
|
|
458
|
+
}),
|
|
430
459
|
badge: defineRune({
|
|
431
460
|
name: 'badge',
|
|
432
461
|
schema: badge,
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Extension → language map for code-block syntax highlighting.
|
|
3
|
+
*
|
|
4
|
+
* Shared across the snippet rune, the inspect tool, the contracts generator,
|
|
5
|
+
* and any future rune that needs to infer a syntax-highlighting language
|
|
6
|
+
* from a file extension. Lives in `@refrakt-md/runes` (not in a plugin)
|
|
7
|
+
* because every consumer already depends on this package and plugins
|
|
8
|
+
* cannot be depended on by core.
|
|
9
|
+
*
|
|
10
|
+
* Authors can always override inferred languages with explicit `lang=`
|
|
11
|
+
* attributes; inference is the default, not the only path.
|
|
12
|
+
*/
|
|
13
|
+
/** Lowercase file extension (with leading dot) → highlight-language identifier. */
|
|
14
|
+
export declare const LANG_MAP: Readonly<Record<string, string>>;
|
|
15
|
+
/** Fallback language for extensions not covered by {@link LANG_MAP}. */
|
|
16
|
+
export declare const FALLBACK_LANG = "text";
|
|
17
|
+
/**
|
|
18
|
+
* Infer the highlight-language identifier from a file path or extension.
|
|
19
|
+
*
|
|
20
|
+
* Accepts a full path (`"src/lib/foo.ts"`), a bare extension with the dot
|
|
21
|
+
* (`".ts"`), or a bare extension without (`"ts"`). Unknown extensions
|
|
22
|
+
* return {@link FALLBACK_LANG}.
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* ```ts
|
|
26
|
+
* inferLanguage('src/lib/foo.ts'); // 'typescript'
|
|
27
|
+
* inferLanguage('.svelte'); // 'svelte'
|
|
28
|
+
* inferLanguage('config.unknown'); // 'text'
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
31
|
+
export declare function inferLanguage(pathOrExt: string): string;
|
|
32
|
+
//# sourceMappingURL=lang-map.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lang-map.d.ts","sourceRoot":"","sources":["../src/lang-map.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,mFAAmF;AACnF,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAoBpD,CAAC;AAEH,wEAAwE;AACxE,eAAO,MAAM,aAAa,SAAS,CAAC;AAEpC;;;;;;;;;;;;;GAaG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAuBvD"}
|
package/dist/lang-map.js
ADDED
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Extension → language map for code-block syntax highlighting.
|
|
3
|
+
*
|
|
4
|
+
* Shared across the snippet rune, the inspect tool, the contracts generator,
|
|
5
|
+
* and any future rune that needs to infer a syntax-highlighting language
|
|
6
|
+
* from a file extension. Lives in `@refrakt-md/runes` (not in a plugin)
|
|
7
|
+
* because every consumer already depends on this package and plugins
|
|
8
|
+
* cannot be depended on by core.
|
|
9
|
+
*
|
|
10
|
+
* Authors can always override inferred languages with explicit `lang=`
|
|
11
|
+
* attributes; inference is the default, not the only path.
|
|
12
|
+
*/
|
|
13
|
+
/** Lowercase file extension (with leading dot) → highlight-language identifier. */
|
|
14
|
+
export const LANG_MAP = Object.freeze({
|
|
15
|
+
'.ts': 'typescript',
|
|
16
|
+
'.tsx': 'typescript',
|
|
17
|
+
'.js': 'javascript',
|
|
18
|
+
'.jsx': 'javascript',
|
|
19
|
+
'.mjs': 'javascript',
|
|
20
|
+
'.cjs': 'javascript',
|
|
21
|
+
'.svelte': 'svelte',
|
|
22
|
+
'.vue': 'vue',
|
|
23
|
+
'.md': 'markdoc',
|
|
24
|
+
'.markdoc': 'markdoc',
|
|
25
|
+
'.json': 'json',
|
|
26
|
+
'.jsonc': 'jsonc',
|
|
27
|
+
'.html': 'html',
|
|
28
|
+
'.css': 'css',
|
|
29
|
+
'.yml': 'yaml',
|
|
30
|
+
'.yaml': 'yaml',
|
|
31
|
+
'.toml': 'toml',
|
|
32
|
+
'.sh': 'bash',
|
|
33
|
+
'.bash': 'bash',
|
|
34
|
+
});
|
|
35
|
+
/** Fallback language for extensions not covered by {@link LANG_MAP}. */
|
|
36
|
+
export const FALLBACK_LANG = 'text';
|
|
37
|
+
/**
|
|
38
|
+
* Infer the highlight-language identifier from a file path or extension.
|
|
39
|
+
*
|
|
40
|
+
* Accepts a full path (`"src/lib/foo.ts"`), a bare extension with the dot
|
|
41
|
+
* (`".ts"`), or a bare extension without (`"ts"`). Unknown extensions
|
|
42
|
+
* return {@link FALLBACK_LANG}.
|
|
43
|
+
*
|
|
44
|
+
* @example
|
|
45
|
+
* ```ts
|
|
46
|
+
* inferLanguage('src/lib/foo.ts'); // 'typescript'
|
|
47
|
+
* inferLanguage('.svelte'); // 'svelte'
|
|
48
|
+
* inferLanguage('config.unknown'); // 'text'
|
|
49
|
+
* ```
|
|
50
|
+
*/
|
|
51
|
+
export function inferLanguage(pathOrExt) {
|
|
52
|
+
if (typeof pathOrExt !== 'string' || pathOrExt.length === 0)
|
|
53
|
+
return FALLBACK_LANG;
|
|
54
|
+
// Reduce to the trailing extension. Three accepted shapes:
|
|
55
|
+
// - `"foo/bar.ts"` → last segment is `bar.ts`; extension is `.ts`
|
|
56
|
+
// - `".ts"` → already an extension
|
|
57
|
+
// - `"ts"` → bare extension, no dot
|
|
58
|
+
let ext;
|
|
59
|
+
const lastSlash = Math.max(pathOrExt.lastIndexOf('/'), pathOrExt.lastIndexOf('\\'));
|
|
60
|
+
const lastSegment = lastSlash >= 0 ? pathOrExt.slice(lastSlash + 1) : pathOrExt;
|
|
61
|
+
const lastDot = lastSegment.lastIndexOf('.');
|
|
62
|
+
if (lastDot === -1) {
|
|
63
|
+
// No dot anywhere — treat the whole string as a bare extension.
|
|
64
|
+
ext = '.' + lastSegment.toLowerCase();
|
|
65
|
+
}
|
|
66
|
+
else if (lastDot === 0) {
|
|
67
|
+
// Leading dot only — `".ts"` style.
|
|
68
|
+
ext = lastSegment.toLowerCase();
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
// Normal `name.ext`.
|
|
72
|
+
ext = lastSegment.slice(lastDot).toLowerCase();
|
|
73
|
+
}
|
|
74
|
+
return LANG_MAP[ext] ?? FALLBACK_LANG;
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=lang-map.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lang-map.js","sourceRoot":"","sources":["../src/lang-map.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,mFAAmF;AACnF,MAAM,CAAC,MAAM,QAAQ,GAAqC,MAAM,CAAC,MAAM,CAAC;IACvE,KAAK,EAAE,YAAY;IACnB,MAAM,EAAE,YAAY;IACpB,KAAK,EAAE,YAAY;IACnB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,YAAY;IACpB,SAAS,EAAE,QAAQ;IACnB,MAAM,EAAE,KAAK;IACb,KAAK,EAAE,SAAS;IAChB,UAAU,EAAE,SAAS;IACrB,OAAO,EAAE,MAAM;IACf,QAAQ,EAAE,OAAO;IACjB,OAAO,EAAE,MAAM;IACf,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,MAAM;IACf,OAAO,EAAE,MAAM;IACf,KAAK,EAAE,MAAM;IACb,OAAO,EAAE,MAAM;CACf,CAAC,CAAC;AAEH,wEAAwE;AACxE,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC;AAEpC;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,aAAa,CAAC,SAAiB;IAC9C,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,aAAa,CAAC;IAElF,2DAA2D;IAC3D,kEAAkE;IAClE,mCAAmC;IACnC,oCAAoC;IACpC,IAAI,GAAW,CAAC;IAChB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IACpF,MAAM,WAAW,GAAG,SAAS,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAChF,MAAM,OAAO,GAAG,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC7C,IAAI,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC;QACpB,gEAAgE;QAChE,GAAG,GAAG,GAAG,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;IACvC,CAAC;SAAM,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;QAC1B,oCAAoC;QACpC,GAAG,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;IACjC,CAAC;SAAM,CAAC;QACP,qBAAqB;QACrB,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;IAChD,CAAC;IAED,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,aAAa,CAAC;AACvC,CAAC"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sandboxed file reader for the snippet rune (SPEC-062).
|
|
3
|
+
*
|
|
4
|
+
* Resolves a project-root-relative path, enforces the snippet sandbox
|
|
5
|
+
* (absolute-path reject, traversal reject, symlink-escape reject,
|
|
6
|
+
* existence + file-type check), and optionally slices by line range.
|
|
7
|
+
*
|
|
8
|
+
* Pure synchronous I/O — runs at build time during the preprocess
|
|
9
|
+
* phase. Errors are thrown as `Error` instances with structured messages
|
|
10
|
+
* the preprocess hook formats for the user.
|
|
11
|
+
*/
|
|
12
|
+
/** Diagnostics from a single read. */
|
|
13
|
+
export interface ReadFileResult {
|
|
14
|
+
/** Resolved file content (possibly sliced by `lines`). */
|
|
15
|
+
content: string;
|
|
16
|
+
/** Absolute resolved path. */
|
|
17
|
+
absolutePath: string;
|
|
18
|
+
/** Project-root-relative POSIX path — what `data-snippet-source` carries. */
|
|
19
|
+
relativePath: string;
|
|
20
|
+
/** Warnings the preprocess hook should surface (e.g., end-clamp). */
|
|
21
|
+
warnings: string[];
|
|
22
|
+
}
|
|
23
|
+
export interface ReadFileOptions {
|
|
24
|
+
/** The author-supplied `path=` attribute value (project-root-relative). */
|
|
25
|
+
pathAttr: string;
|
|
26
|
+
/** Absolute path to the project root (the directory containing
|
|
27
|
+
* `refrakt.config.json`). The sandbox anchor. */
|
|
28
|
+
projectRoot: string;
|
|
29
|
+
/** Optional `lines=` attribute value (`"10-25"`, `"10-"`, `"-20"`, `"10"`). */
|
|
30
|
+
lines?: string;
|
|
31
|
+
/** Optional source-page context used in error messages
|
|
32
|
+
* ("Referenced from: docs/getting-started.md:42"). */
|
|
33
|
+
referencingPage?: string;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Validate a path attribute against the snippet sandbox rules.
|
|
37
|
+
* Throws `SnippetSandboxError` on rejection; returns the absolute resolved
|
|
38
|
+
* path on success.
|
|
39
|
+
*/
|
|
40
|
+
export declare function resolveSnippetPath(pathAttr: string, projectRoot: string): string;
|
|
41
|
+
/** Range parsed from the `lines=` attribute. */
|
|
42
|
+
interface LineRange {
|
|
43
|
+
/** 1-indexed start (inclusive). Undefined means "from start of file". */
|
|
44
|
+
start?: number;
|
|
45
|
+
/** 1-indexed end (inclusive). Undefined means "to end of file". */
|
|
46
|
+
end?: number;
|
|
47
|
+
}
|
|
48
|
+
/** Parse a `lines=` attribute. Returns null when the attribute is empty/absent;
|
|
49
|
+
* throws `SnippetSandboxError` on malformed input. */
|
|
50
|
+
export declare function parseLineRange(raw: string | undefined): LineRange | null;
|
|
51
|
+
/** Slice file content by line range. Returns the sliced text and any warnings
|
|
52
|
+
* about clamping. Throws `SnippetSandboxError` when the range is entirely
|
|
53
|
+
* past EOF. */
|
|
54
|
+
export declare function sliceContent(content: string, range: LineRange | null): {
|
|
55
|
+
sliced: string;
|
|
56
|
+
warnings: string[];
|
|
57
|
+
};
|
|
58
|
+
/** Read a snippet's source file with full sandbox enforcement + line slicing. */
|
|
59
|
+
export declare function readSnippetFile(opts: ReadFileOptions): ReadFileResult;
|
|
60
|
+
/**
|
|
61
|
+
* Read a file's raw text content with the snippet sandbox applied.
|
|
62
|
+
* Used by expand (SPEC-066) when it needs the whole file (no line
|
|
63
|
+
* slicing) to parse as Markdoc. Lives here so the `node:fs` import
|
|
64
|
+
* stays inside this Node-only helper module — expand-pipeline.ts
|
|
65
|
+
* imports the function, not `fs` directly, which keeps the runes
|
|
66
|
+
* package tree-shakable for browser bundles.
|
|
67
|
+
*/
|
|
68
|
+
export declare function readWholeSandboxedFile(opts: {
|
|
69
|
+
relativePath: string;
|
|
70
|
+
projectRoot: string;
|
|
71
|
+
}): string;
|
|
72
|
+
/** All sandbox-rejection cases throw this — the preprocess hook can catch and
|
|
73
|
+
* format with source-line context for the user. */
|
|
74
|
+
export declare class SnippetSandboxError extends Error {
|
|
75
|
+
constructor(message: string);
|
|
76
|
+
}
|
|
77
|
+
export {};
|
|
78
|
+
//# sourceMappingURL=read-file.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"read-file.d.ts","sourceRoot":"","sources":["../../src/lib/read-file.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAKH,sCAAsC;AACtC,MAAM,WAAW,cAAc;IAC9B,0DAA0D;IAC1D,OAAO,EAAE,MAAM,CAAC;IAChB,8BAA8B;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,6EAA6E;IAC7E,YAAY,EAAE,MAAM,CAAC;IACrB,qEAAqE;IACrE,QAAQ,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC/B,2EAA2E;IAC3E,QAAQ,EAAE,MAAM,CAAC;IACjB;sDACkD;IAClD,WAAW,EAAE,MAAM,CAAC;IACpB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;2DACuD;IACvD,eAAe,CAAC,EAAE,MAAM,CAAC;CACzB;AAOD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAkChF;AAED,gDAAgD;AAChD,UAAU,SAAS;IAClB,yEAAyE;IACzE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mEAAmE;IACnE,GAAG,CAAC,EAAE,MAAM,CAAC;CACb;AAED;uDACuD;AACvD,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,IAAI,CAkCxE;AAED;;gBAEgB;AAChB,wBAAgB,YAAY,CAC3B,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,SAAS,GAAG,IAAI,GACrB;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,CAyBxC;AAED,iFAAiF;AACjF,wBAAgB,eAAe,CAAC,IAAI,EAAE,eAAe,GAAG,cAAc,CA8BrE;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE;IAC5C,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACpB,GAAG,MAAM,CAYT;AAED;oDACoD;AACpD,qBAAa,mBAAoB,SAAQ,KAAK;gBACjC,OAAO,EAAE,MAAM;CAI3B"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sandboxed file reader for the snippet rune (SPEC-062).
|
|
3
|
+
*
|
|
4
|
+
* Resolves a project-root-relative path, enforces the snippet sandbox
|
|
5
|
+
* (absolute-path reject, traversal reject, symlink-escape reject,
|
|
6
|
+
* existence + file-type check), and optionally slices by line range.
|
|
7
|
+
*
|
|
8
|
+
* Pure synchronous I/O — runs at build time during the preprocess
|
|
9
|
+
* phase. Errors are thrown as `Error` instances with structured messages
|
|
10
|
+
* the preprocess hook formats for the user.
|
|
11
|
+
*/
|
|
12
|
+
import * as fs from 'node:fs';
|
|
13
|
+
import * as path from 'node:path';
|
|
14
|
+
/** Convert host-OS file path to POSIX form (forward slashes). */
|
|
15
|
+
function posixPath(p) {
|
|
16
|
+
return path.sep === '/' ? p : p.split(path.sep).join('/');
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Validate a path attribute against the snippet sandbox rules.
|
|
20
|
+
* Throws `SnippetSandboxError` on rejection; returns the absolute resolved
|
|
21
|
+
* path on success.
|
|
22
|
+
*/
|
|
23
|
+
export function resolveSnippetPath(pathAttr, projectRoot) {
|
|
24
|
+
if (typeof pathAttr !== 'string' || pathAttr.length === 0) {
|
|
25
|
+
throw new SnippetSandboxError('snippet `path` attribute is required');
|
|
26
|
+
}
|
|
27
|
+
if (path.isAbsolute(pathAttr)) {
|
|
28
|
+
throw new SnippetSandboxError(`snippet path "${pathAttr}" is absolute; project-root-relative paths only`);
|
|
29
|
+
}
|
|
30
|
+
const joined = path.resolve(projectRoot, pathAttr);
|
|
31
|
+
const normalized = path.normalize(joined);
|
|
32
|
+
const rootWithSep = projectRoot.endsWith(path.sep) ? projectRoot : projectRoot + path.sep;
|
|
33
|
+
if (!normalized.startsWith(rootWithSep) && normalized !== projectRoot) {
|
|
34
|
+
throw new SnippetSandboxError(`snippet path "${pathAttr}" escapes the project root after normalization`);
|
|
35
|
+
}
|
|
36
|
+
// Symlink-escape check via realpath. Fails open if realpath errors
|
|
37
|
+
// (which mostly means the file doesn't exist — we'll surface that below).
|
|
38
|
+
try {
|
|
39
|
+
const real = fs.realpathSync(normalized);
|
|
40
|
+
if (!real.startsWith(rootWithSep) && real !== projectRoot) {
|
|
41
|
+
throw new SnippetSandboxError(`snippet path "${pathAttr}" resolves through a symlink that escapes the project root`);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
catch (err) {
|
|
45
|
+
if (err.code !== 'ENOENT') {
|
|
46
|
+
throw err;
|
|
47
|
+
}
|
|
48
|
+
// File doesn't exist — let the stat check below produce the canonical
|
|
49
|
+
// "file not found" error with the resolved path in the message.
|
|
50
|
+
}
|
|
51
|
+
return normalized;
|
|
52
|
+
}
|
|
53
|
+
/** Parse a `lines=` attribute. Returns null when the attribute is empty/absent;
|
|
54
|
+
* throws `SnippetSandboxError` on malformed input. */
|
|
55
|
+
export function parseLineRange(raw) {
|
|
56
|
+
if (raw === undefined || raw === null || raw === '')
|
|
57
|
+
return null;
|
|
58
|
+
if (typeof raw !== 'string') {
|
|
59
|
+
throw new SnippetSandboxError(`snippet \`lines\` attribute must be a string, got ${typeof raw}`);
|
|
60
|
+
}
|
|
61
|
+
const trimmed = raw.trim();
|
|
62
|
+
if (trimmed.length === 0)
|
|
63
|
+
return null;
|
|
64
|
+
// "10" — single line shorthand
|
|
65
|
+
if (/^\d+$/.test(trimmed)) {
|
|
66
|
+
const n = Number(trimmed);
|
|
67
|
+
if (!Number.isFinite(n) || n < 1)
|
|
68
|
+
throw new SnippetSandboxError(`snippet \`lines\` value "${raw}" is not a positive integer`);
|
|
69
|
+
return { start: n, end: n };
|
|
70
|
+
}
|
|
71
|
+
// "10-25" | "10-" | "-20"
|
|
72
|
+
const m = /^(\d*)-(\d*)$/.exec(trimmed);
|
|
73
|
+
if (!m) {
|
|
74
|
+
throw new SnippetSandboxError(`snippet \`lines\` value "${raw}" is malformed; expected "N", "N-M", "N-", or "-M"`);
|
|
75
|
+
}
|
|
76
|
+
const startStr = m[1];
|
|
77
|
+
const endStr = m[2];
|
|
78
|
+
const start = startStr.length > 0 ? Number(startStr) : undefined;
|
|
79
|
+
const end = endStr.length > 0 ? Number(endStr) : undefined;
|
|
80
|
+
if (start !== undefined && (!Number.isFinite(start) || start < 1)) {
|
|
81
|
+
throw new SnippetSandboxError(`snippet \`lines\` start "${startStr}" is not a positive integer`);
|
|
82
|
+
}
|
|
83
|
+
if (end !== undefined && (!Number.isFinite(end) || end < 1)) {
|
|
84
|
+
throw new SnippetSandboxError(`snippet \`lines\` end "${endStr}" is not a positive integer`);
|
|
85
|
+
}
|
|
86
|
+
if (start !== undefined && end !== undefined && end < start) {
|
|
87
|
+
throw new SnippetSandboxError(`snippet \`lines\` value "${raw}" is inverted (end before start)`);
|
|
88
|
+
}
|
|
89
|
+
return { start, end };
|
|
90
|
+
}
|
|
91
|
+
/** Slice file content by line range. Returns the sliced text and any warnings
|
|
92
|
+
* about clamping. Throws `SnippetSandboxError` when the range is entirely
|
|
93
|
+
* past EOF. */
|
|
94
|
+
export function sliceContent(content, range) {
|
|
95
|
+
if (range === null)
|
|
96
|
+
return { sliced: content, warnings: [] };
|
|
97
|
+
const lines = content.split('\n');
|
|
98
|
+
const total = lines.length;
|
|
99
|
+
const startLine = range.start ?? 1;
|
|
100
|
+
let endLine = range.end ?? total;
|
|
101
|
+
const warnings = [];
|
|
102
|
+
if (startLine > total) {
|
|
103
|
+
throw new SnippetSandboxError(`snippet \`lines\` start ${startLine} is past end of file (${total} lines)`);
|
|
104
|
+
}
|
|
105
|
+
if (endLine > total) {
|
|
106
|
+
warnings.push(`snippet \`lines\` end ${endLine} exceeds file length; clamped to ${total}`);
|
|
107
|
+
endLine = total;
|
|
108
|
+
}
|
|
109
|
+
// Convert to 0-indexed slice bounds. `slice(a, b)` returns indices [a, b);
|
|
110
|
+
// we want lines [startLine, endLine] inclusive → slice(startLine - 1, endLine).
|
|
111
|
+
const sliced = lines.slice(startLine - 1, endLine).join('\n');
|
|
112
|
+
return { sliced, warnings };
|
|
113
|
+
}
|
|
114
|
+
/** Read a snippet's source file with full sandbox enforcement + line slicing. */
|
|
115
|
+
export function readSnippetFile(opts) {
|
|
116
|
+
const absolutePath = resolveSnippetPath(opts.pathAttr, opts.projectRoot);
|
|
117
|
+
let stat;
|
|
118
|
+
try {
|
|
119
|
+
stat = fs.statSync(absolutePath);
|
|
120
|
+
}
|
|
121
|
+
catch {
|
|
122
|
+
const referenced = opts.referencingPage ? `\n\nReferenced from: ${opts.referencingPage}` : '';
|
|
123
|
+
throw new SnippetSandboxError(`snippet path "${opts.pathAttr}" cannot be resolved.\n\nResolved to: ${absolutePath}\nReason: file not found${referenced}`);
|
|
124
|
+
}
|
|
125
|
+
if (!stat.isFile()) {
|
|
126
|
+
throw new SnippetSandboxError(`snippet path "${opts.pathAttr}" must be a file (got ${stat.isDirectory() ? 'directory' : 'other'})`);
|
|
127
|
+
}
|
|
128
|
+
const rawContent = fs.readFileSync(absolutePath, 'utf-8');
|
|
129
|
+
const range = parseLineRange(opts.lines);
|
|
130
|
+
const { sliced, warnings } = sliceContent(rawContent, range);
|
|
131
|
+
const relativePath = posixPath(path.relative(opts.projectRoot, absolutePath));
|
|
132
|
+
return {
|
|
133
|
+
content: sliced,
|
|
134
|
+
absolutePath,
|
|
135
|
+
relativePath,
|
|
136
|
+
warnings,
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Read a file's raw text content with the snippet sandbox applied.
|
|
141
|
+
* Used by expand (SPEC-066) when it needs the whole file (no line
|
|
142
|
+
* slicing) to parse as Markdoc. Lives here so the `node:fs` import
|
|
143
|
+
* stays inside this Node-only helper module — expand-pipeline.ts
|
|
144
|
+
* imports the function, not `fs` directly, which keeps the runes
|
|
145
|
+
* package tree-shakable for browser bundles.
|
|
146
|
+
*/
|
|
147
|
+
export function readWholeSandboxedFile(opts) {
|
|
148
|
+
const absolutePath = resolveSnippetPath(opts.relativePath, opts.projectRoot);
|
|
149
|
+
if (!fs.existsSync(absolutePath)) {
|
|
150
|
+
throw new SnippetSandboxError(`source file "${opts.relativePath}" does not exist`);
|
|
151
|
+
}
|
|
152
|
+
const stat = fs.statSync(absolutePath);
|
|
153
|
+
if (!stat.isFile()) {
|
|
154
|
+
throw new SnippetSandboxError(`source file "${opts.relativePath}" must be a regular file (got ${stat.isDirectory() ? 'directory' : 'other'})`);
|
|
155
|
+
}
|
|
156
|
+
return fs.readFileSync(absolutePath, 'utf-8');
|
|
157
|
+
}
|
|
158
|
+
/** All sandbox-rejection cases throw this — the preprocess hook can catch and
|
|
159
|
+
* format with source-line context for the user. */
|
|
160
|
+
export class SnippetSandboxError extends Error {
|
|
161
|
+
constructor(message) {
|
|
162
|
+
super(message);
|
|
163
|
+
this.name = 'SnippetSandboxError';
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
//# sourceMappingURL=read-file.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"read-file.js","sourceRoot":"","sources":["../../src/lib/read-file.ts"],"names":[],"mappings":"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"}
|
package/dist/nodes.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nodes.d.ts","sourceRoot":"","sources":["../src/nodes.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAO/C,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,OAAO,EAAE,MAyBrB,CAAA;AAED,eAAO,MAAM,SAAS,EAAE,MAMvB,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"nodes.d.ts","sourceRoot":"","sources":["../src/nodes.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAO/C,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,OAAO,EAAE,MAyBrB,CAAA;AAED,eAAO,MAAM,SAAS,EAAE,MAMvB,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,MA6BnB,CAAA;AAED,eAAO,MAAM,IAAI,EAAE,MAclB,CAAA;AAED,eAAO,MAAM,IAAI,EAAE,MAkBlB,CAAC;AAEF,eAAO,MAAM,EAAE,EAAE,MAMhB,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,MAMpB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,MAalB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,MAqBlB,CAAA;AAED,eAAO,MAAM,SAAS,gBAA0B,CAAC;AAEjD,eAAO,MAAM,KAAK,EAAE,MAkCnB,CAAC;AAEF,eAAO,MAAM,KAAK,EAAE,MAOnB,CAAA"}
|
package/dist/nodes.js
CHANGED
|
@@ -43,7 +43,18 @@ export const fence = {
|
|
|
43
43
|
},
|
|
44
44
|
transform(node, config) {
|
|
45
45
|
const lang = node.attributes.language || 'shell';
|
|
46
|
-
|
|
46
|
+
// Forward any data-* attributes from the fence node onto the rendered
|
|
47
|
+
// <pre>. The snippet preprocess (SPEC-062) attaches `data-snippet-source`
|
|
48
|
+
// / `data-snippet-title` / `data-snippet-lines` to fence nodes it
|
|
49
|
+
// synthesizes from `{% snippet %}` tags; the standalone wrap step
|
|
50
|
+
// queries against `data-snippet-source` to know which <pre>s to wrap
|
|
51
|
+
// in the snippet figure chrome.
|
|
52
|
+
const preAttrs = { 'data-language': lang };
|
|
53
|
+
for (const [key, value] of Object.entries(node.attributes)) {
|
|
54
|
+
if (key.startsWith('data-'))
|
|
55
|
+
preAttrs[key] = value;
|
|
56
|
+
}
|
|
57
|
+
const pre = new Tag('pre', preAttrs, [
|
|
47
58
|
new Tag('code', { 'data-language': lang }, [unescapeFenceContent(node.attributes.content)])
|
|
48
59
|
]);
|
|
49
60
|
return new Tag('div', { class: 'rf-codeblock' }, [pre]);
|
package/dist/nodes.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nodes.js","sourceRoot":"","sources":["../src/nodes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACjC,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAEvC,OAAO,KAAK,GAAG,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEzD,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC;AACzC,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;AAOxB,MAAM,CAAC,MAAM,OAAO,GAAW;IAC7B,QAAQ,EAAE,CAAC,QAAQ,CAAC;IACpB,UAAU,EAAE;QACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE;QACxD,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE;KAC5C;IACD,SAAS,CAAC,IAAI,EAAE,MAAM;QACpB,MAAM,UAAU,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAEhD,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,OAAO,UAAU,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;YACxD,UAAU,CAAC,EAAE,GAAG,QAAQ;iBACrB,MAAM,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC;iBACjD,IAAI,CAAC,GAAG,CAAC;iBACT,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;iBACnB,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;iBACpB,WAAW,EAAE,CAAC;QACnB,CAAC;QAED,OAAO,IAAI,GAAG,CACZ,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,EAC9B,UAAU,EACV,QAAQ,CACT,CAAC;IACJ,CAAC;CACF,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAW;IAC/B,QAAQ,EAAE,CAAC,QAAQ,CAAC;IACpB,UAAU,EAAE;QACV,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE;KAC5C;IACD,MAAM,EAAE,GAAG;CACZ,CAAA;AAED,MAAM,CAAC,MAAM,KAAK,GAAW;IAC3B,MAAM,EAAE,OAAO;IACf,UAAU,EAAE;QACV,OAAO,EAAE;YACP,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,KAAK;SACd;QACD,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE;QACzD,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE;KAC5D;IACD,SAAS,CAAC,IAAI,EAAE,MAAM;QACpB,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,IAAI,OAAO,CAAC;QAEjD,MAAM,
|
|
1
|
+
{"version":3,"file":"nodes.js","sourceRoot":"","sources":["../src/nodes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACjC,OAAO,OAAO,MAAM,kBAAkB,CAAC;AAEvC,OAAO,KAAK,GAAG,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEzD,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC;AACzC,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;AAOxB,MAAM,CAAC,MAAM,OAAO,GAAW;IAC7B,QAAQ,EAAE,CAAC,QAAQ,CAAC;IACpB,UAAU,EAAE;QACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE;QACxD,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE;KAC5C;IACD,SAAS,CAAC,IAAI,EAAE,MAAM;QACpB,MAAM,UAAU,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAEhD,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,OAAO,UAAU,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;YACxD,UAAU,CAAC,EAAE,GAAG,QAAQ;iBACrB,MAAM,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC;iBACjD,IAAI,CAAC,GAAG,CAAC;iBACT,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;iBACnB,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;iBACpB,WAAW,EAAE,CAAC;QACnB,CAAC;QAED,OAAO,IAAI,GAAG,CACZ,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,EAC9B,UAAU,EACV,QAAQ,CACT,CAAC;IACJ,CAAC;CACF,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAW;IAC/B,QAAQ,EAAE,CAAC,QAAQ,CAAC;IACpB,UAAU,EAAE;QACV,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE;KAC5C;IACD,MAAM,EAAE,GAAG;CACZ,CAAA;AAED,MAAM,CAAC,MAAM,KAAK,GAAW;IAC3B,MAAM,EAAE,OAAO;IACf,UAAU,EAAE;QACV,OAAO,EAAE;YACP,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,KAAK;SACd;QACD,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE;QACzD,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE;KAC5D;IACD,SAAS,CAAC,IAAI,EAAE,MAAM;QACpB,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,IAAI,OAAO,CAAC;QAEjD,sEAAsE;QACtE,0EAA0E;QAC1E,kEAAkE;QAClE,kEAAkE;QAClE,qEAAqE;QACrE,gCAAgC;QAChC,MAAM,QAAQ,GAA4B,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;QACpE,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3D,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC;gBAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACrD,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE;YACnC,IAAI,GAAG,CAAC,MAAM,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;SAC5F,CAAC,CAAC;QACH,OAAO,IAAI,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1D,CAAC;CACF,CAAA;AAED,MAAM,CAAC,MAAM,IAAI,GAAW;IAC1B,QAAQ,EAAE,CAAC,MAAM,CAAC;IAClB,UAAU,EAAE;QACV,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE;QACzD,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;QACvB,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE;KACxC;IACD,SAAS,CAAC,IAAI,EAAE,MAAM;QACpB,OAAO,IAAI,GAAG,CACZ,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EACrC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAChC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAC/B,CAAC;IACJ,CAAC;CACF,CAAA;AAED,MAAM,CAAC,MAAM,IAAI,GAAW;IAC1B,MAAM,EAAE,IAAI;IACZ,QAAQ,EAAE;QACR,QAAQ;QACR,SAAS;QACT,WAAW;QACX,OAAO;QACP,OAAO;QACP,KAAK;QACL,OAAO;QACP,YAAY;QACZ,MAAM;QACN,IAAI;KACL;IACD,UAAU,EAAE;QACV,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE;QAC3C,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE;KAC1C;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,EAAE,GAAW;IACxB,MAAM,EAAE,IAAI;IACZ,QAAQ,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC;IACxD,UAAU,EAAE;QACV,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE;KACvC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAW;IAC5B,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC;IACpD,UAAU,EAAE;QACV,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE;KACvC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAW;IAC1B,UAAU,EAAE;QACV,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;QACzC,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE;KAC5C;IACD,SAAS,CAAC,IAAI,EAAE,MAAM;QACpB,MAAM,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAE9C,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,OAAO,IAAI,GAAG,CAAC,MAAM,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAE,CAAC;QACtF,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;IACjC,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAW;IAC1B,QAAQ,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC;IACtD,UAAU,EAAE;QACV,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;QACtC,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;KACxB;IACD,MAAM,EAAE,GAAG;IACX,SAAS,CAAC,IAAI,EAAE,MAAM;QACpB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;QAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAC3C,IAAI,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACjC,MAAM,OAAO,GAAG,OAAO,KAAK,GAAG;YAC7B,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YACrC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAEzB,IAAI,OAAO,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;YAC3B,UAAU,GAAG,EAAE,GAAG,UAAU,EAAE,IAAI,EAAE,CAAC;QACvC,CAAC;QACD,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1E,CAAC;CACF,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC;AAEjD,MAAM,CAAC,MAAM,KAAK,GAAW;IAC3B,MAAM,EAAE,KAAK;IACb,UAAU,EAAE;QACV,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;QACrC,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;QACrB,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;QACvB,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;KAC3B;IACD,SAAS,CAAC,IAAI,EAAE,MAAM;QACpB,MAAM,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,QAAQ,GAAiB,MAAM,CAAC,SAAS,EAAE,GAAG,IAAI,EAAE,CAAC;QAE3D,IAAI,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAC9B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC;YAC/C,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;QAEpD,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC,CAAC;YAC9D,IAAI,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACrC,MAAM,GAAG,GAAG,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;YAEvC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/C,CAAC;YACD,GAAG,CAAC,UAAU,CAAC,KAAK,GAAG,SAAS,CAAC;YAEjC,OAAO,GAAG,CAAC;QACb,CAAC;QAED,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;IACpE,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAW;IAC3B,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC;IAClC,UAAU,EAAE,EAAE;IACd,SAAS,CAAC,IAAI,EAAE,MAAM;QACpB,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;QACpG,OAAO,IAAI,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IACnE,CAAC;CACF,CAAA;AAED,SAAS,SAAS,CAAC,OAAe,EAAE,OAAoD;IACtF,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IACjD,CAAC;IAED,IAAI,QAAQ,GAAU,EAAE,CAAC;IACzB,IAAI,IAAI,GAAuC,EAAE,CAAC;IAElD,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7C,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACvB,CAAC;aAAM,IAAI,CAAC,KAAK,OAAO,EAAE,CAAC;YACzB,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IACD,OAAO,IAAI,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC1C,CAAC"}
|