@growth-labs/seo 0.5.0 → 0.6.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.
Files changed (106) hide show
  1. package/README.md +8 -2
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +84 -47
  4. package/dist/index.js.map +1 -1
  5. package/dist/middleware/seo.d.ts +1 -1
  6. package/dist/middleware/seo.d.ts.map +1 -1
  7. package/dist/middleware/seo.js +10 -1
  8. package/dist/middleware/seo.js.map +1 -1
  9. package/dist/options.d.ts +140 -0
  10. package/dist/options.d.ts.map +1 -1
  11. package/dist/options.js +18 -0
  12. package/dist/options.js.map +1 -1
  13. package/dist/routes/apple-news.d.ts +0 -1
  14. package/dist/routes/apple-news.d.ts.map +1 -1
  15. package/dist/routes/apple-news.js +0 -1
  16. package/dist/routes/apple-news.js.map +1 -1
  17. package/dist/routes/llms-full.d.ts +0 -1
  18. package/dist/routes/llms-full.d.ts.map +1 -1
  19. package/dist/routes/llms-full.js +0 -1
  20. package/dist/routes/llms-full.js.map +1 -1
  21. package/dist/routes/llms.d.ts +0 -1
  22. package/dist/routes/llms.d.ts.map +1 -1
  23. package/dist/routes/llms.js +0 -1
  24. package/dist/routes/llms.js.map +1 -1
  25. package/dist/routes/podcast-narration.d.ts +0 -1
  26. package/dist/routes/podcast-narration.d.ts.map +1 -1
  27. package/dist/routes/podcast-narration.js +0 -1
  28. package/dist/routes/podcast-narration.js.map +1 -1
  29. package/dist/routes/podcast.d.ts +0 -1
  30. package/dist/routes/podcast.d.ts.map +1 -1
  31. package/dist/routes/podcast.js +0 -1
  32. package/dist/routes/podcast.js.map +1 -1
  33. package/dist/routes/robots.d.ts +0 -1
  34. package/dist/routes/robots.d.ts.map +1 -1
  35. package/dist/routes/robots.js +0 -1
  36. package/dist/routes/robots.js.map +1 -1
  37. package/dist/routes/rss.d.ts +0 -1
  38. package/dist/routes/rss.d.ts.map +1 -1
  39. package/dist/routes/rss.js +0 -1
  40. package/dist/routes/rss.js.map +1 -1
  41. package/dist/routes/sitemap-articles.d.ts +0 -1
  42. package/dist/routes/sitemap-articles.d.ts.map +1 -1
  43. package/dist/routes/sitemap-articles.js +0 -1
  44. package/dist/routes/sitemap-articles.js.map +1 -1
  45. package/dist/routes/sitemap-index.d.ts +0 -1
  46. package/dist/routes/sitemap-index.d.ts.map +1 -1
  47. package/dist/routes/sitemap-index.js +45 -33
  48. package/dist/routes/sitemap-index.js.map +1 -1
  49. package/dist/routes/sitemap-markdown.d.ts +0 -1
  50. package/dist/routes/sitemap-markdown.d.ts.map +1 -1
  51. package/dist/routes/sitemap-markdown.js +0 -1
  52. package/dist/routes/sitemap-markdown.js.map +1 -1
  53. package/dist/routes/sitemap-pages.d.ts +0 -1
  54. package/dist/routes/sitemap-pages.d.ts.map +1 -1
  55. package/dist/routes/sitemap-pages.js +0 -1
  56. package/dist/routes/sitemap-pages.js.map +1 -1
  57. package/dist/routes/sitemap-products.d.ts +0 -1
  58. package/dist/routes/sitemap-products.d.ts.map +1 -1
  59. package/dist/routes/sitemap-products.js +0 -1
  60. package/dist/routes/sitemap-products.js.map +1 -1
  61. package/dist/routes/sitemap-videos.d.ts +0 -1
  62. package/dist/routes/sitemap-videos.d.ts.map +1 -1
  63. package/dist/routes/sitemap-videos.js +0 -1
  64. package/dist/routes/sitemap-videos.js.map +1 -1
  65. package/dist/utils/apple-news-rss.d.ts.map +1 -1
  66. package/dist/utils/apple-news-rss.js +10 -6
  67. package/dist/utils/apple-news-rss.js.map +1 -1
  68. package/dist/utils/rss.d.ts.map +1 -1
  69. package/dist/utils/rss.js +22 -1
  70. package/dist/utils/rss.js.map +1 -1
  71. package/dist/utils/sitemap.d.ts.map +1 -1
  72. package/dist/utils/sitemap.js +1 -1
  73. package/dist/utils/sitemap.js.map +1 -1
  74. package/dist/utils/validation.d.ts +5 -0
  75. package/dist/utils/validation.d.ts.map +1 -1
  76. package/dist/utils/validation.js +101 -4
  77. package/dist/utils/validation.js.map +1 -1
  78. package/dist/vite-plugin.d.ts +1 -1
  79. package/dist/vite-plugin.d.ts.map +1 -1
  80. package/dist/vite-plugin.js +45 -7
  81. package/dist/vite-plugin.js.map +1 -1
  82. package/package.json +2 -2
  83. package/src/components/AeoHead.astro +5 -2
  84. package/src/components/SeoHead.astro +5 -1
  85. package/src/index.ts +87 -47
  86. package/src/middleware/seo.ts +10 -1
  87. package/src/options.ts +21 -0
  88. package/src/routes/apple-news.ts +0 -2
  89. package/src/routes/llms-full.ts +0 -2
  90. package/src/routes/llms.ts +0 -2
  91. package/src/routes/podcast-narration.ts +0 -2
  92. package/src/routes/podcast.ts +0 -2
  93. package/src/routes/robots.ts +0 -2
  94. package/src/routes/rss.ts +0 -2
  95. package/src/routes/sitemap-articles.ts +0 -2
  96. package/src/routes/sitemap-index.ts +48 -37
  97. package/src/routes/sitemap-markdown.ts +0 -2
  98. package/src/routes/sitemap-pages.ts +0 -2
  99. package/src/routes/sitemap-products.ts +0 -2
  100. package/src/routes/sitemap-videos.ts +0 -2
  101. package/src/utils/apple-news-rss.ts +9 -6
  102. package/src/utils/rss.ts +24 -1
  103. package/src/utils/sitemap.ts +4 -2
  104. package/src/utils/validation.ts +119 -4
  105. package/src/virtual.d.ts +12 -0
  106. package/src/vite-plugin.ts +47 -8
@@ -1 +1 @@
1
- {"version":3,"file":"sitemap-index.d.ts","sourceRoot":"","sources":["../../src/routes/sitemap-index.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,CAAA;AACvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAMrC,eAAO,MAAM,SAAS,QAAQ,CAAA;AAE9B,eAAO,MAAM,GAAG,EAAE,QA+EjB,CAAA"}
1
+ {"version":3,"file":"sitemap-index.d.ts","sourceRoot":"","sources":["../../src/routes/sitemap-index.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,CAAA;AACvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAMrC,eAAO,MAAM,GAAG,EAAE,QA4FjB,CAAA"}
@@ -2,55 +2,61 @@ import 'virtual:growth-labs/seo/config';
2
2
  import { getConfig, getContentProvider } from '../_internal/state.js';
3
3
  import { resolveSeoConfig } from '../site-url.js';
4
4
  import { generateSitemapIndex } from '../utils/sitemap.js';
5
- export const prerender = false;
6
5
  export const GET = async (context) => {
7
6
  const config = resolveSeoConfig(getConfig());
8
7
  const contentProvider = getContentProvider();
9
8
  const sitemaps = [];
10
9
  const { site } = config;
10
+ const injectedRoutes = config.injectedRoutes;
11
11
  // Fetch articles lastmod if possible
12
12
  let articlesLastmod;
13
13
  let pagesLastmod;
14
14
  let videosLastmod;
15
15
  let productsLastmod;
16
16
  if (contentProvider) {
17
- try {
18
- const articles = await contentProvider({ type: 'articles' }, context);
19
- if (articles.length > 0) {
20
- const dates = articles
21
- .map((a) => a.dateModified ?? a.datePublished)
22
- .filter(Boolean);
23
- if (dates.length > 0) {
24
- articlesLastmod = dates.sort().at(-1);
17
+ if (injectedRoutes.sitemapArticles) {
18
+ try {
19
+ const articles = await contentProvider({ type: 'articles' }, context);
20
+ if (articles.length > 0) {
21
+ const dates = articles
22
+ .map((a) => a.dateModified ?? a.datePublished)
23
+ .filter(Boolean);
24
+ if (dates.length > 0) {
25
+ articlesLastmod = dates.sort().at(-1);
26
+ }
25
27
  }
26
28
  }
29
+ catch { }
27
30
  }
28
- catch { }
29
- try {
30
- const pages = await contentProvider({ type: 'pages' }, context);
31
- if (pages.length > 0) {
32
- const dates = pages
33
- .map((p) => p.dateModified ?? p.datePublished)
34
- .filter(Boolean);
35
- if (dates.length > 0) {
36
- pagesLastmod = dates.sort().at(-1);
31
+ if (injectedRoutes.sitemapPages) {
32
+ try {
33
+ const pages = await contentProvider({ type: 'pages' }, context);
34
+ if (pages.length > 0) {
35
+ const dates = pages
36
+ .map((p) => p.dateModified ?? p.datePublished)
37
+ .filter(Boolean);
38
+ if (dates.length > 0) {
39
+ pagesLastmod = dates.sort().at(-1);
40
+ }
37
41
  }
38
42
  }
43
+ catch { }
39
44
  }
40
- catch { }
41
- try {
42
- const videos = await contentProvider({ type: 'videos' }, context);
43
- if (videos.length > 0) {
44
- const dates = videos
45
- .map((v) => v.dateModified ?? v.datePublished)
46
- .filter(Boolean);
47
- if (dates.length > 0) {
48
- videosLastmod = dates.sort().at(-1);
45
+ if (injectedRoutes.sitemapVideos) {
46
+ try {
47
+ const videos = await contentProvider({ type: 'videos' }, context);
48
+ if (videos.length > 0) {
49
+ const dates = videos
50
+ .map((v) => v.dateModified ?? v.datePublished)
51
+ .filter(Boolean);
52
+ if (dates.length > 0) {
53
+ videosLastmod = dates.sort().at(-1);
54
+ }
49
55
  }
50
56
  }
57
+ catch { }
51
58
  }
52
- catch { }
53
- if (config.commerce?.enabled) {
59
+ if (config.commerce?.enabled && injectedRoutes.sitemapProducts) {
54
60
  try {
55
61
  const products = await contentProvider({ type: 'products' }, context);
56
62
  if (products.length > 0) {
@@ -65,10 +71,16 @@ export const GET = async (context) => {
65
71
  catch { }
66
72
  }
67
73
  }
68
- sitemaps.push({ loc: `${site}/sitemap-articles.xml`, lastmod: articlesLastmod });
69
- sitemaps.push({ loc: `${site}/sitemap-pages.xml`, lastmod: pagesLastmod });
70
- sitemaps.push({ loc: `${site}/sitemap-videos.xml`, lastmod: videosLastmod });
71
- if (config.commerce?.enabled) {
74
+ if (injectedRoutes.sitemapArticles) {
75
+ sitemaps.push({ loc: `${site}/sitemap-articles.xml`, lastmod: articlesLastmod });
76
+ }
77
+ if (injectedRoutes.sitemapPages) {
78
+ sitemaps.push({ loc: `${site}/sitemap-pages.xml`, lastmod: pagesLastmod });
79
+ }
80
+ if (injectedRoutes.sitemapVideos) {
81
+ sitemaps.push({ loc: `${site}/sitemap-videos.xml`, lastmod: videosLastmod });
82
+ }
83
+ if (config.commerce?.enabled && injectedRoutes.sitemapProducts) {
72
84
  sitemaps.push({ loc: `${site}/sitemap-products.xml`, lastmod: productsLastmod });
73
85
  }
74
86
  const xml = generateSitemapIndex(sitemaps);
@@ -1 +1 @@
1
- {"version":3,"file":"sitemap-index.js","sourceRoot":"","sources":["../../src/routes/sitemap-index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sitemap-index.js","sourceRoot":"","sources":["../../src/routes/sitemap-index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  import 'virtual:growth-labs/seo/config';
2
2
  import type { APIRoute } from 'astro';
3
- export declare const prerender = false;
4
3
  export declare const GET: APIRoute;
5
4
  //# sourceMappingURL=sitemap-markdown.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sitemap-markdown.d.ts","sourceRoot":"","sources":["../../src/routes/sitemap-markdown.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,CAAA;AACvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAMrC,eAAO,MAAM,SAAS,QAAQ,CAAA;AAE9B,eAAO,MAAM,GAAG,EAAE,QA6BjB,CAAA"}
1
+ {"version":3,"file":"sitemap-markdown.d.ts","sourceRoot":"","sources":["../../src/routes/sitemap-markdown.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,CAAA;AACvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAMrC,eAAO,MAAM,GAAG,EAAE,QA6BjB,CAAA"}
@@ -2,7 +2,6 @@ import 'virtual:growth-labs/seo/config';
2
2
  import { getConfig, getContentProvider } from '../_internal/state.js';
3
3
  import { resolveAeoTwins } from '../options.js';
4
4
  import { generateMarkdownSitemap } from '../utils/sitemap-markdown.js';
5
- export const prerender = false;
6
5
  export const GET = async (context) => {
7
6
  const config = getConfig();
8
7
  const contentProvider = getContentProvider();
@@ -1 +1 @@
1
- {"version":3,"file":"sitemap-markdown.js","sourceRoot":"","sources":["../../src/routes/sitemap-markdown.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,CAAA;AAEvC,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAE/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAA;AAEtE,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,CAAA;AAE9B,MAAM,CAAC,MAAM,GAAG,GAAa,KAAK,EAAE,OAAO,EAAE,EAAE;IAC9C,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAC1B,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAA;IAE5C,0EAA0E;IAC1E,6EAA6E;IAC7E,MAAM,GAAG,GAAG,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IAC5C,IAAI,CAAC,MAAM,CAAC,eAAe,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QAClE,OAAO,IAAI,QAAQ,CAAC,8BAA8B,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAA;IACrE,CAAC;IAED,IAAI,QAAQ,GAAkB,EAAE,CAAA;IAChC,IAAI,eAAe,EAAE,CAAC;QACrB,IAAI,CAAC;YACJ,QAAQ,GAAG,MAAM,eAAe,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,OAAO,CAAC,CAAA;QAChE,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACX,CAAC;IAED,MAAM,GAAG,GAAG,uBAAuB,CAAC;QACnC,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,0EAA0E;QAC1E,8EAA8E;QAC9E,sEAAsE;KACtE,CAAC,CAAA;IAEF,OAAO,IAAI,QAAQ,CAAC,GAAG,EAAE;QACxB,OAAO,EAAE,EAAE,cAAc,EAAE,gCAAgC,EAAE;KAC7D,CAAC,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"sitemap-markdown.js","sourceRoot":"","sources":["../../src/routes/sitemap-markdown.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,CAAA;AAEvC,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAE/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAA;AAEtE,MAAM,CAAC,MAAM,GAAG,GAAa,KAAK,EAAE,OAAO,EAAE,EAAE;IAC9C,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAC1B,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAA;IAE5C,0EAA0E;IAC1E,6EAA6E;IAC7E,MAAM,GAAG,GAAG,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IAC5C,IAAI,CAAC,MAAM,CAAC,eAAe,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QAClE,OAAO,IAAI,QAAQ,CAAC,8BAA8B,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAA;IACrE,CAAC;IAED,IAAI,QAAQ,GAAkB,EAAE,CAAA;IAChC,IAAI,eAAe,EAAE,CAAC;QACrB,IAAI,CAAC;YACJ,QAAQ,GAAG,MAAM,eAAe,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,OAAO,CAAC,CAAA;QAChE,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACX,CAAC;IAED,MAAM,GAAG,GAAG,uBAAuB,CAAC;QACnC,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,0EAA0E;QAC1E,8EAA8E;QAC9E,sEAAsE;KACtE,CAAC,CAAA;IAEF,OAAO,IAAI,QAAQ,CAAC,GAAG,EAAE;QACxB,OAAO,EAAE,EAAE,cAAc,EAAE,gCAAgC,EAAE;KAC7D,CAAC,CAAA;AACH,CAAC,CAAA"}
@@ -1,5 +1,4 @@
1
1
  import 'virtual:growth-labs/seo/config';
2
2
  import type { APIRoute } from 'astro';
3
- export declare const prerender = false;
4
3
  export declare const GET: APIRoute;
5
4
  //# sourceMappingURL=sitemap-pages.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sitemap-pages.d.ts","sourceRoot":"","sources":["../../src/routes/sitemap-pages.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,CAAA;AACvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAKrC,eAAO,MAAM,SAAS,QAAQ,CAAA;AAE9B,eAAO,MAAM,GAAG,EAAE,QAejB,CAAA"}
1
+ {"version":3,"file":"sitemap-pages.d.ts","sourceRoot":"","sources":["../../src/routes/sitemap-pages.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,CAAA;AACvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAKrC,eAAO,MAAM,GAAG,EAAE,QAejB,CAAA"}
@@ -1,7 +1,6 @@
1
1
  import 'virtual:growth-labs/seo/config';
2
2
  import { getContentProvider } from '../_internal/state.js';
3
3
  import { generatePagesSitemap } from '../utils/sitemap.js';
4
- export const prerender = false;
5
4
  export const GET = async (context) => {
6
5
  const contentProvider = getContentProvider();
7
6
  let pages = [];
@@ -1 +1 @@
1
- {"version":3,"file":"sitemap-pages.js","sourceRoot":"","sources":["../../src/routes/sitemap-pages.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,CAAA;AAEvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAE1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAE1D,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,CAAA;AAE9B,MAAM,CAAC,MAAM,GAAG,GAAa,KAAK,EAAE,OAAO,EAAE,EAAE;IAC9C,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAA;IAE5C,IAAI,KAAK,GAAkB,EAAE,CAAA;IAC7B,IAAI,eAAe,EAAE,CAAC;QACrB,IAAI,CAAC;YACJ,KAAK,GAAG,MAAM,eAAe,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,OAAc,CAAC,CAAA;QACjE,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACX,CAAC;IAED,MAAM,GAAG,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAA;IAEvC,OAAO,IAAI,QAAQ,CAAC,GAAG,EAAE;QACxB,OAAO,EAAE,EAAE,cAAc,EAAE,gCAAgC,EAAE;KAC7D,CAAC,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"sitemap-pages.js","sourceRoot":"","sources":["../../src/routes/sitemap-pages.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,CAAA;AAEvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAE1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAE1D,MAAM,CAAC,MAAM,GAAG,GAAa,KAAK,EAAE,OAAO,EAAE,EAAE;IAC9C,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAA;IAE5C,IAAI,KAAK,GAAkB,EAAE,CAAA;IAC7B,IAAI,eAAe,EAAE,CAAC;QACrB,IAAI,CAAC;YACJ,KAAK,GAAG,MAAM,eAAe,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,OAAc,CAAC,CAAA;QACjE,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACX,CAAC;IAED,MAAM,GAAG,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAA;IAEvC,OAAO,IAAI,QAAQ,CAAC,GAAG,EAAE;QACxB,OAAO,EAAE,EAAE,cAAc,EAAE,gCAAgC,EAAE;KAC7D,CAAC,CAAA;AACH,CAAC,CAAA"}
@@ -1,5 +1,4 @@
1
1
  import 'virtual:growth-labs/seo/config';
2
2
  import type { APIRoute } from 'astro';
3
- export declare const prerender = false;
4
3
  export declare const GET: APIRoute;
5
4
  //# sourceMappingURL=sitemap-products.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sitemap-products.d.ts","sourceRoot":"","sources":["../../src/routes/sitemap-products.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,CAAA;AACvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAKrC,eAAO,MAAM,SAAS,QAAQ,CAAA;AAE9B,eAAO,MAAM,GAAG,EAAE,QAejB,CAAA"}
1
+ {"version":3,"file":"sitemap-products.d.ts","sourceRoot":"","sources":["../../src/routes/sitemap-products.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,CAAA;AACvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAKrC,eAAO,MAAM,GAAG,EAAE,QAejB,CAAA"}
@@ -1,7 +1,6 @@
1
1
  import 'virtual:growth-labs/seo/config';
2
2
  import { getContentProvider } from '../_internal/state.js';
3
3
  import { generateProductSitemap } from '../utils/sitemap.js';
4
- export const prerender = false;
5
4
  export const GET = async (context) => {
6
5
  const contentProvider = getContentProvider();
7
6
  let products = [];
@@ -1 +1 @@
1
- {"version":3,"file":"sitemap-products.js","sourceRoot":"","sources":["../../src/routes/sitemap-products.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,CAAA;AAEvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAE1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAE5D,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,CAAA;AAE9B,MAAM,CAAC,MAAM,GAAG,GAAa,KAAK,EAAE,OAAO,EAAE,EAAE;IAC9C,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAA;IAE5C,IAAI,QAAQ,GAAkB,EAAE,CAAA;IAChC,IAAI,eAAe,EAAE,CAAC;QACrB,IAAI,CAAC;YACJ,QAAQ,GAAG,MAAM,eAAe,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,OAAc,CAAC,CAAA;QACvE,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACX,CAAC;IAED,MAAM,GAAG,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAA;IAE5C,OAAO,IAAI,QAAQ,CAAC,GAAG,EAAE;QACxB,OAAO,EAAE,EAAE,cAAc,EAAE,gCAAgC,EAAE;KAC7D,CAAC,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"sitemap-products.js","sourceRoot":"","sources":["../../src/routes/sitemap-products.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,CAAA;AAEvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAE1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAE5D,MAAM,CAAC,MAAM,GAAG,GAAa,KAAK,EAAE,OAAO,EAAE,EAAE;IAC9C,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAA;IAE5C,IAAI,QAAQ,GAAkB,EAAE,CAAA;IAChC,IAAI,eAAe,EAAE,CAAC;QACrB,IAAI,CAAC;YACJ,QAAQ,GAAG,MAAM,eAAe,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,OAAc,CAAC,CAAA;QACvE,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACX,CAAC;IAED,MAAM,GAAG,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAA;IAE5C,OAAO,IAAI,QAAQ,CAAC,GAAG,EAAE;QACxB,OAAO,EAAE,EAAE,cAAc,EAAE,gCAAgC,EAAE;KAC7D,CAAC,CAAA;AACH,CAAC,CAAA"}
@@ -1,5 +1,4 @@
1
1
  import 'virtual:growth-labs/seo/config';
2
2
  import type { APIRoute } from 'astro';
3
- export declare const prerender = false;
4
3
  export declare const GET: APIRoute;
5
4
  //# sourceMappingURL=sitemap-videos.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sitemap-videos.d.ts","sourceRoot":"","sources":["../../src/routes/sitemap-videos.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,CAAA;AACvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAKrC,eAAO,MAAM,SAAS,QAAQ,CAAA;AAE9B,eAAO,MAAM,GAAG,EAAE,QAejB,CAAA"}
1
+ {"version":3,"file":"sitemap-videos.d.ts","sourceRoot":"","sources":["../../src/routes/sitemap-videos.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,CAAA;AACvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAKrC,eAAO,MAAM,GAAG,EAAE,QAejB,CAAA"}
@@ -1,7 +1,6 @@
1
1
  import 'virtual:growth-labs/seo/config';
2
2
  import { getContentProvider } from '../_internal/state.js';
3
3
  import { generateVideoSitemap } from '../utils/sitemap.js';
4
- export const prerender = false;
5
4
  export const GET = async (context) => {
6
5
  const contentProvider = getContentProvider();
7
6
  let videos = [];
@@ -1 +1 @@
1
- {"version":3,"file":"sitemap-videos.js","sourceRoot":"","sources":["../../src/routes/sitemap-videos.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,CAAA;AAEvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAE1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAE1D,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,CAAA;AAE9B,MAAM,CAAC,MAAM,GAAG,GAAa,KAAK,EAAE,OAAO,EAAE,EAAE;IAC9C,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAA;IAE5C,IAAI,MAAM,GAAkB,EAAE,CAAA;IAC9B,IAAI,eAAe,EAAE,CAAC;QACrB,IAAI,CAAC;YACJ,MAAM,GAAG,MAAM,eAAe,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,OAAc,CAAC,CAAA;QACnE,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACX,CAAC;IAED,MAAM,GAAG,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAA;IAExC,OAAO,IAAI,QAAQ,CAAC,GAAG,EAAE;QACxB,OAAO,EAAE,EAAE,cAAc,EAAE,gCAAgC,EAAE;KAC7D,CAAC,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"sitemap-videos.js","sourceRoot":"","sources":["../../src/routes/sitemap-videos.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,CAAA;AAEvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAE1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAE1D,MAAM,CAAC,MAAM,GAAG,GAAa,KAAK,EAAE,OAAO,EAAE,EAAE;IAC9C,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAA;IAE5C,IAAI,MAAM,GAAkB,EAAE,CAAA;IAC9B,IAAI,eAAe,EAAE,CAAC;QACrB,IAAI,CAAC;YACJ,MAAM,GAAG,MAAM,eAAe,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,OAAc,CAAC,CAAA;QACnE,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACX,CAAC;IAED,MAAM,GAAG,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAA;IAExC,OAAO,IAAI,QAAQ,CAAC,GAAG,EAAE;QACxB,OAAO,EAAE,EAAE,cAAc,EAAE,gCAAgC,EAAE;KAC7D,CAAC,CAAA;AACH,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"apple-news-rss.d.ts","sourceRoot":"","sources":["../../src/utils/apple-news-rss.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAA;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAgB9C;;;;;GAKG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,IAAI,EAAE,WAAW,KAAK,MAAM,GAAG,SAAS,CAAA;AAE3E,MAAM,WAAW,2BAA2B;IAC3C,KAAK,EAAE,WAAW,EAAE,CAAA;IACpB,OAAO,EAAE,0BAA0B,CAAA;IAInC,WAAW,CAAC,EAAE,mBAAmB,CAAA;CACjC;AAID;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAAC,EACpC,KAAK,EACL,OAAO,EACP,WAAW,GACX,EAAE,2BAA2B,GAAG,MAAM,CAgFtC"}
1
+ {"version":3,"file":"apple-news-rss.d.ts","sourceRoot":"","sources":["../../src/utils/apple-news-rss.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAA;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAgB9C;;;;;GAKG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,IAAI,EAAE,WAAW,KAAK,MAAM,GAAG,SAAS,CAAA;AAE3E,MAAM,WAAW,2BAA2B;IAC3C,KAAK,EAAE,WAAW,EAAE,CAAA;IACpB,OAAO,EAAE,0BAA0B,CAAA;IAInC,WAAW,CAAC,EAAE,mBAAmB,CAAA;CACjC;AAID;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAAC,EACpC,KAAK,EACL,OAAO,EACP,WAAW,GACX,EAAE,2BAA2B,GAAG,MAAM,CAmFtC"}
@@ -32,14 +32,18 @@ export function generateAppleNewsRss({ items, options, contentHtml, }) {
32
32
  throw new Error('generateAppleNewsRss called without appleNews.enabled');
33
33
  }
34
34
  const filtered = forAppleNews(items, { publishable: appleNews.defaultPublishable });
35
- // Newest-first ordering.
35
+ // Newest-first ordering. Coerce missing/unparseable dates to 0 (sort last) —
36
+ // a NaN comparator result makes Array.sort leave the element in place, which
37
+ // could park a junk-dated item at the front of the capped feed.
38
+ const publishTime = (value) => {
39
+ if (!value)
40
+ return 0;
41
+ const t = new Date(value).getTime();
42
+ return Number.isNaN(t) ? 0 : t;
43
+ };
36
44
  const sorted = filtered
37
45
  .slice()
38
- .sort((a, b) => {
39
- const at = a.datePublished ? new Date(a.datePublished).getTime() : 0;
40
- const bt = b.datePublished ? new Date(b.datePublished).getTime() : 0;
41
- return bt - at;
42
- })
46
+ .sort((a, b) => publishTime(b.datePublished) - publishTime(a.datePublished))
43
47
  .slice(0, MAX_ITEMS);
44
48
  const selfLink = `${options.site.replace(/\/$/, '')}${appleNews.feedPath}`;
45
49
  const channelImage = options.organization.logo;
@@ -1 +1 @@
1
- {"version":3,"file":"apple-news-rss.js","sourceRoot":"","sources":["../../src/utils/apple-news-rss.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"apple-news-rss.js","sourceRoot":"","sources":["../../src/utils/apple-news-rss.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"rss.d.ts","sourceRoot":"","sources":["../../src/utils/rss.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAA;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAe9C,wBAAgB,eAAe,CAC9B,KAAK,EAAE,WAAW,EAAE,EACpB,OAAO,EAAE,0BAA0B,EACnC,WAAW,CAAC,EAAE,MAAM,GAClB,MAAM,CA2CR"}
1
+ {"version":3,"file":"rss.d.ts","sourceRoot":"","sources":["../../src/utils/rss.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAA;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAiC9C,wBAAgB,eAAe,CAC9B,KAAK,EAAE,WAAW,EAAE,EACpB,OAAO,EAAE,0BAA0B,EACnC,WAAW,CAAC,EAAE,MAAM,GAClB,MAAM,CAgDR"}
package/dist/utils/rss.js CHANGED
@@ -1,3 +1,9 @@
1
+ // RSS is a "recent updates" surface, not a full archive (that's the sitemap).
2
+ // Capping the item count keeps the feed lightweight for readers AND bounds the
3
+ // prerendered /feed.xml asset — an uncapped full-body feed on a large catalog
4
+ // would eventually breach Cloudflare's 25 MiB per-asset limit. Mirrors the
5
+ // Apple News feed cap.
6
+ const RSS_MAX_ITEMS = 50;
1
7
  function escapeXml(str) {
2
8
  return str
3
9
  .replace(/&/g, '&')
@@ -9,12 +15,27 @@ function escapeXml(str) {
9
15
  function toRfc822(dateStr) {
10
16
  return new Date(dateStr).toUTCString();
11
17
  }
18
+ // Parse to epoch ms, coercing missing/unparseable dates to 0 so they sort last.
19
+ // A raw `new Date(bad).getTime()` returns NaN, and a NaN comparator result makes
20
+ // Array.sort leave the element in place — which can park a junk-dated item at the
21
+ // front of the capped feed. Content dates come from hand/LLM-authored frontmatter,
22
+ // so malformed values are realistic.
23
+ function publishTime(value) {
24
+ if (!value)
25
+ return 0;
26
+ const t = new Date(value).getTime();
27
+ return Number.isNaN(t) ? 0 : t;
28
+ }
12
29
  export function generateRssFeed(items, options, description) {
13
30
  const { site, organization, defaults } = options;
14
31
  const feedDescription = description ?? organization.name;
15
32
  const language = defaults.locale.replace('_', '-').toLowerCase();
16
33
  const lastBuildDate = new Date().toUTCString();
17
- const itemsXml = items
34
+ // Newest first, then cap. Missing/unparseable dates sort last (time 0).
35
+ const recentItems = [...items]
36
+ .sort((a, b) => publishTime(b.datePublished) - publishTime(a.datePublished))
37
+ .slice(0, RSS_MAX_ITEMS);
38
+ const itemsXml = recentItems
18
39
  .map((item) => {
19
40
  const pubDate = item.datePublished ? toRfc822(item.datePublished) : '';
20
41
  const pubDateTag = pubDate ? `\n <pubDate>${escapeXml(pubDate)}</pubDate>` : '';
@@ -1 +1 @@
1
- {"version":3,"file":"rss.js","sourceRoot":"","sources":["../../src/utils/rss.ts"],"names":[],"mappings":"AAGA,SAAS,SAAS,CAAC,GAAW;IAC7B,OAAO,GAAG;SACR,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;SACvB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;AAC1B,CAAC;AAED,SAAS,QAAQ,CAAC,OAAe;IAChC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;AACvC,CAAC;AAED,MAAM,UAAU,eAAe,CAC9B,KAAoB,EACpB,OAAmC,EACnC,WAAoB;IAEpB,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAA;IAChD,MAAM,eAAe,GAAG,WAAW,IAAI,YAAY,CAAC,IAAI,CAAA;IACxD,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;IAChE,MAAM,aAAa,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IAE9C,MAAM,QAAQ,GAAG,KAAK;SACpB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACb,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QACtE,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,oBAAoB,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAA;QACpF,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW;YAC/B,CAAC,CAAC,wBAAwB,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,gBAAgB;YACrE,CAAC,CAAC,EAAE,CAAA;QACL,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;aACtC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,uBAAuB,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC;aACnE,IAAI,CAAC,EAAE,CAAC,CAAA;QACV,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK;YAC9B,CAAC,CAAC,2BAA2B,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,kCAAkC;YACxF,CAAC,CAAC,EAAE,CAAA;QAEL,OAAO;eACK,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;cACtB,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC;iCACA,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,UAAU,GAAG,OAAO,GAAG,WAAW,GAAG,YAAY;YACnG,CAAA;IACV,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAA;IAEZ,OAAO;;;;;;aAMK,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC;mBACtB,SAAS,CAAC,eAAe,CAAC;YACjC,SAAS,CAAC,IAAI,CAAC;gBACX,SAAS,CAAC,QAAQ,CAAC;uBACZ,SAAS,CAAC,GAAG,IAAI,WAAW,CAAC;qBAC/B,aAAa;EAChC,QAAQ;;OAEH,CAAA;AACP,CAAC"}
1
+ {"version":3,"file":"rss.js","sourceRoot":"","sources":["../../src/utils/rss.ts"],"names":[],"mappings":"AAGA,8EAA8E;AAC9E,+EAA+E;AAC/E,8EAA8E;AAC9E,2EAA2E;AAC3E,uBAAuB;AACvB,MAAM,aAAa,GAAG,EAAE,CAAA;AAExB,SAAS,SAAS,CAAC,GAAW;IAC7B,OAAO,GAAG;SACR,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;SACvB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;AAC1B,CAAC;AAED,SAAS,QAAQ,CAAC,OAAe;IAChC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;AACvC,CAAC;AAED,gFAAgF;AAChF,iFAAiF;AACjF,kFAAkF;AAClF,mFAAmF;AACnF,qCAAqC;AACrC,SAAS,WAAW,CAAC,KAAyB;IAC7C,IAAI,CAAC,KAAK;QAAE,OAAO,CAAC,CAAA;IACpB,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAA;IACnC,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAC/B,CAAC;AAED,MAAM,UAAU,eAAe,CAC9B,KAAoB,EACpB,OAAmC,EACnC,WAAoB;IAEpB,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAA;IAChD,MAAM,eAAe,GAAG,WAAW,IAAI,YAAY,CAAC,IAAI,CAAA;IACxD,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;IAChE,MAAM,aAAa,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IAE9C,wEAAwE;IACxE,MAAM,WAAW,GAAG,CAAC,GAAG,KAAK,CAAC;SAC5B,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;SAC3E,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC,CAAA;IAEzB,MAAM,QAAQ,GAAG,WAAW;SAC1B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACb,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QACtE,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,oBAAoB,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAA;QACpF,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW;YAC/B,CAAC,CAAC,wBAAwB,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,gBAAgB;YACrE,CAAC,CAAC,EAAE,CAAA;QACL,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;aACtC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,uBAAuB,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC;aACnE,IAAI,CAAC,EAAE,CAAC,CAAA;QACV,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK;YAC9B,CAAC,CAAC,2BAA2B,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,kCAAkC;YACxF,CAAC,CAAC,EAAE,CAAA;QAEL,OAAO;eACK,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;cACtB,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC;iCACA,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,UAAU,GAAG,OAAO,GAAG,WAAW,GAAG,YAAY;YACnG,CAAA;IACV,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAA;IAEZ,OAAO;;;;;;aAMK,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC;mBACtB,SAAS,CAAC,eAAe,CAAC;YACjC,SAAS,CAAC,IAAI,CAAC;gBACX,SAAS,CAAC,QAAQ,CAAC;uBACZ,SAAS,CAAC,GAAG,IAAI,WAAW,CAAC;qBAC/B,aAAa;EAChC,QAAQ;;OAEH,CAAA;AACP,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"sitemap.d.ts","sourceRoot":"","sources":["../../src/utils/sitemap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAE9C,eAAO,MAAM,kBAAkB,uBAAuB,CAAA;AAEtD,MAAM,WAAW,YAAY;IAC5B,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,CAAC,EAAE,MAAM,CAAA;CAChB;AAWD,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,MAAM,CAYrE;AASD,wBAAgB,sBAAsB,CACrC,QAAQ,EAAE,WAAW,EAAE,EACvB,OAAO,EAAE,kBAAkB,GACzB,MAAM,CA6CR;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM,CAajE;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM,CAoCjE;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM,CAyBnE"}
1
+ {"version":3,"file":"sitemap.d.ts","sourceRoot":"","sources":["../../src/utils/sitemap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAE9C,eAAO,MAAM,kBAAkB,uBAAuB,CAAA;AAEtD,MAAM,WAAW,YAAY;IAC5B,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,CAAC,EAAE,MAAM,CAAA;CAChB;AAWD,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,MAAM,CAYrE;AASD,wBAAgB,sBAAsB,CACrC,QAAQ,EAAE,WAAW,EAAE,EACvB,OAAO,EAAE,kBAAkB,GACzB,MAAM,CA6CR;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM,CAajE;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM,CAsCjE;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM,CAyBnE"}
@@ -77,7 +77,7 @@ ${entries}
77
77
  }
78
78
  export function generateVideoSitemap(items) {
79
79
  const entries = items
80
- .filter((item) => item.video)
80
+ .filter((item) => Boolean(item.video && (item.video.contentUrl || item.video.embedUrl)))
81
81
  .map((item) => {
82
82
  const v = item.video;
83
83
  const contentUrlTag = v.contentUrl
@@ -1 +1 @@
1
- {"version":3,"file":"sitemap.js","sourceRoot":"","sources":["../../src/utils/sitemap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sitemap.js","sourceRoot":"","sources":["../../src/utils/sitemap.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,11 @@ export interface PageValidationOptions {
6
6
  titleMaxLength: number;
7
7
  descriptionMaxLength: number;
8
8
  heroMinWidth?: number;
9
+ pagePath?: string;
10
+ requireH1?: boolean;
11
+ requireHeroImage?: boolean;
12
+ requireArticleSchema?: boolean;
13
+ requireMaxImagePreviewLarge?: boolean;
9
14
  }
10
15
  /**
11
16
  * Validate a JSON-LD object for common SEO issues.
@@ -1 +1 @@
1
- {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAChC,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAA;CAClB;AAED,MAAM,WAAW,qBAAqB;IACrC,cAAc,EAAE,MAAM,CAAA;IACtB,oBAAoB,EAAE,MAAM,CAAA;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAA;CACrB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,gBAAgB,CAqEhF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,GAAG,gBAAgB,CAyF3F;AA4BD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAE9C,MAAM,WAAW,wBAAwB;IACxC,GAAG,EAAE,MAAM,CAAA;IACX,iBAAiB,EAAE;QAClB,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,MAAM,CAAA;QACZ,qBAAqB,EAAE,MAAM,CAAA;KAC7B,CAAA;CACD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,wBAAwB,EAAE,CAkC5F;AAID,MAAM,WAAW,mBAAmB;IACnC,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,SAAS,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;CACf;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,8BAA8B,CAAC,EAC9C,eAAe,EACf,KAAK,GACL,EAAE;IACF,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC5B,KAAK,EAAE,WAAW,EAAE,CAAA;CACpB,GAAG,mBAAmB,EAAE,CAmBxB"}
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAChC,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAA;CAClB;AAED,MAAM,WAAW,qBAAqB;IACrC,cAAc,EAAE,MAAM,CAAA;IACtB,oBAAoB,EAAE,MAAM,CAAA;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,2BAA2B,CAAC,EAAE,OAAO,CAAA;CACrC;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,gBAAgB,CAqEhF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,GAAG,gBAAgB,CAwH3F;AA2GD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAE9C,MAAM,WAAW,wBAAwB;IACxC,GAAG,EAAE,MAAM,CAAA;IACX,iBAAiB,EAAE;QAClB,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,MAAM,CAAA;QACZ,qBAAqB,EAAE,MAAM,CAAA;KAC7B,CAAA;CACD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,wBAAwB,EAAE,CAkC5F;AAID,MAAM,WAAW,mBAAmB;IACnC,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,SAAS,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;CACf;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,8BAA8B,CAAC,EAC9C,eAAe,EACf,KAAK,GACL,EAAE;IACF,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC5B,KAAK,EAAE,WAAW,EAAE,CAAA;CACpB,GAAG,mBAAmB,EAAE,CAmBxB"}
@@ -109,7 +109,7 @@ export function validatePage(html, options) {
109
109
  const ogImageMatch = html.match(/<meta\s[^>]*property=["']og:image["'][^>]*>/i) ??
110
110
  html.match(/<meta\s[^>]*property=og:image[^>]*>/i);
111
111
  if (!ogImageMatch) {
112
- warnings.push('Missing og:image meta tag');
112
+ pushIssue(options.requireHeroImage, errors, warnings, 'Missing hero image og:image meta tag');
113
113
  }
114
114
  // og:image:width check against heroMinWidth
115
115
  if (options.heroMinWidth) {
@@ -121,26 +121,123 @@ export function validatePage(html, options) {
121
121
  if (widthContentMatch) {
122
122
  const width = Number(widthContentMatch[1]);
123
123
  if (!Number.isNaN(width) && width < options.heroMinWidth) {
124
- warnings.push(`Hero image width ${width}px is below minimum ${options.heroMinWidth}px`);
124
+ pushIssue(options.requireHeroImage, errors, warnings, `Hero image width ${width}px is below minimum ${options.heroMinWidth}px`);
125
125
  }
126
126
  }
127
+ else if (options.requireHeroImage) {
128
+ errors.push(`Hero image width is missing; minimum is ${options.heroMinWidth}px`);
129
+ }
130
+ }
131
+ else if (options.requireHeroImage && ogImageMatch) {
132
+ errors.push(`Hero image width is missing; minimum is ${options.heroMinWidth}px`);
127
133
  }
128
134
  }
129
135
  // H1 checks
130
136
  const h1Matches = html.match(/<h1[\s>]/gi) ?? [];
131
137
  if (h1Matches.length === 0) {
132
- warnings.push('Missing H1 tag');
138
+ pushIssue(options.requireH1, errors, warnings, 'Missing H1 tag');
133
139
  }
134
140
  else if (h1Matches.length > 1) {
135
- warnings.push(`Multiple H1 tags found (${h1Matches.length})`);
141
+ pushIssue(options.requireH1, errors, warnings, `Multiple H1 tags found (${h1Matches.length})`);
136
142
  }
137
143
  // JSON-LD presence check
138
144
  const jsonLdMatch = html.match(/<script\s[^>]*type=["']application\/ld\+json["'][^>]*>/i);
139
145
  if (!jsonLdMatch) {
140
146
  warnings.push('Missing JSON-LD structured data');
141
147
  }
148
+ if (options.requireArticleSchema &&
149
+ isLikelyArticlePath(options.pagePath) &&
150
+ !hasArticleJsonLd(html)) {
151
+ errors.push('Missing valid Article JSON-LD for article route');
152
+ }
153
+ // max-image-preview:large tells search engines to show large image previews
154
+ // in Discover / News results — meaningful only for INDEXABLE pages. A noindex
155
+ // page (404, login, account, etc.) is excluded from search entirely, so the
156
+ // directive is moot there. Requiring it would force every consumer's noindex
157
+ // layout to carry a contradictory `noindex, ..., max-image-preview:large`
158
+ // robots string just to satisfy the linter. Skip the check on noindex pages.
159
+ if (options.requireMaxImagePreviewLarge &&
160
+ !isNoindexPage(html) &&
161
+ !hasMaxImagePreviewLarge(html)) {
162
+ errors.push('Missing robots max-image-preview:large directive');
163
+ }
142
164
  return { errors, warnings };
143
165
  }
166
+ function pushIssue(asError, errors, warnings, message) {
167
+ if (asError)
168
+ errors.push(message);
169
+ else
170
+ warnings.push(message);
171
+ }
172
+ function isLikelyArticlePath(pagePath) {
173
+ if (!pagePath)
174
+ return false;
175
+ return /\/(article|articles|news|story|stories)\//i.test(pagePath);
176
+ }
177
+ function hasArticleJsonLd(html) {
178
+ for (const rawJson of extractJsonLdBodies(html)) {
179
+ try {
180
+ const parsed = JSON.parse(rawJson);
181
+ if (hasArticleType(parsed))
182
+ return true;
183
+ }
184
+ catch { }
185
+ }
186
+ return false;
187
+ }
188
+ function extractJsonLdBodies(html) {
189
+ const bodies = [];
190
+ const pattern = /<script\s[^>]*type=["']application\/ld\+json["'][^>]*>([\s\S]*?)<\/script>/gi;
191
+ for (const match of html.matchAll(pattern)) {
192
+ if (match[1])
193
+ bodies.push(match[1].trim());
194
+ }
195
+ return bodies;
196
+ }
197
+ function hasArticleType(value) {
198
+ if (Array.isArray(value))
199
+ return value.some(hasArticleType);
200
+ if (!isRecord(value))
201
+ return false;
202
+ const type = value['@type'];
203
+ if (type === 'Article' || type === 'NewsArticle' || type === 'BlogPosting')
204
+ return true;
205
+ if (Array.isArray(type) &&
206
+ type.some((item) => item === 'Article' || item === 'NewsArticle' || item === 'BlogPosting')) {
207
+ return true;
208
+ }
209
+ return hasArticleType(value['@graph']);
210
+ }
211
+ function hasMaxImagePreviewLarge(html) {
212
+ const metaTags = html.match(/<meta\s+[^>]*>/gi) ?? [];
213
+ for (const tag of metaTags) {
214
+ if (getHtmlAttr(tag, 'name')?.toLowerCase() !== 'robots')
215
+ continue;
216
+ const content = getHtmlAttr(tag, 'content')?.toLowerCase() ?? '';
217
+ const directives = content.split(',').map((part) => part.trim());
218
+ if (directives.includes('max-image-preview:large'))
219
+ return true;
220
+ }
221
+ return false;
222
+ }
223
+ function isNoindexPage(html) {
224
+ const metaTags = html.match(/<meta\s+[^>]*>/gi) ?? [];
225
+ for (const tag of metaTags) {
226
+ const name = getHtmlAttr(tag, 'name')?.toLowerCase();
227
+ // Per the robots spec a per-bot directive (e.g. name="googlebot") counts;
228
+ // `content="none"` is equivalent to `noindex, nofollow`.
229
+ if (name !== 'robots' && name !== 'googlebot')
230
+ continue;
231
+ const content = getHtmlAttr(tag, 'content')?.toLowerCase() ?? '';
232
+ const directives = content.split(',').map((part) => part.trim());
233
+ if (directives.includes('noindex') || directives.includes('none'))
234
+ return true;
235
+ }
236
+ return false;
237
+ }
238
+ function isRecord(value) {
239
+ return typeof value === 'object' && value !== null;
240
+ }
144
241
  function isNoindexMetaRefreshRedirect(html) {
145
242
  const metaTags = html.match(/<meta\s+[^>]*>/gi) ?? [];
146
243
  const hasRefresh = metaTags.some((tag) => getHtmlAttr(tag, 'http-equiv')?.toLowerCase() === 'refresh');
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"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"}