lens-content-processor 0.24.0 → 0.26.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/flattener/resolve-text-links.d.ts +1 -1
- package/dist/flattener/resolve-text-links.js +61 -32
- package/dist/flattener/resolve-text-links.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.js +42 -21
- package/dist/index.js.map +1 -1
- package/dist/parser/course.js +41 -16
- package/dist/parser/course.js.map +1 -1
- package/dist/parser/sections.d.ts +2 -2
- package/dist/parser/sections.js +76 -45
- package/dist/parser/sections.js.map +1 -1
- package/dist/validator/directives.d.ts +3 -3
- package/dist/validator/directives.js +162 -76
- package/dist/validator/directives.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,14 +1,35 @@
|
|
|
1
|
-
import { levenshtein } from
|
|
1
|
+
import { levenshtein } from "./field-typos.js";
|
|
2
2
|
const SUPPORTED_DIRECTIVES = {
|
|
3
3
|
note: { container: true, leaf: true, text: true, open: false },
|
|
4
|
+
hide: { container: true, leaf: false, text: true, open: false },
|
|
5
|
+
// Legacy alias. Keep existing content working, but do not advertise it.
|
|
4
6
|
collapse: { container: true, leaf: false, text: true, open: false },
|
|
5
7
|
footnote: { container: false, leaf: true, text: true, open: false },
|
|
8
|
+
callout: { container: true, leaf: false, text: false, open: false },
|
|
6
9
|
};
|
|
10
|
+
const LEGACY_DIRECTIVE_ALIASES = new Map([["collapse", "hide"]]);
|
|
11
|
+
function supportedDirectiveNames(form) {
|
|
12
|
+
return Object.entries(SUPPORTED_DIRECTIVES)
|
|
13
|
+
.filter(([name, support]) => !LEGACY_DIRECTIVE_ALIASES.has(name) && support[form])
|
|
14
|
+
.map(([name]) => name)
|
|
15
|
+
.join(", ");
|
|
16
|
+
}
|
|
7
17
|
const UNSUPPORTED_NAMES = new Set([
|
|
8
|
-
|
|
9
|
-
|
|
18
|
+
"warning",
|
|
19
|
+
"info",
|
|
20
|
+
"tip",
|
|
21
|
+
"caution",
|
|
22
|
+
"important",
|
|
23
|
+
"danger",
|
|
24
|
+
"details",
|
|
25
|
+
"summary",
|
|
26
|
+
"aside",
|
|
27
|
+
"admonition",
|
|
28
|
+
]);
|
|
29
|
+
const ALL_DIRECTIVE_NAMES = new Set([
|
|
30
|
+
...Object.keys(SUPPORTED_DIRECTIVES),
|
|
31
|
+
...UNSUPPORTED_NAMES,
|
|
10
32
|
]);
|
|
11
|
-
const ALL_DIRECTIVE_NAMES = new Set([...Object.keys(SUPPORTED_DIRECTIVES), ...UNSUPPORTED_NAMES]);
|
|
12
33
|
/**
|
|
13
34
|
* Check if a name is a near-miss typo of a supported directive name.
|
|
14
35
|
* Returns the closest match if levenshtein distance ≤ 2, else undefined.
|
|
@@ -20,15 +41,15 @@ function findNearMissDirective(name) {
|
|
|
20
41
|
const dist = levenshtein(name.toLowerCase(), supported);
|
|
21
42
|
if (dist > 0 && dist <= 2 && dist < bestDist) {
|
|
22
43
|
bestDist = dist;
|
|
23
|
-
bestMatch = supported;
|
|
44
|
+
bestMatch = LEGACY_DIRECTIVE_ALIASES.get(supported) ?? supported;
|
|
24
45
|
}
|
|
25
46
|
}
|
|
26
47
|
return bestMatch;
|
|
27
48
|
}
|
|
28
49
|
// Regex patterns
|
|
29
|
-
const CONTAINER_OPEN =
|
|
30
|
-
const CONTAINER_CLOSE_BARE =
|
|
31
|
-
const CONTAINER_CLOSE_ATTR =
|
|
50
|
+
const CONTAINER_OPEN = /^(:{3,})([\w-]+)(?:\s*\{([^}]*)\})?/;
|
|
51
|
+
const CONTAINER_CLOSE_BARE = /^(:{3,})\s*$/;
|
|
52
|
+
const CONTAINER_CLOSE_ATTR = /^(:{3,})\s*\{([^}]*)\}/;
|
|
32
53
|
const CODE_FENCE = /^(?:```|~~~)/;
|
|
33
54
|
const LEAF_DIRECTIVE_PRE = /^::([\w-]+)(?:\{([^}]*)\})?\[/;
|
|
34
55
|
const LEAF_DIRECTIVE_POST = /^::([\w-]+)\[[^\]]*\]\{([^}]*)\}/;
|
|
@@ -41,21 +62,21 @@ const TEXT_UNCLOSED = /(?:^|[^:]):([\w][\w-]*)(?:\{[^}]*\})?\[[^\]]*$/;
|
|
|
41
62
|
* Check if an attribute value looks like a typo of "open".
|
|
42
63
|
*/
|
|
43
64
|
function isOpenTypo(attr) {
|
|
44
|
-
if (attr ===
|
|
65
|
+
if (attr === "open")
|
|
45
66
|
return false;
|
|
46
67
|
if (!attr)
|
|
47
68
|
return false;
|
|
48
69
|
// Case-insensitive match
|
|
49
|
-
if (attr.toLowerCase() ===
|
|
70
|
+
if (attr.toLowerCase() === "open")
|
|
50
71
|
return true;
|
|
51
72
|
// Contains = (like open=true)
|
|
52
|
-
if (attr.includes(
|
|
53
|
-
const key = attr.split(
|
|
54
|
-
if (key.toLowerCase() ===
|
|
73
|
+
if (attr.includes("=")) {
|
|
74
|
+
const key = attr.split("=")[0];
|
|
75
|
+
if (key.toLowerCase() === "open")
|
|
55
76
|
return true;
|
|
56
77
|
}
|
|
57
78
|
// Levenshtein distance
|
|
58
|
-
if (levenshtein(attr.toLowerCase(),
|
|
79
|
+
if (levenshtein(attr.toLowerCase(), "open") <= 2)
|
|
59
80
|
return true;
|
|
60
81
|
return false;
|
|
61
82
|
}
|
|
@@ -69,17 +90,66 @@ function checkAttribute(name, attr, file, line) {
|
|
|
69
90
|
const info = SUPPORTED_DIRECTIVES[name];
|
|
70
91
|
if (!info)
|
|
71
92
|
return errors;
|
|
72
|
-
if (
|
|
93
|
+
if (name === "callout") {
|
|
94
|
+
const tokens = [...attr.matchAll(/([\w-]+)\s*=\s*"([^"]*)"/g)];
|
|
95
|
+
const consumed = tokens.map((match) => match[0]).join(" ");
|
|
96
|
+
if (consumed.replace(/\s+/g, " ").trim() !== attr.replace(/\s+/g, " ").trim()) {
|
|
97
|
+
errors.push({
|
|
98
|
+
file,
|
|
99
|
+
line,
|
|
100
|
+
message: `Invalid callout attributes '{${attr}}'`,
|
|
101
|
+
suggestion: 'Use key="value" attributes: title, tone, or collapse',
|
|
102
|
+
severity: "error",
|
|
103
|
+
});
|
|
104
|
+
return errors;
|
|
105
|
+
}
|
|
106
|
+
const values = new Map(tokens.map((match) => [match[1], match[2]]));
|
|
107
|
+
const allowed = new Set(["title", "tone", "collapse"]);
|
|
108
|
+
for (const key of values.keys()) {
|
|
109
|
+
if (!allowed.has(key)) {
|
|
110
|
+
errors.push({
|
|
111
|
+
file,
|
|
112
|
+
line,
|
|
113
|
+
message: `Unrecognized callout attribute '${key}'`,
|
|
114
|
+
suggestion: "Use title, tone, or collapse",
|
|
115
|
+
severity: "warning",
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
const tone = values.get("tone");
|
|
120
|
+
if (tone &&
|
|
121
|
+
!["neutral", "blue", "green", "amber", "red", "purple"].includes(tone)) {
|
|
122
|
+
errors.push({
|
|
123
|
+
file,
|
|
124
|
+
line,
|
|
125
|
+
message: `Unrecognized callout tone '${tone}'`,
|
|
126
|
+
suggestion: "Use neutral, blue, green, amber, red, or purple",
|
|
127
|
+
severity: "error",
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
const collapse = values.get("collapse");
|
|
131
|
+
if (collapse && collapse !== "closed" && collapse !== "open") {
|
|
132
|
+
errors.push({
|
|
133
|
+
file,
|
|
134
|
+
line,
|
|
135
|
+
message: `Invalid callout collapse value '${collapse}'`,
|
|
136
|
+
suggestion: 'Use collapse="closed", collapse="open", or omit collapse',
|
|
137
|
+
severity: "error",
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
return errors;
|
|
141
|
+
}
|
|
142
|
+
if (attr === "") {
|
|
73
143
|
errors.push({
|
|
74
144
|
file,
|
|
75
145
|
line,
|
|
76
146
|
message: `Directive '${name}' has an empty attribute '{}'`,
|
|
77
|
-
suggestion:
|
|
78
|
-
severity:
|
|
147
|
+
suggestion: "Remove the empty braces, or use {open} to make the directive open by default",
|
|
148
|
+
severity: "warning",
|
|
79
149
|
});
|
|
80
150
|
return errors;
|
|
81
151
|
}
|
|
82
|
-
if (attr ===
|
|
152
|
+
if (attr === "open") {
|
|
83
153
|
// Valid attribute — but check if this directive supports it
|
|
84
154
|
if (!info.open) {
|
|
85
155
|
errors.push({
|
|
@@ -87,7 +157,7 @@ function checkAttribute(name, attr, file, line) {
|
|
|
87
157
|
line,
|
|
88
158
|
message: `Directive '${name}' does not support {open}`,
|
|
89
159
|
suggestion: `Remove {open} — '${name}' does not support the open attribute`,
|
|
90
|
-
severity:
|
|
160
|
+
severity: "warning",
|
|
91
161
|
});
|
|
92
162
|
}
|
|
93
163
|
}
|
|
@@ -97,7 +167,7 @@ function checkAttribute(name, attr, file, line) {
|
|
|
97
167
|
line,
|
|
98
168
|
message: `Possible attribute typo '{${attr}}' on directive '${name}'`,
|
|
99
169
|
suggestion: `Did you mean {open}?`,
|
|
100
|
-
severity:
|
|
170
|
+
severity: "warning",
|
|
101
171
|
});
|
|
102
172
|
}
|
|
103
173
|
else {
|
|
@@ -106,8 +176,10 @@ function checkAttribute(name, attr, file, line) {
|
|
|
106
176
|
file,
|
|
107
177
|
line,
|
|
108
178
|
message: `Unrecognized attribute '{${attr}}' on directive '${name}'`,
|
|
109
|
-
suggestion: info.open
|
|
110
|
-
|
|
179
|
+
suggestion: info.open
|
|
180
|
+
? `The only supported attribute is {open}`
|
|
181
|
+
: `'${name}' does not support any attributes`,
|
|
182
|
+
severity: "warning",
|
|
111
183
|
});
|
|
112
184
|
}
|
|
113
185
|
return errors;
|
|
@@ -119,7 +191,7 @@ function checkAttribute(name, attr, file, line) {
|
|
|
119
191
|
*/
|
|
120
192
|
export function validateDirectives(body, file, bodyStartLine) {
|
|
121
193
|
const errors = [];
|
|
122
|
-
const lines = body.split(
|
|
194
|
+
const lines = body.split("\n");
|
|
123
195
|
const stack = [];
|
|
124
196
|
let inCodeBlock = false;
|
|
125
197
|
for (let i = 0; i < lines.length; i++) {
|
|
@@ -135,7 +207,7 @@ export function validateDirectives(body, file, bodyStartLine) {
|
|
|
135
207
|
// Check container close with attribute (error: {open} on closing marker)
|
|
136
208
|
const closeAttrMatch = line.match(CONTAINER_CLOSE_ATTR);
|
|
137
209
|
if (closeAttrMatch) {
|
|
138
|
-
const attrOnClose = closeAttrMatch[
|
|
210
|
+
const attrOnClose = closeAttrMatch[2];
|
|
139
211
|
const top = stack.pop();
|
|
140
212
|
if (top) {
|
|
141
213
|
errors.push({
|
|
@@ -143,7 +215,7 @@ export function validateDirectives(body, file, bodyStartLine) {
|
|
|
143
215
|
line: absLine,
|
|
144
216
|
message: `Attribute {${attrOnClose}} on closing ':::' marker has no effect`,
|
|
145
217
|
suggestion: `Move to opening marker: :::${top.name}{${attrOnClose}}`,
|
|
146
|
-
severity:
|
|
218
|
+
severity: "error",
|
|
147
219
|
});
|
|
148
220
|
// Check empty container
|
|
149
221
|
if (!top.hasContent) {
|
|
@@ -151,8 +223,8 @@ export function validateDirectives(body, file, bodyStartLine) {
|
|
|
151
223
|
file,
|
|
152
224
|
line: top.line,
|
|
153
225
|
message: `Empty container directive ':::${top.name}' has no content`,
|
|
154
|
-
suggestion:
|
|
155
|
-
severity:
|
|
226
|
+
suggestion: "Add content between the opening and closing markers",
|
|
227
|
+
severity: "warning",
|
|
156
228
|
});
|
|
157
229
|
}
|
|
158
230
|
}
|
|
@@ -166,8 +238,8 @@ export function validateDirectives(body, file, bodyStartLine) {
|
|
|
166
238
|
file,
|
|
167
239
|
line: top.line,
|
|
168
240
|
message: `Empty container directive ':::${top.name}' has no content`,
|
|
169
|
-
suggestion:
|
|
170
|
-
severity:
|
|
241
|
+
suggestion: "Add content between the opening and closing markers",
|
|
242
|
+
severity: "warning",
|
|
171
243
|
});
|
|
172
244
|
}
|
|
173
245
|
continue;
|
|
@@ -175,15 +247,16 @@ export function validateDirectives(body, file, bodyStartLine) {
|
|
|
175
247
|
// Check container open
|
|
176
248
|
const openMatch = line.match(CONTAINER_OPEN);
|
|
177
249
|
if (openMatch) {
|
|
178
|
-
const
|
|
179
|
-
const
|
|
250
|
+
const fenceLength = openMatch[1].length;
|
|
251
|
+
const name = openMatch[2];
|
|
252
|
+
const attr = openMatch[3];
|
|
180
253
|
if (UNSUPPORTED_NAMES.has(name)) {
|
|
181
254
|
errors.push({
|
|
182
255
|
file,
|
|
183
256
|
line: absLine,
|
|
184
257
|
message: `Unsupported directive ':::${name}'`,
|
|
185
|
-
suggestion: `Supported container directives: ${
|
|
186
|
-
severity:
|
|
258
|
+
suggestion: `Supported container directives: ${supportedDirectiveNames("container")}`,
|
|
259
|
+
severity: "error",
|
|
187
260
|
});
|
|
188
261
|
}
|
|
189
262
|
else if (SUPPORTED_DIRECTIVES[name]) {
|
|
@@ -193,7 +266,7 @@ export function validateDirectives(body, file, bodyStartLine) {
|
|
|
193
266
|
line: absLine,
|
|
194
267
|
message: `Directive '${name}' does not support the container ':::' form`,
|
|
195
268
|
suggestion: `Use the leaf form '::${name}[text]' or inline form ':${name}[text]' instead`,
|
|
196
|
-
severity:
|
|
269
|
+
severity: "error",
|
|
197
270
|
});
|
|
198
271
|
}
|
|
199
272
|
errors.push(...checkAttribute(name, attr, file, absLine));
|
|
@@ -205,12 +278,12 @@ export function validateDirectives(body, file, bodyStartLine) {
|
|
|
205
278
|
file,
|
|
206
279
|
line: absLine,
|
|
207
280
|
message: `Unknown directive ':::${name}' — did you mean ':::${nearMiss}'?`,
|
|
208
|
-
suggestion: `Supported container directives: ${
|
|
209
|
-
severity:
|
|
281
|
+
suggestion: `Supported container directives: ${supportedDirectiveNames("container")}`,
|
|
282
|
+
severity: "error",
|
|
210
283
|
});
|
|
211
284
|
}
|
|
212
285
|
}
|
|
213
|
-
stack.push({ name, line: absLine, hasContent: false });
|
|
286
|
+
stack.push({ name, line: absLine, hasContent: false, fenceLength });
|
|
214
287
|
continue;
|
|
215
288
|
}
|
|
216
289
|
// Check leaf directive (::name[...)
|
|
@@ -218,13 +291,15 @@ export function validateDirectives(body, file, bodyStartLine) {
|
|
|
218
291
|
const leafUnclosedMatch = line.match(LEAF_UNCLOSED);
|
|
219
292
|
if (leafUnclosedMatch) {
|
|
220
293
|
const name = leafUnclosedMatch[1];
|
|
221
|
-
if (SUPPORTED_DIRECTIVES[name] ||
|
|
294
|
+
if (SUPPORTED_DIRECTIVES[name] ||
|
|
295
|
+
UNSUPPORTED_NAMES.has(name) ||
|
|
296
|
+
findNearMissDirective(name)) {
|
|
222
297
|
errors.push({
|
|
223
298
|
file,
|
|
224
299
|
line: absLine,
|
|
225
300
|
message: `Unclosed bracket in leaf directive '::${name}[' — missing closing ']'`,
|
|
226
301
|
suggestion: `Add a closing bracket: ::${name}[content]`,
|
|
227
|
-
severity:
|
|
302
|
+
severity: "error",
|
|
228
303
|
});
|
|
229
304
|
if (stack.length > 0) {
|
|
230
305
|
stack[stack.length - 1].hasContent = true;
|
|
@@ -245,8 +320,8 @@ export function validateDirectives(body, file, bodyStartLine) {
|
|
|
245
320
|
file,
|
|
246
321
|
line: absLine,
|
|
247
322
|
message: `Unsupported directive '::${name}'`,
|
|
248
|
-
suggestion: `Supported leaf directives: ${
|
|
249
|
-
severity:
|
|
323
|
+
suggestion: `Supported leaf directives: ${supportedDirectiveNames("leaf")}`,
|
|
324
|
+
severity: "error",
|
|
250
325
|
});
|
|
251
326
|
}
|
|
252
327
|
else if (SUPPORTED_DIRECTIVES[name]) {
|
|
@@ -256,7 +331,7 @@ export function validateDirectives(body, file, bodyStartLine) {
|
|
|
256
331
|
line: absLine,
|
|
257
332
|
message: `Directive '${name}' does not support the leaf '::' form`,
|
|
258
333
|
suggestion: `Use the container form ':::${name}' or inline form ':${name}[text]' instead`,
|
|
259
|
-
severity:
|
|
334
|
+
severity: "warning",
|
|
260
335
|
});
|
|
261
336
|
}
|
|
262
337
|
errors.push(...checkAttribute(name, attr, file, absLine));
|
|
@@ -268,8 +343,8 @@ export function validateDirectives(body, file, bodyStartLine) {
|
|
|
268
343
|
file,
|
|
269
344
|
line: absLine,
|
|
270
345
|
message: `Unknown directive '::${name}' — did you mean '::${nearMiss}'?`,
|
|
271
|
-
suggestion: `Supported leaf directives: ${
|
|
272
|
-
severity:
|
|
346
|
+
suggestion: `Supported leaf directives: ${supportedDirectiveNames("leaf")}`,
|
|
347
|
+
severity: "error",
|
|
273
348
|
});
|
|
274
349
|
}
|
|
275
350
|
}
|
|
@@ -280,20 +355,22 @@ export function validateDirectives(body, file, bodyStartLine) {
|
|
|
280
355
|
continue;
|
|
281
356
|
}
|
|
282
357
|
// Check for unclosed text directive brackets (:name[ without ])
|
|
283
|
-
const textUnclosedMatches = line.matchAll(new RegExp(TEXT_UNCLOSED,
|
|
358
|
+
const textUnclosedMatches = line.matchAll(new RegExp(TEXT_UNCLOSED, "g"));
|
|
284
359
|
for (const m of textUnclosedMatches) {
|
|
285
360
|
const name = m[1];
|
|
286
361
|
const matchIndex = m.index;
|
|
287
|
-
const beforeMatch = line.substring(0, matchIndex + (m[0].startsWith(
|
|
362
|
+
const beforeMatch = line.substring(0, matchIndex + (m[0].startsWith(":") ? 0 : 1));
|
|
288
363
|
if (/https?$|ftp$|mailto$|tel$/.test(beforeMatch))
|
|
289
364
|
continue;
|
|
290
|
-
if (SUPPORTED_DIRECTIVES[name] ||
|
|
365
|
+
if (SUPPORTED_DIRECTIVES[name] ||
|
|
366
|
+
UNSUPPORTED_NAMES.has(name) ||
|
|
367
|
+
findNearMissDirective(name)) {
|
|
291
368
|
errors.push({
|
|
292
369
|
file,
|
|
293
370
|
line: absLine,
|
|
294
371
|
message: `Unclosed bracket in text directive ':${name}[' — missing closing ']'`,
|
|
295
372
|
suggestion: `Add a closing bracket: :${name}[content]`,
|
|
296
|
-
severity:
|
|
373
|
+
severity: "error",
|
|
297
374
|
});
|
|
298
375
|
}
|
|
299
376
|
}
|
|
@@ -303,7 +380,7 @@ export function validateDirectives(body, file, bodyStartLine) {
|
|
|
303
380
|
const seenTextDirectives = new Set(); // track by match index to avoid duplicates
|
|
304
381
|
// Check POST first so :name[text]{attr} captures the attribute before PRE sees it without attr
|
|
305
382
|
for (const pattern of [TEXT_DIRECTIVE_POST, TEXT_DIRECTIVE_PRE]) {
|
|
306
|
-
const textMatches = line.matchAll(new RegExp(pattern,
|
|
383
|
+
const textMatches = line.matchAll(new RegExp(pattern, "g"));
|
|
307
384
|
for (const textMatch of textMatches) {
|
|
308
385
|
const matchIndex = textMatch.index;
|
|
309
386
|
if (seenTextDirectives.has(matchIndex))
|
|
@@ -312,7 +389,7 @@ export function validateDirectives(body, file, bodyStartLine) {
|
|
|
312
389
|
const name = textMatch[1];
|
|
313
390
|
const attr = textMatch[2];
|
|
314
391
|
// Skip URL-like patterns (http:, https:, ftp:, etc.)
|
|
315
|
-
const beforeMatch = line.substring(0, matchIndex + (textMatch[0].startsWith(
|
|
392
|
+
const beforeMatch = line.substring(0, matchIndex + (textMatch[0].startsWith(":") ? 0 : 1));
|
|
316
393
|
if (/https?$|ftp$|mailto$|tel$/.test(beforeMatch))
|
|
317
394
|
continue;
|
|
318
395
|
if (UNSUPPORTED_NAMES.has(name)) {
|
|
@@ -320,8 +397,8 @@ export function validateDirectives(body, file, bodyStartLine) {
|
|
|
320
397
|
file,
|
|
321
398
|
line: absLine,
|
|
322
399
|
message: `Unsupported directive ':${name}'`,
|
|
323
|
-
suggestion: `Supported text directives: ${
|
|
324
|
-
severity:
|
|
400
|
+
suggestion: `Supported text directives: ${supportedDirectiveNames("text")}`,
|
|
401
|
+
severity: "error",
|
|
325
402
|
});
|
|
326
403
|
}
|
|
327
404
|
else if (SUPPORTED_DIRECTIVES[name]) {
|
|
@@ -334,8 +411,8 @@ export function validateDirectives(body, file, bodyStartLine) {
|
|
|
334
411
|
file,
|
|
335
412
|
line: absLine,
|
|
336
413
|
message: `Unknown directive ':${name}' — did you mean ':${nearMiss}'?`,
|
|
337
|
-
suggestion: `Supported text directives: ${
|
|
338
|
-
severity:
|
|
414
|
+
suggestion: `Supported text directives: ${supportedDirectiveNames("text")}`,
|
|
415
|
+
severity: "error",
|
|
339
416
|
});
|
|
340
417
|
}
|
|
341
418
|
}
|
|
@@ -346,7 +423,7 @@ export function validateDirectives(body, file, bodyStartLine) {
|
|
|
346
423
|
}
|
|
347
424
|
}
|
|
348
425
|
// Mark content in parent container (non-blank, non-directive line)
|
|
349
|
-
if (stack.length > 0 && line.trim() !==
|
|
426
|
+
if (stack.length > 0 && line.trim() !== "") {
|
|
350
427
|
stack[stack.length - 1].hasContent = true;
|
|
351
428
|
}
|
|
352
429
|
}
|
|
@@ -356,18 +433,18 @@ export function validateDirectives(body, file, bodyStartLine) {
|
|
|
356
433
|
file,
|
|
357
434
|
line: entry.line,
|
|
358
435
|
message: `Unclosed container directive ':::${entry.name}'`,
|
|
359
|
-
suggestion:
|
|
360
|
-
severity:
|
|
436
|
+
suggestion: "Add a closing ::: marker",
|
|
437
|
+
severity: "error",
|
|
361
438
|
});
|
|
362
439
|
}
|
|
363
440
|
return errors;
|
|
364
441
|
}
|
|
365
442
|
/**
|
|
366
|
-
* Lightweight check for directives in
|
|
367
|
-
*
|
|
443
|
+
* Lightweight check for article-only directives in lens-authored text segments.
|
|
444
|
+
* `callout` is intentionally supported by both renderers.
|
|
368
445
|
*/
|
|
369
446
|
export function detectDirectivesInNonArticle(content, file, line) {
|
|
370
|
-
const lines = content.split(
|
|
447
|
+
const lines = content.split("\n");
|
|
371
448
|
let inCodeBlock = false;
|
|
372
449
|
for (const l of lines) {
|
|
373
450
|
if (CODE_FENCE.test(l)) {
|
|
@@ -379,46 +456,55 @@ export function detectDirectivesInNonArticle(content, file, line) {
|
|
|
379
456
|
// Container directive
|
|
380
457
|
if (CONTAINER_OPEN.test(l)) {
|
|
381
458
|
const match = l.match(CONTAINER_OPEN);
|
|
382
|
-
|
|
383
|
-
|
|
459
|
+
const name = match[2];
|
|
460
|
+
if (name === "callout")
|
|
461
|
+
continue;
|
|
462
|
+
if (ALL_DIRECTIVE_NAMES.has(name)) {
|
|
463
|
+
return [
|
|
464
|
+
{
|
|
384
465
|
file,
|
|
385
466
|
line,
|
|
386
|
-
message: `Directive ':::${
|
|
387
|
-
suggestion:
|
|
388
|
-
severity:
|
|
389
|
-
}
|
|
467
|
+
message: `Directive ':::${name}' found in non-article content — directives only render in article files`,
|
|
468
|
+
suggestion: "Move this content to an article file (articles/*.md) or remove the directive syntax",
|
|
469
|
+
severity: "warning",
|
|
470
|
+
},
|
|
471
|
+
];
|
|
390
472
|
}
|
|
391
473
|
}
|
|
392
474
|
// Leaf directive
|
|
393
475
|
const leafMatch = l.match(LEAF_DIRECTIVE_PRE);
|
|
394
476
|
if (leafMatch && ALL_DIRECTIVE_NAMES.has(leafMatch[1])) {
|
|
395
|
-
return [
|
|
477
|
+
return [
|
|
478
|
+
{
|
|
396
479
|
file,
|
|
397
480
|
line,
|
|
398
481
|
message: `Directive '::${leafMatch[1]}' found in non-article content — directives only render in article files`,
|
|
399
|
-
suggestion:
|
|
400
|
-
severity:
|
|
401
|
-
}
|
|
482
|
+
suggestion: "Move this content to an article file (articles/*.md) or remove the directive syntax",
|
|
483
|
+
severity: "warning",
|
|
484
|
+
},
|
|
485
|
+
];
|
|
402
486
|
}
|
|
403
487
|
// Text/inline directive — scan for :name[ patterns (both pre and post attribute forms)
|
|
404
488
|
for (const pattern of [TEXT_DIRECTIVE_PRE, TEXT_DIRECTIVE_POST]) {
|
|
405
|
-
const textRegex = new RegExp(pattern,
|
|
489
|
+
const textRegex = new RegExp(pattern, "g");
|
|
406
490
|
let textMatch;
|
|
407
491
|
while ((textMatch = textRegex.exec(l)) !== null) {
|
|
408
492
|
const name = textMatch[1];
|
|
409
493
|
// Skip URL-like patterns
|
|
410
494
|
const matchIndex = textMatch.index;
|
|
411
|
-
const beforeMatch = l.substring(0, matchIndex + (textMatch[0].startsWith(
|
|
495
|
+
const beforeMatch = l.substring(0, matchIndex + (textMatch[0].startsWith(":") ? 0 : 1));
|
|
412
496
|
if (/https?$|ftp$|mailto$|tel$/.test(beforeMatch))
|
|
413
497
|
continue;
|
|
414
498
|
if (ALL_DIRECTIVE_NAMES.has(name)) {
|
|
415
|
-
return [
|
|
499
|
+
return [
|
|
500
|
+
{
|
|
416
501
|
file,
|
|
417
502
|
line,
|
|
418
503
|
message: `Directive ':${name}' found in non-article content — directives only render in article files`,
|
|
419
|
-
suggestion:
|
|
420
|
-
severity:
|
|
421
|
-
}
|
|
504
|
+
suggestion: "Move this content to an article file (articles/*.md) or remove the directive syntax",
|
|
505
|
+
severity: "warning",
|
|
506
|
+
},
|
|
507
|
+
];
|
|
422
508
|
}
|
|
423
509
|
}
|
|
424
510
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directives.js","sourceRoot":"","sources":["../../src/validator/directives.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"directives.js","sourceRoot":"","sources":["../../src/validator/directives.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED