typerighter 0.55.0 → 0.55.1

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 (40) hide show
  1. package/dist/{app-Dj09xvlJ.js → app-C1ognrj1.js} +37 -37
  2. package/dist/{cli-qdkrcgUe.js → cli-Cfn9ef18.js} +5 -5
  3. package/dist/cli.js +1 -1
  4. package/dist/client/theme-default.js +218 -218
  5. package/dist/client.js +1 -1
  6. package/dist/index.js +2 -2
  7. package/dist/{init-CqTfzJfC.js → init-DLnxbm8u.js} +1 -1
  8. package/dist/node/build/prerender.d.ts +2 -2
  9. package/dist/node/build/prerender.d.ts.map +1 -1
  10. package/dist/node/build/seo/feed.d.ts +1 -1
  11. package/dist/node/build/seo/feed.d.ts.map +1 -1
  12. package/dist/node/build/seo/index.d.ts +4 -4
  13. package/dist/node/build/seo/index.d.ts.map +1 -1
  14. package/dist/node/build/seo/jsonld.d.ts +15 -2
  15. package/dist/node/build/seo/jsonld.d.ts.map +1 -1
  16. package/dist/node/build/seo/page.d.ts +16 -5
  17. package/dist/node/build/seo/page.d.ts.map +1 -1
  18. package/dist/node/build/seo/sitemap.d.ts +2 -2
  19. package/dist/node/build/seo/sitemap.d.ts.map +1 -1
  20. package/dist/node/lib/html-template.d.ts +3 -0
  21. package/dist/node/lib/html-template.d.ts.map +1 -1
  22. package/dist/node/lib/render/vue.d.ts.map +1 -1
  23. package/dist/page-BktMady3.js +114 -0
  24. package/dist/prerenderWorker.js +31 -32
  25. package/dist/{renderMath-cPd-YSsZ.js → renderMath-CJKXI63h.js} +1 -1
  26. package/dist/shared/types/content.d.ts +3 -3
  27. package/dist/shared/types/content.d.ts.map +1 -1
  28. package/dist/shared/types/ssg.d.ts +3 -0
  29. package/dist/shared/types/ssg.d.ts.map +1 -1
  30. package/dist/shared/utils/format.d.ts +1 -0
  31. package/dist/shared/utils/format.d.ts.map +1 -1
  32. package/dist/shared/utils/url.d.ts +1 -0
  33. package/dist/shared/utils/url.d.ts.map +1 -1
  34. package/dist/{shared-tntT6SIH.js → shared-BK7uzYmy.js} +100 -94
  35. package/dist/shared.js +1 -1
  36. package/dist/typerighter.css +1 -1
  37. package/dist/{vite-C6g7N9dI.js → vite-B9tiBEhg.js} +489 -488
  38. package/dist/vite.js +1 -1
  39. package/package.json +3 -3
  40. package/dist/jsonld-Bb_dN3WE.js +0 -81
package/dist/client.js CHANGED
@@ -1 +1 @@
1
- export { s as Content, t as createTypedownApp, c as useRoute, l as useRouter, r as useSiteConfig, i as useSiteData, a as useTdContent, o as useTheme } from "./app-Dj09xvlJ.js";
1
+ export { s as Content, t as createTypedownApp, c as useRoute, l as useRouter, r as useSiteConfig, i as useSiteData, a as useTdContent, o as useTheme } from "./app-C1ognrj1.js";
package/dist/index.js CHANGED
@@ -1,3 +1,3 @@
1
- import { a as e, i as t, n, o as r, r as i, s as a, t as o } from "./vite-C6g7N9dI.js";
2
- import { t as s } from "./cli-qdkrcgUe.js";
1
+ import { a as e, i as t, n, o as r, r as i, s as a, t as o } from "./vite-B9tiBEhg.js";
2
+ import { t as s } from "./cli-Cfn9ef18.js";
3
3
  export { n as PAGES_ID, i as PAGE_DATA_EVENT, t as SEARCH_INDEX_ID, e as SITE_DATA_ID, r as THEME_ID, a as buildSite, s as cli, o as typedown };
@@ -751,7 +751,7 @@ function Ge(e) {
751
751
  check: "typerighter check"
752
752
  },
753
753
  devDependencies: {
754
- typerighter: "^0.55.0",
754
+ typerighter: "^0.55.1",
755
755
  typescript: "^5.0.0"
756
756
  }
757
757
  }, void 0, 2) + "\n";
@@ -13,7 +13,7 @@ export interface PrerenderContext {
13
13
  /** HTML lang attribute */
14
14
  lang?: string;
15
15
  /** List of page paths to render (e.g. ["/", "/posts/hello"]) */
16
- pagePaths: string[];
16
+ pageRoutes: string[];
17
17
  /** Site title for SEO title suffix */
18
18
  siteTitle: string;
19
19
  /** Site author for meta tag */
@@ -32,7 +32,7 @@ export interface PrerenderWorkerConfig {
32
32
  headExtra?: string;
33
33
  }
34
34
  export interface PrerenderWorkerResult {
35
- pagePath: string;
35
+ pageRoute: string;
36
36
  fileName: string;
37
37
  html: string;
38
38
  }
@@ -1 +1 @@
1
- {"version":3,"file":"prerender.d.ts","sourceRoot":"","sources":["../../../src/node/build/prerender.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,cAAc,EACf,MAAM,iBAAiB,CAAC;AAkBzB,MAAM,WAAW,gBAAgB;IAC/B,4CAA4C;IAC5C,YAAY,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,YAAY,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,MAAM,EAAE,MAAM,CAAC;IACf,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0BAA0B;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gEAAgE;IAChE,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,sCAAsC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,+BAA+B;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oDAAoD;IACpD,QAAQ,CAAC,EAAE,cAAc,CAAC;CAC3B;AAED,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAKD,wBAAsB,kBAAkB,CAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBlF"}
1
+ {"version":3,"file":"prerender.d.ts","sourceRoot":"","sources":["../../../src/node/build/prerender.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,cAAc,EACf,MAAM,iBAAiB,CAAC;AAiBzB,MAAM,WAAW,gBAAgB;IAC/B,4CAA4C;IAC5C,YAAY,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,YAAY,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,MAAM,EAAE,MAAM,CAAC;IACf,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0BAA0B;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gEAAgE;IAChE,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,sCAAsC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,+BAA+B;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oDAAoD;IACpD,QAAQ,CAAC,EAAE,cAAc,CAAC;CAC3B;AAED,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAKD,wBAAsB,kBAAkB,CAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBlF"}
@@ -1,3 +1,3 @@
1
1
  import type { TdSidebarItem } from '@typerighter/rpc-client';
2
- export declare function generateRssFeed(items: TdSidebarItem[], base: string, origin: string, title: string, description: string, lang: string): string;
2
+ export declare function buildRssFeed(items: TdSidebarItem[], base: string, origin: string, title: string, description: string, lang: string): string;
3
3
  //# sourceMappingURL=feed.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"feed.d.ts","sourceRoot":"","sources":["../../../../src/node/build/seo/feed.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,aAAa,EACd,MAAM,yBAAyB,CAAC;AAMjC,wBAAgB,eAAe,CAC7B,KAAK,EAAE,aAAa,EAAE,EACtB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,GACX,MAAM,CAkCR"}
1
+ {"version":3,"file":"feed.d.ts","sourceRoot":"","sources":["../../../../src/node/build/seo/feed.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACd,MAAM,yBAAyB,CAAC;AAMjC,wBAAgB,YAAY,CAC1B,KAAK,EAAE,aAAa,EAAE,EACtB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,GACX,MAAM,CAkCR"}
@@ -1,5 +1,5 @@
1
- export { resolvePageTitle, resolvePageDescription, extractDateModified, extractOgImagePath } from './page';
2
- export { buildArticleLd, buildBreadcrumbLd } from './jsonld';
3
- export { generateSitemap, generateRobotsTxt } from './sitemap';
4
- export { generateRssFeed } from './feed';
1
+ export { buildPageSeo } from './page';
2
+ export type { PageSeo, PageSeoConfig } from './page';
3
+ export { buildSitemap, buildRobotsTxt } from './sitemap';
4
+ export { buildRssFeed } from './feed';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/node/build/seo/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAC3G,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/node/build/seo/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC"}
@@ -1,10 +1,23 @@
1
1
  export interface ArticleLdOptions {
2
2
  title: string;
3
3
  description: string;
4
- canonicalUrl?: string;
4
+ canonicalUrl: string;
5
5
  author?: string;
6
6
  dateModified?: string;
7
7
  }
8
+ export interface WebSiteLdOptions {
9
+ title: string;
10
+ canonicalUrl: string;
11
+ }
12
+ export interface BreadcrumbLdOptions {
13
+ pageRoute: string;
14
+ title: string;
15
+ /** Absolute site origin (e.g. "https://example.com") for item URLs */
16
+ origin?: string;
17
+ /** Base path (e.g. "/docs/") prepended to all item URLs */
18
+ base: string;
19
+ }
8
20
  export declare function buildArticleLd(options: ArticleLdOptions): string;
9
- export declare function buildBreadcrumbLd(pagePath: string, title: string): string | undefined;
21
+ export declare function buildWebSiteLd(options: WebSiteLdOptions): string;
22
+ export declare function buildBreadcrumbLd(options: BreadcrumbLdOptions): string | undefined;
10
23
  //# sourceMappingURL=jsonld.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"jsonld.d.ts","sourceRoot":"","sources":["../../../../src/node/build/seo/jsonld.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAGD,wBAAgB,cAAc,CAAE,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAUjE;AAGD,wBAAgB,iBAAiB,CAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAetF"}
1
+ {"version":3,"file":"jsonld.d.ts","sourceRoot":"","sources":["../../../../src/node/build/seo/jsonld.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,sEAAsE;IACtE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2DAA2D;IAC3D,IAAI,EAAE,MAAM,CAAC;CACd;AAGD,wBAAgB,cAAc,CAAE,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAUjE;AAGD,wBAAgB,cAAc,CAAE,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAOjE;AAGD,wBAAgB,iBAAiB,CAAE,OAAO,EAAE,mBAAmB,GAAG,MAAM,GAAG,SAAS,CA8BnF"}
@@ -1,6 +1,17 @@
1
- import type { PageData } from '@/shared/types/ssg';
2
- export declare function resolvePageTitle(pageData: PageData): string;
3
- export declare function resolvePageDescription(pageData: PageData): string;
4
- export declare function extractDateModified(pageData: PageData): string | undefined;
5
- export declare function extractOgImagePath(pageData: PageData): string | undefined;
1
+ import type { OgType, PageData } from '@/shared/types/ssg';
2
+ export interface PageSeoConfig {
3
+ base: string;
4
+ origin?: string;
5
+ author?: string;
6
+ }
7
+ export interface PageSeo {
8
+ title: string;
9
+ description: string;
10
+ canonicalUrl: string;
11
+ isHomepage: boolean;
12
+ ogType: OgType;
13
+ ogImagePath: string | undefined;
14
+ jsonLdBlocks: string[];
15
+ }
16
+ export declare function buildPageSeo(pageData: PageData, pageRoute: string, config: PageSeoConfig): PageSeo;
6
17
  //# sourceMappingURL=page.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"page.d.ts","sourceRoot":"","sources":["../../../../src/node/build/seo/page.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,QAAQ,EACT,MAAM,oBAAoB,CAAC;AAM5B,wBAAgB,gBAAgB,CAAE,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAE5D;AAGD,wBAAgB,sBAAsB,CAAE,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAMlE;AAGD,wBAAgB,mBAAmB,CAAE,QAAQ,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS,CAM3E;AAGD,wBAAgB,kBAAkB,CAAE,QAAQ,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS,CAE1E"}
1
+ {"version":3,"file":"page.d.ts","sourceRoot":"","sources":["../../../../src/node/build/seo/page.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EAAE,QAAQ,EACjB,MAAM,oBAAoB,CAAC;AAU5B,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAGD,wBAAgB,YAAY,CAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,CA8BnG"}
@@ -1,3 +1,3 @@
1
- export declare function generateSitemap(pagePaths: string[], base: string, origin?: string, mtimeMap?: Map<string, number>): string;
2
- export declare function generateRobotsTxt(origin: string, base: string): string;
1
+ export declare function buildSitemap(pageRoutes: string[], base: string, origin?: string, mtimeMap?: Map<string, number>): string;
2
+ export declare function buildRobotsTxt(origin: string, base: string): string;
3
3
  //# sourceMappingURL=sitemap.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sitemap.d.ts","sourceRoot":"","sources":["../../../../src/node/build/seo/sitemap.ts"],"names":[],"mappings":"AAQA,wBAAgB,eAAe,CAC7B,SAAS,EAAE,MAAM,EAAE,EACnB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7B,MAAM,CAmBR;AAGD,wBAAgB,iBAAiB,CAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAMvE"}
1
+ {"version":3,"file":"sitemap.d.ts","sourceRoot":"","sources":["../../../../src/node/build/seo/sitemap.ts"],"names":[],"mappings":"AAMA,wBAAgB,YAAY,CAC1B,UAAU,EAAE,MAAM,EAAE,EACpB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7B,MAAM,CAmBR;AAED,wBAAgB,cAAc,CAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAMpE"}
@@ -1,3 +1,4 @@
1
+ import type { OgType } from '@/shared/types/ssg';
1
2
  export interface HtmlTemplateOptions {
2
3
  /** Page title */
3
4
  title: string;
@@ -19,6 +20,8 @@ export interface HtmlTemplateOptions {
19
20
  canonicalUrl?: string;
20
21
  /** Per-page OG image path, falls back to global og-image.png */
21
22
  ogImagePath?: string;
23
+ /** OG type, "website" for the homepage, defaults to "article" */
24
+ ogType?: OgType;
22
25
  /** Pre-built JSON-LD blocks to inject into head */
23
26
  jsonLdBlocks?: string[];
24
27
  /** Extra tags injected into head (CSS links, module preloads) */
@@ -1 +1 @@
1
- {"version":3,"file":"html-template.d.ts","sourceRoot":"","sources":["../../../src/node/lib/html-template.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,mBAAmB;IAClC,iBAAiB;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,qCAAqC;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,oEAAoE;IACpE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,wDAAwD;IACxD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mDAAmD;IACnD,WAAW,EAAE,MAAM,CAAC;IACpB,0BAA0B;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gDAAgD;IAChD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gEAAgE;IAChE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,iEAAiE;IACjE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0CAA0C;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAGD,wBAAgB,kBAAkB,CAAE,OAAO,EAAE,mBAAmB,GAAG,MAAM,CA4ExE"}
1
+ {"version":3,"file":"html-template.d.ts","sourceRoot":"","sources":["../../../src/node/lib/html-template.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,MAAM,EACP,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,mBAAmB;IAClC,iBAAiB;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,qCAAqC;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,oEAAoE;IACpE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,wDAAwD;IACxD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mDAAmD;IACnD,WAAW,EAAE,MAAM,CAAC;IACpB,0BAA0B;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gDAAgD;IAChD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gEAAgE;IAChE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mDAAmD;IACnD,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,iEAAiE;IACjE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0CAA0C;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAGD,wBAAgB,kBAAkB,CAAE,OAAO,EAAE,mBAAmB,GAAG,MAAM,CA6ExE"}
@@ -1 +1 @@
1
- {"version":3,"file":"vue.d.ts","sourceRoot":"","sources":["../../../../src/node/lib/render/vue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EAChB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EACV,eAAe,EAChB,MAAM,qBAAqB,CAAC;AAI7B,OAAO,KAAK,EAEV,QAAQ,EACT,MAAM,UAAU,CAAC;AAKlB,MAAM,WAAW,eAAe;IAC9B,kCAAkC;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,oBAAoB;IACpB,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAGD,wBAAsB,aAAa,CACjC,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,eAAe,EACzB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,QAAQ,CAAC,CAkBnB;AAGD,wBAAsB,cAAc,CAClC,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,eAAe,EACzB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,eAAe,CAAC,CAuB1B"}
1
+ {"version":3,"file":"vue.d.ts","sourceRoot":"","sources":["../../../../src/node/lib/render/vue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EAChB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EACV,eAAe,EAChB,MAAM,qBAAqB,CAAC;AAI7B,OAAO,KAAK,EAEV,QAAQ,EACT,MAAM,UAAU,CAAC;AAKlB,MAAM,WAAW,eAAe;IAC9B,kCAAkC;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,oBAAoB;IACpB,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAGD,wBAAsB,aAAa,CACjC,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,eAAe,EACzB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,QAAQ,CAAC,CAmBnB;AAGD,wBAAsB,cAAc,CAClC,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,eAAe,EACzB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,eAAe,CAAC,CAuB1B"}
@@ -0,0 +1,114 @@
1
+ import { F as e, J as t, Y as n, c as r, i, k as a, x as o } from "./shared-BK7uzYmy.js";
2
+ // src/node/lib/html-template.ts
3
+ function s(e) {
4
+ let t = r(e.title), n = r(e.description), i = e.siteTitle !== void 0 && e.title !== e.siteTitle ? `${t} - ${r(e.siteTitle)}` : t, a = e.origin ?? "", o = e.canonicalUrl === void 0 ? void 0 : a + e.canonicalUrl, s = o === void 0 ? "" : `\n <link rel="canonical" href="${r(o)}">`, c = o === void 0 ? "" : `\n <meta property="og:url" content="${r(o)}">`, l = e.ogImagePath === void 0 ? `${a}${e.base}og-image.png` : `${a}${e.ogImagePath}`, u = e.author === void 0 ? "" : `\n <meta name="author" content="${r(e.author)}">`, d = e.siteTitle === void 0 ? "" : `\n <meta property="og:site_name" content="${r(e.siteTitle)}">`, f = a === "" ? "" : `\n <link rel="alternate" type="application/rss+xml" title="${e.siteTitle === void 0 ? "RSS Feed" : r(e.siteTitle)}" href="${a}${e.base}feed.xml">`, p = (e.jsonLdBlocks ?? []).map((e) => `\n <script type="application/ld+json">${e}<\/script>`).join(""), m = e.headExtra === void 0 ? "" : e.headExtra + "\n";
5
+ return `<!DOCTYPE html>
6
+ <html lang="${e.lang ?? "en"}">
7
+ <head>
8
+ <meta charset="UTF-8">
9
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
10
+ <meta name="generator" content="Typerighter">
11
+ <meta name="robots" content="index, follow">
12
+ <title>${i}</title>
13
+ <meta name="description" content="${n}">${u}${s}
14
+ <link rel="icon" href="${e.base}favicon.svg" type="image/svg+xml">
15
+ <link rel="apple-touch-icon" href="${e.base}apple-touch-icon.png">${f}
16
+ <meta property="og:type" content="${e.ogType ?? "article"}">${d}${c}
17
+ <meta property="og:title" content="${t}">
18
+ <meta property="og:description" content="${n}">
19
+ <meta property="og:image" content="${r(l)}">
20
+ <meta name="twitter:card" content="summary_large_image">
21
+ <meta name="twitter:title" content="${t}">
22
+ <meta name="twitter:description" content="${n}">
23
+ <meta name="twitter:image" content="${r(l)}">${p}
24
+ <script>
25
+ (function () {
26
+ var theme = localStorage.getItem('td-theme');
27
+ var isDark = theme === 'dark' || (theme !== 'light' && matchMedia('(prefers-color-scheme: dark)').matches);
28
+ if (isDark) document.documentElement.classList.add('dark');
29
+ })()
30
+ <\/script>
31
+ ${m} </head>
32
+ <body>
33
+ <div id="app">${e.appContent ?? ""}</div>
34
+ <script type="module" src="${e.base}${e.entryScript}"><\/script>
35
+ </body>
36
+ </html>`;
37
+ }
38
+ // src/node/build/seo/jsonld.ts
39
+ function c(e) {
40
+ return JSON.stringify({
41
+ "@context": "https://schema.org",
42
+ "@type": "Article",
43
+ headline: e.title,
44
+ description: e.description,
45
+ url: e.canonicalUrl,
46
+ ...e.author === void 0 ? {} : { author: {
47
+ "@type": "Person",
48
+ name: e.author
49
+ } },
50
+ ...e.dateModified === void 0 ? {} : { dateModified: e.dateModified }
51
+ });
52
+ }
53
+ function l(e) {
54
+ return JSON.stringify({
55
+ "@context": "https://schema.org",
56
+ "@type": "WebSite",
57
+ name: e.title,
58
+ url: e.canonicalUrl
59
+ });
60
+ }
61
+ function u(e) {
62
+ let { pageRoute: t, title: r, origin: i = "" } = e, s = a(t), c = o(e.base);
63
+ if (t === "/") return;
64
+ let l = t.split("/").filter(Boolean), u = l.map((e, t) => {
65
+ let a = t === l.length - 1, o = a && s ? l.slice(0, t) : l.slice(0, t + 1), u = o.length > 0 ? `${i}${c}${o.join("/")}` : `${i}${c}`;
66
+ return {
67
+ "@type": "ListItem",
68
+ position: t + 1,
69
+ name: a ? r : n(e),
70
+ item: u
71
+ };
72
+ });
73
+ return JSON.stringify({
74
+ "@context": "https://schema.org",
75
+ "@type": "BreadcrumbList",
76
+ itemListElement: u
77
+ });
78
+ }
79
+ // src/node/build/seo/page.ts
80
+ var d = 160;
81
+ function f(t, n, r) {
82
+ let a = t.seoMetadata?.title ?? t.title, o = p(t), s = n === "/", d = (r.origin ?? "") + r.base + e(n), f = t.fileMetadata?.mtimeSecs === void 0 ? void 0 : i(t.fileMetadata.mtimeSecs * 1e3), m = [s ? l({
83
+ title: a,
84
+ canonicalUrl: d
85
+ }) : c({
86
+ title: a,
87
+ description: o,
88
+ canonicalUrl: d,
89
+ author: r.author,
90
+ dateModified: f
91
+ }), u({
92
+ pageRoute: n,
93
+ title: a,
94
+ origin: r.origin,
95
+ base: r.base
96
+ })].filter((e) => e !== void 0);
97
+ return {
98
+ title: a,
99
+ description: o,
100
+ canonicalUrl: d,
101
+ isHomepage: s,
102
+ ogType: s ? "website" : "article",
103
+ ogImagePath: t.seoMetadata?.image,
104
+ jsonLdBlocks: m
105
+ };
106
+ }
107
+ function p(e) {
108
+ return e.seoMetadata?.description === void 0 ? e.frontmatter.description === void 0 ? e.excerpt === void 0 ? m(e) : t(e.excerpt, d) : String(e.frontmatter.description) : e.seoMetadata.description;
109
+ }
110
+ function m(e) {
111
+ let n = e.headings.filter((e) => e.level === 2).slice(0, 5).map((e) => e.title);
112
+ return n.length === 0 ? t(e.title, d) : t(`${e.title}: ${n.join(", ")}`, d);
113
+ }
114
+ export { s as n, f as t };
@@ -1,38 +1,37 @@
1
- import { P as e } from "./shared-tntT6SIH.js";
2
- import { a as t, i as n, n as r, o as i, r as a, s as o, t as s } from "./jsonld-Bb_dN3WE.js";
3
- import { pathToFileURL as c } from "node:url";
4
- import { parentPort as l, workerData as u } from "node:worker_threads";
1
+ import { F as e } from "./shared-BK7uzYmy.js";
2
+ import { n as t, t as n } from "./page-BktMady3.js";
3
+ import { pathToFileURL as r } from "node:url";
4
+ import { parentPort as i, workerData as a } from "node:worker_threads";
5
5
  // src/node/build/prerenderWorker.ts
6
- var d = u, f = await (await import(c(d.ssrEntryPath).href)).createRenderer();
7
- l.on("message", async (c) => {
6
+ var o = a, s = await (await import(r(o.ssrEntryPath).href)).createRenderer();
7
+ i.on("message", async (r) => {
8
8
  try {
9
- let u = await f(c), p = i(u.pageData), m = t(u.pageData), h = a(u.pageData), g = d.base + e(c), _ = [s({
10
- title: p,
11
- description: m,
12
- canonicalUrl: g,
13
- author: d.author,
14
- dateModified: h
15
- }), r(c, p)].filter((e) => e !== void 0), v = o({
16
- title: p,
17
- description: m,
18
- siteTitle: d.siteTitle,
19
- author: d.author,
20
- base: d.base,
21
- origin: d.origin,
22
- lang: d.lang,
23
- entryScript: d.clientEntry,
24
- canonicalUrl: g,
25
- ogImagePath: n(u.pageData),
26
- jsonLdBlocks: _,
27
- headExtra: d.headExtra,
28
- appContent: u.html
29
- }), y = {
30
- pagePath: c,
31
- fileName: c === "/" ? "index.html" : `${e(c)}.html`,
32
- html: v
9
+ let a = await s(r), c = n(a.pageData, r, {
10
+ base: o.base,
11
+ origin: o.origin,
12
+ author: o.author
13
+ }), l = t({
14
+ title: c.title,
15
+ description: c.description,
16
+ siteTitle: o.siteTitle,
17
+ author: o.author,
18
+ base: o.base,
19
+ origin: o.origin,
20
+ lang: o.lang,
21
+ entryScript: o.clientEntry,
22
+ canonicalUrl: c.canonicalUrl,
23
+ ogType: c.ogType,
24
+ ogImagePath: c.ogImagePath,
25
+ jsonLdBlocks: c.jsonLdBlocks,
26
+ headExtra: o.headExtra,
27
+ appContent: a.html
28
+ }), u = {
29
+ pageRoute: r,
30
+ fileName: c.isHomepage ? "index.html" : `${e(r)}.html`,
31
+ html: l
33
32
  };
34
- l.postMessage({ result: y });
33
+ i.postMessage({ result: u });
35
34
  } catch (e) {
36
- l.postMessage({ error: e instanceof Error ? e.message : String(e) });
35
+ i.postMessage({ error: e instanceof Error ? e.message : String(e) });
37
36
  }
38
37
  });
@@ -1,4 +1,4 @@
1
- import { c as e } from "./shared-tntT6SIH.js";
1
+ import { c as e } from "./shared-BK7uzYmy.js";
2
2
  import { t } from "./temml-CjI4drVW.js";
3
3
  import { t as n } from "./inlineRe-CoUp2DgK.js";
4
4
  // src/client/theme-default/utils/renderMath.ts
@@ -44,7 +44,7 @@ export interface DirectoryEntry {
44
44
  /** Tags from frontmatter */
45
45
  tags?: string[];
46
46
  /** Last modification time as seconds since UNIX epoch */
47
- mtime?: number;
47
+ mtimeSecs?: number;
48
48
  /** Schema type name */
49
49
  schema?: string;
50
50
  }
@@ -63,9 +63,9 @@ export type DirectoryListingEntry = {
63
63
  };
64
64
  export interface FileMetadata {
65
65
  /** Last modification time as seconds since UNIX epoch */
66
- mtime: number;
66
+ mtimeSecs: number;
67
67
  /** Creation time as seconds since UNIX epoch */
68
- ctime: number;
68
+ ctimeSecs: number;
69
69
  }
70
70
  export interface PropertyDescriptor {
71
71
  /** UI widget hint for rendering this property */
@@ -1 +1 @@
1
- {"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../../src/shared/types/content.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,uBAAuB;IACvB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,cAAc;IAC7B,wDAAwD;IACxD,QAAQ,EAAE,MAAM,CAAC;IACjB,uBAAuB;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gBAAgB;IAChB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,yBAAyB;IACzB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,0CAA0C;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2EAA2E;IAC3E,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAED,MAAM,WAAW,WAAW;IAC1B,8EAA8E;IAC9E,OAAO,EAAE,gBAAgB,EAAE,CAAC;CAC7B;AAED,MAAM,MAAM,gBAAgB,GACxB;IACA,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,cAAc,CAAC;CACtB,GACC;IACA,IAAI,EAAE,KAAK,CAAC;IACZ,IAAI,EAAE,eAAe,CAAC;CACvB,CAAC;AAEJ,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,kEAAkE;IAClE,OAAO,EAAE,gBAAgB,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,kDAAkD;IAClD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4BAA4B;IAC5B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,yDAAyD;IACzD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uBAAuB;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,qEAAqE;IACrE,OAAO,EAAE,qBAAqB,EAAE,CAAC;CAClC;AAED,MAAM,MAAM,qBAAqB,GAC7B;IACA,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,cAAc,CAAC;CACtB,GACC;IACA,IAAI,EAAE,KAAK,CAAC;IACZ,GAAG,EAAE,iBAAiB,CAAC;CACxB,CAAC;AAEJ,MAAM,WAAW,YAAY;IAC3B,yDAAyD;IACzD,KAAK,EAAE,MAAM,CAAC;IACd,gDAAgD;IAChD,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,kBAAkB;IACjC,iDAAiD;IACjD,MAAM,EAAE,cAAc,CAAC;IACvB,wCAAwC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qDAAqD;IACrD,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,8CAA8C;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uCAAuC;IACvC,KAAK,CAAC,EAAE,kBAAkB,CAAC;CAC5B;AAED,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,aAAa,GAAG,UAAU,GAAG,MAAM,CAAC;AAEtH,MAAM,WAAW,gBAAgB;IAC/B,CAAC,QAAQ,EAAE,MAAM,GAAG,kBAAkB,CAAC;CACxC;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf"}
1
+ {"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../../src/shared/types/content.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,uBAAuB;IACvB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,cAAc;IAC7B,wDAAwD;IACxD,QAAQ,EAAE,MAAM,CAAC;IACjB,uBAAuB;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gBAAgB;IAChB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,yBAAyB;IACzB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,0CAA0C;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2EAA2E;IAC3E,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAED,MAAM,WAAW,WAAW;IAC1B,8EAA8E;IAC9E,OAAO,EAAE,gBAAgB,EAAE,CAAC;CAC7B;AAED,MAAM,MAAM,gBAAgB,GACxB;IACA,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,cAAc,CAAC;CACtB,GACC;IACA,IAAI,EAAE,KAAK,CAAC;IACZ,IAAI,EAAE,eAAe,CAAC;CACvB,CAAC;AAEJ,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,kEAAkE;IAClE,OAAO,EAAE,gBAAgB,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,kDAAkD;IAClD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4BAA4B;IAC5B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uBAAuB;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,qEAAqE;IACrE,OAAO,EAAE,qBAAqB,EAAE,CAAC;CAClC;AAED,MAAM,MAAM,qBAAqB,GAC7B;IACA,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,cAAc,CAAC;CACtB,GACC;IACA,IAAI,EAAE,KAAK,CAAC;IACZ,GAAG,EAAE,iBAAiB,CAAC;CACxB,CAAC;AAEJ,MAAM,WAAW,YAAY;IAC3B,yDAAyD;IACzD,SAAS,EAAE,MAAM,CAAC;IAClB,gDAAgD;IAChD,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,iDAAiD;IACjD,MAAM,EAAE,cAAc,CAAC;IACvB,wCAAwC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qDAAqD;IACrD,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,8CAA8C;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uCAAuC;IACvC,KAAK,CAAC,EAAE,kBAAkB,CAAC;CAC5B;AAED,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,aAAa,GAAG,UAAU,GAAG,MAAM,CAAC;AAEtH,MAAM,WAAW,gBAAgB;IAC/B,CAAC,QAAQ,EAAE,MAAM,GAAG,kBAAkB,CAAC;CACxC;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf"}
@@ -13,6 +13,7 @@ export interface MarkdownHeading {
13
13
  link: string;
14
14
  children: MarkdownHeading[];
15
15
  }
16
+ export type OgType = 'article' | 'website';
16
17
  export interface PageData {
17
18
  schema?: string;
18
19
  schemaLabel?: string;
@@ -27,6 +28,8 @@ export interface PageData {
27
28
  filepath: string;
28
29
  fileMetadata?: FileMetadata;
29
30
  seoMetadata?: SeoMeta;
31
+ /** Plain-text excerpt from the page body, used as description fallback */
32
+ excerpt?: string;
30
33
  }
31
34
  export interface PageModule {
32
35
  pageData: PageData;
@@ -1 +1 @@
1
- {"version":3,"file":"ssg.d.ts","sourceRoot":"","sources":["../../../src/shared/types/ssg.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EAAE,GAAG,EACf,MAAM,KAAK,CAAC;AACb,OAAO,KAAK,EACV,WAAW,EAAE,YAAY,EAC1B,MAAM,WAAW,CAAC;AAEnB,MAAM,WAAW,eAAe;IAC9B,0BAA0B;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,kDAAkD;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,+DAA+D;IAC/D,SAAS,EAAE,MAAM,CAAC;IAClB,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,mCAAmC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,eAAe,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,iEAAiE;IACjE,SAAS,EAAE,MAAM,CAAC;IAClB,kFAAkF;IAClF,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,QAAQ,CAAC;IACnB,OAAO,EAAE,SAAS,CAAC;CACpB;AAED,MAAM,WAAW,OAAO;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,wCAAwC;IACxC,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IACpB,yBAAyB;IACzB,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1C,iBAAiB;IACjB,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACnB,sBAAsB;IACtB,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;CACtB"}
1
+ {"version":3,"file":"ssg.d.ts","sourceRoot":"","sources":["../../../src/shared/types/ssg.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EAAE,GAAG,EACf,MAAM,KAAK,CAAC;AACb,OAAO,KAAK,EACV,WAAW,EAAE,YAAY,EAC1B,MAAM,WAAW,CAAC;AAEnB,MAAM,WAAW,eAAe;IAC9B,0BAA0B;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,kDAAkD;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,+DAA+D;IAC/D,SAAS,EAAE,MAAM,CAAC;IAClB,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,mCAAmC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,eAAe,EAAE,CAAC;CAC7B;AAED,MAAM,MAAM,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;AAE3C,MAAM,WAAW,QAAQ;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,iEAAiE;IACjE,SAAS,EAAE,MAAM,CAAC;IAClB,kFAAkF;IAClF,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,0EAA0E;IAC1E,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,QAAQ,CAAC;IACnB,OAAO,EAAE,SAAS,CAAC;CACpB;AAED,MAAM,WAAW,OAAO;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,wCAAwC;IACxC,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IACpB,yBAAyB;IACzB,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1C,iBAAiB;IACjB,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACnB,sBAAsB;IACtB,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;CACtB"}
@@ -5,5 +5,6 @@ export declare function parseNumericPrefix(name: string): {
5
5
  };
6
6
  export declare function pascalToKebab(string_: string): string;
7
7
  export declare function snakeToKebab(string_: string): string;
8
+ export declare function truncate(text: string, maxLength: number): string;
8
9
  export declare function unslugify(slug: string): string;
9
10
  //# sourceMappingURL=format.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../../src/shared/utils/format.ts"],"names":[],"mappings":"AAEA,wBAAgB,aAAa,CAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAEtD;AAKD,wBAAgB,kBAAkB,CAAE,IAAI,EAAE,MAAM,GAAG;IACjD,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd,CAYA;AAID,wBAAgB,aAAa,CAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAEtD;AAID,wBAAgB,YAAY,CAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAErD;AAID,wBAAgB,SAAS,CAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAW/C"}
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../../src/shared/utils/format.ts"],"names":[],"mappings":"AAEA,wBAAgB,aAAa,CAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAEtD;AAKD,wBAAgB,kBAAkB,CAAE,IAAI,EAAE,MAAM,GAAG;IACjD,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd,CAYA;AAID,wBAAgB,aAAa,CAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAEtD;AAID,wBAAgB,YAAY,CAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAErD;AAGD,wBAAgB,QAAQ,CAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAIjE;AAID,wBAAgB,SAAS,CAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAW/C"}
@@ -1,3 +1,4 @@
1
+ export declare function ensureTrailingSlash(url: string): string;
1
2
  export declare function getAnchor(url: string): string;
2
3
  export declare function getDirectoryFromPageUrl(url: string): string;
3
4
  export declare function getDirectoryUrl(urlPrefix: string, name: string): string;
@@ -1 +1 @@
1
- {"version":3,"file":"url.d.ts","sourceRoot":"","sources":["../../../src/shared/utils/url.ts"],"names":[],"mappings":"AAqBA,wBAAgB,SAAS,CAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAI9C;AAGD,wBAAgB,uBAAuB,CAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED,wBAAgB,eAAe,CAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAExE;AAGD,wBAAgB,WAAW,CAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAIzD;AAED,wBAAgB,YAAY,CAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAErD;AAED,wBAAgB,eAAe,CAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAIzD;AAGD,wBAAgB,UAAU,CAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAE/C;AAGD,wBAAgB,UAAU,CAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAEhD;AAED,wBAAgB,eAAe,CAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAE5E;AAGD,wBAAgB,aAAa,CAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAEpD;AAGD,wBAAgB,WAAW,CAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAItD;AAED,wBAAgB,cAAc,CAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAEnD;AAGD,wBAAgB,WAAW,CAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAIhD;AAED,wBAAgB,iBAAiB,CAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED,wBAAgB,kBAAkB,CAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAEvD"}
1
+ {"version":3,"file":"url.d.ts","sourceRoot":"","sources":["../../../src/shared/utils/url.ts"],"names":[],"mappings":"AAoBA,wBAAgB,mBAAmB,CAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAExD;AAGD,wBAAgB,SAAS,CAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAI9C;AAGD,wBAAgB,uBAAuB,CAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED,wBAAgB,eAAe,CAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAExE;AAGD,wBAAgB,WAAW,CAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAIzD;AAED,wBAAgB,YAAY,CAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAErD;AAED,wBAAgB,eAAe,CAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAIzD;AAGD,wBAAgB,UAAU,CAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAE/C;AAGD,wBAAgB,UAAU,CAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAEhD;AAED,wBAAgB,eAAe,CAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAE5E;AAGD,wBAAgB,aAAa,CAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAEpD;AAGD,wBAAgB,WAAW,CAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAItD;AAED,wBAAgB,cAAc,CAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAEnD;AAGD,wBAAgB,WAAW,CAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAIhD;AAED,wBAAgB,iBAAiB,CAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED,wBAAgB,kBAAkB,CAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAEvD"}