@docusaurus/theme-common 0.0.0-5864 → 0.0.0-5866

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.
@@ -55,6 +55,9 @@ export declare const ThemeClassNames: {
55
55
  readonly docSidebarItemCategoryLevel: (level: number) => `theme-doc-sidebar-item-category-level-${number}`;
56
56
  readonly docSidebarItemLinkLevel: (level: number) => `theme-doc-sidebar-item-link-level-${number}`;
57
57
  };
58
- readonly blog: {};
58
+ readonly blog: {
59
+ readonly blogFooterTagsRow: "theme-blog-footer-tags-row";
60
+ readonly blogFooterEditMetaRow: "theme-blog-footer-edit-meta-row";
61
+ };
59
62
  };
60
63
  //# sourceMappingURL=ThemeClassNames.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ThemeClassNames.d.ts","sourceRoot":"","sources":["../../src/utils/ThemeClassNames.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH;;;GAGG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;wCA8BD,MAAM;;;IAM/B;;OAEG;;;;;;;;;;;;;;;sDAeoC,MAAM;kDAEV,MAAM;;;CAOjC,CAAC"}
1
+ {"version":3,"file":"ThemeClassNames.d.ts","sourceRoot":"","sources":["../../src/utils/ThemeClassNames.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH;;;GAGG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;wCA8BD,MAAM;;;IAM/B;;OAEG;;;;;;;;;;;;;;;sDAeoC,MAAM;kDAEV,MAAM;;;;;;CASjC,CAAC"}
@@ -64,7 +64,9 @@ export const ThemeClassNames = {
64
64
  // TODO add other stable classNames here
65
65
  },
66
66
  blog: {
67
- // TODO add other stable classNames here
67
+ // TODO add other stable classNames here
68
+ blogFooterTagsRow: 'theme-blog-footer-tags-row',
69
+ blogFooterEditMetaRow: 'theme-blog-footer-edit-meta-row',
68
70
  },
69
71
  };
70
72
  //# sourceMappingURL=ThemeClassNames.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ThemeClassNames.js","sourceRoot":"","sources":["../../src/utils/ThemeClassNames.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,+EAA+E;AAC/E,aAAa;AAEb;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE;QACJ,YAAY,EAAE,gBAAgB;QAC9B,YAAY,EAAE,gBAAgB;QAC9B,gBAAgB,EAAE,qBAAqB;QACvC,mBAAmB,EAAE,0BAA0B;QAE/C,WAAW,EAAE,eAAe;QAC5B,gBAAgB,EAAE,qBAAqB;QACvC,kBAAkB,EAAE,yBAAyB;QAE7C,OAAO,EAAE,UAAU;KACpB;IACD,OAAO,EAAE;QACP,IAAI,EAAE,cAAc;QACpB,uDAAuD;QACvD,uCAAuC;QACvC,+DAA+D;QAC/D,SAAS,EAAE,cAAc;QACzB,SAAS,EAAE,cAAc;QACzB,QAAQ,EAAE,aAAa;KACxB;IACD,MAAM,EAAE;QACN,YAAY,EAAE,sBAAsB;QACpC,WAAW,EAAE,oBAAoB;QACjC,eAAe,EAAE,0BAA0B;QAC3C,SAAS,EAAE,kBAAkB;QAC7B,UAAU,EAAE,kBAAkB;QAC9B,cAAc,EAAE,uBAAuB;QAEvC,cAAc,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,oBAAoB,IAAI,EAAE;KAC7D;IACD,MAAM,EAAE;IACN,wCAAwC;KACzC;IAED;;OAEG;IACH,IAAI,EAAE;QACJ,gBAAgB,EAAE,0BAA0B;QAC5C,eAAe,EAAE,yBAAyB;QAC1C,cAAc,EAAE,uBAAuB;QACvC,WAAW,EAAE,oBAAoB;QACjC,YAAY,EAAE,sBAAsB;QACpC,aAAa,EAAE,uBAAuB;QACtC,SAAS,EAAE,kBAAkB;QAC7B,gBAAgB,EAAE,2BAA2B;QAC7C,oBAAoB,EAAE,gCAAgC;QACtD,mBAAmB,EAAE,6BAA6B;QAClD,cAAc,EAAE,wBAAwB;QACxC,sBAAsB,EAAE,iCAAiC;QACzD,kBAAkB,EAAE,6BAA6B;QACjD,2BAA2B,EAAE,CAAC,KAAa,EAAE,EAAE,CAC7C,yCAAyC,KAAK,EAAW;QAC3D,uBAAuB,EAAE,CAAC,KAAa,EAAE,EAAE,CACzC,qCAAqC,KAAK,EAAW;QACvD,wCAAwC;KACzC;IACD,IAAI,EAAE;IACJ,wCAAwC;KACzC;CACO,CAAC"}
1
+ {"version":3,"file":"ThemeClassNames.js","sourceRoot":"","sources":["../../src/utils/ThemeClassNames.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,+EAA+E;AAC/E,aAAa;AAEb;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE;QACJ,YAAY,EAAE,gBAAgB;QAC9B,YAAY,EAAE,gBAAgB;QAC9B,gBAAgB,EAAE,qBAAqB;QACvC,mBAAmB,EAAE,0BAA0B;QAE/C,WAAW,EAAE,eAAe;QAC5B,gBAAgB,EAAE,qBAAqB;QACvC,kBAAkB,EAAE,yBAAyB;QAE7C,OAAO,EAAE,UAAU;KACpB;IACD,OAAO,EAAE;QACP,IAAI,EAAE,cAAc;QACpB,uDAAuD;QACvD,uCAAuC;QACvC,+DAA+D;QAC/D,SAAS,EAAE,cAAc;QACzB,SAAS,EAAE,cAAc;QACzB,QAAQ,EAAE,aAAa;KACxB;IACD,MAAM,EAAE;QACN,YAAY,EAAE,sBAAsB;QACpC,WAAW,EAAE,oBAAoB;QACjC,eAAe,EAAE,0BAA0B;QAC3C,SAAS,EAAE,kBAAkB;QAC7B,UAAU,EAAE,kBAAkB;QAC9B,cAAc,EAAE,uBAAuB;QAEvC,cAAc,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,oBAAoB,IAAI,EAAE;KAC7D;IACD,MAAM,EAAE;IACN,wCAAwC;KACzC;IAED;;OAEG;IACH,IAAI,EAAE;QACJ,gBAAgB,EAAE,0BAA0B;QAC5C,eAAe,EAAE,yBAAyB;QAC1C,cAAc,EAAE,uBAAuB;QACvC,WAAW,EAAE,oBAAoB;QACjC,YAAY,EAAE,sBAAsB;QACpC,aAAa,EAAE,uBAAuB;QACtC,SAAS,EAAE,kBAAkB;QAC7B,gBAAgB,EAAE,2BAA2B;QAC7C,oBAAoB,EAAE,gCAAgC;QACtD,mBAAmB,EAAE,6BAA6B;QAClD,cAAc,EAAE,wBAAwB;QACxC,sBAAsB,EAAE,iCAAiC;QACzD,kBAAkB,EAAE,6BAA6B;QACjD,2BAA2B,EAAE,CAAC,KAAa,EAAE,EAAE,CAC7C,yCAAyC,KAAK,EAAW;QAC3D,uBAAuB,EAAE,CAAC,KAAa,EAAE,EAAE,CACzC,qCAAqC,KAAK,EAAW;QACvD,wCAAwC;KACzC;IACD,IAAI,EAAE;QACJ,wCAAwC;QACxC,iBAAiB,EAAE,4BAA4B;QAC/C,qBAAqB,EAAE,iCAAiC;KACzD;CACO,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"structuredDataUtils.d.ts","sourceRoot":"","sources":["../../src/utils/structuredDataUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;;AAKH,OAAO,KAAK,EAAC,KAAK,IAAI,+BAA+B,EAAC,MAAM,oCAAoC,CAAC;AAEjG,OAAO,KAAK,EACV,IAAI,EACJ,WAAW,EACX,WAAW,EAGZ,MAAM,YAAY,CAAC;AA4DpB,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,+BAA+B,GACrC,WAAW,CAAC,IAAI,CAAC,CAsBnB;AAED,wBAAgB,yBAAyB,IAAI,WAAW,CAAC,WAAW,CAAC,CAmCpE"}
1
+ {"version":3,"file":"structuredDataUtils.d.ts","sourceRoot":"","sources":["../../src/utils/structuredDataUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;;AAKH,OAAO,KAAK,EAAC,KAAK,IAAI,+BAA+B,EAAC,MAAM,oCAAoC,CAAC;AAEjG,OAAO,KAAK,EACV,IAAI,EACJ,WAAW,EACX,WAAW,EAGZ,MAAM,YAAY,CAAC;AAiEpB,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,+BAA+B,GACrC,WAAW,CAAC,IAAI,CAAC,CAsBnB;AAED,wBAAgB,yBAAyB,IAAI,WAAW,CAAC,WAAW,CAAC,CAsCpE"}
@@ -8,12 +8,14 @@ import { useBaseUrlUtils } from '@docusaurus/useBaseUrl';
8
8
  import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
9
9
  import { useBlogMetadata } from '@docusaurus/plugin-content-blog/client';
10
10
  import { useBlogPost } from '../contexts/blogPost';
11
+ const convertDate = (dateMs) => new Date(dateMs * 1000).toISOString();
11
12
  function getBlogPost(blogPostContent, siteConfig, withBaseUrl) {
12
13
  const { assets, frontMatter, metadata } = blogPostContent;
13
- const { date, title, description } = metadata;
14
+ const { date, title, description, lastUpdatedAt } = metadata;
14
15
  const image = assets.image ?? frontMatter.image;
15
16
  const keywords = frontMatter.keywords ?? [];
16
17
  const blogUrl = `${siteConfig.url}${metadata.permalink}`;
18
+ const dateModified = lastUpdatedAt ? convertDate(lastUpdatedAt) : undefined;
17
19
  return {
18
20
  '@type': 'BlogPosting',
19
21
  '@id': blogUrl,
@@ -23,6 +25,7 @@ function getBlogPost(blogPostContent, siteConfig, withBaseUrl) {
23
25
  name: title,
24
26
  description,
25
27
  datePublished: date,
28
+ ...(dateModified ? { dateModified } : {}),
26
29
  ...getAuthor(metadata.authors),
27
30
  ...getImage(image, withBaseUrl, title),
28
31
  ...(keywords ? { keywords } : {}),
@@ -67,9 +70,10 @@ export function useBlogPostStructuredData() {
67
70
  const { assets, metadata } = useBlogPost();
68
71
  const { siteConfig } = useDocusaurusContext();
69
72
  const { withBaseUrl } = useBaseUrlUtils();
70
- const { date, title, description, frontMatter } = metadata;
73
+ const { date, title, description, frontMatter, lastUpdatedAt } = metadata;
71
74
  const image = assets.image ?? frontMatter.image;
72
75
  const keywords = frontMatter.keywords ?? [];
76
+ const dateModified = lastUpdatedAt ? convertDate(lastUpdatedAt) : undefined;
73
77
  const url = `${siteConfig.url}${metadata.permalink}`;
74
78
  // details on structured data support: https://schema.org/BlogPosting
75
79
  // BlogPosting is one of the structured data types that Google explicitly
@@ -84,6 +88,7 @@ export function useBlogPostStructuredData() {
84
88
  name: title,
85
89
  description,
86
90
  datePublished: date,
91
+ ...(dateModified ? { dateModified } : {}),
87
92
  ...getAuthor(metadata.authors),
88
93
  ...getImage(image, withBaseUrl, title),
89
94
  ...(keywords ? { keywords } : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"structuredDataUtils.js","sourceRoot":"","sources":["../../src/utils/structuredDataUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"structuredDataUtils.js","sourceRoot":"","sources":["../../src/utils/structuredDataUtils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@docusaurus/theme-common",
3
- "version": "0.0.0-5864",
3
+ "version": "0.0.0-5866",
4
4
  "description": "Common code for Docusaurus themes.",
5
5
  "main": "./lib/index.js",
6
6
  "types": "./lib/index.d.ts",
@@ -30,13 +30,13 @@
30
30
  },
31
31
  "license": "MIT",
32
32
  "dependencies": {
33
- "@docusaurus/mdx-loader": "0.0.0-5864",
34
- "@docusaurus/module-type-aliases": "0.0.0-5864",
35
- "@docusaurus/plugin-content-blog": "0.0.0-5864",
36
- "@docusaurus/plugin-content-docs": "0.0.0-5864",
37
- "@docusaurus/plugin-content-pages": "0.0.0-5864",
38
- "@docusaurus/utils": "0.0.0-5864",
39
- "@docusaurus/utils-common": "0.0.0-5864",
33
+ "@docusaurus/mdx-loader": "0.0.0-5866",
34
+ "@docusaurus/module-type-aliases": "0.0.0-5866",
35
+ "@docusaurus/plugin-content-blog": "0.0.0-5866",
36
+ "@docusaurus/plugin-content-docs": "0.0.0-5866",
37
+ "@docusaurus/plugin-content-pages": "0.0.0-5866",
38
+ "@docusaurus/utils": "0.0.0-5866",
39
+ "@docusaurus/utils-common": "0.0.0-5866",
40
40
  "@types/history": "^4.7.11",
41
41
  "@types/react": "*",
42
42
  "@types/react-router-config": "*",
@@ -47,8 +47,8 @@
47
47
  "utility-types": "^3.10.0"
48
48
  },
49
49
  "devDependencies": {
50
- "@docusaurus/core": "0.0.0-5864",
51
- "@docusaurus/types": "0.0.0-5864",
50
+ "@docusaurus/core": "0.0.0-5866",
51
+ "@docusaurus/types": "0.0.0-5866",
52
52
  "fs-extra": "^11.1.1",
53
53
  "lodash": "^4.17.21",
54
54
  "schema-dts": "^1.1.2"
@@ -60,5 +60,5 @@
60
60
  "engines": {
61
61
  "node": ">=18.0"
62
62
  },
63
- "gitHead": "05370c4a2c51890ddf0d02e4dd143a75cbc6f696"
63
+ "gitHead": "0066496d0f98e8f9e4e4636130f26723bdc8f3c7"
64
64
  }
@@ -73,5 +73,7 @@ export const ThemeClassNames = {
73
73
  },
74
74
  blog: {
75
75
  // TODO add other stable classNames here
76
+ blogFooterTagsRow: 'theme-blog-footer-tags-row',
77
+ blogFooterEditMetaRow: 'theme-blog-footer-edit-meta-row',
76
78
  },
77
79
  } as const;
@@ -23,19 +23,23 @@ import type {
23
23
  } from '@docusaurus/plugin-content-blog';
24
24
  import type {DocusaurusConfig} from '@docusaurus/types';
25
25
 
26
+ const convertDate = (dateMs: number) => new Date(dateMs * 1000).toISOString();
27
+
26
28
  function getBlogPost(
27
29
  blogPostContent: PropBlogPostContent,
28
30
  siteConfig: DocusaurusConfig,
29
31
  withBaseUrl: BaseUrlUtils['withBaseUrl'],
30
- ) {
32
+ ): BlogPosting {
31
33
  const {assets, frontMatter, metadata} = blogPostContent;
32
- const {date, title, description} = metadata;
34
+ const {date, title, description, lastUpdatedAt} = metadata;
33
35
 
34
36
  const image = assets.image ?? frontMatter.image;
35
37
  const keywords = frontMatter.keywords ?? [];
36
38
 
37
39
  const blogUrl = `${siteConfig.url}${metadata.permalink}`;
38
40
 
41
+ const dateModified = lastUpdatedAt ? convertDate(lastUpdatedAt) : undefined;
42
+
39
43
  return {
40
44
  '@type': 'BlogPosting',
41
45
  '@id': blogUrl,
@@ -45,6 +49,7 @@ function getBlogPost(
45
49
  name: title,
46
50
  description,
47
51
  datePublished: date,
52
+ ...(dateModified ? {dateModified} : {}),
48
53
  ...getAuthor(metadata.authors),
49
54
  ...getImage(image, withBaseUrl, title),
50
55
  ...(keywords ? {keywords} : {}),
@@ -108,11 +113,13 @@ export function useBlogPostStructuredData(): WithContext<BlogPosting> {
108
113
  const {siteConfig} = useDocusaurusContext();
109
114
  const {withBaseUrl} = useBaseUrlUtils();
110
115
 
111
- const {date, title, description, frontMatter} = metadata;
116
+ const {date, title, description, frontMatter, lastUpdatedAt} = metadata;
112
117
 
113
118
  const image = assets.image ?? frontMatter.image;
114
119
  const keywords = frontMatter.keywords ?? [];
115
120
 
121
+ const dateModified = lastUpdatedAt ? convertDate(lastUpdatedAt) : undefined;
122
+
116
123
  const url = `${siteConfig.url}${metadata.permalink}`;
117
124
 
118
125
  // details on structured data support: https://schema.org/BlogPosting
@@ -128,6 +135,7 @@ export function useBlogPostStructuredData(): WithContext<BlogPosting> {
128
135
  name: title,
129
136
  description,
130
137
  datePublished: date,
138
+ ...(dateModified ? {dateModified} : {}),
131
139
  ...getAuthor(metadata.authors),
132
140
  ...getImage(image, withBaseUrl, title),
133
141
  ...(keywords ? {keywords} : {}),