@growth-labs/cms 0.5.29 → 0.5.31
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/engine/foundry-dispatch.d.ts +7 -2
- package/dist/engine/foundry-dispatch.d.ts.map +1 -1
- package/dist/engine/foundry-dispatch.js +24 -6
- package/dist/engine/foundry-dispatch.js.map +1 -1
- package/dist/engine/fronts-publish-intent.d.ts +174 -0
- package/dist/engine/fronts-publish-intent.d.ts.map +1 -0
- package/dist/engine/fronts-publish-intent.js +352 -0
- package/dist/engine/fronts-publish-intent.js.map +1 -0
- package/dist/engine/fronts-publish.d.ts +80 -0
- package/dist/engine/fronts-publish.d.ts.map +1 -0
- package/dist/engine/fronts-publish.js +286 -0
- package/dist/engine/fronts-publish.js.map +1 -0
- package/dist/engine/index.d.ts +7 -0
- package/dist/engine/index.d.ts.map +1 -1
- package/dist/engine/index.js +10 -0
- package/dist/engine/index.js.map +1 -1
- package/dist/engine/publication-continuity.d.ts +77 -0
- package/dist/engine/publication-continuity.d.ts.map +1 -0
- package/dist/engine/publication-continuity.js +94 -0
- package/dist/engine/publication-continuity.js.map +1 -0
- package/dist/engine/publication-receipt/canonical-json.d.ts +34 -0
- package/dist/engine/publication-receipt/canonical-json.d.ts.map +1 -0
- package/dist/engine/publication-receipt/canonical-json.js +100 -0
- package/dist/engine/publication-receipt/canonical-json.js.map +1 -0
- package/dist/engine/publication-receipt/receipt.d.ts +316 -0
- package/dist/engine/publication-receipt/receipt.d.ts.map +1 -0
- package/dist/engine/publication-receipt/receipt.js +131 -0
- package/dist/engine/publication-receipt/receipt.js.map +1 -0
- package/dist/engine/publication-receipt/signature.d.ts +36 -0
- package/dist/engine/publication-receipt/signature.d.ts.map +1 -0
- package/dist/engine/publication-receipt/signature.js +79 -0
- package/dist/engine/publication-receipt/signature.js.map +1 -0
- package/dist/engine/publication.d.ts.map +1 -1
- package/dist/engine/publication.js +2 -0
- package/dist/engine/publication.js.map +1 -1
- package/dist/engine/publisher.d.ts.map +1 -1
- package/dist/engine/publisher.js +23 -1
- package/dist/engine/publisher.js.map +1 -1
- package/dist/engine/source-sections.d.ts +20 -0
- package/dist/engine/source-sections.d.ts.map +1 -0
- package/dist/engine/source-sections.js +130 -0
- package/dist/engine/source-sections.js.map +1 -0
- package/dist/engine/validator/checks/source-section-diagnostics.d.ts +7 -0
- package/dist/engine/validator/checks/source-section-diagnostics.d.ts.map +1 -0
- package/dist/engine/validator/checks/source-section-diagnostics.js +120 -0
- package/dist/engine/validator/checks/source-section-diagnostics.js.map +1 -0
- package/dist/engine/validator/index.d.ts +10 -0
- package/dist/engine/validator/index.d.ts.map +1 -1
- package/dist/engine/validator/index.js +4 -0
- package/dist/engine/validator/index.js.map +1 -1
- package/dist/engine/validator/types.d.ts +1 -1
- package/dist/engine/validator/types.d.ts.map +1 -1
- package/dist/engine/validator/types.js +10 -0
- package/dist/engine/validator/types.js.map +1 -1
- package/dist/integration/index.d.ts.map +1 -1
- package/dist/integration/index.js +10 -0
- package/dist/integration/index.js.map +1 -1
- package/dist/providers/types.d.ts +1 -0
- package/dist/providers/types.d.ts.map +1 -1
- package/dist/routes/content.d.ts.map +1 -1
- package/dist/routes/content.js +22 -2
- package/dist/routes/content.js.map +1 -1
- package/dist/routes/fronts-publish.d.ts +10 -0
- package/dist/routes/fronts-publish.d.ts.map +1 -0
- package/dist/routes/fronts-publish.js +250 -0
- package/dist/routes/fronts-publish.js.map +1 -0
- package/dist/routes/index.d.ts +3 -0
- package/dist/routes/index.d.ts.map +1 -1
- package/dist/routes/index.js +4 -0
- package/dist/routes/index.js.map +1 -1
- package/dist/routes/surveys.d.ts.map +1 -1
- package/dist/routes/surveys.js +13 -1
- package/dist/routes/surveys.js.map +1 -1
- package/dist/schema/insights-ingest.d.ts +28 -28
- package/dist/schema/layout.d.ts +2 -2
- package/dist/schema/migrations.d.ts.map +1 -1
- package/dist/schema/migrations.js +36 -0
- package/dist/schema/migrations.js.map +1 -1
- package/dist/schema/portable-text.d.ts +2 -2
- package/dist/schema/tables.d.ts +1 -1
- package/dist/schema/tables.d.ts.map +1 -1
- package/dist/schema/tables.js +2 -0
- package/dist/schema/tables.js.map +1 -1
- package/dist/schema/types.d.ts +59 -0
- package/dist/schema/types.d.ts.map +1 -1
- package/dist/schema/types.js.map +1 -1
- package/dist/surveys/access.d.ts +2 -0
- package/dist/surveys/access.d.ts.map +1 -1
- package/dist/surveys/access.js +7 -0
- package/dist/surveys/access.js.map +1 -1
- package/dist/surveys/errors.d.ts +8 -0
- package/dist/surveys/errors.d.ts.map +1 -1
- package/dist/surveys/errors.js +12 -0
- package/dist/surveys/errors.js.map +1 -1
- package/dist/surveys/schema.d.ts +129 -54
- package/dist/surveys/schema.d.ts.map +1 -1
- package/dist/surveys/schema.js +45 -0
- package/dist/surveys/schema.js.map +1 -1
- package/dist/ui/api/fronts/publish-callback.d.ts +3 -0
- package/dist/ui/api/fronts/publish-callback.d.ts.map +1 -0
- package/dist/ui/api/fronts/publish-callback.js +8 -0
- package/dist/ui/api/fronts/publish-callback.js.map +1 -0
- package/dist/ui/api/fronts/schedule.d.ts +3 -0
- package/dist/ui/api/fronts/schedule.d.ts.map +1 -0
- package/dist/ui/api/fronts/schedule.js +8 -0
- package/dist/ui/api/fronts/schedule.js.map +1 -0
- package/dist/ui/editor/ContentForm.d.ts.map +1 -1
- package/dist/ui/editor/ContentForm.js +52 -1
- package/dist/ui/editor/ContentForm.js.map +1 -1
- package/dist/ui/editor/body-warnings.d.ts +27 -0
- package/dist/ui/editor/body-warnings.d.ts.map +1 -0
- package/dist/ui/editor/body-warnings.js +58 -0
- package/dist/ui/editor/body-warnings.js.map +1 -0
- package/dist/ui/screens/SurveyResponsesScreen.d.ts +7 -1
- package/dist/ui/screens/SurveyResponsesScreen.d.ts.map +1 -1
- package/dist/ui/screens/SurveyResponsesScreen.js +141 -32
- package/dist/ui/screens/SurveyResponsesScreen.js.map +1 -1
- package/migrations/0026_fronts_publish.sql +31 -0
- package/migrations/0027_fronts_publish_intent.sql +44 -0
- package/package.json +1 -1
- package/src/engine/foundry-dispatch.ts +22 -6
- package/src/engine/fronts-publish-intent.ts +676 -0
- package/src/engine/fronts-publish.ts +417 -0
- package/src/engine/index.ts +60 -0
- package/src/engine/publication-continuity.ts +140 -0
- package/src/engine/publication-receipt/canonical-json.ts +123 -0
- package/src/engine/publication-receipt/receipt.ts +160 -0
- package/src/engine/publication-receipt/signature.ts +112 -0
- package/src/engine/publication.ts +2 -0
- package/src/engine/publisher.ts +23 -1
- package/src/engine/source-sections.ts +153 -0
- package/src/engine/validator/checks/source-section-diagnostics.ts +187 -0
- package/src/engine/validator/index.ts +12 -0
- package/src/engine/validator/types.ts +19 -0
- package/src/integration/index.ts +10 -0
- package/src/providers/types.ts +1 -1
- package/src/routes/content.ts +23 -2
- package/src/routes/fronts-publish.ts +292 -0
- package/src/routes/index.ts +8 -0
- package/src/routes/surveys.ts +12 -1
- package/src/schema/migrations.ts +36 -0
- package/src/schema/tables.ts +2 -0
- package/src/schema/types.ts +61 -0
- package/src/surveys/access.ts +9 -0
- package/src/surveys/errors.ts +12 -0
- package/src/surveys/schema.ts +47 -0
- package/src/ui/api/fronts/publish-callback.ts +18 -0
- package/src/ui/api/fronts/schedule.ts +18 -0
- package/src/ui/editor/ContentForm.tsx +93 -0
- package/src/ui/editor/body-warnings.ts +78 -0
- package/src/ui/screens/SurveyResponsesScreen.tsx +369 -121
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publisher.d.ts","sourceRoot":"","sources":["../../src/engine/publisher.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,KAAK,eAAe,EAA4B,MAAM,uBAAuB,CAAA;AACtF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"publisher.d.ts","sourceRoot":"","sources":["../../src/engine/publisher.ts"],"names":[],"mappings":"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"}
|
package/dist/engine/publisher.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { serializeContentMetadata } from './content-metadata.js';
|
|
2
|
+
import { armFrontsPublishTriggerToken } from './fronts-publish-intent.js';
|
|
2
3
|
import { evaluateArticleBody } from './publish-guard.js';
|
|
3
4
|
import { slugify } from './slug.js';
|
|
4
5
|
import { MAX_ITEM_TAG_COUNT, validateDeclaredTagList, validateStoredTaxonomyRows, } from './taxonomy.js';
|
|
@@ -501,7 +502,13 @@ export async function updateContentItem(db, id, input) {
|
|
|
501
502
|
ai_locked_fields = ?,
|
|
502
503
|
seo_focus_keyword = ?,
|
|
503
504
|
metadata_json = ?,
|
|
504
|
-
updated_at = unixepoch()
|
|
505
|
+
updated_at = unixepoch(),
|
|
506
|
+
-- The canonical revision counter behind the Fronts publish intent id
|
|
507
|
+
-- masthead:<content_id>:<version> (migration 0027). This is the ONE seam
|
|
508
|
+
-- that advances it, so an intent identity changes exactly when the item's
|
|
509
|
+
-- canonical content does -- and never on a fronts_publish_status marker
|
|
510
|
+
-- write or a schedule poll.
|
|
511
|
+
canonical_version = canonical_version + 1
|
|
505
512
|
WHERE id = ?
|
|
506
513
|
`)
|
|
507
514
|
.bind(slug, title, seoTitle, description, excerpt, byline, primaryCategory, primaryTopic, featured, visibility, authorId, heroImageId, heroImageAlt, heroImageCaption, socialImageId, canonicalUrl, aiLockedFields, seoFocusKeyword, metadataJson, id)
|
|
@@ -636,6 +643,12 @@ export async function scheduleContent(db, id, publishAt, publishTz = 'Europe/Par
|
|
|
636
643
|
.prepare(`UPDATE content_items SET status = 'scheduled', publish_at = ?, publish_tz = ?, updated_at = unixepoch() WHERE id = ?`)
|
|
637
644
|
.bind(publishAt, publishTz, id)
|
|
638
645
|
.run();
|
|
646
|
+
// Arming an item for the additive Fronts publish path happens HERE — the one
|
|
647
|
+
// seam through which an item becomes `scheduled` with a `publish_at`. The mint
|
|
648
|
+
// is compare-and-set and never rotates an existing token, so an item's
|
|
649
|
+
// `trigger_token_hash` is stable across reschedules and across every poll.
|
|
650
|
+
// The raw token stays in D1; only `sha256:<hex>` is ever exposed.
|
|
651
|
+
await armFrontsPublishTriggerToken(db, id);
|
|
639
652
|
}
|
|
640
653
|
export async function evaluateContentBodyForPublish(db, id, source) {
|
|
641
654
|
const row = await db
|
|
@@ -659,6 +672,8 @@ export async function evaluateContentBodyForPublish(db, id, source) {
|
|
|
659
672
|
source,
|
|
660
673
|
contentId: id,
|
|
661
674
|
requireBody: true,
|
|
675
|
+
// #329: source-section defects block at publish, warn on save.
|
|
676
|
+
blockSourceSectionDefects: true,
|
|
662
677
|
});
|
|
663
678
|
}
|
|
664
679
|
export async function assertContentBodyValidForPublish(db, id, source) {
|
|
@@ -723,6 +738,13 @@ export async function duplicateContentItem(db, sourceId) {
|
|
|
723
738
|
// — a duplicate should keep the SEO work already done on the source. But
|
|
724
739
|
// board_position is the source item's slot in the editorial board ordering;
|
|
725
740
|
// a fresh draft copy must NOT inherit it, so it is reset to NULL.
|
|
741
|
+
//
|
|
742
|
+
// The migration-0027 Fronts publish columns are DELIBERATELY omitted so the
|
|
743
|
+
// copy takes their defaults: canonical_version = 1 (a new item starts its own
|
|
744
|
+
// revision line), fronts_channel_targets = NULL and
|
|
745
|
+
// fronts_publish_trigger_token = NULL (a distinct item must be armed on its
|
|
746
|
+
// own and must never inherit another item's publish trigger token). Do not
|
|
747
|
+
// add them to the column list.
|
|
726
748
|
await db
|
|
727
749
|
.prepare(`INSERT INTO content_items (
|
|
728
750
|
id, type, status, visibility, slug, title, seo_title, description, excerpt,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publisher.js","sourceRoot":"","sources":["../../src/engine/publisher.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"publisher.js","sourceRoot":"","sources":["../../src/engine/publisher.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export interface SourceSectionNormalization {
|
|
2
|
+
markdown: string;
|
|
3
|
+
/** True when normalization altered the document. Callers use this to decide
|
|
4
|
+
* whether a cached `body_html` render must be invalidated. */
|
|
5
|
+
changed: boolean;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Rewrite `Sources` / `References` sections to the canonical shape.
|
|
9
|
+
*
|
|
10
|
+
* Only lines inside a bounded section are touched. A section starts at an ATX
|
|
11
|
+
* heading or a standalone bold line whose visible text is `Sources` or
|
|
12
|
+
* `References` (with an optional trailing colon), and ends at the next heading
|
|
13
|
+
* of the same or higher level, or at end of document.
|
|
14
|
+
*
|
|
15
|
+
* Deliberately does NOT rewrite URLs, invent titles for bare URLs, repair
|
|
16
|
+
* unbalanced emphasis, or alter anything outside a section — each of those
|
|
17
|
+
* requires guessing at editorial intent.
|
|
18
|
+
*/
|
|
19
|
+
export declare function normalizeSourceSections(markdown: string): SourceSectionNormalization;
|
|
20
|
+
//# sourceMappingURL=source-sections.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"source-sections.d.ts","sourceRoot":"","sources":["../../src/engine/source-sections.ts"],"names":[],"mappings":"AAeA,MAAM,WAAW,0BAA0B;IAC1C,QAAQ,EAAE,MAAM,CAAA;IAChB;mEAC+D;IAC/D,OAAO,EAAE,OAAO,CAAA;CAChB;AAiFD;;;;;;;;;;;GAWG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,0BAA0B,CAuCpF"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
// Canonical normalization for article "Sources" / "References" sections
|
|
2
|
+
// (packages#329).
|
|
3
|
+
//
|
|
4
|
+
// Editors paste these sections out of Word and Google Docs, which produces
|
|
5
|
+
// Markdown that renders wrongly rather than not at all: manual `●` bullets
|
|
6
|
+
// become separate paragraphs, a bold line used as a heading becomes an empty
|
|
7
|
+
// `h2`, and `[**title**](url)` keeps its `**` inside the anchor text because
|
|
8
|
+
// renderers protect generated links before evaluating inline emphasis.
|
|
9
|
+
//
|
|
10
|
+
// This lives in the package, not in a site, so the CMS save path, preview
|
|
11
|
+
// path, import path and every site integration share one behaviour.
|
|
12
|
+
const NBSP = ' ';
|
|
13
|
+
const SECTION_WORDS = ['sources', 'references'];
|
|
14
|
+
/** `## Sources`, `### References:` — returns its level and canonical word. */
|
|
15
|
+
function matchHeadingBoundary(line) {
|
|
16
|
+
const match = /^(#{1,6})\s+(.*)$/.exec(line);
|
|
17
|
+
if (!match)
|
|
18
|
+
return null;
|
|
19
|
+
const level = match[1]?.length ?? 0;
|
|
20
|
+
const word = canonicalWord(stripTrailingColon(match[2] ?? ''));
|
|
21
|
+
return word ? { level, word } : null;
|
|
22
|
+
}
|
|
23
|
+
/** A standalone bold line used as a heading: `**Sources:**`, `__References__`. */
|
|
24
|
+
function matchBoldBoundary(line) {
|
|
25
|
+
const match = /^\s*(\*\*|__)(.+?)\1\s*$/.exec(line);
|
|
26
|
+
if (!match)
|
|
27
|
+
return null;
|
|
28
|
+
const word = canonicalWord(stripTrailingColon(match[2] ?? ''));
|
|
29
|
+
return word ? { word } : null;
|
|
30
|
+
}
|
|
31
|
+
function stripTrailingColon(value) {
|
|
32
|
+
return value.replace(/\s*:\s*$/, '');
|
|
33
|
+
}
|
|
34
|
+
/** Returns the canonical capitalisation, or null when this is not a boundary. */
|
|
35
|
+
function canonicalWord(rawText) {
|
|
36
|
+
const visible = rawText.replaceAll(NBSP, ' ').replace(/[*_]/g, '').trim().toLowerCase();
|
|
37
|
+
const found = SECTION_WORDS.find((candidate) => candidate === visible);
|
|
38
|
+
return found ? `${found[0]?.toUpperCase()}${found.slice(1)}` : null;
|
|
39
|
+
}
|
|
40
|
+
/** A line whose visible content is empty once emphasis and spacing are removed. */
|
|
41
|
+
function isFormattingOnly(line) {
|
|
42
|
+
if (line.trim() === '')
|
|
43
|
+
return false; // a real blank line is structural
|
|
44
|
+
return (line
|
|
45
|
+
.replaceAll(NBSP, ' ')
|
|
46
|
+
.replace(/[*_~`]/g, '')
|
|
47
|
+
.trim() === '');
|
|
48
|
+
}
|
|
49
|
+
function headingLevel(line) {
|
|
50
|
+
const match = /^(#{1,6})\s+\S/.exec(line);
|
|
51
|
+
return match ? (match[1]?.length ?? null) : null;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Unwrap emphasis that covers an ENTIRE link label: `[**t**](u)` -> `[t](u)`.
|
|
55
|
+
*
|
|
56
|
+
* Partial emphasis (`[a **b** c](u)`) is intentional and preserved, and an
|
|
57
|
+
* unbalanced marker (`[**a](u)`) is ambiguous — repairing it would be guessing
|
|
58
|
+
* at intent. The URL is never touched.
|
|
59
|
+
*/
|
|
60
|
+
function unwrapWholeLabelEmphasis(line) {
|
|
61
|
+
return line.replace(/\[([^\]]*)\]\(/g, (whole, label) => {
|
|
62
|
+
const match = /^(\*\*|__|\*|_)([\s\S]+)\1$/.exec(label.trim());
|
|
63
|
+
if (!match)
|
|
64
|
+
return whole;
|
|
65
|
+
const inner = match[2] ?? '';
|
|
66
|
+
// Only unwrap when the delimiter genuinely wraps the whole label rather
|
|
67
|
+
// than being two adjacent runs, e.g. `**a** and **b**`.
|
|
68
|
+
if (inner.includes(match[1]))
|
|
69
|
+
return whole;
|
|
70
|
+
return `[${inner}](`;
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
function normalizeSectionLine(line) {
|
|
74
|
+
let next = line;
|
|
75
|
+
// Manual Unicode bullets become real list markers.
|
|
76
|
+
next = next.replace(/^(\s*)[●•▪]\s*/u, '$1- ');
|
|
77
|
+
// Non-breaking-space indentation after a list marker collapses to one space.
|
|
78
|
+
next = next.replace(new RegExp(`^(\\s*[-*+])[ ${NBSP}]+`, 'u'), (_m, marker) => `${marker} `);
|
|
79
|
+
next = unwrapWholeLabelEmphasis(next);
|
|
80
|
+
return next;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Rewrite `Sources` / `References` sections to the canonical shape.
|
|
84
|
+
*
|
|
85
|
+
* Only lines inside a bounded section are touched. A section starts at an ATX
|
|
86
|
+
* heading or a standalone bold line whose visible text is `Sources` or
|
|
87
|
+
* `References` (with an optional trailing colon), and ends at the next heading
|
|
88
|
+
* of the same or higher level, or at end of document.
|
|
89
|
+
*
|
|
90
|
+
* Deliberately does NOT rewrite URLs, invent titles for bare URLs, repair
|
|
91
|
+
* unbalanced emphasis, or alter anything outside a section — each of those
|
|
92
|
+
* requires guessing at editorial intent.
|
|
93
|
+
*/
|
|
94
|
+
export function normalizeSourceSections(markdown) {
|
|
95
|
+
const usesCrlf = markdown.includes('\r\n');
|
|
96
|
+
const lines = markdown.replace(/\r\n/g, '\n').split('\n');
|
|
97
|
+
const out = [];
|
|
98
|
+
let sectionLevel = null;
|
|
99
|
+
for (const line of lines) {
|
|
100
|
+
if (sectionLevel !== null) {
|
|
101
|
+
const level = headingLevel(line);
|
|
102
|
+
if (level !== null && level <= sectionLevel) {
|
|
103
|
+
sectionLevel = null; // section closed; fall through to boundary checks
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
if (isFormattingOnly(line))
|
|
107
|
+
continue;
|
|
108
|
+
out.push(normalizeSectionLine(line));
|
|
109
|
+
continue;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
const heading = matchHeadingBoundary(line);
|
|
113
|
+
if (heading) {
|
|
114
|
+
sectionLevel = heading.level;
|
|
115
|
+
out.push(`${'#'.repeat(heading.level)} ${heading.word}`);
|
|
116
|
+
continue;
|
|
117
|
+
}
|
|
118
|
+
const bold = matchBoldBoundary(line);
|
|
119
|
+
if (bold) {
|
|
120
|
+
sectionLevel = 2;
|
|
121
|
+
out.push(`## ${bold.word}`);
|
|
122
|
+
continue;
|
|
123
|
+
}
|
|
124
|
+
out.push(line);
|
|
125
|
+
}
|
|
126
|
+
const joined = out.join('\n');
|
|
127
|
+
const result = usesCrlf ? joined.replace(/\n/g, '\r\n') : joined;
|
|
128
|
+
return { markdown: result, changed: result !== markdown };
|
|
129
|
+
}
|
|
130
|
+
//# sourceMappingURL=source-sections.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"source-sections.js","sourceRoot":"","sources":["../../src/engine/source-sections.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,kBAAkB;AAClB,EAAE;AACF,2EAA2E;AAC3E,2EAA2E;AAC3E,6EAA6E;AAC7E,6EAA6E;AAC7E,uEAAuE;AACvE,EAAE;AACF,0EAA0E;AAC1E,oEAAoE;AAEpE,MAAM,IAAI,GAAG,GAAG,CAAA;AAChB,MAAM,aAAa,GAAG,CAAC,SAAS,EAAE,YAAY,CAAU,CAAA;AASxD,8EAA8E;AAC9E,SAAS,oBAAoB,CAAC,IAAY;IACzC,MAAM,KAAK,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC5C,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAA;IACvB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,CAAA;IACnC,MAAM,IAAI,GAAG,aAAa,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;IAC9D,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;AACrC,CAAC;AAED,kFAAkF;AAClF,SAAS,iBAAiB,CAAC,IAAY;IACtC,MAAM,KAAK,GAAG,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACnD,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAA;IACvB,MAAM,IAAI,GAAG,aAAa,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;IAC9D,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;AAC9B,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa;IACxC,OAAO,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAA;AACrC,CAAC;AAED,iFAAiF;AACjF,SAAS,aAAa,CAAC,OAAe;IACrC,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IACvF,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,KAAK,OAAO,CAAC,CAAA;IACtE,OAAO,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;AACpE,CAAC;AAED,mFAAmF;AACnF,SAAS,gBAAgB,CAAC,IAAY;IACrC,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,KAAK,CAAA,CAAC,kCAAkC;IACvE,OAAO,CACN,IAAI;SACF,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC;SACrB,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;SACtB,IAAI,EAAE,KAAK,EAAE,CACf,CAAA;AACF,CAAC;AAED,SAAS,YAAY,CAAC,IAAY;IACjC,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACzC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;AACjD,CAAC;AAED;;;;;;GAMG;AACH,SAAS,wBAAwB,CAAC,IAAY;IAC7C,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC,KAAK,EAAE,KAAa,EAAE,EAAE;QAC/D,MAAM,KAAK,GAAG,6BAA6B,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;QAC9D,IAAI,CAAC,KAAK;YAAE,OAAO,KAAK,CAAA;QACxB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QAC5B,wEAAwE;QACxE,wDAAwD;QACxD,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAW,CAAC;YAAE,OAAO,KAAK,CAAA;QACpD,OAAO,IAAI,KAAK,IAAI,CAAA;IACrB,CAAC,CAAC,CAAA;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAY;IACzC,IAAI,IAAI,GAAG,IAAI,CAAA;IAEf,mDAAmD;IACnD,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAA;IAE9C,6EAA6E;IAC7E,IAAI,GAAG,IAAI,CAAC,OAAO,CAClB,IAAI,MAAM,CAAC,iBAAiB,IAAI,IAAI,EAAE,GAAG,CAAC,EAC1C,CAAC,EAAE,EAAE,MAAc,EAAE,EAAE,CAAC,GAAG,MAAM,GAAG,CACpC,CAAA;IAED,IAAI,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAA;IACrC,OAAO,IAAI,CAAA;AACZ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,uBAAuB,CAAC,QAAgB;IACvD,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IAC1C,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACzD,MAAM,GAAG,GAAa,EAAE,CAAA;IAExB,IAAI,YAAY,GAAkB,IAAI,CAAA;IAEtC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QAC1B,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;YAChC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,IAAI,YAAY,EAAE,CAAC;gBAC7C,YAAY,GAAG,IAAI,CAAA,CAAC,kDAAkD;YACvE,CAAC;iBAAM,CAAC;gBACP,IAAI,gBAAgB,CAAC,IAAI,CAAC;oBAAE,SAAQ;gBACpC,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAA;gBACpC,SAAQ;YACT,CAAC;QACF,CAAC;QAED,MAAM,OAAO,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAA;QAC1C,IAAI,OAAO,EAAE,CAAC;YACb,YAAY,GAAG,OAAO,CAAC,KAAK,CAAA;YAC5B,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;YACxD,SAAQ;QACT,CAAC;QAED,MAAM,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAA;QACpC,IAAI,IAAI,EAAE,CAAC;YACV,YAAY,GAAG,CAAC,CAAA;YAChB,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;YAC3B,SAAQ;QACT,CAAC;QAED,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACf,CAAC;IAED,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC7B,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;IAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,QAAQ,EAAE,CAAA;AAC1D,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { ArticleBodyInput, ValidationError } from '../types.js';
|
|
2
|
+
export interface SourceSectionOptions {
|
|
3
|
+
/** Escalate these diagnostics from warn to block. Publish sets this. */
|
|
4
|
+
blockSourceSectionDefects?: boolean;
|
|
5
|
+
}
|
|
6
|
+
export declare function check(input: ArticleBodyInput, options?: SourceSectionOptions): ValidationError[];
|
|
7
|
+
//# sourceMappingURL=source-section-diagnostics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"source-section-diagnostics.d.ts","sourceRoot":"","sources":["../../../../src/engine/validator/checks/source-section-diagnostics.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EACX,gBAAgB,EAChB,eAAe,EAGf,MAAM,aAAa,CAAA;AAGpB,MAAM,WAAW,oBAAoB;IACpC,wEAAwE;IACxE,yBAAyB,CAAC,EAAE,OAAO,CAAA;CACnC;AAsED,wBAAgB,KAAK,CACpB,KAAK,EAAE,gBAAgB,EACvB,OAAO,GAAE,oBAAyB,GAChC,eAAe,EAAE,CAyFnB"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Source-section diagnostics (#329).
|
|
3
|
+
*
|
|
4
|
+
* These run against markdown that has ALREADY been through
|
|
5
|
+
* `normalizeSourceSections()`. That ordering is the whole point: the
|
|
6
|
+
* normalizer fixes everything mechanically fixable, so anything still present
|
|
7
|
+
* here needs an editor's judgement rather than another rewrite — and each of
|
|
8
|
+
* these is a proven render breaker, which is why they block publish.
|
|
9
|
+
*
|
|
10
|
+
* Draft autosave stays allowed regardless; an editor must never lose work to a
|
|
11
|
+
* formatting complaint.
|
|
12
|
+
*/
|
|
13
|
+
import { normalizeSourceSections } from '../../source-sections.js';
|
|
14
|
+
import { makeError } from '../types.js';
|
|
15
|
+
const NBSP = ' ';
|
|
16
|
+
const MANUAL_BULLET = /^\s*[●•▪]/u;
|
|
17
|
+
const LINK = /\[([^\]]*)\]\(([^)]*)\)/g;
|
|
18
|
+
/** Lines inside every Sources/References section, with document offsets. */
|
|
19
|
+
function collectSectionLines(source) {
|
|
20
|
+
const lines = source.split('\n');
|
|
21
|
+
const collected = [];
|
|
22
|
+
let offset = 0;
|
|
23
|
+
let sectionLevel = null;
|
|
24
|
+
for (const text of lines) {
|
|
25
|
+
const heading = /^(#{1,6})\s+(.*)$/.exec(text);
|
|
26
|
+
const level = heading ? (heading[1]?.length ?? 0) : null;
|
|
27
|
+
if (sectionLevel !== null && level !== null && level <= sectionLevel) {
|
|
28
|
+
sectionLevel = null;
|
|
29
|
+
}
|
|
30
|
+
if (sectionLevel !== null) {
|
|
31
|
+
collected.push({ text, start: offset });
|
|
32
|
+
}
|
|
33
|
+
else if (level !== null) {
|
|
34
|
+
const word = (heading?.[2] ?? '')
|
|
35
|
+
.replace(/[*_]/g, '')
|
|
36
|
+
.replace(/\s*:\s*$/, '')
|
|
37
|
+
.trim();
|
|
38
|
+
if (/^(sources|references)$/i.test(word))
|
|
39
|
+
sectionLevel = level;
|
|
40
|
+
}
|
|
41
|
+
offset += text.length + 1;
|
|
42
|
+
}
|
|
43
|
+
return collected;
|
|
44
|
+
}
|
|
45
|
+
function isFormattingOnly(text) {
|
|
46
|
+
if (text.trim() === '')
|
|
47
|
+
return false;
|
|
48
|
+
return (text
|
|
49
|
+
.replaceAll(NBSP, ' ')
|
|
50
|
+
.replace(/[*_~`#]/g, '')
|
|
51
|
+
.trim() === '');
|
|
52
|
+
}
|
|
53
|
+
/** Emphasis delimiters wrapping the entire label, e.g. `[**t**](u)`. */
|
|
54
|
+
function hasWholeLabelEmphasis(label) {
|
|
55
|
+
const match = /^(\*\*|__|\*|_)([\s\S]+)\1$/.exec(label.trim());
|
|
56
|
+
if (!match)
|
|
57
|
+
return false;
|
|
58
|
+
return !(match[2] ?? '').includes(match[1]);
|
|
59
|
+
}
|
|
60
|
+
/** An odd number of `**` or `*` runs — ambiguous, so the normalizer left it. */
|
|
61
|
+
function hasUnbalancedEmphasis(label) {
|
|
62
|
+
const strong = (label.match(/\*\*/g) ?? []).length;
|
|
63
|
+
if (strong % 2 !== 0)
|
|
64
|
+
return true;
|
|
65
|
+
const em = (label.replace(/\*\*/g, '').match(/\*/g) ?? []).length;
|
|
66
|
+
if (em % 2 !== 0)
|
|
67
|
+
return true;
|
|
68
|
+
const under = (label.match(/__/g) ?? []).length;
|
|
69
|
+
return under % 2 !== 0;
|
|
70
|
+
}
|
|
71
|
+
export function check(input, options = {}) {
|
|
72
|
+
// Warn on save, block on publish. The design keeps draft autosave working
|
|
73
|
+
// so an editor cannot lose work to a formatting complaint, while still
|
|
74
|
+
// refusing to publish a section that is a proven render breaker.
|
|
75
|
+
const escalate = options.blockSourceSectionDefects === true;
|
|
76
|
+
const report = (code, message, span) => {
|
|
77
|
+
const error = makeError(code, message, span);
|
|
78
|
+
return escalate ? { ...error, severity: 'block' } : error;
|
|
79
|
+
};
|
|
80
|
+
if (!input.body_markdown)
|
|
81
|
+
return [];
|
|
82
|
+
// Report against normalized text so a defect the normalizer would have
|
|
83
|
+
// fixed is never surfaced to the editor as their problem.
|
|
84
|
+
const source = normalizeSourceSections(input.body_markdown).markdown;
|
|
85
|
+
const errors = [];
|
|
86
|
+
const lines = collectSectionLines(source);
|
|
87
|
+
let linkLike = 0;
|
|
88
|
+
let listItems = 0;
|
|
89
|
+
for (const { text, start } of lines) {
|
|
90
|
+
const span = { start, end: start + text.length };
|
|
91
|
+
if (MANUAL_BULLET.test(text)) {
|
|
92
|
+
errors.push(report('source-section-manual-bullet', `This source line still starts with a manual bullet character. Replace it with "- " so it renders as one list, not separate paragraphs.`, span));
|
|
93
|
+
}
|
|
94
|
+
if (isFormattingOnly(text)) {
|
|
95
|
+
errors.push(report('source-section-formatting-only-line', `This line contains only formatting characters and renders as an empty heading. Delete it.`, span));
|
|
96
|
+
}
|
|
97
|
+
if (/^\s*[-*+]\s+/.test(text))
|
|
98
|
+
listItems++;
|
|
99
|
+
for (const link of text.matchAll(LINK)) {
|
|
100
|
+
const label = link[1] ?? '';
|
|
101
|
+
if (label.trim() !== '')
|
|
102
|
+
linkLike++;
|
|
103
|
+
if (hasWholeLabelEmphasis(label)) {
|
|
104
|
+
errors.push(report('source-section-wrapped-link-label', `The link title "${label.trim()}" is wrapped in emphasis markers, which stay visible inside the link. Remove the surrounding * or _ characters.`, span));
|
|
105
|
+
}
|
|
106
|
+
else if (hasUnbalancedEmphasis(label)) {
|
|
107
|
+
errors.push(report('source-section-unbalanced-emphasis', `The link title "${label.trim()}" has an unmatched emphasis marker. Close it or remove it — it cannot be corrected automatically without changing the title.`, span));
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
// A section that reads as a list of sources but has no list items at all
|
|
112
|
+
// renders as a run of paragraphs. Only claim this when there is something
|
|
113
|
+
// list-shaped to talk about.
|
|
114
|
+
if (listItems === 0 && linkLike > 1) {
|
|
115
|
+
const first = lines[0];
|
|
116
|
+
errors.push(report('source-section-unlistable', `This source section has ${linkLike} links but no list items, so it renders as separate paragraphs. Start each source line with "- ".`, first ? { start: first.start, end: first.start + first.text.length } : undefined));
|
|
117
|
+
}
|
|
118
|
+
return errors;
|
|
119
|
+
}
|
|
120
|
+
//# sourceMappingURL=source-section-diagnostics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"source-section-diagnostics.js","sourceRoot":"","sources":["../../../../src/engine/validator/checks/source-section-diagnostics.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,6 +21,7 @@ import * as iframeMissingDims from './checks/iframe-missing-dims-and-wrapper.js'
|
|
|
21
21
|
import * as invisibleControl from './checks/invisible-control-chars.js';
|
|
22
22
|
import * as paywallMarker from './checks/paywall-marker-leak.js';
|
|
23
23
|
import * as rawBlockHtml from './checks/raw-block-html.js';
|
|
24
|
+
import * as sourceSectionDiagnostics from './checks/source-section-diagnostics.js';
|
|
24
25
|
import * as unresolvedAnchor from './checks/unresolved-footnote-anchor.js';
|
|
25
26
|
import * as wordGdocs from './checks/word-gdocs-paste-artifacts.js';
|
|
26
27
|
import type { ArticleBodyInput, Severity, ValidationError, ValidationErrorCode, ValidationResult, ValidatorOptions } from './types.js';
|
|
@@ -51,9 +52,18 @@ export declare const checkBareUrlNotAutolinked: typeof bareUrl.check;
|
|
|
51
52
|
export declare const checkEmptyAltText: typeof emptyAlt.check;
|
|
52
53
|
export declare const checkIframeMissingDimsAndWrapper: typeof iframeMissingDims.check;
|
|
53
54
|
export declare const checkHeadingHierarchySkip: typeof headingHierarchy.check;
|
|
55
|
+
export declare const checkSourceSectionDiagnostics: typeof sourceSectionDiagnostics.check;
|
|
54
56
|
export declare const checkPaywallMarkerLeak: typeof paywallMarker.check;
|
|
55
57
|
export interface RunOptions extends ValidatorOptions {
|
|
56
58
|
requireBody: boolean;
|
|
59
|
+
/**
|
|
60
|
+
* Escalate source-section diagnostics (#329) from warn to block.
|
|
61
|
+
*
|
|
62
|
+
* Defaults to false so a draft save is never rejected for formatting — the
|
|
63
|
+
* PATCH route returns 422 on any block-severity error. Publish call sites
|
|
64
|
+
* set it to true, which is where the design wants these enforced.
|
|
65
|
+
*/
|
|
66
|
+
blockSourceSectionDefects: boolean;
|
|
57
67
|
}
|
|
58
68
|
export declare const DEFAULT_RUN_OPTIONS: RunOptions;
|
|
59
69
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/engine/validator/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,OAAO,MAAM,qCAAqC,CAAA;AAC9D,OAAO,KAAK,mBAAmB,MAAM,mCAAmC,CAAA;AACxE,OAAO,KAAK,aAAa,MAAM,qCAAqC,CAAA;AACpE,OAAO,KAAK,QAAQ,MAAM,4BAA4B,CAAA;AACtD,OAAO,KAAK,gBAAgB,MAAM,oCAAoC,CAAA;AACtE,OAAO,KAAK,eAAe,MAAM,+BAA+B,CAAA;AAChE,OAAO,KAAK,iBAAiB,MAAM,6CAA6C,CAAA;AAChF,OAAO,KAAK,gBAAgB,MAAM,qCAAqC,CAAA;AACvE,OAAO,KAAK,aAAa,MAAM,iCAAiC,CAAA;AAChE,OAAO,KAAK,YAAY,MAAM,4BAA4B,CAAA;AAC1D,OAAO,KAAK,gBAAgB,MAAM,wCAAwC,CAAA;AAC1E,OAAO,KAAK,SAAS,MAAM,wCAAwC,CAAA;AAEnE,OAAO,KAAK,EACX,gBAAgB,EAChB,QAAQ,EACR,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,eAAe,EAAa,QAAQ,EAAE,MAAM,YAAY,CAAA;AAMjE;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,EAAE,SAAS,MAAM,EAKxD,CAAA;AAQD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,gBAAgB,GAAG,eAAe,EAAE,CAkB/E;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,gBAAgB,GAAG,eAAe,EAAE,CAoBvF;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,GAAG,eAAe,EAAE,CAmB9E;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,gBAAgB,GAAG,eAAe,EAAE,CAY1F;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,gBAAgB,GAAG,eAAe,EAAE,CAoC1F;AAED,wBAAgB,oCAAoC,CACnD,KAAK,EAAE,gBAAgB,EACvB,OAAO,GAAE,gBAAkC,GACzC,eAAe,EAAE,CA4BnB;AAuBD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,gBAAgB,GAAG,eAAe,EAAE,CAgBnF;AAID,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,gBAAgB,GAAG,eAAe,EAAE,CA4BnF;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,gBAAgB,GAAG,eAAe,EAAE,CAUzE;AAMD,eAAO,MAAM,wBAAwB,kCAA4B,CAAA;AACjE,eAAO,MAAM,6BAA6B,+BAAyB,CAAA;AACnE,eAAO,MAAM,4BAA4B,wBAAkB,CAAA;AAC3D,eAAO,MAAM,oBAAoB,8BAAwB,CAAA;AACzD,eAAO,MAAM,iBAAiB,2BAAqB,CAAA;AACnD,eAAO,MAAM,0BAA0B,4BAAsB,CAAA;AAC7D,eAAO,MAAM,0BAA0B,+BAAyB,CAAA;AAChE,eAAO,MAAM,yBAAyB,sBAAgB,CAAA;AACtD,eAAO,MAAM,iBAAiB,uBAAiB,CAAA;AAC/C,eAAO,MAAM,gCAAgC,gCAA0B,CAAA;AACvE,eAAO,MAAM,yBAAyB,+BAAyB,CAAA;AAC/D,eAAO,MAAM,sBAAsB,4BAAsB,CAAA;AAMzD,MAAM,WAAW,UAAW,SAAQ,gBAAgB;IACnD,WAAW,EAAE,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/engine/validator/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,6 +21,7 @@ import * as iframeMissingDims from './checks/iframe-missing-dims-and-wrapper.js'
|
|
|
21
21
|
import * as invisibleControl from './checks/invisible-control-chars.js';
|
|
22
22
|
import * as paywallMarker from './checks/paywall-marker-leak.js';
|
|
23
23
|
import * as rawBlockHtml from './checks/raw-block-html.js';
|
|
24
|
+
import * as sourceSectionDiagnostics from './checks/source-section-diagnostics.js';
|
|
24
25
|
import * as unresolvedAnchor from './checks/unresolved-footnote-anchor.js';
|
|
25
26
|
import * as wordGdocs from './checks/word-gdocs-paste-artifacts.js';
|
|
26
27
|
import { DEFAULT_OPTIONS, makeError, SEVERITY } from './types.js';
|
|
@@ -254,10 +255,12 @@ export const checkBareUrlNotAutolinked = bareUrl.check;
|
|
|
254
255
|
export const checkEmptyAltText = emptyAlt.check;
|
|
255
256
|
export const checkIframeMissingDimsAndWrapper = iframeMissingDims.check;
|
|
256
257
|
export const checkHeadingHierarchySkip = headingHierarchy.check;
|
|
258
|
+
export const checkSourceSectionDiagnostics = sourceSectionDiagnostics.check;
|
|
257
259
|
export const checkPaywallMarkerLeak = paywallMarker.check;
|
|
258
260
|
export const DEFAULT_RUN_OPTIONS = {
|
|
259
261
|
...DEFAULT_OPTIONS,
|
|
260
262
|
requireBody: true,
|
|
263
|
+
blockSourceSectionDefects: false,
|
|
261
264
|
};
|
|
262
265
|
/**
|
|
263
266
|
* Run every check in a deterministic order and aggregate the errors.
|
|
@@ -288,6 +291,7 @@ export function validateArticleBody(input, options = {}) {
|
|
|
288
291
|
errors.push(...checkEmptyAltText(input));
|
|
289
292
|
errors.push(...checkIframeMissingDimsAndWrapper(input));
|
|
290
293
|
errors.push(...checkHeadingHierarchySkip(input));
|
|
294
|
+
errors.push(...checkSourceSectionDiagnostics(input, opts));
|
|
291
295
|
errors.push(...checkPaywallMarkerLeak(input));
|
|
292
296
|
// Heuristic.
|
|
293
297
|
errors.push(...checkUnbalancedMarkdownEmphasis(input));
|