@life-and-dev/mdsite 0.5.3 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. package/README.md +29 -37
  2. package/dist/commands/clean.d.ts +1 -0
  3. package/dist/commands/clean.js +70 -0
  4. package/dist/commands/clean.js.map +1 -0
  5. package/dist/commands/commands.test.js +157 -75
  6. package/dist/commands/commands.test.js.map +1 -1
  7. package/dist/commands/generate.js +5 -4
  8. package/dist/commands/generate.js.map +1 -1
  9. package/dist/commands/init.js +5 -64
  10. package/dist/commands/init.js.map +1 -1
  11. package/dist/commands/prepare.js +2 -14
  12. package/dist/commands/prepare.js.map +1 -1
  13. package/dist/commands/prepare.test.js +26 -24
  14. package/dist/commands/prepare.test.js.map +1 -1
  15. package/dist/commands/preview.js +21 -21
  16. package/dist/commands/preview.js.map +1 -1
  17. package/dist/commands/start.js +13 -11
  18. package/dist/commands/start.js.map +1 -1
  19. package/dist/commands/stop.js +7 -4
  20. package/dist/commands/stop.js.map +1 -1
  21. package/dist/commands/workflows.test.js +42 -56
  22. package/dist/commands/workflows.test.js.map +1 -1
  23. package/dist/config/default-mdsite-config.js +7 -8
  24. package/dist/config/default-mdsite-config.js.map +1 -1
  25. package/dist/config/default-mdsite-config.test.js +7 -8
  26. package/dist/config/default-mdsite-config.test.js.map +1 -1
  27. package/dist/config/mdsite-config.d.ts +46 -10
  28. package/dist/config/mdsite-config.js +46 -24
  29. package/dist/config/mdsite-config.js.map +1 -1
  30. package/dist/config/mdsite-config.test.js +55 -50
  31. package/dist/config/mdsite-config.test.js.map +1 -1
  32. package/dist/index.js +8 -2
  33. package/dist/index.js.map +1 -1
  34. package/dist/index.test.js +13 -0
  35. package/dist/index.test.js.map +1 -1
  36. package/dist/process/child-process.d.ts +4 -0
  37. package/dist/process/child-process.js +33 -1
  38. package/dist/process/child-process.js.map +1 -1
  39. package/dist/process/child-process.test.js +41 -5
  40. package/dist/process/child-process.test.js.map +1 -1
  41. package/dist/process/runtime-state.d.ts +13 -5
  42. package/dist/process/runtime-state.js +25 -13
  43. package/dist/process/runtime-state.js.map +1 -1
  44. package/dist/process/runtime-state.test.js +10 -10
  45. package/dist/process/runtime-state.test.js.map +1 -1
  46. package/dist/renderer/mdsite-nuxt.d.ts +28 -3
  47. package/dist/renderer/mdsite-nuxt.js +32 -27
  48. package/dist/renderer/mdsite-nuxt.js.map +1 -1
  49. package/dist/renderer/mdsite-nuxt.test.js +40 -39
  50. package/dist/renderer/mdsite-nuxt.test.js.map +1 -1
  51. package/mdsite-nuxt/app/components/AppFooter.vue +84 -22
  52. package/mdsite-nuxt/app/composables/useFooter.test.ts +54 -0
  53. package/mdsite-nuxt/app/composables/useFooter.ts +48 -31
  54. package/mdsite-nuxt/app/composables/useSiteConfig.test.ts +13 -87
  55. package/mdsite-nuxt/app/composables/useSiteConfig.ts +7 -26
  56. package/mdsite-nuxt/app/composables/useSourceEdit.test.ts +103 -0
  57. package/mdsite-nuxt/app/composables/useSourceEdit.ts +39 -51
  58. package/mdsite-nuxt/app/layouts/default.vue +10 -3
  59. package/mdsite-nuxt/nuxt.config.ts +22 -15
  60. package/mdsite-nuxt/scripts/generate-favicons.test.ts +3 -3
  61. package/mdsite-nuxt/scripts/generate-favicons.ts +4 -4
  62. package/mdsite-nuxt/scripts/generate-indices.test.ts +71 -10
  63. package/mdsite-nuxt/scripts/generate-indices.ts +161 -27
  64. package/mdsite-nuxt/scripts/renderer-hooks.test.ts +0 -91
  65. package/mdsite-nuxt/scripts/renderer-hooks.ts +1 -50
  66. package/mdsite-nuxt/scripts/start.test.ts +0 -1
  67. package/mdsite-nuxt/scripts/start.ts +0 -1
  68. package/mdsite-nuxt/utils/mdsite-config.ts +86 -41
  69. package/package.json +1 -1
  70. package/mdsite-nuxt/example.config.yml +0 -67
@@ -1 +1 @@
1
- {"version":3,"file":"preview.js","sourceRoot":"","sources":["../../src/commands/preview.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"preview.js","sourceRoot":"","sources":["../../src/commands/preview.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { loadMdsiteConfig } from '../config/mdsite-config.js';
2
- import { openUrlInBrowser, waitForTcpPort } from '../process/child-process.js';
2
+ import { openUrlInBrowser, waitForRendererPort, waitForTcpPort } from '../process/child-process.js';
3
3
  import { getRuntimeLogPath, isProcessRunning, readRuntimeState, writeRuntimeState } from '../process/runtime-state.js';
4
4
  import { ensureRendererDependencies, prepareRenderer, startRendererForeground, startRendererInBackground } from '../renderer/mdsite-nuxt.js';
5
5
  import { ensureInitialized } from './init.js';
@@ -16,27 +16,32 @@ export async function runStartCommand(contentDir, options = {}) {
16
16
  }
17
17
  async function runDetachedStartCommand(contentDir, options) {
18
18
  const loaded = await loadMdsiteConfig(contentDir);
19
- const { config, configDir } = loaded;
20
- const existingState = await readRuntimeState(configDir, config, 'start');
19
+ const { config, contentDir: resolvedContentDir } = loaded;
20
+ const existingState = await readRuntimeState(resolvedContentDir, config, 'start');
21
21
  if (existingState && isProcessRunning(existingState.pid)) {
22
22
  throw new Error(`mdsite live is already running with PID ${existingState.pid}.`);
23
23
  }
24
24
  const { rendererDir, rendererEnv } = await prepareRenderer(loaded.contentDir, loaded.config, loaded);
25
25
  await ensureRendererDependencies(rendererDir);
26
26
  const env = withHostEnv(rendererEnv, options.host);
27
- const logPath = getRuntimeLogPath(configDir, config, 'start');
27
+ const logPath = getRuntimeLogPath(resolvedContentDir, config, 'start');
28
28
  const pid = await startRendererInBackground(rendererDir, env, logPath);
29
- const startUrl = getStartUrl(env);
30
- await writeRuntimeState(configDir, config, {
29
+ await writeRuntimeState(resolvedContentDir, config, {
31
30
  kind: 'start',
32
31
  pid,
33
32
  logPath,
34
33
  rendererDir,
35
- contentDir,
34
+ contentDir: resolvedContentDir,
36
35
  command: ['npm', 'run', 'dev'],
37
36
  startedAt: new Date().toISOString()
38
37
  });
39
- const startReady = await waitForTcpPort(getStartHost(env), Number.parseInt(getStartPort(env), 10)).catch(() => false);
38
+ const host = getStartHost(env);
39
+ const configuredPort = Number.parseInt(getStartPort(env), 10);
40
+ // Nuxt may fall back to the next free port when the configured one is occupied;
41
+ // detect the actual port from the renderer log so we open the right URL.
42
+ const actualPort = await waitForRendererPort(logPath, configuredPort);
43
+ const startUrl = `http://${host}:${actualPort}`;
44
+ const startReady = await waitForTcpPort(host, actualPort).catch(() => false);
40
45
  if (startReady) {
41
46
  await openUrlInBrowser(startUrl);
42
47
  }
@@ -53,9 +58,6 @@ function withHostEnv(env, host) {
53
58
  NITRO_HOST: host
54
59
  };
55
60
  }
56
- function getStartUrl(env) {
57
- return `http://${getStartHost(env)}:${getStartPort(env)}`;
58
- }
59
61
  function getStartHost(env) {
60
62
  return env.NUXT_HOST ?? env.HOST ?? 'localhost';
61
63
  }
@@ -1 +1 @@
1
- {"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"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"}
@@ -3,10 +3,13 @@ import { clearRuntimeState, readRuntimeState } from '../process/runtime-state.js
3
3
  import { stopProcess } from '../process/child-process.js';
4
4
  export async function runStopCommand(contentDir) {
5
5
  const loaded = await loadMdsiteConfig(contentDir);
6
- const { configDir, config } = loaded;
6
+ const { config, contentDir: resolvedContentDir } = loaded;
7
+ // Resolve runtime state against the resolved content directory so that
8
+ // `paths.input: <subdir>` setups find their state files (which live in
9
+ // `<resolvedContentDir>/<paths.build>/`, not in the config directory).
7
10
  const states = await Promise.all([
8
- readRuntimeState(configDir, config, 'start'),
9
- readRuntimeState(configDir, config, 'preview')
11
+ readRuntimeState(resolvedContentDir, config, 'start'),
12
+ readRuntimeState(resolvedContentDir, config, 'preview')
10
13
  ]);
11
14
  const messages = [];
12
15
  for (const state of states) {
@@ -14,7 +17,7 @@ export async function runStopCommand(contentDir) {
14
17
  continue;
15
18
  }
16
19
  const stopped = await stopProcess(state.pid);
17
- await clearRuntimeState(configDir, config, state.kind);
20
+ await clearRuntimeState(resolvedContentDir, config, state.kind);
18
21
  if (stopped) {
19
22
  messages.push(`Stopped ${state.kind} process ${state.pid}.`);
20
23
  continue;
@@ -1 +1 @@
1
- {"version":3,"file":"stop.js","sourceRoot":"","sources":["../../src/commands/stop.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAC7D,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAEzD,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,UAAkB;IACrD,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,UAAU,CAAC,CAAA;IACjD,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IAEpC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC/B,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC;QAC5C,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC;KAC/C,CAAC,CAAA;IAEF,MAAM,QAAQ,GAAa,EAAE,CAAA;IAE7B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,SAAQ;QACV,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAC5C,MAAM,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;QAEtD,IAAI,OAAO,EAAE,CAAC;YACZ,QAAQ,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,IAAI,YAAY,KAAK,CAAC,GAAG,GAAG,CAAC,CAAA;YAC5D,SAAQ;QACV,CAAC;QAED,QAAQ,CAAC,IAAI,CAAC,iBAAiB,KAAK,CAAC,IAAI,kBAAkB,KAAK,CAAC,GAAG,GAAG,CAAC,CAAA;IAC1E,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,qBAAqB,CAAA;IAC9B,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAC3B,CAAC"}
1
+ {"version":3,"file":"stop.js","sourceRoot":"","sources":["../../src/commands/stop.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAC7D,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAEzD,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,UAAkB;IACrD,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,UAAU,CAAC,CAAA;IACjD,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,kBAAkB,EAAE,GAAG,MAAM,CAAA;IAEzD,uEAAuE;IACvE,uEAAuE;IACvE,uEAAuE;IACvE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC/B,gBAAgB,CAAC,kBAAkB,EAAE,MAAM,EAAE,OAAO,CAAC;QACrD,gBAAgB,CAAC,kBAAkB,EAAE,MAAM,EAAE,SAAS,CAAC;KACxD,CAAC,CAAA;IAEF,MAAM,QAAQ,GAAa,EAAE,CAAA;IAE7B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,SAAQ;QACV,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAC5C,MAAM,iBAAiB,CAAC,kBAAkB,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;QAE/D,IAAI,OAAO,EAAE,CAAC;YACZ,QAAQ,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,IAAI,YAAY,KAAK,CAAC,GAAG,GAAG,CAAC,CAAA;YAC5D,SAAQ;QACV,CAAC;QAED,QAAQ,CAAC,IAAI,CAAC,iBAAiB,KAAK,CAAC,IAAI,kBAAkB,KAAK,CAAC,GAAG,GAAG,CAAC,CAAA;IAC1E,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,qBAAqB,CAAA;IAC9B,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAC3B,CAAC"}
@@ -3,10 +3,12 @@ import os from 'node:os';
3
3
  import path from 'node:path';
4
4
  import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest';
5
5
  const waitForTcpPortMock = vi.hoisted(() => vi.fn());
6
+ const waitForRendererPortMock = vi.hoisted(() => vi.fn());
6
7
  vi.mock('../process/child-process.js', () => ({
7
8
  openUrlInBrowser: vi.fn(),
8
9
  runBackground: vi.fn(),
9
10
  runForeground: vi.fn(),
11
+ waitForRendererPort: waitForRendererPortMock,
10
12
  waitForTcpPort: waitForTcpPortMock,
11
13
  stopProcess: vi.fn()
12
14
  }));
@@ -15,7 +17,7 @@ vi.mock('../renderer/mdsite-nuxt.js', async (importOriginal) => {
15
17
  return { ...actual, prepareRenderer: vi.fn() };
16
18
  });
17
19
  import { serializeMdsiteConfig } from '../config/mdsite-config.js';
18
- import { openUrlInBrowser, stopProcess, waitForTcpPort, runBackground, runForeground } from '../process/child-process.js';
20
+ import { openUrlInBrowser, stopProcess, waitForRendererPort, waitForTcpPort, runBackground, runForeground } from '../process/child-process.js';
19
21
  import { readRuntimeState } from '../process/runtime-state.js';
20
22
  import { prepareRenderer } from '../renderer/mdsite-nuxt.js';
21
23
  import { runGenerateCommand } from './generate.js';
@@ -28,6 +30,7 @@ const runForegroundMock = vi.mocked(runForeground);
28
30
  const openUrlInBrowserMock = vi.mocked(openUrlInBrowser);
29
31
  const stopProcessMock = vi.mocked(stopProcess);
30
32
  const waitForTcpPortMocked = vi.mocked(waitForTcpPort);
33
+ const waitForRendererPortMocked = vi.mocked(waitForRendererPort);
31
34
  const prepareRendererMock = vi.mocked(prepareRenderer);
32
35
  const tempDirs = [];
33
36
  async function makeTempDir() {
@@ -52,27 +55,26 @@ async function createRendererDir(contentDir, withNodeModules = true) {
52
55
  }
53
56
  async function writeConfig(contentDir, overrides = {}) {
54
57
  const config = {
55
- favicon: '',
56
- features: { bibleTooltips: true, sourceEdit: true },
57
- menu: [],
58
- footer: [],
59
- server: {
60
- output: '.output',
61
- path: '.renderer',
62
- repo: 'https://github.com/life-and-dev/mdsite',
63
- gitBranch: 'main',
64
- ...overrides.server
58
+ features: {
59
+ bibleTooltips: overrides.features?.bibleTooltips ?? true,
60
+ sourceEdit: overrides.features?.sourceEdit ?? '',
61
+ footer: overrides.features?.footer ?? []
62
+ },
63
+ menu: overrides.menu ?? [],
64
+ paths: {
65
+ input: overrides.paths?.input ?? '',
66
+ build: overrides.paths?.build ?? '.renderer',
67
+ output: overrides.paths?.output ?? '.output'
65
68
  },
66
69
  site: {
67
- canonical: '',
68
- name: 'Workspace Docs',
69
- ...overrides.site
70
+ canonical: overrides.site?.canonical ?? '',
71
+ favicon: overrides.site?.favicon ?? '',
72
+ name: overrides.site?.name ?? 'Workspace Docs'
70
73
  },
71
74
  themes: {
72
- light: { colors: {} },
73
- dark: { colors: {} }
74
- },
75
- ...overrides
75
+ light: { colors: (overrides.themes?.light?.colors ?? {}) },
76
+ dark: { colors: (overrides.themes?.dark?.colors ?? {}) }
77
+ }
76
78
  };
77
79
  await writeFile(path.join(contentDir, 'mdsite.yml'), serializeMdsiteConfig(config), 'utf8');
78
80
  return config;
@@ -86,6 +88,7 @@ describe('CLI workflow coverage', () => {
86
88
  vi.clearAllMocks();
87
89
  openUrlInBrowserMock.mockResolvedValue(true);
88
90
  waitForTcpPortMocked.mockResolvedValue(true);
91
+ waitForRendererPortMocked.mockImplementation(async (_logPath, fallbackPort) => fallbackPort);
89
92
  prepareRendererMock.mockImplementation(async (contentDir, _config, _options) => {
90
93
  const rendererDir = path.join(contentDir, '.renderer');
91
94
  return {
@@ -94,13 +97,14 @@ describe('CLI workflow coverage', () => {
94
97
  NUXT_CONTENT_PATH: contentDir,
95
98
  CONTENT_DIR: contentDir,
96
99
  MDSITE_CONFIG_PATH: path.join(contentDir, 'mdsite.yml')
97
- }
100
+ },
101
+ rendererOutputDir: path.join(rendererDir, '.output')
98
102
  };
99
103
  });
100
104
  });
101
105
  it('runInitCommand creates a valid mdsite.yml and pins Node 24 via .nvmrc', async () => {
102
106
  const contentDir = await createContentDir();
103
- await expect(runInitCommand(contentDir)).resolves.toBe(`Created mdsite.yml, .nvmrc, .mdsite/package.json, .mdsite/package-lock.json in ${contentDir}.`);
107
+ await expect(runInitCommand(contentDir)).resolves.toBe(`Created mdsite.yml, .nvmrc in ${contentDir}.`);
104
108
  const configPath = path.join(contentDir, 'mdsite.yml');
105
109
  const configText = await readFile(configPath, 'utf8');
106
110
  expect(configText).toContain('name: Workspace Docs');
@@ -112,17 +116,10 @@ describe('CLI workflow coverage', () => {
112
116
  const gitignorePath = path.join(contentDir, '.gitignore');
113
117
  const gitignoreText = await readFile(gitignorePath, 'utf8');
114
118
  expect(gitignoreText).toContain('.mdsite/*');
115
- expect(gitignoreText).toContain('!.mdsite/package.json');
116
- expect(gitignoreText).toContain('!.mdsite/package-lock.json');
117
119
  expect(gitignoreText).toContain('.output/');
118
120
  expect(gitignoreText).toContain('# end mdsite');
119
- const rendererPkgText = await readFile(path.join(contentDir, '.mdsite', 'package.json'), 'utf8');
120
- const rendererPkg = JSON.parse(rendererPkgText);
121
- // The renderer package identity reflects the project: name = sanitized content-dir basename,
122
- // description = the website name from mdsite.yml (not the bundled renderer's generic identity).
123
- expect(rendererPkg.name).toBe(path.basename(contentDir).toLowerCase());
124
- expect(rendererPkg.description).toBe('Workspace Docs');
125
- await expect(access(path.join(contentDir, '.mdsite', 'package-lock.json'))).resolves.toBeUndefined();
121
+ expect(gitignoreText).not.toContain('!.mdsite/package.json');
122
+ expect(gitignoreText).not.toContain('!.mdsite/package-lock.json');
126
123
  });
127
124
  it('runInitCommand preserves existing user .gitignore entries while adding mdsite managed patterns', async () => {
128
125
  const contentDir = await createContentDir();
@@ -130,25 +127,23 @@ describe('CLI workflow coverage', () => {
130
127
  const seededGitignore = [
131
128
  'secret.env',
132
129
  'build/',
133
- '# mdsite: generated state (renderer working dir; lockfile pair committed for reproducible CI)',
130
+ '# mdsite: generated state (renderer working dir; runtime artifacts and materialized renderer)',
134
131
  '.mdsite/*',
135
- '!.mdsite/package.json',
136
- '!.mdsite/package-lock.json',
137
132
  '.output/',
138
133
  '# end mdsite'
139
134
  ].join('\n') + '\n';
140
135
  await writeFile(path.join(contentDir, '.gitignore'), seededGitignore, 'utf8');
141
- await expect(runInitCommand(contentDir)).resolves.toBe(`Created mdsite.yml, .nvmrc, .mdsite/package.json, .mdsite/package-lock.json in ${contentDir}.`);
136
+ await expect(runInitCommand(contentDir)).resolves.toBe(`Created mdsite.yml, .nvmrc in ${contentDir}.`);
142
137
  const gitignoreText = await readFile(path.join(contentDir, '.gitignore'), 'utf8');
143
138
  // User entries preserved verbatim
144
139
  expect(gitignoreText).toContain('secret.env');
145
140
  expect(gitignoreText).toContain('build/');
146
141
  // Managed block present
147
142
  expect(gitignoreText).toContain('.mdsite/*');
148
- expect(gitignoreText).toContain('!.mdsite/package.json');
149
- expect(gitignoreText).toContain('!.mdsite/package-lock.json');
150
143
  expect(gitignoreText).toContain('.output/');
151
144
  expect(gitignoreText).toContain('# end mdsite');
145
+ expect(gitignoreText).not.toContain('!.mdsite/package.json');
146
+ expect(gitignoreText).not.toContain('!.mdsite/package-lock.json');
152
147
  // Idempotent: exactly ONE managed header, ONE end marker, ONE of each required pattern (no duplication from the seeded prior block)
153
148
  expect(gitignoreText.split('# mdsite:').length - 1).toBe(1);
154
149
  expect(gitignoreText.split('# end mdsite').length - 1).toBe(1);
@@ -162,15 +157,13 @@ describe('CLI workflow coverage', () => {
162
157
  // verbatim instead of stripping it globally and re-emitting it only inside the block.
163
158
  const seededGitignore = [
164
159
  '.output/',
165
- '# mdsite: generated state (renderer working dir; lockfile pair committed for reproducible CI)',
160
+ '# mdsite: generated state (renderer working dir; runtime artifacts and materialized renderer)',
166
161
  '.mdsite/*',
167
- '!.mdsite/package.json',
168
- '!.mdsite/package-lock.json',
169
162
  '.output/',
170
163
  '# end mdsite'
171
164
  ].join('\n') + '\n';
172
165
  await writeFile(path.join(contentDir, '.gitignore'), seededGitignore, 'utf8');
173
- await expect(runInitCommand(contentDir)).resolves.toBe(`Created mdsite.yml, .nvmrc, .mdsite/package.json, .mdsite/package-lock.json in ${contentDir}.`);
166
+ await expect(runInitCommand(contentDir)).resolves.toBe(`Created mdsite.yml, .nvmrc in ${contentDir}.`);
174
167
  const gitignoreText = await readFile(path.join(contentDir, '.gitignore'), 'utf8');
175
168
  // The user's coincidental `.output/` line is preserved outside the block AND re-emitted inside it,
176
169
  // so the pattern now appears exactly twice.
@@ -185,15 +178,13 @@ describe('CLI workflow coverage', () => {
185
178
  // Corrupted .gitignore: a managed block missing its end marker (e.g. a truncated prior init).
186
179
  const seededGitignore = [
187
180
  'secret.env',
188
- '# mdsite: generated state (renderer working dir; lockfile pair committed for reproducible CI)',
181
+ '# mdsite: generated state (renderer working dir; runtime artifacts and materialized renderer)',
189
182
  '.mdsite/*',
190
- '!.mdsite/package.json',
191
- '!.mdsite/package-lock.json',
192
183
  '.output/',
193
184
  'build/'
194
185
  ].join('\n') + '\n';
195
186
  await writeFile(path.join(contentDir, '.gitignore'), seededGitignore, 'utf8');
196
- await expect(runInitCommand(contentDir)).resolves.toBe(`Created mdsite.yml, .nvmrc, .mdsite/package.json, .mdsite/package-lock.json in ${contentDir}.`);
187
+ await expect(runInitCommand(contentDir)).resolves.toBe(`Created mdsite.yml, .nvmrc in ${contentDir}.`);
197
188
  const gitignoreText = await readFile(path.join(contentDir, '.gitignore'), 'utf8');
198
189
  expect(gitignoreText).toContain('secret.env');
199
190
  expect(gitignoreText).toContain('build/');
@@ -207,14 +198,12 @@ describe('CLI workflow coverage', () => {
207
198
  const seededGitignore = [
208
199
  'secret.env',
209
200
  '.mdsite/*',
210
- '!.mdsite/package.json',
211
- '!.mdsite/package-lock.json',
212
201
  '.output/',
213
202
  '# end mdsite',
214
203
  'build/'
215
204
  ].join('\n') + '\n';
216
205
  await writeFile(path.join(contentDir, '.gitignore'), seededGitignore, 'utf8');
217
- await expect(runInitCommand(contentDir)).resolves.toBe(`Created mdsite.yml, .nvmrc, .mdsite/package.json, .mdsite/package-lock.json in ${contentDir}.`);
206
+ await expect(runInitCommand(contentDir)).resolves.toBe(`Created mdsite.yml, .nvmrc in ${contentDir}.`);
218
207
  const gitignoreText = await readFile(path.join(contentDir, '.gitignore'), 'utf8');
219
208
  expect(gitignoreText).toContain('secret.env');
220
209
  expect(gitignoreText).toContain('build/');
@@ -228,12 +217,12 @@ describe('CLI workflow coverage', () => {
228
217
  const rendererDir = await createRendererDir(contentDir);
229
218
  const config = await writeConfig(contentDir);
230
219
  runBackgroundMock.mockResolvedValueOnce(4321);
231
- await expect(runStartCommand(contentDir, { detached: true })).resolves.toBe(`mdsite live running in background (PID 4321). Log: ${path.join(contentDir, '.renderer', 'start.log')}`);
220
+ await expect(runStartCommand(contentDir, { detached: true })).resolves.toBe(`mdsite live running in background (PID 4321). Log: ${path.join(contentDir, '.renderer', 'live.log')}`);
232
221
  expect(runBackgroundMock).toHaveBeenCalledWith('npm', ['run', 'dev'], rendererDir, expect.objectContaining({
233
222
  NUXT_CONTENT_PATH: contentDir,
234
223
  CONTENT_DIR: contentDir,
235
224
  MDSITE_CONFIG_PATH: path.join(contentDir, 'mdsite.yml')
236
- }), path.join(contentDir, '.renderer', 'start.log'));
225
+ }), path.join(contentDir, '.renderer', 'live.log'));
237
226
  expect(waitForTcpPortMocked).toHaveBeenCalledWith('localhost', 3000);
238
227
  expect(openUrlInBrowserMock).toHaveBeenCalledWith('http://localhost:3000');
239
228
  await expect(readRuntimeState(contentDir, config, 'start')).resolves.toEqual(expect.objectContaining({
@@ -247,11 +236,8 @@ describe('CLI workflow coverage', () => {
247
236
  const contentDir = await createContentDir();
248
237
  const rendererDir = await createRendererDir(contentDir);
249
238
  await writeConfig(contentDir, {
250
- server: {
251
- output: 'public/site',
252
- path: '.renderer',
253
- repo: 'https://github.com/life-and-dev/mdsite',
254
- gitBranch: 'main'
239
+ paths: {
240
+ output: 'public/site'
255
241
  }
256
242
  });
257
243
  runForegroundMock.mockImplementation(async (_command, args, cwd) => {
@@ -279,7 +265,7 @@ describe('CLI workflow coverage', () => {
279
265
  await expect(runGenerateCommand(contentDir)).resolves.toBe(`Generated site synced to ${path.join(contentDir, '.output', 'public')}`);
280
266
  runBackgroundMock.mockResolvedValueOnce(2468);
281
267
  stopProcessMock.mockResolvedValueOnce(true);
282
- await expect(runPreviewCommand(contentDir, { detached: true })).resolves.toBe(`mdsite static running in background (PID 2468). URL: http://localhost:3000 Log: ${path.join(contentDir, '.renderer', 'preview.log')}`);
268
+ await expect(runPreviewCommand(contentDir, { detached: true })).resolves.toBe(`mdsite static running in background (PID 2468). URL: http://localhost:3000 Log: ${path.join(contentDir, '.renderer', 'static.log')}`);
283
269
  expect(openUrlInBrowserMock).toHaveBeenCalledWith('http://localhost:3000');
284
270
  await expect(runStopCommand(contentDir)).resolves.toBe('Stopped preview process 2468.');
285
271
  await expect(readRuntimeState(contentDir, config, 'preview')).resolves.toBeNull();
@@ -315,8 +301,8 @@ describe('CLI workflow coverage', () => {
315
301
  runForegroundMock.mockRejectedValueOnce(new Error('Failed to start npm run dev.'));
316
302
  await expect(runStartCommand(contentDir)).rejects.toThrow('Failed to start npm run dev.');
317
303
  await expect(readRuntimeState(contentDir, config, 'start')).resolves.toBeNull();
318
- await expect(access(path.join(contentDir, '.renderer', 'start.json'))).rejects.toThrow();
319
- await expect(access(path.join(contentDir, '.renderer', 'start.log'))).rejects.toThrow();
304
+ await expect(access(path.join(contentDir, '.renderer', 'live.json'))).rejects.toThrow();
305
+ await expect(access(path.join(contentDir, '.renderer', 'live.log'))).rejects.toThrow();
320
306
  });
321
307
  });
322
308
  //# sourceMappingURL=workflows.test.js.map
@@ -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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"}
@@ -54,21 +54,20 @@ const defaultDarkColors = {
54
54
  };
55
55
  export function createDefaultMdsiteConfig(siteName, menu) {
56
56
  return {
57
- favicon: '',
58
57
  features: {
59
58
  bibleTooltips: true,
60
- sourceEdit: true
59
+ sourceEdit: '',
60
+ footer: []
61
61
  },
62
62
  menu,
63
- footer: [],
64
- server: {
65
- output: '.output',
66
- path: '.mdsite',
67
- repo: 'https://github.com/life-and-dev/mdsite',
68
- gitBranch: 'main'
63
+ paths: {
64
+ input: '',
65
+ build: '.mdsite',
66
+ output: '.output'
69
67
  },
70
68
  site: {
71
69
  canonical: '',
70
+ favicon: '',
72
71
  name: siteName
73
72
  },
74
73
  themes: {
@@ -1 +1 @@
1
- {"version":3,"file":"default-mdsite-config.js","sourceRoot":"","sources":["../../src/config/default-mdsite-config.ts"],"names":[],"mappings":"AAEA,MAAM,kBAAkB,GAAG;IACzB,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,SAAS;IACpB,QAAQ,EAAE,SAAS;IACnB,KAAK,EAAE,SAAS;IAChB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,SAAS;IAClB,UAAU,EAAE,SAAS;IACrB,OAAO,EAAE,SAAS;IAClB,cAAc,EAAE,SAAS;IACzB,gBAAgB,EAAE,SAAS;IAC3B,iBAAiB,EAAE,SAAS;IAC5B,mBAAmB,EAAE,SAAS;IAC9B,eAAe,EAAE,SAAS;IAC1B,YAAY,EAAE,SAAS;IACvB,YAAY,EAAE,SAAS;IACvB,cAAc,EAAE,SAAS;IACzB,eAAe,EAAE,SAAS;IAC1B,aAAa,EAAE,SAAS;IACxB,UAAU,EAAE,SAAS;IACrB,YAAY,EAAE,SAAS;IACvB,SAAS,EAAE,SAAS;IACpB,YAAY,EAAE,SAAS;IACvB,OAAO,EAAE,SAAS;IAClB,cAAc,EAAE,SAAS;CACO,CAAA;AAElC,MAAM,iBAAiB,GAAG;IACxB,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,SAAS;IACpB,QAAQ,EAAE,SAAS;IACnB,KAAK,EAAE,SAAS;IAChB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,SAAS;IAClB,UAAU,EAAE,SAAS;IACrB,OAAO,EAAE,SAAS;IAClB,cAAc,EAAE,SAAS;IACzB,gBAAgB,EAAE,SAAS;IAC3B,iBAAiB,EAAE,SAAS;IAC5B,mBAAmB,EAAE,SAAS;IAC9B,eAAe,EAAE,SAAS;IAC1B,YAAY,EAAE,SAAS;IACvB,YAAY,EAAE,SAAS;IACvB,cAAc,EAAE,SAAS;IACzB,eAAe,EAAE,SAAS;IAC1B,aAAa,EAAE,SAAS;IACxB,UAAU,EAAE,SAAS;IACrB,YAAY,EAAE,SAAS;IACvB,SAAS,EAAE,SAAS;IACpB,YAAY,EAAE,SAAS;IACvB,OAAO,EAAE,SAAS;IAClB,cAAc,EAAE,SAAS;CACO,CAAA;AAElC,MAAM,UAAU,yBAAyB,CAAC,QAAgB,EAAE,IAA0B;IACpF,OAAO;QACL,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE;YACR,aAAa,EAAE,IAAI;YACnB,UAAU,EAAE,IAAI;SACjB;QACD,IAAI;QACJ,MAAM,EAAE,EAAE;QACV,MAAM,EAAE;YACN,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,wCAAwC;YAC9C,SAAS,EAAE,MAAM;SAClB;QACD,IAAI,EAAE;YACJ,SAAS,EAAE,EAAE;YACb,IAAI,EAAE,QAAQ;SACf;QACD,MAAM,EAAE;YACN,KAAK,EAAE;gBACL,MAAM,EAAE,kBAAkB;aAC3B;YACD,IAAI,EAAE;gBACJ,MAAM,EAAE,iBAAiB;aAC1B;SACF;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"default-mdsite-config.js","sourceRoot":"","sources":["../../src/config/default-mdsite-config.ts"],"names":[],"mappings":"AAEA,MAAM,kBAAkB,GAAG;IACzB,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,SAAS;IACpB,QAAQ,EAAE,SAAS;IACnB,KAAK,EAAE,SAAS;IAChB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,SAAS;IAClB,UAAU,EAAE,SAAS;IACrB,OAAO,EAAE,SAAS;IAClB,cAAc,EAAE,SAAS;IACzB,gBAAgB,EAAE,SAAS;IAC3B,iBAAiB,EAAE,SAAS;IAC5B,mBAAmB,EAAE,SAAS;IAC9B,eAAe,EAAE,SAAS;IAC1B,YAAY,EAAE,SAAS;IACvB,YAAY,EAAE,SAAS;IACvB,cAAc,EAAE,SAAS;IACzB,eAAe,EAAE,SAAS;IAC1B,aAAa,EAAE,SAAS;IACxB,UAAU,EAAE,SAAS;IACrB,YAAY,EAAE,SAAS;IACvB,SAAS,EAAE,SAAS;IACpB,YAAY,EAAE,SAAS;IACvB,OAAO,EAAE,SAAS;IAClB,cAAc,EAAE,SAAS;CACO,CAAA;AAElC,MAAM,iBAAiB,GAAG;IACxB,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,SAAS;IACpB,QAAQ,EAAE,SAAS;IACnB,KAAK,EAAE,SAAS;IAChB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,SAAS;IAClB,UAAU,EAAE,SAAS;IACrB,OAAO,EAAE,SAAS;IAClB,cAAc,EAAE,SAAS;IACzB,gBAAgB,EAAE,SAAS;IAC3B,iBAAiB,EAAE,SAAS;IAC5B,mBAAmB,EAAE,SAAS;IAC9B,eAAe,EAAE,SAAS;IAC1B,YAAY,EAAE,SAAS;IACvB,YAAY,EAAE,SAAS;IACvB,cAAc,EAAE,SAAS;IACzB,eAAe,EAAE,SAAS;IAC1B,aAAa,EAAE,SAAS;IACxB,UAAU,EAAE,SAAS;IACrB,YAAY,EAAE,SAAS;IACvB,SAAS,EAAE,SAAS;IACpB,YAAY,EAAE,SAAS;IACvB,OAAO,EAAE,SAAS;IAClB,cAAc,EAAE,SAAS;CACO,CAAA;AAElC,MAAM,UAAU,yBAAyB,CAAC,QAAgB,EAAE,IAA0B;IACpF,OAAO;QACL,QAAQ,EAAE;YACR,aAAa,EAAE,IAAI;YACnB,UAAU,EAAE,EAAE;YACd,MAAM,EAAE,EAAE;SACX;QACD,IAAI;QACJ,KAAK,EAAE;YACL,KAAK,EAAE,EAAE;YACT,KAAK,EAAE,SAAS;YAChB,MAAM,EAAE,SAAS;SAClB;QACD,IAAI,EAAE;YACJ,SAAS,EAAE,EAAE;YACb,OAAO,EAAE,EAAE;YACX,IAAI,EAAE,QAAQ;SACf;QACD,MAAM,EAAE;YACN,KAAK,EAAE;gBACL,MAAM,EAAE,kBAAkB;aAC3B;YACD,IAAI,EAAE;gBACJ,MAAM,EAAE,iBAAiB;aAC1B;SACF;KACF,CAAA;AACH,CAAC"}
@@ -5,21 +5,20 @@ describe('createDefaultMdsiteConfig', () => {
5
5
  const menu = ['guide/getting-started', { Docs: ['guide/advanced'] }];
6
6
  const config = createDefaultMdsiteConfig('My Site', menu);
7
7
  expect(config).toEqual({
8
- favicon: '',
9
8
  features: {
10
9
  bibleTooltips: true,
11
- sourceEdit: true
10
+ sourceEdit: '',
11
+ footer: []
12
12
  },
13
13
  menu,
14
- footer: [],
15
- server: {
16
- output: '.output',
17
- path: '.mdsite',
18
- repo: 'https://github.com/life-and-dev/mdsite',
19
- gitBranch: 'main'
14
+ paths: {
15
+ input: '',
16
+ build: '.mdsite',
17
+ output: '.output'
20
18
  },
21
19
  site: {
22
20
  canonical: '',
21
+ favicon: '',
23
22
  name: 'My Site'
24
23
  },
25
24
  themes: {
@@ -1 +1 @@
1
- {"version":3,"file":"default-mdsite-config.test.js","sourceRoot":"","sources":["../../src/config/default-mdsite-config.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAE7C,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AAEtE,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACzC,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC5E,MAAM,IAAI,GAAG,CAAC,uBAAuB,EAAE,EAAE,IAAI,EAAE,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAA;QAEpE,MAAM,MAAM,GAAG,yBAAyB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;QAEzD,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACrB,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE;gBACR,aAAa,EAAE,IAAI;gBACnB,UAAU,EAAE,IAAI;aACjB;YACD,IAAI;YACJ,MAAM,EAAE,EAAE;YACV,MAAM,EAAE;gBACN,MAAM,EAAE,SAAS;gBACjB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,wCAAwC;gBAC9C,SAAS,EAAE,MAAM;aAClB;YACD,IAAI,EAAE;gBACJ,SAAS,EAAE,EAAE;gBACb,IAAI,EAAE,SAAS;aAChB;YACD,MAAM,EAAE;gBACN,KAAK,EAAE;oBACL,MAAM,EAAE,MAAM,CAAC,gBAAgB,CAAC;wBAC9B,OAAO,EAAE,SAAS;wBAClB,UAAU,EAAE,SAAS;wBACrB,YAAY,EAAE,SAAS;qBACxB,CAAC;iBACH;gBACD,IAAI,EAAE;oBACJ,MAAM,EAAE,MAAM,CAAC,gBAAgB,CAAC;wBAC9B,OAAO,EAAE,SAAS;wBAClB,UAAU,EAAE,SAAS;wBACrB,YAAY,EAAE,SAAS;qBACxB,CAAC;iBACH;aACF;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"default-mdsite-config.test.js","sourceRoot":"","sources":["../../src/config/default-mdsite-config.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAE7C,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AAEtE,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACzC,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC5E,MAAM,IAAI,GAAG,CAAC,uBAAuB,EAAE,EAAE,IAAI,EAAE,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAA;QAEpE,MAAM,MAAM,GAAG,yBAAyB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;QAEzD,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACrB,QAAQ,EAAE;gBACR,aAAa,EAAE,IAAI;gBACnB,UAAU,EAAE,EAAE;gBACd,MAAM,EAAE,EAAE;aACX;YACD,IAAI;YACJ,KAAK,EAAE;gBACL,KAAK,EAAE,EAAE;gBACT,KAAK,EAAE,SAAS;gBAChB,MAAM,EAAE,SAAS;aAClB;YACD,IAAI,EAAE;gBACJ,SAAS,EAAE,EAAE;gBACb,OAAO,EAAE,EAAE;gBACX,IAAI,EAAE,SAAS;aAChB;YACD,MAAM,EAAE;gBACN,KAAK,EAAE;oBACL,MAAM,EAAE,MAAM,CAAC,gBAAgB,CAAC;wBAC9B,OAAO,EAAE,SAAS;wBAClB,UAAU,EAAE,SAAS;wBACrB,YAAY,EAAE,SAAS;qBACxB,CAAC;iBACH;gBACD,IAAI,EAAE;oBACJ,MAAM,EAAE,MAAM,CAAC,gBAAgB,CAAC;wBAC9B,OAAO,EAAE,SAAS;wBAClB,UAAU,EAAE,SAAS;wBACrB,YAAY,EAAE,SAAS;qBACxB,CAAC;iBACH;aACF;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,25 +1,48 @@
1
1
  export type MenuItem = string | null | {
2
2
  [key: string]: string | null | MenuItem[];
3
3
  };
4
+ /**
5
+ * Footer items mirror the `menu` shape but with no nested sub-menus. Each item
6
+ * is one of:
7
+ * - a bare markdown file name (string) — title is read from the file's H1
8
+ * - `null` — rendered as a vertical separator
9
+ * - a single-key object — the key is the link text, the value is either an
10
+ * internal markdown path or an external URL (http/https)
11
+ *
12
+ * Lives under `features.footer` in `mdsite.yml`.
13
+ */
14
+ export type FooterItem = string | null | {
15
+ [key: string]: string | null;
16
+ };
4
17
  export interface MdsiteConfig {
5
- content?: {
6
- path?: string;
7
- };
8
- favicon: string;
9
18
  features: {
10
19
  bibleTooltips: boolean;
11
- sourceEdit: boolean;
20
+ /**
21
+ * URL prefix for the "Edit on GitHub" link. The renderer appends
22
+ * `<route>.md` to this value to build the edit URL, so the prefix should
23
+ * end with `/` (e.g. `https://github.com/org/repo/blob/main/`). An
24
+ * empty string disables the edit button entirely.
25
+ */
26
+ sourceEdit: string;
27
+ /**
28
+ * Footer items mirror the `menu` shape but with no nested sub-menus.
29
+ * Each item is one of:
30
+ * - a bare markdown file name (string) — title is read from the file's H1
31
+ * - `null` — rendered as a vertical separator
32
+ * - a single-key object — the key is the link text, the value is either
33
+ * an internal markdown path or an external URL (http/https)
34
+ */
35
+ footer: FooterItem[];
12
36
  };
13
37
  menu: MenuItem[];
14
- footer: string[];
15
- server: {
38
+ paths: {
39
+ input: string;
40
+ build: string;
16
41
  output: string;
17
- path: string;
18
- repo: string;
19
- gitBranch: string;
20
42
  };
21
43
  site: {
22
44
  canonical: string;
45
+ favicon: string;
23
46
  name: string;
24
47
  };
25
48
  themes: {
@@ -31,6 +54,19 @@ export interface MdsiteConfig {
31
54
  };
32
55
  };
33
56
  }
57
+ /**
58
+ * Recursive variant of `Partial<T>` for object shapes. Recurses into nested
59
+ * objects so callers can override a single leaf field without restating the
60
+ * rest of the tree. Arrays are passed through unchanged — they should be
61
+ * replaced wholesale, not partially merged — and primitives pass through too.
62
+ *
63
+ * Use this for test/build helpers that layer overrides over a full default
64
+ * object — `Partial<MdsiteConfig>` is too shallow because it only makes the
65
+ * top-level keys optional.
66
+ */
67
+ export type DeepPartial<T> = T extends ReadonlyArray<unknown> ? T : T extends object ? {
68
+ [K in keyof T]?: DeepPartial<T[K]>;
69
+ } : T;
34
70
  export interface LoadedMdsiteConfig {
35
71
  config: MdsiteConfig;
36
72
  configDir: string;