@life-and-dev/mdsite 0.2.3 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +65 -178
- package/dist/commands/commands.test.js +53 -13
- package/dist/commands/commands.test.js.map +1 -1
- package/dist/commands/init.js +71 -27
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/workflows.test.js +70 -2
- package/dist/commands/workflows.test.js.map +1 -1
- package/dist/config/mdsite-config.js +19 -2
- package/dist/config/mdsite-config.js.map +1 -1
- package/dist/config/mdsite-config.test.js +15 -0
- package/dist/config/mdsite-config.test.js.map +1 -1
- package/dist/index.js +1 -1
- package/mdsite-nuxt/app/components/content/ProsePre.vue +4 -0
- package/mdsite-nuxt/app/composables/useAppTheme.ts +4 -0
- package/mdsite-nuxt/nuxt.config.ts +2 -2
- package/mdsite-nuxt/scripts/generate-favicons.test.ts +55 -1
- package/mdsite-nuxt/scripts/generate-favicons.ts +25 -12
- package/mdsite-nuxt/scripts/renderer-hooks.test.ts +48 -5
- package/mdsite-nuxt/scripts/renderer-hooks.ts +12 -8
- package/mdsite-nuxt/utils/mdsite-config.ts +22 -2
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC/E,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -98,7 +98,7 @@ describe('CLI workflow coverage', () => {
|
|
|
98
98
|
});
|
|
99
99
|
it('runInitCommand creates a valid mdsite.yml and pins Node 24 via .nvmrc', async () => {
|
|
100
100
|
const contentDir = await createContentDir();
|
|
101
|
-
await expect(runInitCommand(contentDir)).resolves.toBe(`Created mdsite.yml
|
|
101
|
+
await expect(runInitCommand(contentDir)).resolves.toBe(`Created mdsite.yml, .nvmrc, .mdsite/package.json, .mdsite/package-lock.json in ${contentDir}.`);
|
|
102
102
|
const configPath = path.join(contentDir, 'mdsite.yml');
|
|
103
103
|
const configText = await readFile(configPath, 'utf8');
|
|
104
104
|
expect(configText).toContain('name: Workspace Docs');
|
|
@@ -132,7 +132,7 @@ describe('CLI workflow coverage', () => {
|
|
|
132
132
|
'# end mdsite'
|
|
133
133
|
].join('\n') + '\n';
|
|
134
134
|
await writeFile(path.join(contentDir, '.gitignore'), seededGitignore, 'utf8');
|
|
135
|
-
await expect(runInitCommand(contentDir)).resolves.toBe(`Created mdsite.yml
|
|
135
|
+
await expect(runInitCommand(contentDir)).resolves.toBe(`Created mdsite.yml, .nvmrc, .mdsite/package.json, .mdsite/package-lock.json in ${contentDir}.`);
|
|
136
136
|
const gitignoreText = await readFile(path.join(contentDir, '.gitignore'), 'utf8');
|
|
137
137
|
// User entries preserved verbatim
|
|
138
138
|
expect(gitignoreText).toContain('secret.env');
|
|
@@ -149,6 +149,74 @@ describe('CLI workflow coverage', () => {
|
|
|
149
149
|
expect(gitignoreText.split('.mdsite/*').length - 1).toBe(1);
|
|
150
150
|
expect(gitignoreText.split('.output/').length - 1).toBe(1);
|
|
151
151
|
});
|
|
152
|
+
it('runInitCommand preserves user-authored lines that coincidentally match managed patterns outside the block', async () => {
|
|
153
|
+
const contentDir = await createContentDir();
|
|
154
|
+
// A user-authored line (`.output/`) that coincidentally equals a managed pattern, placed
|
|
155
|
+
// OUTSIDE a complete prior managed block. The marker-bounded merge keeps it in place
|
|
156
|
+
// verbatim instead of stripping it globally and re-emitting it only inside the block.
|
|
157
|
+
const seededGitignore = [
|
|
158
|
+
'.output/',
|
|
159
|
+
'# mdsite: generated state (renderer working dir; lockfile pair committed for reproducible CI)',
|
|
160
|
+
'.mdsite/*',
|
|
161
|
+
'!.mdsite/package.json',
|
|
162
|
+
'!.mdsite/package-lock.json',
|
|
163
|
+
'.output/',
|
|
164
|
+
'# end mdsite'
|
|
165
|
+
].join('\n') + '\n';
|
|
166
|
+
await writeFile(path.join(contentDir, '.gitignore'), seededGitignore, 'utf8');
|
|
167
|
+
await expect(runInitCommand(contentDir)).resolves.toBe(`Created mdsite.yml, .nvmrc, .mdsite/package.json, .mdsite/package-lock.json in ${contentDir}.`);
|
|
168
|
+
const gitignoreText = await readFile(path.join(contentDir, '.gitignore'), 'utf8');
|
|
169
|
+
// The user's coincidental `.output/` line is preserved outside the block AND re-emitted inside it,
|
|
170
|
+
// so the pattern now appears exactly twice.
|
|
171
|
+
expect(gitignoreText.split('.output/').length - 1).toBe(2);
|
|
172
|
+
// The managed block is still emitted exactly once.
|
|
173
|
+
expect(gitignoreText.split('# mdsite:').length - 1).toBe(1);
|
|
174
|
+
expect(gitignoreText.split('# end mdsite').length - 1).toBe(1);
|
|
175
|
+
expect(gitignoreText.split('.mdsite/*').length - 1).toBe(1);
|
|
176
|
+
});
|
|
177
|
+
it('runInitCommand recovers from an unterminated managed block (start marker, no end marker)', async () => {
|
|
178
|
+
const contentDir = await createContentDir();
|
|
179
|
+
// Corrupted .gitignore: a managed block missing its end marker (e.g. a truncated prior init).
|
|
180
|
+
const seededGitignore = [
|
|
181
|
+
'secret.env',
|
|
182
|
+
'# mdsite: generated state (renderer working dir; lockfile pair committed for reproducible CI)',
|
|
183
|
+
'.mdsite/*',
|
|
184
|
+
'!.mdsite/package.json',
|
|
185
|
+
'!.mdsite/package-lock.json',
|
|
186
|
+
'.output/',
|
|
187
|
+
'build/'
|
|
188
|
+
].join('\n') + '\n';
|
|
189
|
+
await writeFile(path.join(contentDir, '.gitignore'), seededGitignore, 'utf8');
|
|
190
|
+
await expect(runInitCommand(contentDir)).resolves.toBe(`Created mdsite.yml, .nvmrc, .mdsite/package.json, .mdsite/package-lock.json in ${contentDir}.`);
|
|
191
|
+
const gitignoreText = await readFile(path.join(contentDir, '.gitignore'), 'utf8');
|
|
192
|
+
expect(gitignoreText).toContain('secret.env');
|
|
193
|
+
expect(gitignoreText).toContain('build/');
|
|
194
|
+
expect(gitignoreText.split('# mdsite:').length - 1).toBe(1);
|
|
195
|
+
expect(gitignoreText.split('# end mdsite').length - 1).toBe(1);
|
|
196
|
+
expect(gitignoreText.split('.mdsite/*').length - 1).toBe(1);
|
|
197
|
+
expect(gitignoreText.split('.output/').length - 1).toBe(1);
|
|
198
|
+
});
|
|
199
|
+
it('runInitCommand recovers from a dangling end marker (end marker, no start marker)', async () => {
|
|
200
|
+
const contentDir = await createContentDir();
|
|
201
|
+
const seededGitignore = [
|
|
202
|
+
'secret.env',
|
|
203
|
+
'.mdsite/*',
|
|
204
|
+
'!.mdsite/package.json',
|
|
205
|
+
'!.mdsite/package-lock.json',
|
|
206
|
+
'.output/',
|
|
207
|
+
'# end mdsite',
|
|
208
|
+
'build/'
|
|
209
|
+
].join('\n') + '\n';
|
|
210
|
+
await writeFile(path.join(contentDir, '.gitignore'), seededGitignore, 'utf8');
|
|
211
|
+
await expect(runInitCommand(contentDir)).resolves.toBe(`Created mdsite.yml, .nvmrc, .mdsite/package.json, .mdsite/package-lock.json in ${contentDir}.`);
|
|
212
|
+
const gitignoreText = await readFile(path.join(contentDir, '.gitignore'), 'utf8');
|
|
213
|
+
expect(gitignoreText).toContain('secret.env');
|
|
214
|
+
expect(gitignoreText).toContain('build/');
|
|
215
|
+
expect(gitignoreText.split('# mdsite:').length - 1).toBe(1);
|
|
216
|
+
expect(gitignoreText.split('# end mdsite').length - 1).toBe(1);
|
|
217
|
+
expect(gitignoreText.split('.mdsite/*').length - 1).toBe(1);
|
|
218
|
+
expect(gitignoreText.split('.output/').length - 1).toBe(1);
|
|
219
|
+
});
|
|
152
220
|
it('runStartCommand in detached mode prepares the renderer against the current markdown directory and tracks the background process', async () => {
|
|
153
221
|
const contentDir = await createContentDir();
|
|
154
222
|
const rendererDir = await createRendererDir(contentDir);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflows.test.js","sourceRoot":"","sources":["../../src/commands/workflows.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workflows.test.js","sourceRoot":"","sources":["../../src/commands/workflows.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -32,13 +32,14 @@ export function serializeMdsiteConfig(config) {
|
|
|
32
32
|
}
|
|
33
33
|
async function normalizeMdsiteConfig(rawConfig, contentDir) {
|
|
34
34
|
const fallbackConfig = await buildDefaultMdsiteConfig(contentDir);
|
|
35
|
+
const contentPath = resolveContentConfigPath(rawConfig.content);
|
|
35
36
|
return {
|
|
36
37
|
favicon: typeof rawConfig.favicon === 'string' ? rawConfig.favicon : fallbackConfig.favicon,
|
|
37
38
|
features: {
|
|
38
39
|
bibleTooltips: rawConfig.features?.bibleTooltips ?? fallbackConfig.features.bibleTooltips,
|
|
39
40
|
sourceEdit: rawConfig.features?.sourceEdit ?? fallbackConfig.features.sourceEdit
|
|
40
41
|
},
|
|
41
|
-
content:
|
|
42
|
+
content: contentPath ? { path: contentPath } : fallbackConfig.content,
|
|
42
43
|
menu: Array.isArray(rawConfig.menu) ? rawConfig.menu : fallbackConfig.menu,
|
|
43
44
|
server: {
|
|
44
45
|
output: typeof rawConfig.server?.output === 'string' ? rawConfig.server.output : fallbackConfig.server.output,
|
|
@@ -68,7 +69,23 @@ async function normalizeMdsiteConfig(rawConfig, contentDir) {
|
|
|
68
69
|
export function resolveContentOutputPath(contentDir, config) {
|
|
69
70
|
return path.resolve(contentDir, config.server.output, 'public');
|
|
70
71
|
}
|
|
72
|
+
/**
|
|
73
|
+
* Extract the content path from either the shorthand string form
|
|
74
|
+
* (`content: docs`) or the explicit object form (`content:\n path: docs`).
|
|
75
|
+
* Returns undefined when no usable path is configured.
|
|
76
|
+
*/
|
|
77
|
+
function resolveContentConfigPath(rawContent) {
|
|
78
|
+
if (typeof rawContent === 'string') {
|
|
79
|
+
const trimmed = rawContent.trim();
|
|
80
|
+
return trimmed.length > 0 ? trimmed : undefined;
|
|
81
|
+
}
|
|
82
|
+
if (rawContent && typeof rawContent === 'object' && typeof rawContent.path === 'string') {
|
|
83
|
+
return rawContent.path;
|
|
84
|
+
}
|
|
85
|
+
return undefined;
|
|
86
|
+
}
|
|
71
87
|
export function resolveConfiguredContentDir(configDir, rawConfig) {
|
|
72
|
-
|
|
88
|
+
const contentPath = resolveContentConfigPath(rawConfig.content);
|
|
89
|
+
return contentPath ? path.resolve(configDir, contentPath) : configDir;
|
|
73
90
|
}
|
|
74
91
|
//# sourceMappingURL=mdsite-config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mdsite-config.js","sourceRoot":"","sources":["../../src/config/mdsite-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,IAAI,MAAM,MAAM,CAAA;AAEvB,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AACtE,OAAO,EAAE,uBAAuB,EAAE,6BAA6B,EAAE,MAAM,WAAW,CAAA;AAwClF,MAAM,cAAc,GAAG,YAAY,CAAA;AAEnC,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,SAAiB;IACtD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;IAEvD,IAAI,OAAe,CAAA;IACnB,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,WAAW,cAAc,OAAO,SAAS,8BAA8B,CAAC,CAAA;IAC1F,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;IACxC,MAAM,UAAU,GAAG,2BAA2B,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IAEjE,OAAO;QACL,MAAM,EAAE,MAAM,qBAAqB,CAAC,MAAM,EAAE,UAAU,CAAC;QACvD,SAAS;QACT,UAAU;QACV,UAAU;KACX,CAAA;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,UAAkB;IAC/D,MAAM,QAAQ,GAAG,MAAM,uBAAuB,CAAC,UAAU,CAAC,CAAA;IAC1D,MAAM,IAAI,GAAG,MAAM,6BAA6B,CAAC,UAAU,CAAC,CAAA;IAC5D,OAAO,yBAAyB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;AAClD,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,MAAoB;IACxD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;AAC/B,CAAC;AAED,KAAK,UAAU,qBAAqB,CAAC,SAA8B,EAAE,UAAkB;IACrF,MAAM,cAAc,GAAG,MAAM,wBAAwB,CAAC,UAAU,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"mdsite-config.js","sourceRoot":"","sources":["../../src/config/mdsite-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -100,6 +100,21 @@ describe('mdsite config helpers', () => {
|
|
|
100
100
|
expect(loaded.contentDir).toBe(contentDir);
|
|
101
101
|
expect(loaded.config.content).toEqual({ path: 'docs' });
|
|
102
102
|
});
|
|
103
|
+
it('loadMdsiteConfig resolves the content string shorthand relative to the config directory', async () => {
|
|
104
|
+
const configDir = await makeTempDir();
|
|
105
|
+
const contentDir = path.join(configDir, 'content');
|
|
106
|
+
await writeFile(path.join(configDir, 'mdsite.yml'), [
|
|
107
|
+
'content: content',
|
|
108
|
+
'site:',
|
|
109
|
+
' name: Shorthand Content',
|
|
110
|
+
''
|
|
111
|
+
].join('\n'), 'utf8');
|
|
112
|
+
await mkdir(contentDir, { recursive: true });
|
|
113
|
+
await writeFile(path.join(contentDir, 'index.md'), '# Shorthand Index', 'utf8');
|
|
114
|
+
const loaded = await loadMdsiteConfig(configDir);
|
|
115
|
+
expect(loaded.contentDir).toBe(contentDir);
|
|
116
|
+
expect(loaded.config.content).toEqual({ path: 'content' });
|
|
117
|
+
});
|
|
103
118
|
it('resolveContentOutputPath resolves the configured output relative to the content directory', () => {
|
|
104
119
|
const contentDir = '/tmp/example';
|
|
105
120
|
expect(resolveContentOutputPath(contentDir, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mdsite-config.test.js","sourceRoot":"","sources":["../../src/config/mdsite-config.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAChE,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAExD,OAAO,EACL,wBAAwB,EACxB,gBAAgB,EAChB,wBAAwB,EACxB,qBAAqB,EACtB,MAAM,oBAAoB,CAAA;AAE3B,MAAM,QAAQ,GAAa,EAAE,CAAA;AAE7B,KAAK,UAAU,WAAW;IACxB,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,gBAAgB,CAAC,CAAC,CAAA;IACnE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAClB,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,CAAC,KAAK,IAAI,EAAE;IACnB,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;AAC/F,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,EAAE,CAAC,6EAA6E,EAAE,KAAK,IAAI,EAAE;QAC3F,MAAM,UAAU,GAAG,MAAM,WAAW,EAAE,CAAA;QACtC,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,CAAA;QACvE,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAErE,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC,UAAU,CAAC,CAAA;QAEzD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACxC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;QACtC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAC9C,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;QAClF,MAAM,UAAU,GAAG,MAAM,WAAW,EAAE,CAAA;QACtC,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;QAEpE,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC,UAAU,CAAC,CAAA;QACzD,MAAM,QAAQ,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAA;QAE9C,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAA;QACxC,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAA;IAC/C,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,oDAAoD,EAAE,KAAK,IAAI,EAAE;QAClE,MAAM,UAAU,GAAG,MAAM,WAAW,EAAE,CAAA;QAEtC,MAAM,MAAM,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CACxD,yBAAyB,UAAU,8BAA8B,CAClE,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,gGAAgG,EAAE,KAAK,IAAI,EAAE;QAC9G,MAAM,UAAU,GAAG,MAAM,WAAW,EAAE,CAAA;QACtC,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,gBAAgB,EAAE,MAAM,CAAC,CAAA;QAC5E,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QACrE,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,EAAE;YACnD,6BAA6B;YAC7B,WAAW;YACX,wBAAwB;YACxB,OAAO;YACP,iBAAiB;YACjB,SAAS;YACT,uBAAuB;YACvB,mBAAmB;YACnB,OAAO;YACP,mCAAmC;YACnC,eAAe;YACf,SAAS;YACT,UAAU;YACV,aAAa;YACb,0BAA0B;YAC1B,SAAS;YACT,aAAa;YACb,0BAA0B;YAC1B,EAAE;SACH,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAA;QAErB,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,UAAU,CAAC,CAAA;QAEjD,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAA;QACnE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAC1C,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAA;QACxD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC;YACrC,aAAa,EAAE,KAAK;YACpB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAA;QACF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC,CAAA;QACnD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACnC,MAAM,EAAE,aAAa;YACrB,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,wCAAwC;SAC/C,CAAC,CAAA;QACF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC;YACjC,SAAS,EAAE,sBAAsB;YACjC,IAAI,EAAE,cAAc;SACrB,CAAC,CAAA;QACF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACjE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACpE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAChE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAClE,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;QACvF,MAAM,SAAS,GAAG,MAAM,WAAW,EAAE,CAAA;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;QAC/C,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE;YAClD,UAAU;YACV,cAAc;YACd,OAAO;YACP,0BAA0B;YAC1B,EAAE;SACH,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAA;QACrB,MAAM,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QAC5C,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,CAAA;QAE1E,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC,CAAA;QAEhD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACxC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAA;QAClE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAC1C,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;IACzD,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,2FAA2F,EAAE,GAAG,EAAE;QACnG,MAAM,UAAU,GAAG,cAAc,CAAA;QAEjC,MAAM,CAAC,wBAAwB,CAAC,UAAU,EAAE;YAC1C,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YACnD,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE;YAChE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;YACrC,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE;SACxD,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;IAChE,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
1
|
+
{"version":3,"file":"mdsite-config.test.js","sourceRoot":"","sources":["../../src/config/mdsite-config.test.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -20,7 +20,7 @@ Usage:
|
|
|
20
20
|
mdsite prepare github
|
|
21
21
|
|
|
22
22
|
Commands:
|
|
23
|
-
init
|
|
23
|
+
init Ensure mdsite files exist in the current directory (idempotent; creates missing files, never overwrites)
|
|
24
24
|
start Start the checked-in mdsite-nuxt renderer for local content
|
|
25
25
|
generate Build static output through mdsite-nuxt
|
|
26
26
|
preview Preview the generated site through mdsite-nuxt
|
|
@@ -40,9 +40,13 @@ export const useAppTheme = () => {
|
|
|
40
40
|
|
|
41
41
|
// Mirror the active theme onto the <html> marker so the inline override CSS
|
|
42
42
|
// (and the next paint) stay consistent with Vuetify's runtime state.
|
|
43
|
+
// Also toggle a .dark class on <html> so libraries (e.g. the Shiki
|
|
44
|
+
// highlighter bundled with @nuxtjs/mdc) that key off `html.dark` or
|
|
45
|
+
// `html .dark` selectors follow the app's theme.
|
|
43
46
|
const writeMarkerTheme = (theme: ThemeMode): void => {
|
|
44
47
|
if (import.meta.client) {
|
|
45
48
|
document.documentElement.setAttribute('data-mdsite-theme', theme)
|
|
49
|
+
document.documentElement.classList.toggle('dark', theme === 'dark')
|
|
46
50
|
}
|
|
47
51
|
}
|
|
48
52
|
|
|
@@ -66,7 +66,7 @@ export default defineNuxtConfig({
|
|
|
66
66
|
{
|
|
67
67
|
tagPosition: 'head',
|
|
68
68
|
tagPriority: 'critical',
|
|
69
|
-
innerHTML: `(function(){try{var t=localStorage.getItem('theme-preference');if(t!=='light'&&t!=='dark'){t=(window.matchMedia&&window.matchMedia('(prefers-color-scheme: dark)').matches)?'dark':'light';}document.documentElement.setAttribute('data-mdsite-theme',t);}catch(e){document.documentElement.setAttribute('data-mdsite-theme','light');}})();`
|
|
69
|
+
innerHTML: `(function(){try{var t=localStorage.getItem('theme-preference');if(t!=='light'&&t!=='dark'){t=(window.matchMedia&&window.matchMedia('(prefers-color-scheme: dark)').matches)?'dark':'light';}document.documentElement.setAttribute('data-mdsite-theme',t);document.documentElement.classList.toggle('dark',t==='dark');}catch(e){document.documentElement.setAttribute('data-mdsite-theme','light');document.documentElement.classList.remove('dark');}})();`
|
|
70
70
|
}
|
|
71
71
|
],
|
|
72
72
|
link: [
|
|
@@ -160,7 +160,7 @@ export default defineNuxtConfig({
|
|
|
160
160
|
return
|
|
161
161
|
}
|
|
162
162
|
|
|
163
|
-
await runBuildFallbackHooks(siteConfig
|
|
163
|
+
await runBuildFallbackHooks(siteConfig)
|
|
164
164
|
}
|
|
165
165
|
},
|
|
166
166
|
|
|
@@ -5,7 +5,7 @@ import { fileURLToPath } from 'node:url'
|
|
|
5
5
|
|
|
6
6
|
import { afterEach, beforeEach, describe, expect, it } from 'vitest'
|
|
7
7
|
|
|
8
|
-
import { generateFavicons, resolveFaviconSource } from './generate-favicons.js'
|
|
8
|
+
import { generateFavicons, generateWebManifest, resolveFaviconSource } from './generate-favicons.js'
|
|
9
9
|
|
|
10
10
|
const __dirname = path.dirname(fileURLToPath(import.meta.url))
|
|
11
11
|
const DEFAULT_FAVICON_PATH = path.resolve(__dirname, '..', 'assets', 'default-favicon.svg')
|
|
@@ -120,4 +120,58 @@ describe('generate-favicons', () => {
|
|
|
120
120
|
expect(writtenSvgContent).not.toBe(defaultSvgContent)
|
|
121
121
|
})
|
|
122
122
|
})
|
|
123
|
+
|
|
124
|
+
describe('generateWebManifest', () => {
|
|
125
|
+
it('writes manifest with theme colors from config when name and themes are provided', async () => {
|
|
126
|
+
const outputDir = path.join(tmpDir, 'output')
|
|
127
|
+
|
|
128
|
+
await generateWebManifest({
|
|
129
|
+
name: 'My Site',
|
|
130
|
+
themes: {
|
|
131
|
+
light: { colors: { primary: '#abcdef', surface: '#fedcba' } },
|
|
132
|
+
dark: { colors: {} },
|
|
133
|
+
},
|
|
134
|
+
outputDir,
|
|
135
|
+
})
|
|
136
|
+
|
|
137
|
+
const manifestPath = path.join(outputDir, 'site.webmanifest')
|
|
138
|
+
expect(fs.existsSync(manifestPath)).toBe(true)
|
|
139
|
+
const written = JSON.parse(fs.readFileSync(manifestPath, 'utf8'))
|
|
140
|
+
expect(written).toEqual({
|
|
141
|
+
name: 'My Site',
|
|
142
|
+
short_name: 'My Site',
|
|
143
|
+
icons: [
|
|
144
|
+
{ src: 'icon-192.png', sizes: '192x192', type: 'image/png' },
|
|
145
|
+
{ src: 'icon-512.png', sizes: '512x512', type: 'image/png' },
|
|
146
|
+
],
|
|
147
|
+
theme_color: '#abcdef',
|
|
148
|
+
background_color: '#fedcba',
|
|
149
|
+
display: 'standalone',
|
|
150
|
+
})
|
|
151
|
+
})
|
|
152
|
+
|
|
153
|
+
it('falls back to safe defaults when themes are missing colors', async () => {
|
|
154
|
+
const outputDir = path.join(tmpDir, 'output')
|
|
155
|
+
|
|
156
|
+
await generateWebManifest({
|
|
157
|
+
name: 'No Themes',
|
|
158
|
+
themes: { light: { colors: {} }, dark: { colors: {} } },
|
|
159
|
+
outputDir,
|
|
160
|
+
})
|
|
161
|
+
|
|
162
|
+
const written = JSON.parse(fs.readFileSync(path.join(outputDir, 'site.webmanifest'), 'utf8'))
|
|
163
|
+
expect(written.theme_color).toBe('#000000')
|
|
164
|
+
expect(written.background_color).toBe('#ffffff')
|
|
165
|
+
})
|
|
166
|
+
|
|
167
|
+
it('falls back to safe defaults when themes are not provided at all', async () => {
|
|
168
|
+
const outputDir = path.join(tmpDir, 'output')
|
|
169
|
+
|
|
170
|
+
await generateWebManifest({ name: 'No Themes', outputDir })
|
|
171
|
+
|
|
172
|
+
const written = JSON.parse(fs.readFileSync(path.join(outputDir, 'site.webmanifest'), 'utf8'))
|
|
173
|
+
expect(written.theme_color).toBe('#000000')
|
|
174
|
+
expect(written.background_color).toBe('#ffffff')
|
|
175
|
+
})
|
|
176
|
+
})
|
|
123
177
|
})
|
|
@@ -4,7 +4,7 @@ import sharp from 'sharp'
|
|
|
4
4
|
import fs from 'fs-extra'
|
|
5
5
|
import path from 'path'
|
|
6
6
|
import { fileURLToPath } from 'node:url'
|
|
7
|
-
import { loadMdsiteConfigSync, resolveMdsiteConfigPath } from '../utils/mdsite-config.js'
|
|
7
|
+
import { loadMdsiteConfigSync, resolveMdsiteConfigPath, type MdsiteConfig } from '../utils/mdsite-config.js'
|
|
8
8
|
|
|
9
9
|
const __filename = fileURLToPath(import.meta.url)
|
|
10
10
|
const __dirname = path.dirname(__filename)
|
|
@@ -130,17 +130,30 @@ export async function generateFavicons(options: GenerateFaviconsOptions = {}): P
|
|
|
130
130
|
}
|
|
131
131
|
}
|
|
132
132
|
|
|
133
|
+
export interface GenerateWebManifestOptions {
|
|
134
|
+
name?: string
|
|
135
|
+
themes?: MdsiteConfig['themes']
|
|
136
|
+
outputDir?: string
|
|
137
|
+
}
|
|
138
|
+
|
|
133
139
|
/**
|
|
134
|
-
* Generate web manifest for PWA support
|
|
140
|
+
* Generate web manifest for PWA support.
|
|
141
|
+
* Theme/background colors are taken from the light theme in mdsite.yml
|
|
142
|
+
* to match the existing `<meta name="theme-color" media="(prefers-color-scheme: light)">` tag.
|
|
143
|
+
* The web manifest spec only supports a single `theme_color`, so light values are used.
|
|
135
144
|
*/
|
|
136
|
-
export async function generateWebManifest(
|
|
137
|
-
const
|
|
138
|
-
const
|
|
139
|
-
const
|
|
145
|
+
export async function generateWebManifest(options: GenerateWebManifestOptions = {}): Promise<void> {
|
|
146
|
+
const siteName = options.name ?? 'site'
|
|
147
|
+
const themeColor = options.themes?.light?.colors?.primary ?? '#000000'
|
|
148
|
+
const backgroundColor = options.themes?.light?.colors?.surface ?? '#ffffff'
|
|
149
|
+
|
|
150
|
+
const outputDir = options.outputDir ?? path.resolve(__dirname, '..', 'public')
|
|
151
|
+
await fs.ensureDir(outputDir)
|
|
152
|
+
const manifestPath = path.join(outputDir, 'site.webmanifest')
|
|
140
153
|
|
|
141
154
|
const manifest = {
|
|
142
|
-
name:
|
|
143
|
-
short_name:
|
|
155
|
+
name: siteName,
|
|
156
|
+
short_name: siteName,
|
|
144
157
|
icons: [
|
|
145
158
|
{
|
|
146
159
|
src: 'icon-192.png',
|
|
@@ -153,13 +166,13 @@ export async function generateWebManifest(name: string) {
|
|
|
153
166
|
type: 'image/png'
|
|
154
167
|
}
|
|
155
168
|
],
|
|
156
|
-
theme_color:
|
|
157
|
-
background_color:
|
|
169
|
+
theme_color: themeColor,
|
|
170
|
+
background_color: backgroundColor,
|
|
158
171
|
display: 'standalone'
|
|
159
172
|
}
|
|
160
173
|
|
|
161
174
|
await fs.writeJson(manifestPath, manifest, { spaces: 2 })
|
|
162
|
-
console.log(`📱 Web manifest generated: site.webmanifest\n`)
|
|
175
|
+
console.log(`📱 Web manifest generated: site.webmanifest (theme_color=${themeColor})\n`)
|
|
163
176
|
}
|
|
164
177
|
|
|
165
178
|
/**
|
|
@@ -183,7 +196,7 @@ if (import.meta.url === `file://${process.argv[1]}`) {
|
|
|
183
196
|
; (async () => {
|
|
184
197
|
const success = await generateFavicons()
|
|
185
198
|
if (success) {
|
|
186
|
-
await generateWebManifest(config.site.name)
|
|
199
|
+
await generateWebManifest({ name: config.site.name, themes: config.themes })
|
|
187
200
|
} else {
|
|
188
201
|
process.exit(1)
|
|
189
202
|
}
|
|
@@ -87,7 +87,20 @@ describe('renderer hooks orchestration', () => {
|
|
|
87
87
|
|
|
88
88
|
resolveMdsiteConfigPathMock.mockReturnValue('/renderer/mdsite.yml')
|
|
89
89
|
loadMdsiteConfigSyncMock.mockReturnValue({
|
|
90
|
-
config: {
|
|
90
|
+
config: {
|
|
91
|
+
site: { name: 'Docs' },
|
|
92
|
+
themes: {
|
|
93
|
+
light: {
|
|
94
|
+
colors: {
|
|
95
|
+
primary: '#abcdef',
|
|
96
|
+
surface: '#fedcba',
|
|
97
|
+
},
|
|
98
|
+
},
|
|
99
|
+
dark: {
|
|
100
|
+
colors: {},
|
|
101
|
+
},
|
|
102
|
+
},
|
|
103
|
+
},
|
|
91
104
|
configPath: '/renderer/mdsite.yml',
|
|
92
105
|
contentDir: '/renderer/docs',
|
|
93
106
|
})
|
|
@@ -117,7 +130,13 @@ describe('renderer hooks orchestration', () => {
|
|
|
117
130
|
contentPath: '/input/docs',
|
|
118
131
|
})
|
|
119
132
|
expect(runtime).toEqual({
|
|
120
|
-
config: {
|
|
133
|
+
config: {
|
|
134
|
+
site: { name: 'Docs' },
|
|
135
|
+
themes: {
|
|
136
|
+
light: { colors: { primary: '#abcdef', surface: '#fedcba' } },
|
|
137
|
+
dark: { colors: {} },
|
|
138
|
+
},
|
|
139
|
+
},
|
|
121
140
|
configPath: '/renderer/mdsite.yml',
|
|
122
141
|
contentDir: '/renderer/docs',
|
|
123
142
|
rootDir: '/renderer',
|
|
@@ -233,6 +252,15 @@ describe('renderer hooks orchestration', () => {
|
|
|
233
252
|
expect(syncContentMock).not.toHaveBeenCalled()
|
|
234
253
|
expect(buildContentDataMock).not.toHaveBeenCalled()
|
|
235
254
|
expect(generateFaviconsMock).not.toHaveBeenCalled()
|
|
255
|
+
expect(generateWebManifestMock).toHaveBeenCalledTimes(1)
|
|
256
|
+
expect(generateWebManifestMock).toHaveBeenCalledWith(expect.objectContaining({
|
|
257
|
+
name: 'Docs',
|
|
258
|
+
themes: expect.objectContaining({
|
|
259
|
+
light: expect.objectContaining({
|
|
260
|
+
colors: expect.objectContaining({ primary: '#abcdef' }),
|
|
261
|
+
}),
|
|
262
|
+
}),
|
|
263
|
+
}))
|
|
236
264
|
expect(process.env.MDSITE_RENDERER_ORCHESTRATED).toBe('1')
|
|
237
265
|
expect(runtime.contentDir).toBe('/renderer/docs')
|
|
238
266
|
})
|
|
@@ -243,6 +271,7 @@ describe('renderer hooks orchestration', () => {
|
|
|
243
271
|
expect(rmMock).not.toHaveBeenCalled()
|
|
244
272
|
expect(startWatcherMock).toHaveBeenCalledTimes(1)
|
|
245
273
|
expect(syncContentMock).not.toHaveBeenCalled()
|
|
274
|
+
expect(generateWebManifestMock).toHaveBeenCalledTimes(1)
|
|
246
275
|
})
|
|
247
276
|
|
|
248
277
|
it('runs non-dev setup hooks in orchestration order and publishes favicon assets on success', async () => {
|
|
@@ -251,7 +280,14 @@ describe('renderer hooks orchestration', () => {
|
|
|
251
280
|
expect(syncContentMock).toHaveBeenCalledTimes(1)
|
|
252
281
|
expect(buildContentDataMock).toHaveBeenCalledTimes(1)
|
|
253
282
|
expect(generateFaviconsMock).toHaveBeenCalledTimes(1)
|
|
254
|
-
expect(generateWebManifestMock).toHaveBeenCalledWith(
|
|
283
|
+
expect(generateWebManifestMock).toHaveBeenCalledWith(expect.objectContaining({
|
|
284
|
+
name: 'Docs',
|
|
285
|
+
themes: expect.objectContaining({
|
|
286
|
+
light: expect.objectContaining({
|
|
287
|
+
colors: expect.objectContaining({ primary: '#abcdef' }),
|
|
288
|
+
}),
|
|
289
|
+
}),
|
|
290
|
+
}))
|
|
255
291
|
expect(syncContentMock.mock.invocationCallOrder[0]).toBeLessThan(buildContentDataMock.mock.invocationCallOrder[0])
|
|
256
292
|
expect(buildContentDataMock.mock.invocationCallOrder[0]).toBeLessThan(generateFaviconsMock.mock.invocationCallOrder[0])
|
|
257
293
|
expect(process.env.MDSITE_RENDERER_ORCHESTRATED).toBe('1')
|
|
@@ -263,7 +299,14 @@ describe('renderer hooks orchestration', () => {
|
|
|
263
299
|
expect(syncContentMock).toHaveBeenCalledTimes(1)
|
|
264
300
|
expect(buildContentDataMock).toHaveBeenCalledTimes(1)
|
|
265
301
|
expect(generateFaviconsMock).toHaveBeenCalledTimes(1)
|
|
266
|
-
expect(generateWebManifestMock).toHaveBeenCalledWith(
|
|
302
|
+
expect(generateWebManifestMock).toHaveBeenCalledWith(expect.objectContaining({
|
|
303
|
+
name: 'Docs',
|
|
304
|
+
themes: expect.objectContaining({
|
|
305
|
+
light: expect.objectContaining({
|
|
306
|
+
colors: expect.objectContaining({ primary: '#abcdef' }),
|
|
307
|
+
}),
|
|
308
|
+
}),
|
|
309
|
+
}))
|
|
267
310
|
expect(startWatcherMock).not.toHaveBeenCalled()
|
|
268
311
|
expect(rmMock).not.toHaveBeenCalled()
|
|
269
312
|
expect(process.env.MDSITE_RENDERER_ORCHESTRATED).toBe('1')
|
|
@@ -282,7 +325,7 @@ describe('renderer hooks orchestration', () => {
|
|
|
282
325
|
it('runs build fallback hooks without publishing favicon assets when generation reports no output', async () => {
|
|
283
326
|
generateFaviconsMock.mockResolvedValue(false)
|
|
284
327
|
|
|
285
|
-
await runBuildFallbackHooks('Docs')
|
|
328
|
+
await runBuildFallbackHooks({ site: { name: 'Docs' }, themes: { light: { colors: {} }, dark: { colors: {} } } } as any)
|
|
286
329
|
|
|
287
330
|
expect(buildContentDataMock).toHaveBeenCalledTimes(1)
|
|
288
331
|
expect(generateFaviconsMock).toHaveBeenCalledTimes(1)
|