@x-wave/blog 2.1.1 → 2.1.3
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/package.json +1 -1
- package/vite-config/blog-discovery.d.ts +1 -1
- package/vite-config/blog-discovery.d.ts.map +1 -1
- package/vite-config/blog-discovery.js +1 -1
- package/vite-config/blog-discovery.js.map +1 -1
- package/vite-config/meta-tags.d.ts +3 -1
- package/vite-config/meta-tags.d.ts.map +1 -1
- package/vite-config/meta-tags.js +25 -8
- package/vite-config/meta-tags.js.map +1 -1
- package/vite-config/setup-ssg.d.ts +3 -1
- package/vite-config/setup-ssg.d.ts.map +1 -1
- package/vite-config/setup-ssg.js +3 -1
- package/vite-config/setup-ssg.js.map +1 -1
- package/vite-config/static-gen-plugin.d.ts.map +1 -1
- package/vite-config/static-gen-plugin.js +29 -8
- package/vite-config/static-gen-plugin.js.map +1 -1
- package/vite-config/types.d.ts +3 -1
- package/vite-config/types.d.ts.map +1 -1
package/package.json
CHANGED
|
@@ -6,7 +6,7 @@ import type { BlogDiscoveryResult, BlogPostMetadata, BlogSSGConfig } from './typ
|
|
|
6
6
|
* @param config - SSG configuration options
|
|
7
7
|
* @returns Collection of discovered blog posts organized by language and slug
|
|
8
8
|
*/
|
|
9
|
-
export declare function discoverBlogPosts(mdxFiles: Record<string, () => Promise<unknown>>,
|
|
9
|
+
export declare function discoverBlogPosts(mdxFiles: Record<string, () => Promise<unknown>>, _config?: BlogSSGConfig): Promise<BlogDiscoveryResult>;
|
|
10
10
|
/**
|
|
11
11
|
* Filter blog posts by specific criteria
|
|
12
12
|
* Useful for separating blog posts from docs
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blog-discovery.d.ts","sourceRoot":"","sources":["../src/blog-discovery.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"blog-discovery.d.ts","sourceRoot":"","sources":["../src/blog-discovery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,MAAM,YAAY,CAAA;AAgFnB;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACtC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC,EAChD,OAAO,GAAE,aAAkB,GACzB,OAAO,CAAC,mBAAmB,CAAC,CAqD9B;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC9B,KAAK,EAAE,gBAAgB,EAAE,EACzB,SAAS,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,OAAO,GAC5C,gBAAgB,EAAE,CAEpB"}
|
|
@@ -74,7 +74,7 @@ function extractSlugFromPath(filePath) {
|
|
|
74
74
|
* @param config - SSG configuration options
|
|
75
75
|
* @returns Collection of discovered blog posts organized by language and slug
|
|
76
76
|
*/
|
|
77
|
-
export async function discoverBlogPosts(mdxFiles,
|
|
77
|
+
export async function discoverBlogPosts(mdxFiles, _config = {}) {
|
|
78
78
|
const posts = [];
|
|
79
79
|
const postsByLanguage = {};
|
|
80
80
|
const postsBySlug = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blog-discovery.js","sourceRoot":"","sources":["../src/blog-discovery.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"blog-discovery.js","sourceRoot":"","sources":["../src/blog-discovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,8 @@ export interface MetaTagsOptions {
|
|
|
10
10
|
siteName?: string;
|
|
11
11
|
/** Twitter handle for Twitter Card */
|
|
12
12
|
twitterHandle?: string;
|
|
13
|
+
/** Docs base path for URL construction (e.g., '/blog/' or '/docs/') */
|
|
14
|
+
docsBase?: string;
|
|
13
15
|
}
|
|
14
16
|
/**
|
|
15
17
|
* Generate meta tags HTML string from blog post metadata
|
|
@@ -19,7 +21,7 @@ export declare function generateMetaTags(post: BlogPostMetadata, options?: MetaT
|
|
|
19
21
|
* Generate an HTML template with injected meta tags
|
|
20
22
|
* Used for static page generation
|
|
21
23
|
*/
|
|
22
|
-
export declare function generateHtmlWithMetaTags(baseHtml: string, post: BlogPostMetadata, options?: MetaTagsOptions): string;
|
|
24
|
+
export declare function generateHtmlWithMetaTags(baseHtml: string, post: BlogPostMetadata, options?: MetaTagsOptions, docsBase?: string): string;
|
|
23
25
|
/**
|
|
24
26
|
* Generate meta tags as a JSON object for dynamic injection
|
|
25
27
|
* Useful if you want to update meta tags on client-side navigation
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meta-tags.d.ts","sourceRoot":"","sources":["../src/meta-tags.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAElD,MAAM,WAAW,eAAe;IAC/B,0CAA0C;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,oDAAoD;IACpD,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,kCAAkC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,sCAAsC;IACtC,aAAa,CAAC,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"meta-tags.d.ts","sourceRoot":"","sources":["../src/meta-tags.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAElD,MAAM,WAAW,eAAe;IAC/B,0CAA0C;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,oDAAoD;IACpD,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,kCAAkC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,sCAAsC;IACtC,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,uEAAuE;IACvE,QAAQ,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC/B,IAAI,EAAE,gBAAgB,EACtB,OAAO,GAAE,eAAoB,GAC3B,MAAM,CAqER;AAgBD;;;GAGG;AACH,wBAAgB,wBAAwB,CACvC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,gBAAgB,EACtB,OAAO,GAAE,eAAoB,EAC7B,QAAQ,CAAC,EAAE,MAAM,GACf,MAAM,CAiCR;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACrC,IAAI,EAAE,gBAAgB,EACtB,OAAO,GAAE,eAAoB,GAC3B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAgDxB"}
|
package/vite-config/meta-tags.js
CHANGED
|
@@ -2,10 +2,17 @@
|
|
|
2
2
|
* Generate meta tags HTML string from blog post metadata
|
|
3
3
|
*/
|
|
4
4
|
export function generateMetaTags(post, options = {}) {
|
|
5
|
-
const { baseUrl = 'https://docs.staking.polkadot.cloud', defaultOgImage = '/img/og-image.png', siteTitle = 'Polkadot Cloud Staking', siteName = 'Polkadot Cloud Staking Documentation', twitterHandle = '@PolkadotCloud', } = options;
|
|
6
|
-
|
|
5
|
+
const { baseUrl = 'https://docs.staking.polkadot.cloud', defaultOgImage = '/img/og-image.png', siteTitle = 'Polkadot Cloud Staking', siteName = 'Polkadot Cloud Staking Documentation', twitterHandle = '@PolkadotCloud', docsBase = '/', } = options;
|
|
6
|
+
// Construct post URL using docsBase path
|
|
7
|
+
const pathPrefix = docsBase.replace(/^\/$/, '').replace(/\/$/g, '');
|
|
8
|
+
const postUrl = pathPrefix
|
|
9
|
+
? `${baseUrl}/${pathPrefix}/${post.language}/${post.slug}`
|
|
10
|
+
: `${baseUrl}/${post.language}/${post.slug}`;
|
|
11
|
+
// Construct og:image with docsBase and language path
|
|
7
12
|
const ogImage = post.ogImage
|
|
8
|
-
?
|
|
13
|
+
? pathPrefix
|
|
14
|
+
? `${baseUrl}/${pathPrefix}/${post.language}/${post.ogImage}`
|
|
15
|
+
: `${baseUrl}/${post.language}/${post.ogImage}`
|
|
9
16
|
: `${baseUrl}${defaultOgImage}`;
|
|
10
17
|
// Normalize keywords
|
|
11
18
|
let keywordsString = '';
|
|
@@ -65,8 +72,11 @@ function escapeHtml(text) {
|
|
|
65
72
|
* Generate an HTML template with injected meta tags
|
|
66
73
|
* Used for static page generation
|
|
67
74
|
*/
|
|
68
|
-
export function generateHtmlWithMetaTags(baseHtml, post, options = {}) {
|
|
69
|
-
const metaTags = generateMetaTags(post,
|
|
75
|
+
export function generateHtmlWithMetaTags(baseHtml, post, options = {}, docsBase) {
|
|
76
|
+
const metaTags = generateMetaTags(post, {
|
|
77
|
+
...options,
|
|
78
|
+
docsBase: docsBase || options.docsBase,
|
|
79
|
+
});
|
|
70
80
|
// Remove default OG and Twitter meta tags to replace them with custom ones
|
|
71
81
|
let html = baseHtml
|
|
72
82
|
// Remove default og:* meta tags (handles multiline)
|
|
@@ -93,10 +103,17 @@ export function generateHtmlWithMetaTags(baseHtml, post, options = {}) {
|
|
|
93
103
|
* Useful if you want to update meta tags on client-side navigation
|
|
94
104
|
*/
|
|
95
105
|
export function generateMetaTagsObject(post, options = {}) {
|
|
96
|
-
const { baseUrl = 'https://docs.staking.polkadot.cloud', defaultOgImage = '/img/og-image.png', siteName = 'Polkadot Cloud Staking Documentation', } = options;
|
|
97
|
-
|
|
106
|
+
const { baseUrl = 'https://docs.staking.polkadot.cloud', defaultOgImage = '/img/og-image.png', siteName = 'Polkadot Cloud Staking Documentation', docsBase = '/', } = options;
|
|
107
|
+
// Construct post URL using docsBase path
|
|
108
|
+
const pathPrefix = docsBase.replace(/^\/$/, '').replace(/\/$/g, '');
|
|
109
|
+
const postUrl = pathPrefix
|
|
110
|
+
? `${baseUrl}/${pathPrefix}/${post.language}/${post.slug}`
|
|
111
|
+
: `${baseUrl}/${post.language}/${post.slug}`;
|
|
112
|
+
// Construct og:image with docsBase and language path
|
|
98
113
|
const ogImage = post.ogImage
|
|
99
|
-
?
|
|
114
|
+
? pathPrefix
|
|
115
|
+
? `${baseUrl}/${pathPrefix}/${post.language}/${post.ogImage}`
|
|
116
|
+
: `${baseUrl}/${post.language}/${post.ogImage}`
|
|
100
117
|
: `${baseUrl}${defaultOgImage}`;
|
|
101
118
|
// Normalize keywords
|
|
102
119
|
let keywordsArray = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meta-tags.js","sourceRoot":"","sources":["../src/meta-tags.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"meta-tags.js","sourceRoot":"","sources":["../src/meta-tags.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,9 @@ import type { MetaTagsOptions } from './meta-tags.js';
|
|
|
3
3
|
export interface SetupSSGOptions {
|
|
4
4
|
/** Path to the docs directory (e.g., 'src/docs') */
|
|
5
5
|
docsPath: string;
|
|
6
|
-
/**
|
|
6
|
+
/** Base path segment for SSG output (e.g., 'blog') */
|
|
7
|
+
docsBase?: string;
|
|
8
|
+
/** Output directory for generated static pages */
|
|
7
9
|
outputDir?: string;
|
|
8
10
|
/** Meta tags configuration */
|
|
9
11
|
metaTagsOptions?: MetaTagsOptions;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup-ssg.d.ts","sourceRoot":"","sources":["../src/setup-ssg.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAExC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAGrD,MAAM,WAAW,eAAe;IAC/B,oDAAoD;IACpD,QAAQ,EAAE,MAAM,CAAA;IAChB,
|
|
1
|
+
{"version":3,"file":"setup-ssg.d.ts","sourceRoot":"","sources":["../src/setup-ssg.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAExC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAGrD,MAAM,WAAW,eAAe;IAC/B,oDAAoD;IACpD,QAAQ,EAAE,MAAM,CAAA;IAChB,sDAAsD;IACtD,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,8BAA8B;IAC9B,eAAe,CAAC,EAAE,eAAe,CAAA;CACjC;AAkCD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAsB,QAAQ,CAC7B,OAAO,EAAE,eAAe,GACtB,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC,CA2BnC"}
|
package/vite-config/setup-ssg.js
CHANGED
|
@@ -60,7 +60,7 @@ function readMdxFiles(docsDir) {
|
|
|
60
60
|
*/
|
|
61
61
|
export async function setupSSG(options) {
|
|
62
62
|
try {
|
|
63
|
-
const { docsPath, outputDir
|
|
63
|
+
const { docsPath, docsBase, outputDir, metaTagsOptions = {} } = options;
|
|
64
64
|
const mdxFiles = readMdxFiles(docsPath);
|
|
65
65
|
const { posts } = await discoverBlogPosts(mdxFiles, {
|
|
66
66
|
blogContentPath: docsPath,
|
|
@@ -73,6 +73,8 @@ export async function setupSSG(options) {
|
|
|
73
73
|
return createStaticGenPlugin({
|
|
74
74
|
posts,
|
|
75
75
|
outputDir,
|
|
76
|
+
basePath: docsBase,
|
|
77
|
+
docsBase,
|
|
76
78
|
metaTagsOptions,
|
|
77
79
|
});
|
|
78
80
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup-ssg.js","sourceRoot":"","sources":["../src/setup-ssg.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;
|
|
1
|
+
{"version":3,"file":"setup-ssg.js","sourceRoot":"","sources":["../src/setup-ssg.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAa9D;;;;GAIG;AACH,SAAS,YAAY,CAAC,OAAe;IACpC,MAAM,QAAQ,GAA0C,EAAE,CAAA;IAE1D,SAAS,OAAO,CAAC,GAAW,EAAE,YAAY,GAAG,EAAE;QAC9C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAM;QAE/B,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;QAEjC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;YACrC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAA;YAC7C,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;YAElC,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;YAC3B,CAAC;iBAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBAClC,gCAAgC;gBAChC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,GAAG,KAAK,IAAI,EAAE,CAClD,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;YACpC,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO,CAAC,OAAO,CAAC,CAAA;IAChB,OAAO,QAAQ,CAAA;AAChB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC7B,OAAwB;IAExB,IAAI,CAAC;QACJ,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,eAAe,GAAG,EAAE,EAAE,GAAG,OAAO,CAAA;QAEvE,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;QACvC,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE;YACnD,eAAe,EAAE,QAAQ;SACzB,CAAC,CAAA;QAEF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAA;YACnD,OAAO,SAAS,CAAA;QACjB,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,iBAAiB,KAAK,CAAC,MAAM,qBAAqB,CAAC,CAAA;QAE/D,OAAO,qBAAqB,CAAC;YAC5B,KAAK;YACL,SAAS;YACT,QAAQ,EAAE,QAAQ;YAClB,QAAQ;YACR,eAAe;SACf,CAAC,CAAA;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAA;QACrD,OAAO,SAAS,CAAA;IACjB,CAAC;AACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"static-gen-plugin.d.ts","sourceRoot":"","sources":["../src/static-gen-plugin.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAClC,OAAO,EAA4B,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAC/E,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAEjE,MAAM,WAAW,sBAAuB,SAAQ,aAAa;IAC5D,8CAA8C;IAC9C,KAAK,EAAE,gBAAgB,EAAE,CAAA;IACzB,kCAAkC;IAClC,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC,4CAA4C;IAC5C,aAAa,CAAC,EAAE,MAAM,CAAA;CACtB;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,sBAAsB,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"static-gen-plugin.d.ts","sourceRoot":"","sources":["../src/static-gen-plugin.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAClC,OAAO,EAA4B,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAC/E,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAEjE,MAAM,WAAW,sBAAuB,SAAQ,aAAa;IAC5D,8CAA8C;IAC9C,KAAK,EAAE,gBAAgB,EAAE,CAAA;IACzB,kCAAkC;IAClC,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC,4CAA4C;IAC5C,aAAa,CAAC,EAAE,MAAM,CAAA;CACtB;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,sBAAsB,GAAG,MAAM,CAsG7E"}
|
|
@@ -8,8 +8,9 @@ import { generateHtmlWithMetaTags } from './meta-tags.js';
|
|
|
8
8
|
* These files are created after the main build completes
|
|
9
9
|
*/
|
|
10
10
|
export function createStaticGenPlugin(options) {
|
|
11
|
+
// biome-ignore lint/suspicious/noExplicitAny: <ignore>
|
|
11
12
|
let config;
|
|
12
|
-
const { posts, outputDir
|
|
13
|
+
const { posts, outputDir, metaTagsOptions = {}, indexHtmlPath = 'index.html', } = options;
|
|
13
14
|
return {
|
|
14
15
|
name: 'vite-plugin-blog-static-gen',
|
|
15
16
|
configResolved(resolvedConfig) {
|
|
@@ -25,19 +26,39 @@ export function createStaticGenPlugin(options) {
|
|
|
25
26
|
return;
|
|
26
27
|
}
|
|
27
28
|
try {
|
|
29
|
+
const resolvedIndexHtmlPath = path.isAbsolute(indexHtmlPath)
|
|
30
|
+
? indexHtmlPath
|
|
31
|
+
: path.resolve(config.build.outDir, indexHtmlPath);
|
|
32
|
+
const docsBasePath = typeof options.docsBase === 'string'
|
|
33
|
+
? options.docsBase
|
|
34
|
+
: typeof options.basePath === 'string'
|
|
35
|
+
? options.basePath
|
|
36
|
+
: typeof config.base === 'string'
|
|
37
|
+
? config.base
|
|
38
|
+
: '/';
|
|
39
|
+
const baseSegment = docsBasePath.replace(/^\//, '').replace(/\/$/, '');
|
|
40
|
+
const defaultOutputDir = baseSegment
|
|
41
|
+
? path.resolve(config.build.outDir, baseSegment)
|
|
42
|
+
: config.build.outDir;
|
|
43
|
+
const resolvedOutputDir = outputDir
|
|
44
|
+
? path.isAbsolute(outputDir)
|
|
45
|
+
? outputDir
|
|
46
|
+
: outputDir.startsWith(config.build.outDir)
|
|
47
|
+
? outputDir
|
|
48
|
+
: path.resolve(config.build.outDir, outputDir)
|
|
49
|
+
: defaultOutputDir;
|
|
28
50
|
// Read the generated index.html
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
console.warn(`⚠️ Index HTML not found at ${indexHtmlPath_}, skipping static generation`);
|
|
51
|
+
if (!fs.existsSync(resolvedIndexHtmlPath)) {
|
|
52
|
+
console.warn(`⚠️ Index HTML not found at ${resolvedIndexHtmlPath}, skipping static generation`);
|
|
32
53
|
return;
|
|
33
54
|
}
|
|
34
|
-
const indexHtmlContent = fs.readFileSync(
|
|
55
|
+
const indexHtmlContent = fs.readFileSync(resolvedIndexHtmlPath, 'utf-8');
|
|
35
56
|
console.log(`📝 Generating static pages for ${posts.length} blog posts...`);
|
|
36
57
|
// Create static HTML file for each blog post
|
|
37
58
|
for (const post of posts) {
|
|
38
|
-
const htmlWithMeta = generateHtmlWithMetaTags(indexHtmlContent, post, metaTagsOptions);
|
|
39
|
-
// Create directory structure:
|
|
40
|
-
const postDir = path.resolve(
|
|
59
|
+
const htmlWithMeta = generateHtmlWithMetaTags(indexHtmlContent, post, metaTagsOptions, docsBasePath);
|
|
60
|
+
// Create directory structure: <outputDir>/[language]/[slug]/index.html
|
|
61
|
+
const postDir = path.resolve(resolvedOutputDir, post.language, post.slug);
|
|
41
62
|
fs.mkdirSync(postDir, { recursive: true });
|
|
42
63
|
// Write the static HTML file
|
|
43
64
|
const htmlPath = path.resolve(postDir, 'index.html');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"static-gen-plugin.js","sourceRoot":"","sources":["../src/static-gen-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAE,wBAAwB,EAAwB,MAAM,gBAAgB,CAAA;AAY/E;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAA+B;IACpE,IAAI,MAAW,CAAA;IACf,MAAM,EACL,KAAK,EACL,SAAS,
|
|
1
|
+
{"version":3,"file":"static-gen-plugin.js","sourceRoot":"","sources":["../src/static-gen-plugin.ts"],"names":[],"mappings":"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"}
|
package/vite-config/types.d.ts
CHANGED
|
@@ -24,7 +24,9 @@ export interface BlogSSGConfig {
|
|
|
24
24
|
generateStatic?: boolean;
|
|
25
25
|
/** Output directory for generated blog posts */
|
|
26
26
|
outputDir?: string;
|
|
27
|
-
/** Base path for blog routes */
|
|
27
|
+
/** Base path for blog routes (deprecated: use docsBase) */
|
|
28
28
|
basePath?: string;
|
|
29
|
+
/** Base path segment for SSG output (e.g., 'blog') */
|
|
30
|
+
docsBase?: string;
|
|
29
31
|
}
|
|
30
32
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,gBAAgB;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,mBAAmB;IACnC,KAAK,EAAE,gBAAgB,EAAE,CAAA;IACzB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAA;IACnD,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;CAC7C;AAED,MAAM,WAAW,aAAa;IAC7B,kDAAkD;IAClD,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,uCAAuC;IACvC,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,gBAAgB;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,mBAAmB;IACnC,KAAK,EAAE,gBAAgB,EAAE,CAAA;IACzB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAA;IACnD,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;CAC7C;AAED,MAAM,WAAW,aAAa;IAC7B,kDAAkD;IAClD,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,uCAAuC;IACvC,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,sDAAsD;IACtD,QAAQ,CAAC,EAAE,MAAM,CAAA;CACjB"}
|