@actuate-media/cms-core 0.65.0 → 0.67.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/CHANGELOG.md +143 -0
- package/dist/__tests__/api/ai-quality.test.js +73 -0
- package/dist/__tests__/api/ai-quality.test.js.map +1 -1
- package/dist/__tests__/api/llms-txt.test.js +59 -0
- package/dist/__tests__/api/llms-txt.test.js.map +1 -1
- package/dist/__tests__/api/public-seo.test.js +402 -4
- package/dist/__tests__/api/public-seo.test.js.map +1 -1
- package/dist/__tests__/api/route-contracts.test.js +7 -0
- package/dist/__tests__/api/route-contracts.test.js.map +1 -1
- package/dist/__tests__/content/slug.test.d.ts +2 -0
- package/dist/__tests__/content/slug.test.d.ts.map +1 -0
- package/dist/__tests__/content/slug.test.js +68 -0
- package/dist/__tests__/content/slug.test.js.map +1 -0
- package/dist/__tests__/middleware.test.js +47 -0
- package/dist/__tests__/middleware.test.js.map +1 -1
- package/dist/__tests__/redirects/auto-301.test.d.ts +2 -0
- package/dist/__tests__/redirects/auto-301.test.d.ts.map +1 -0
- package/dist/__tests__/redirects/auto-301.test.js +172 -0
- package/dist/__tests__/redirects/auto-301.test.js.map +1 -0
- package/dist/__tests__/seo/ai-bots.test.d.ts +2 -0
- package/dist/__tests__/seo/ai-bots.test.d.ts.map +1 -0
- package/dist/__tests__/seo/ai-bots.test.js +53 -0
- package/dist/__tests__/seo/ai-bots.test.js.map +1 -0
- package/dist/__tests__/seo/alt-text.test.d.ts +2 -0
- package/dist/__tests__/seo/alt-text.test.d.ts.map +1 -0
- package/dist/__tests__/seo/alt-text.test.js +47 -0
- package/dist/__tests__/seo/alt-text.test.js.map +1 -0
- package/dist/__tests__/seo/feeds.test.d.ts +2 -0
- package/dist/__tests__/seo/feeds.test.d.ts.map +1 -0
- package/dist/__tests__/seo/feeds.test.js +61 -0
- package/dist/__tests__/seo/feeds.test.js.map +1 -0
- package/dist/__tests__/seo/freshness.test.d.ts +2 -0
- package/dist/__tests__/seo/freshness.test.d.ts.map +1 -0
- package/dist/__tests__/seo/freshness.test.js +89 -0
- package/dist/__tests__/seo/freshness.test.js.map +1 -0
- package/dist/__tests__/seo/meta-tags-alternates.test.d.ts +2 -0
- package/dist/__tests__/seo/meta-tags-alternates.test.d.ts.map +1 -0
- package/dist/__tests__/seo/meta-tags-alternates.test.js +52 -0
- package/dist/__tests__/seo/meta-tags-alternates.test.js.map +1 -0
- package/dist/__tests__/seo/page-meta.test.js +230 -14
- package/dist/__tests__/seo/page-meta.test.js.map +1 -1
- package/dist/__tests__/seo/sitemap-notify.test.js +77 -1
- package/dist/__tests__/seo/sitemap-notify.test.js.map +1 -1
- package/dist/__tests__/validation/publish.test.d.ts +2 -0
- package/dist/__tests__/validation/publish.test.d.ts.map +1 -0
- package/dist/__tests__/validation/publish.test.js +164 -0
- package/dist/__tests__/validation/publish.test.js.map +1 -0
- package/dist/actions.d.ts.map +1 -1
- package/dist/actions.js +172 -8
- package/dist/actions.js.map +1 -1
- package/dist/api/route-helpers.d.ts +8 -0
- package/dist/api/route-helpers.d.ts.map +1 -1
- package/dist/api/route-helpers.js +20 -0
- package/dist/api/route-helpers.js.map +1 -1
- package/dist/api/routes/ai-seo.d.ts.map +1 -1
- package/dist/api/routes/ai-seo.js +32 -1
- package/dist/api/routes/ai-seo.js.map +1 -1
- package/dist/api/routes/auth.d.ts.map +1 -1
- package/dist/api/routes/auth.js +2 -1
- package/dist/api/routes/auth.js.map +1 -1
- package/dist/api/routes/documents.d.ts.map +1 -1
- package/dist/api/routes/documents.js +3 -3
- package/dist/api/routes/documents.js.map +1 -1
- package/dist/api/routes/seo-public.d.ts.map +1 -1
- package/dist/api/routes/seo-public.js +371 -62
- package/dist/api/routes/seo-public.js.map +1 -1
- package/dist/api/routes/seo.d.ts.map +1 -1
- package/dist/api/routes/seo.js +21 -10
- package/dist/api/routes/seo.js.map +1 -1
- package/dist/api/routes/url-resolution.d.ts.map +1 -1
- package/dist/api/routes/url-resolution.js +40 -1
- package/dist/api/routes/url-resolution.js.map +1 -1
- package/dist/api/routes/users.d.ts.map +1 -1
- package/dist/api/routes/users.js +6 -3
- package/dist/api/routes/users.js.map +1 -1
- package/dist/client.d.ts +1 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +3 -0
- package/dist/client.js.map +1 -1
- package/dist/config/types.d.ts +35 -1
- package/dist/config/types.d.ts.map +1 -1
- package/dist/content/index.d.ts +1 -0
- package/dist/content/index.d.ts.map +1 -1
- package/dist/content/index.js +1 -0
- package/dist/content/index.js.map +1 -1
- package/dist/content/slug.d.ts +40 -0
- package/dist/content/slug.d.ts.map +1 -0
- package/dist/content/slug.js +78 -0
- package/dist/content/slug.js.map +1 -0
- package/dist/content/structured-data.d.ts +6 -0
- package/dist/content/structured-data.d.ts.map +1 -1
- package/dist/content/structured-data.js +6 -0
- package/dist/content/structured-data.js.map +1 -1
- package/dist/content-health/scanner.d.ts +4 -3
- package/dist/content-health/scanner.d.ts.map +1 -1
- package/dist/content-health/scanner.js +6 -12
- package/dist/content-health/scanner.js.map +1 -1
- package/dist/middleware.d.ts +1 -0
- package/dist/middleware.d.ts.map +1 -1
- package/dist/middleware.js +11 -2
- package/dist/middleware.js.map +1 -1
- package/dist/redirects/auto.d.ts +45 -0
- package/dist/redirects/auto.d.ts.map +1 -0
- package/dist/redirects/auto.js +55 -0
- package/dist/redirects/auto.js.map +1 -0
- package/dist/redirects/index.d.ts +2 -0
- package/dist/redirects/index.d.ts.map +1 -1
- package/dist/redirects/index.js +1 -0
- package/dist/redirects/index.js.map +1 -1
- package/dist/seo/ai-bots.d.ts +42 -0
- package/dist/seo/ai-bots.d.ts.map +1 -0
- package/dist/seo/ai-bots.js +104 -0
- package/dist/seo/ai-bots.js.map +1 -0
- package/dist/seo/alt-text.d.ts +39 -0
- package/dist/seo/alt-text.d.ts.map +1 -0
- package/dist/seo/alt-text.js +67 -0
- package/dist/seo/alt-text.js.map +1 -0
- package/dist/seo/analysis.d.ts.map +1 -1
- package/dist/seo/analysis.js +7 -11
- package/dist/seo/analysis.js.map +1 -1
- package/dist/seo/audit-engine.d.ts +1 -0
- package/dist/seo/audit-engine.d.ts.map +1 -1
- package/dist/seo/audit-engine.js +4 -4
- package/dist/seo/audit-engine.js.map +1 -1
- package/dist/seo/audit-runner.d.ts.map +1 -1
- package/dist/seo/audit-runner.js +1 -0
- package/dist/seo/audit-runner.js.map +1 -1
- package/dist/seo/feeds.d.ts +36 -0
- package/dist/seo/feeds.d.ts.map +1 -0
- package/dist/seo/feeds.js +71 -0
- package/dist/seo/feeds.js.map +1 -0
- package/dist/seo/index.d.ts +9 -3
- package/dist/seo/index.d.ts.map +1 -1
- package/dist/seo/index.js +5 -2
- package/dist/seo/index.js.map +1 -1
- package/dist/seo/llms-txt.d.ts.map +1 -1
- package/dist/seo/llms-txt.js +13 -2
- package/dist/seo/llms-txt.js.map +1 -1
- package/dist/seo/meta-tags.d.ts +14 -0
- package/dist/seo/meta-tags.d.ts.map +1 -1
- package/dist/seo/meta-tags.js +21 -2
- package/dist/seo/meta-tags.js.map +1 -1
- package/dist/seo/page-meta.d.ts +47 -0
- package/dist/seo/page-meta.d.ts.map +1 -1
- package/dist/seo/page-meta.js +280 -70
- package/dist/seo/page-meta.js.map +1 -1
- package/dist/seo/sitemap-notify.d.ts +30 -0
- package/dist/seo/sitemap-notify.d.ts.map +1 -1
- package/dist/seo/sitemap-notify.js +87 -0
- package/dist/seo/sitemap-notify.js.map +1 -1
- package/dist/validation/publish.d.ts +53 -0
- package/dist/validation/publish.d.ts.map +1 -0
- package/dist/validation/publish.js +75 -0
- package/dist/validation/publish.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-meta.js","sourceRoot":"","sources":["../../src/seo/page-meta.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"page-meta.js","sourceRoot":"","sources":["../../src/seo/page-meta.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,6 +30,27 @@ export interface SitemapPingTarget {
|
|
|
30
30
|
export declare function buildSitemapUrl(siteUrl: string | null | undefined): string | null;
|
|
31
31
|
/** Search-engine ping targets for a given (already validated) sitemap URL. */
|
|
32
32
|
export declare function buildSearchEnginePings(sitemapUrl: string): SitemapPingTarget[];
|
|
33
|
+
/** IndexNow submission endpoint (a shared endpoint relays to all participants). */
|
|
34
|
+
export declare const INDEXNOW_ENDPOINT = "https://api.indexnow.org/indexnow";
|
|
35
|
+
export interface IndexNowSubmission {
|
|
36
|
+
host: string;
|
|
37
|
+
key: string;
|
|
38
|
+
keyLocation: string;
|
|
39
|
+
urlList: string[];
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Build the IndexNow submission body for a set of changed URLs.
|
|
43
|
+
*
|
|
44
|
+
* IndexNow (Bing, Yandex, Seznam, Naver, …) is URL-based — unlike the legacy
|
|
45
|
+
* sitemap pings, it notifies engines of the *specific* URLs that changed for
|
|
46
|
+
* near-instant (re)crawling. Returns null when there's no key or no in-host
|
|
47
|
+
* URLs to submit (every URL must share the sitemap host).
|
|
48
|
+
*/
|
|
49
|
+
export declare function buildIndexNowSubmission(params: {
|
|
50
|
+
key: string | null | undefined;
|
|
51
|
+
keyLocation: string | null | undefined;
|
|
52
|
+
changedUrls: string[];
|
|
53
|
+
}): IndexNowSubmission | null;
|
|
33
54
|
/**
|
|
34
55
|
* Default debounce window for the expensive half of the cycle (timestamp write
|
|
35
56
|
* + search-engine ping). Bursts of publishes (bulk imports, "publish all")
|
|
@@ -54,6 +75,15 @@ export interface SitemapNotifyOptions {
|
|
|
54
75
|
allowNonProduction?: boolean;
|
|
55
76
|
/** Per-ping timeout in ms (default 5000). */
|
|
56
77
|
timeoutMs?: number;
|
|
78
|
+
/**
|
|
79
|
+
* Absolute URLs of the content that just changed, for IndexNow submission.
|
|
80
|
+
* When omitted/empty, IndexNow is skipped (legacy sitemap pings still fire).
|
|
81
|
+
*/
|
|
82
|
+
changedUrls?: string[];
|
|
83
|
+
/** IndexNow key (from `INDEXNOW_KEY`). When absent, IndexNow is disabled. */
|
|
84
|
+
indexNowKey?: string | null;
|
|
85
|
+
/** Public URL of the IndexNow key file (served at /api/cms/indexnow-key.txt). */
|
|
86
|
+
indexNowKeyLocation?: string | null;
|
|
57
87
|
}
|
|
58
88
|
export interface SitemapNotifyResult {
|
|
59
89
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sitemap-notify.d.ts","sourceRoot":"","sources":["../../src/seo/sitemap-notify.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAIH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAE1D,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,yEAAyE;AACzE,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CASjF;AAED,8EAA8E;AAC9E,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,iBAAiB,EAAE,CAM9E;AAED;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B,QAAS,CAAA;AAEjD,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,IAAI,CACZ,iBAAiB,EACjB,gBAAgB,GAAG,gCAAgC,GAAG,4BAA4B,CACnF,CAAA;IACD,oFAAoF;IACpF,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,4EAA4E;IAC5E,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,iFAAiF;IACjF,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,2EAA2E;IAC3E,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,8DAA8D;IAC9D,SAAS,CAAC,EAAE,OAAO,KAAK,CAAA;IACxB,iEAAiE;IACjE,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"sitemap-notify.d.ts","sourceRoot":"","sources":["../../src/seo/sitemap-notify.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAIH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAE1D,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,yEAAyE;AACzE,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CASjF;AAED,8EAA8E;AAC9E,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,iBAAiB,EAAE,CAM9E;AAED,mFAAmF;AACnF,eAAO,MAAM,iBAAiB,sCAAsC,CAAA;AAEpE,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;IACX,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,EAAE,CAAA;CAClB;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE;IAC9C,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;IAC9B,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;IACtC,WAAW,EAAE,MAAM,EAAE,CAAA;CACtB,GAAG,kBAAkB,GAAG,IAAI,CA+B5B;AAED;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B,QAAS,CAAA;AAEjD,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,IAAI,CACZ,iBAAiB,EACjB,gBAAgB,GAAG,gCAAgC,GAAG,4BAA4B,CACnF,CAAA;IACD,oFAAoF;IACpF,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,4EAA4E;IAC5E,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,iFAAiF;IACjF,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,2EAA2E;IAC3E,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,8DAA8D;IAC9D,SAAS,CAAC,EAAE,OAAO,KAAK,CAAA;IACxB,iEAAiE;IACjE,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;IACtB,6EAA6E;IAC7E,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,iFAAiF;IACjF,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACpC;AAED,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,eAAe,EAAE,OAAO,CAAA;IACxB;;;OAGG;IACH,WAAW,EAAE,OAAO,CAAA;IACpB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,yDAAyD;IACzD,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,oEAAoE;IACpE,OAAO,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CACnD;AAED;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,oBAAoB,GACzB,OAAO,CAAC,mBAAmB,CAAC,CAgJ9B"}
|
|
@@ -45,6 +45,53 @@ export function buildSearchEnginePings(sitemapUrl) {
|
|
|
45
45
|
{ name: 'bing', url: `https://www.bing.com/ping?sitemap=${enc}` },
|
|
46
46
|
];
|
|
47
47
|
}
|
|
48
|
+
/** IndexNow submission endpoint (a shared endpoint relays to all participants). */
|
|
49
|
+
export const INDEXNOW_ENDPOINT = 'https://api.indexnow.org/indexnow';
|
|
50
|
+
/**
|
|
51
|
+
* Build the IndexNow submission body for a set of changed URLs.
|
|
52
|
+
*
|
|
53
|
+
* IndexNow (Bing, Yandex, Seznam, Naver, …) is URL-based — unlike the legacy
|
|
54
|
+
* sitemap pings, it notifies engines of the *specific* URLs that changed for
|
|
55
|
+
* near-instant (re)crawling. Returns null when there's no key or no in-host
|
|
56
|
+
* URLs to submit (every URL must share the sitemap host).
|
|
57
|
+
*/
|
|
58
|
+
export function buildIndexNowSubmission(params) {
|
|
59
|
+
const key = params.key?.trim();
|
|
60
|
+
const keyLocation = params.keyLocation?.trim();
|
|
61
|
+
if (!key || !keyLocation)
|
|
62
|
+
return null;
|
|
63
|
+
let host;
|
|
64
|
+
try {
|
|
65
|
+
host = new URL(keyLocation).host;
|
|
66
|
+
}
|
|
67
|
+
catch {
|
|
68
|
+
return null;
|
|
69
|
+
}
|
|
70
|
+
// Only submit absolute, same-host https/http URLs — IndexNow rejects
|
|
71
|
+
// cross-host submissions, and this also blocks a misconfigured URL from
|
|
72
|
+
// leaking off-site.
|
|
73
|
+
const seen = new Set();
|
|
74
|
+
const urlList = [];
|
|
75
|
+
for (const raw of params.changedUrls) {
|
|
76
|
+
try {
|
|
77
|
+
const u = new URL(raw);
|
|
78
|
+
if (u.protocol !== 'https:' && u.protocol !== 'http:')
|
|
79
|
+
continue;
|
|
80
|
+
if (u.host !== host)
|
|
81
|
+
continue;
|
|
82
|
+
if (seen.has(u.href))
|
|
83
|
+
continue;
|
|
84
|
+
seen.add(u.href);
|
|
85
|
+
urlList.push(u.href);
|
|
86
|
+
}
|
|
87
|
+
catch {
|
|
88
|
+
// Skip non-absolute / malformed URLs.
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
if (urlList.length === 0)
|
|
92
|
+
return null;
|
|
93
|
+
return { host, key, keyLocation, urlList };
|
|
94
|
+
}
|
|
48
95
|
/**
|
|
49
96
|
* Default debounce window for the expensive half of the cycle (timestamp write
|
|
50
97
|
* + search-engine ping). Bursts of publishes (bulk imports, "publish all")
|
|
@@ -154,6 +201,46 @@ export async function notifySitemapOnPublish(opts) {
|
|
|
154
201
|
clearTimeout(timer);
|
|
155
202
|
}
|
|
156
203
|
}));
|
|
204
|
+
// IndexNow — modern, URL-based instant indexing (Bing, Yandex, …). Only fires
|
|
205
|
+
// when a key is configured AND we know which URLs changed. Same production +
|
|
206
|
+
// SSRF gating as the legacy pings (we're already past those checks here).
|
|
207
|
+
const submission = buildIndexNowSubmission({
|
|
208
|
+
key: opts.indexNowKey,
|
|
209
|
+
keyLocation: opts.indexNowKeyLocation,
|
|
210
|
+
changedUrls: opts.changedUrls ?? [],
|
|
211
|
+
});
|
|
212
|
+
if (!submission) {
|
|
213
|
+
result.skipped.push({ target: 'indexnow', reason: 'not-configured-or-no-urls' });
|
|
214
|
+
}
|
|
215
|
+
else {
|
|
216
|
+
const controller = new AbortController();
|
|
217
|
+
const timer = setTimeout(() => controller.abort(), timeoutMs);
|
|
218
|
+
try {
|
|
219
|
+
const res = await doFetch(INDEXNOW_ENDPOINT, {
|
|
220
|
+
method: 'POST',
|
|
221
|
+
redirect: 'error',
|
|
222
|
+
signal: controller.signal,
|
|
223
|
+
headers: { 'Content-Type': 'application/json; charset=utf-8' },
|
|
224
|
+
body: JSON.stringify(submission),
|
|
225
|
+
});
|
|
226
|
+
// IndexNow returns 200 (accepted) or 202 (accepted, pending). Both are OK.
|
|
227
|
+
if (res.ok) {
|
|
228
|
+
result.pinged.push('indexnow');
|
|
229
|
+
}
|
|
230
|
+
else {
|
|
231
|
+
result.skipped.push({ target: 'indexnow', reason: `http-${res.status}` });
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
catch (err) {
|
|
235
|
+
result.skipped.push({
|
|
236
|
+
target: 'indexnow',
|
|
237
|
+
reason: err instanceof Error ? `fetch-error:${err.name}` : 'fetch-error',
|
|
238
|
+
});
|
|
239
|
+
}
|
|
240
|
+
finally {
|
|
241
|
+
clearTimeout(timer);
|
|
242
|
+
}
|
|
243
|
+
}
|
|
157
244
|
return result;
|
|
158
245
|
}
|
|
159
246
|
//# sourceMappingURL=sitemap-notify.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sitemap-notify.js","sourceRoot":"","sources":["../../src/seo/sitemap-notify.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAQ3D,yEAAyE;AACzE,MAAM,UAAU,eAAe,CAAC,OAAkC;IAChE,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAA;IACzB,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAA;QAC1B,IAAI,CAAC,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,CAAC,QAAQ,KAAK,OAAO;YAAE,OAAO,IAAI,CAAA;QAClE,OAAO,GAAG,CAAC,CAAC,MAAM,cAAc,CAAA;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,sBAAsB,CAAC,UAAkB;IACvD,MAAM,GAAG,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAA;IAC1C,OAAO;QACL,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,uCAAuC,GAAG,EAAE,EAAE;QACrE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,qCAAqC,GAAG,EAAE,EAAE;KAClE,CAAA;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"sitemap-notify.js","sourceRoot":"","sources":["../../src/seo/sitemap-notify.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Server-side publish validation gate.
|
|
3
|
+
*
|
|
4
|
+
* The admin UI runs pre-publish checks, but the data layer is reachable by the
|
|
5
|
+
* SDK, MCP tools, agents, and the public API — all of which could otherwise
|
|
6
|
+
* publish broken content straight past those checks. This module is the single
|
|
7
|
+
* shared validator the action layer runs on every publish so the rules hold no
|
|
8
|
+
* matter who writes.
|
|
9
|
+
*
|
|
10
|
+
* Scope is deliberately narrow and universal: only publicly-routed content
|
|
11
|
+
* (collections typed `page` or `post`) is gated, and only on hard, content-
|
|
12
|
+
* agnostic invariants that make a *published* page genuinely broken (no title,
|
|
13
|
+
* no URL). Field-shape rules belong in the collection's own field definitions.
|
|
14
|
+
* Softer quality issues (missing description, etc.) are returned as warnings
|
|
15
|
+
* and never block.
|
|
16
|
+
*/
|
|
17
|
+
import type { ActuateCMSConfig, CollectionDefinition } from '../config/types.js';
|
|
18
|
+
export type PublishValidationMode = 'block' | 'warn' | 'off';
|
|
19
|
+
export interface PublishValidationResult {
|
|
20
|
+
errors: string[];
|
|
21
|
+
warnings: string[];
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Resolve the configured gate mode. Defaults to `block` — a published page that
|
|
25
|
+
* fails a hard invariant is a defect, and the whole point of the gate is to
|
|
26
|
+
* stop it server-side. Operators can relax to `warn` (log only) or `off`.
|
|
27
|
+
*/
|
|
28
|
+
export declare function resolvePublishValidationMode(config: Pick<ActuateCMSConfig, 'seo'> | null | undefined): PublishValidationMode;
|
|
29
|
+
/**
|
|
30
|
+
* Only publicly-routed content is gated. A collection qualifies when it is
|
|
31
|
+
* explicitly typed `page` or `post`; everything else (internal singletons,
|
|
32
|
+
* untyped/utility collections, forms with their own lifecycle) is skipped.
|
|
33
|
+
*/
|
|
34
|
+
export declare function isGatedContentCollection(collectionDef: CollectionDefinition | null | undefined): boolean;
|
|
35
|
+
/**
|
|
36
|
+
* Validate a document that is about to be (or remain) published. `data` is the
|
|
37
|
+
* full, merged document data as it will be stored.
|
|
38
|
+
*/
|
|
39
|
+
export declare function validatePublishableDocument(params: {
|
|
40
|
+
data: Record<string, unknown>;
|
|
41
|
+
}): PublishValidationResult;
|
|
42
|
+
/**
|
|
43
|
+
* Run the gate for a publish and apply the configured mode. Throws a single
|
|
44
|
+
* combined error in `block` mode when there are hard errors; logs (non-test)
|
|
45
|
+
* in `warn` mode; no-ops in `off` mode. Returns the raw result so callers can
|
|
46
|
+
* surface warnings.
|
|
47
|
+
*/
|
|
48
|
+
export declare function enforcePublishValidation(params: {
|
|
49
|
+
collectionDef: CollectionDefinition | null | undefined;
|
|
50
|
+
data: Record<string, unknown>;
|
|
51
|
+
config: Pick<ActuateCMSConfig, 'seo'> | null | undefined;
|
|
52
|
+
}): PublishValidationResult;
|
|
53
|
+
//# sourceMappingURL=publish.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"publish.d.ts","sourceRoot":"","sources":["../../src/validation/publish.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAGhF,MAAM,MAAM,qBAAqB,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,CAAA;AAE5D,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAA;CACnB;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,GAAG,IAAI,GAAG,SAAS,GACvD,qBAAqB,CAGvB;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,aAAa,EAAE,oBAAoB,GAAG,IAAI,GAAG,SAAS,GACrD,OAAO,CAGT;AASD;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE;IAClD,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC9B,GAAG,uBAAuB,CAiC1B;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE;IAC/C,aAAa,EAAE,oBAAoB,GAAG,IAAI,GAAG,SAAS,CAAA;IACtD,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,GAAG,IAAI,GAAG,SAAS,CAAA;CACzD,GAAG,uBAAuB,CAc1B"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { validateSlug } from '../content/slug.js';
|
|
2
|
+
/**
|
|
3
|
+
* Resolve the configured gate mode. Defaults to `block` — a published page that
|
|
4
|
+
* fails a hard invariant is a defect, and the whole point of the gate is to
|
|
5
|
+
* stop it server-side. Operators can relax to `warn` (log only) or `off`.
|
|
6
|
+
*/
|
|
7
|
+
export function resolvePublishValidationMode(config) {
|
|
8
|
+
const mode = config?.seo?.publishValidation;
|
|
9
|
+
return mode === 'warn' || mode === 'off' ? mode : 'block';
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Only publicly-routed content is gated. A collection qualifies when it is
|
|
13
|
+
* explicitly typed `page` or `post`; everything else (internal singletons,
|
|
14
|
+
* untyped/utility collections, forms with their own lifecycle) is skipped.
|
|
15
|
+
*/
|
|
16
|
+
export function isGatedContentCollection(collectionDef) {
|
|
17
|
+
const type = collectionDef?.type;
|
|
18
|
+
return type === 'page' || type === 'post';
|
|
19
|
+
}
|
|
20
|
+
function firstNonEmptyString(...candidates) {
|
|
21
|
+
for (const c of candidates) {
|
|
22
|
+
if (typeof c === 'string' && c.trim().length > 0)
|
|
23
|
+
return c.trim();
|
|
24
|
+
}
|
|
25
|
+
return undefined;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Validate a document that is about to be (or remain) published. `data` is the
|
|
29
|
+
* full, merged document data as it will be stored.
|
|
30
|
+
*/
|
|
31
|
+
export function validatePublishableDocument(params) {
|
|
32
|
+
const errors = [];
|
|
33
|
+
const warnings = [];
|
|
34
|
+
const data = params.data ?? {};
|
|
35
|
+
const page = data.pageSettings ?? {};
|
|
36
|
+
const title = firstNonEmptyString(data.metaTitle, page.metaTitle, data.title, page.title);
|
|
37
|
+
if (!title) {
|
|
38
|
+
errors.push('A published page needs a title.');
|
|
39
|
+
}
|
|
40
|
+
const slug = firstNonEmptyString(data.slug);
|
|
41
|
+
const path = firstNonEmptyString(data.path);
|
|
42
|
+
if (!slug && !path) {
|
|
43
|
+
errors.push('A published page needs a slug or path so it has a public URL.');
|
|
44
|
+
}
|
|
45
|
+
const slugError = validateSlug(slug);
|
|
46
|
+
if (slugError) {
|
|
47
|
+
errors.push(slugError);
|
|
48
|
+
}
|
|
49
|
+
const description = firstNonEmptyString(data.metaDescription, page.metaDescription, data.excerpt, data.description);
|
|
50
|
+
if (!description) {
|
|
51
|
+
warnings.push('No meta description — search engines will generate a snippet for you.');
|
|
52
|
+
}
|
|
53
|
+
return { errors, warnings };
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Run the gate for a publish and apply the configured mode. Throws a single
|
|
57
|
+
* combined error in `block` mode when there are hard errors; logs (non-test)
|
|
58
|
+
* in `warn` mode; no-ops in `off` mode. Returns the raw result so callers can
|
|
59
|
+
* surface warnings.
|
|
60
|
+
*/
|
|
61
|
+
export function enforcePublishValidation(params) {
|
|
62
|
+
const empty = { errors: [], warnings: [] };
|
|
63
|
+
const mode = resolvePublishValidationMode(params.config);
|
|
64
|
+
if (mode === 'off' || !isGatedContentCollection(params.collectionDef))
|
|
65
|
+
return empty;
|
|
66
|
+
const result = validatePublishableDocument({ data: params.data });
|
|
67
|
+
if (result.errors.length > 0 && mode === 'block') {
|
|
68
|
+
throw new Error(`Cannot publish — ${result.errors.join(' ')}`);
|
|
69
|
+
}
|
|
70
|
+
if (result.errors.length > 0 && mode === 'warn' && process.env.NODE_ENV !== 'test') {
|
|
71
|
+
console.warn('[actuate] publish validation (warn mode):', result.errors.join(' '));
|
|
72
|
+
}
|
|
73
|
+
return result;
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=publish.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../src/validation/publish.ts"],"names":[],"mappings":"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"}
|