@dogsbay/format-dogsbay-md 0.2.0-beta.46 → 0.2.0-beta.48
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/escape.d.ts +29 -0
- package/dist/escape.d.ts.map +1 -1
- package/dist/escape.js +66 -1
- package/dist/escape.js.map +1 -1
- package/dist/inline.d.ts.map +1 -1
- package/dist/inline.js +7 -1
- package/dist/inline.js.map +1 -1
- package/package.json +2 -2
package/dist/escape.d.ts
CHANGED
|
@@ -4,10 +4,39 @@
|
|
|
4
4
|
* Two rules drive everything here:
|
|
5
5
|
* 1. Content must round-trip through a markdown-it parser cleanly.
|
|
6
6
|
* 2. When ambiguous, prefer escaping — a reader never sees broken syntax.
|
|
7
|
+
*
|
|
8
|
+
* Dogsbay-MD is a SUPERSET of CommonMark: it includes Minja directives
|
|
9
|
+
* (`{{ var }}`, `{% if %}`, `{% include %}`, `{# comment #}`). Those
|
|
10
|
+
* directives have their own syntax and must NOT be escape-mangled —
|
|
11
|
+
* a path like `./_attributes/foo.md` inside `{% include "..." %}`
|
|
12
|
+
* has to survive as-is so the build-time preprocessor can resolve it.
|
|
13
|
+
* `escapePreservingMinja` is the seam: it splits text on directive
|
|
14
|
+
* boundaries, escapes only the prose segments, and leaves directives
|
|
15
|
+
* verbatim. Every text-escape entry point in this package is built
|
|
16
|
+
* on top of it.
|
|
17
|
+
*/
|
|
18
|
+
/**
|
|
19
|
+
* Apply a per-segment escape function to text, treating Minja
|
|
20
|
+
* directives as opaque atoms that pass through verbatim.
|
|
21
|
+
*
|
|
22
|
+
* The shape:
|
|
23
|
+
* "Hello {{ name }} — see {% include \"path.md\" %} for details."
|
|
24
|
+
* ↓ split on directives
|
|
25
|
+
* ["Hello ", "{{ name }}", " — see ", "{% include \"path.md\" %}", " for details."]
|
|
26
|
+
* ↓ escape only non-directive segments
|
|
27
|
+
* [esc("Hello "), "{{ name }}", esc(" — see "), "{% include \"path.md\" %}", esc(" for details.")]
|
|
28
|
+
* ↓ join
|
|
29
|
+
* "Hello {{ name }} — see {% include \"path.md\" %} for details."
|
|
30
|
+
*
|
|
31
|
+
* Text with no directives short-circuits to a single escape call,
|
|
32
|
+
* so the fast path is unchanged for the common case.
|
|
7
33
|
*/
|
|
34
|
+
export declare function escapePreservingMinja(text: string, escape: (segment: string) => string): string;
|
|
8
35
|
/**
|
|
9
36
|
* Escape markdown-active characters in text content.
|
|
10
37
|
* Only escapes what would change parsing; leaves everything else alone.
|
|
38
|
+
* Minja directives (`{{ … }}`, `{% … %}`, `{# … #}`) pass through
|
|
39
|
+
* verbatim — see escapePreservingMinja.
|
|
11
40
|
*/
|
|
12
41
|
export declare function escapeText(text: string): string;
|
|
13
42
|
/**
|
package/dist/escape.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"escape.d.ts","sourceRoot":"","sources":["../src/escape.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"escape.d.ts","sourceRoot":"","sources":["../src/escape.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAiBH;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,GAClC,MAAM,CAkBR;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAQD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMvD;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,aAAa,GAAE,GAAG,GAAG,GAAS,GAC7B,MAAM,CAOR;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAO1D;AAED;;;GAGG;AACH,wBAAgB,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAM9D;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAKnE"}
|
package/dist/escape.js
CHANGED
|
@@ -4,13 +4,78 @@
|
|
|
4
4
|
* Two rules drive everything here:
|
|
5
5
|
* 1. Content must round-trip through a markdown-it parser cleanly.
|
|
6
6
|
* 2. When ambiguous, prefer escaping — a reader never sees broken syntax.
|
|
7
|
+
*
|
|
8
|
+
* Dogsbay-MD is a SUPERSET of CommonMark: it includes Minja directives
|
|
9
|
+
* (`{{ var }}`, `{% if %}`, `{% include %}`, `{# comment #}`). Those
|
|
10
|
+
* directives have their own syntax and must NOT be escape-mangled —
|
|
11
|
+
* a path like `./_attributes/foo.md` inside `{% include "..." %}`
|
|
12
|
+
* has to survive as-is so the build-time preprocessor can resolve it.
|
|
13
|
+
* `escapePreservingMinja` is the seam: it splits text on directive
|
|
14
|
+
* boundaries, escapes only the prose segments, and leaves directives
|
|
15
|
+
* verbatim. Every text-escape entry point in this package is built
|
|
16
|
+
* on top of it.
|
|
17
|
+
*/
|
|
18
|
+
/**
|
|
19
|
+
* Matches a complete Minja directive:
|
|
20
|
+
* - `{{ … }}` variable / filter pipeline
|
|
21
|
+
* - `{% … %}` block (if / endif / for / set / include / raw / …)
|
|
22
|
+
* - `{# … #}` comment
|
|
23
|
+
*
|
|
24
|
+
* Lazy match (`*?`) terminates at the FIRST closing delimiter, which
|
|
25
|
+
* matches Minja's grammar — directives can't legitimately nest by
|
|
26
|
+
* the same delimiter. `[\s\S]` so multi-line directives are handled
|
|
27
|
+
* (e.g. `{% if x %}\n…\n{% endif %}` is two separate matches; the
|
|
28
|
+
* inner content isn't a single directive).
|
|
29
|
+
*/
|
|
30
|
+
const MINJA_DIRECTIVE_RE = /\{\{[\s\S]*?\}\}|\{%[\s\S]*?%\}|\{#[\s\S]*?#\}/g;
|
|
31
|
+
/**
|
|
32
|
+
* Apply a per-segment escape function to text, treating Minja
|
|
33
|
+
* directives as opaque atoms that pass through verbatim.
|
|
34
|
+
*
|
|
35
|
+
* The shape:
|
|
36
|
+
* "Hello {{ name }} — see {% include \"path.md\" %} for details."
|
|
37
|
+
* ↓ split on directives
|
|
38
|
+
* ["Hello ", "{{ name }}", " — see ", "{% include \"path.md\" %}", " for details."]
|
|
39
|
+
* ↓ escape only non-directive segments
|
|
40
|
+
* [esc("Hello "), "{{ name }}", esc(" — see "), "{% include \"path.md\" %}", esc(" for details.")]
|
|
41
|
+
* ↓ join
|
|
42
|
+
* "Hello {{ name }} — see {% include \"path.md\" %} for details."
|
|
43
|
+
*
|
|
44
|
+
* Text with no directives short-circuits to a single escape call,
|
|
45
|
+
* so the fast path is unchanged for the common case.
|
|
7
46
|
*/
|
|
47
|
+
export function escapePreservingMinja(text, escape) {
|
|
48
|
+
// Fast path: no directive opener anywhere → straight escape.
|
|
49
|
+
if (!text.includes("{{") && !text.includes("{%") && !text.includes("{#")) {
|
|
50
|
+
return escape(text);
|
|
51
|
+
}
|
|
52
|
+
const parts = [];
|
|
53
|
+
let lastEnd = 0;
|
|
54
|
+
// matchAll iterates left-to-right with global flag; safe to reset
|
|
55
|
+
// via fresh exec context per call (regex is stateless when used
|
|
56
|
+
// this way).
|
|
57
|
+
for (const match of text.matchAll(MINJA_DIRECTIVE_RE)) {
|
|
58
|
+
const start = match.index ?? 0;
|
|
59
|
+
if (start > lastEnd)
|
|
60
|
+
parts.push(escape(text.slice(lastEnd, start)));
|
|
61
|
+
parts.push(match[0]);
|
|
62
|
+
lastEnd = start + match[0].length;
|
|
63
|
+
}
|
|
64
|
+
if (lastEnd < text.length)
|
|
65
|
+
parts.push(escape(text.slice(lastEnd)));
|
|
66
|
+
return parts.join("");
|
|
67
|
+
}
|
|
8
68
|
/**
|
|
9
69
|
* Escape markdown-active characters in text content.
|
|
10
70
|
* Only escapes what would change parsing; leaves everything else alone.
|
|
71
|
+
* Minja directives (`{{ … }}`, `{% … %}`, `{# … #}`) pass through
|
|
72
|
+
* verbatim — see escapePreservingMinja.
|
|
11
73
|
*/
|
|
12
74
|
export function escapeText(text) {
|
|
13
|
-
return text
|
|
75
|
+
return escapePreservingMinja(text, escapeTextSegment);
|
|
76
|
+
}
|
|
77
|
+
function escapeTextSegment(segment) {
|
|
78
|
+
return segment
|
|
14
79
|
.replace(/\\/g, "\\\\")
|
|
15
80
|
.replace(/([*_`~[\]()<>#|{}])/g, "\\$1");
|
|
16
81
|
}
|
package/dist/escape.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"escape.js","sourceRoot":"","sources":["../src/escape.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"escape.js","sourceRoot":"","sources":["../src/escape.ts"],"names":[],"mappings":"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"}
|
package/dist/inline.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inline.d.ts","sourceRoot":"","sources":["../src/inline.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAe,UAAU,EAAY,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"inline.d.ts","sourceRoot":"","sources":["../src/inline.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAe,UAAU,EAAY,MAAM,gBAAgB,CAAC;AAiBxE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,SAAS,GAAG,MAAM,CA2CzE"}
|
package/dist/inline.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { escapeAttrValue } from "./attributes.js";
|
|
2
|
+
import { escapePreservingMinja } from "./escape.js";
|
|
2
3
|
// Canonical nesting order: outermost → innermost. Strike outer, italic
|
|
3
4
|
// middle, bold inner. Matches the historical renderText() ordering and
|
|
4
5
|
// CommonMark community convention (`***strong-em***` reads as em(strong)).
|
|
@@ -209,9 +210,14 @@ function renderIcon(node) {
|
|
|
209
210
|
/**
|
|
210
211
|
* Escape markdown-active characters in inline text.
|
|
211
212
|
* Balance: aggressive enough to round-trip, not so aggressive that readable text
|
|
212
|
-
* becomes a thicket of backslashes.
|
|
213
|
+
* becomes a thicket of backslashes. Minja directives (`{{ … }}`, `{% … %}`,
|
|
214
|
+
* `{# … #}`) pass through verbatim — see escapePreservingMinja in escape.ts
|
|
215
|
+
* for the seam.
|
|
213
216
|
*/
|
|
214
217
|
function escapeInlineText(text) {
|
|
218
|
+
return escapePreservingMinja(text, escapeInlineTextSegment);
|
|
219
|
+
}
|
|
220
|
+
function escapeInlineTextSegment(text) {
|
|
215
221
|
// CommonMark rule: `_` is emphasis only at word boundaries (not intraword).
|
|
216
222
|
// So `snake_case` needs no escaping. Only escape `_` at word boundaries.
|
|
217
223
|
return text
|
package/dist/inline.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inline.js","sourceRoot":"","sources":["../src/inline.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAA2B,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"inline.js","sourceRoot":"","sources":["../src/inline.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dogsbay/format-dogsbay-md",
|
|
3
|
-
"version": "0.2.0-beta.
|
|
3
|
+
"version": "0.2.0-beta.48",
|
|
4
4
|
"description": "Dogsbay Markdown dialect — canonical format for TreeNode[] with directives, YAML bodies, and intelligent fallbacks",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
"markdown-it-front-matter": "^0.2.4",
|
|
36
36
|
"gray-matter": "^4.0.3",
|
|
37
37
|
"js-yaml": "^4.1.0",
|
|
38
|
-
"@dogsbay/types": "0.2.0-beta.
|
|
38
|
+
"@dogsbay/types": "0.2.0-beta.48"
|
|
39
39
|
},
|
|
40
40
|
"optionalDependencies": {
|
|
41
41
|
"@mermaid-js/mermaid-cli": "^11.0.0"
|