@tnotesjs/core 0.4.0 → 0.4.2
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.
|
@@ -17,6 +17,21 @@ import fs3 from "fs";
|
|
|
17
17
|
import path5 from "path";
|
|
18
18
|
import { defineConfig } from "vitepress";
|
|
19
19
|
|
|
20
|
+
// vitepress/config/dependencyOptimization.ts
|
|
21
|
+
var DEFAULT_OPTIMIZE_DEPS_INCLUDE = [
|
|
22
|
+
// VitePress 内部 CJS 依赖 —— 需要 Vite 预构建为 ESM
|
|
23
|
+
"vitepress > @vscode/markdown-it-katex",
|
|
24
|
+
"vitepress > @braintree/sanitize-url",
|
|
25
|
+
"vitepress > dayjs",
|
|
26
|
+
"vitepress > dayjs/plugin/utc",
|
|
27
|
+
"vitepress > dayjs/plugin/localizedFormat",
|
|
28
|
+
// Mermaid 11 的 ESM chunk 默认导入 CommonJS fastdom。pnpm 的严格
|
|
29
|
+
// 依赖布局下 Vite 无法从知识库根目录自动发现这条嵌套依赖,开发
|
|
30
|
+
// 模式会直接把 fastdom.js 当作 ESM 加载并导致整页白屏。
|
|
31
|
+
"@tnotesjs/core > mermaid > fastdom",
|
|
32
|
+
"@tnotesjs/core > mermaid > fastdom/extensions/fastdom-promised.js"
|
|
33
|
+
];
|
|
34
|
+
|
|
20
35
|
// vitepress/configs/constants.ts
|
|
21
36
|
function getIgnoreList(config) {
|
|
22
37
|
return [...config.ignore_dirs.map((dir) => `**/${dir}/**`)];
|
|
@@ -1789,14 +1804,7 @@ function defineNotesConfig(overrides = {}) {
|
|
|
1789
1804
|
...overrideVite?.resolve
|
|
1790
1805
|
},
|
|
1791
1806
|
optimizeDeps: {
|
|
1792
|
-
include: [
|
|
1793
|
-
// VitePress 内部 CJS 依赖 —— 需要 Vite 预构建为 ESM
|
|
1794
|
-
"vitepress > @vscode/markdown-it-katex",
|
|
1795
|
-
"vitepress > @braintree/sanitize-url",
|
|
1796
|
-
"vitepress > dayjs",
|
|
1797
|
-
"vitepress > dayjs/plugin/utc",
|
|
1798
|
-
"vitepress > dayjs/plugin/localizedFormat"
|
|
1799
|
-
],
|
|
1807
|
+
include: [...DEFAULT_OPTIMIZE_DEPS_INCLUDE],
|
|
1800
1808
|
...overrideVite?.optimizeDeps
|
|
1801
1809
|
}
|
|
1802
1810
|
},
|
package/package.json
CHANGED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest'
|
|
2
|
+
|
|
3
|
+
import { DEFAULT_OPTIMIZE_DEPS_INCLUDE } from './dependencyOptimization'
|
|
4
|
+
|
|
5
|
+
describe('Vite dependency optimization', () => {
|
|
6
|
+
it('pre-bundles Mermaid nested CommonJS fastdom dependency', () => {
|
|
7
|
+
expect(DEFAULT_OPTIMIZE_DEPS_INCLUDE).toEqual(
|
|
8
|
+
expect.arrayContaining([
|
|
9
|
+
'@tnotesjs/core > mermaid > fastdom',
|
|
10
|
+
'@tnotesjs/core > mermaid > fastdom/extensions/fastdom-promised.js',
|
|
11
|
+
]),
|
|
12
|
+
)
|
|
13
|
+
})
|
|
14
|
+
})
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export const DEFAULT_OPTIMIZE_DEPS_INCLUDE = [
|
|
2
|
+
// VitePress 内部 CJS 依赖 —— 需要 Vite 预构建为 ESM
|
|
3
|
+
'vitepress > @vscode/markdown-it-katex',
|
|
4
|
+
'vitepress > @braintree/sanitize-url',
|
|
5
|
+
'vitepress > dayjs',
|
|
6
|
+
'vitepress > dayjs/plugin/utc',
|
|
7
|
+
'vitepress > dayjs/plugin/localizedFormat',
|
|
8
|
+
// Mermaid 11 的 ESM chunk 默认导入 CommonJS fastdom。pnpm 的严格
|
|
9
|
+
// 依赖布局下 Vite 无法从知识库根目录自动发现这条嵌套依赖,开发
|
|
10
|
+
// 模式会直接把 fastdom.js 当作 ESM 加载并导致整页白屏。
|
|
11
|
+
'@tnotesjs/core > mermaid > fastdom',
|
|
12
|
+
'@tnotesjs/core > mermaid > fastdom/extensions/fastdom-promised.js',
|
|
13
|
+
] as const
|
|
@@ -12,6 +12,7 @@ import fs from 'fs'
|
|
|
12
12
|
import path from 'path'
|
|
13
13
|
import { defineConfig, type UserConfig } from 'vitepress'
|
|
14
14
|
|
|
15
|
+
import { DEFAULT_OPTIMIZE_DEPS_INCLUDE } from './dependencyOptimization'
|
|
15
16
|
import { ConfigManager } from '../../config/ConfigManager'
|
|
16
17
|
import {
|
|
17
18
|
getIgnoreList,
|
|
@@ -110,14 +111,7 @@ export function defineNotesConfig(overrides: UserConfig = {}) {
|
|
|
110
111
|
...overrideVite?.resolve,
|
|
111
112
|
},
|
|
112
113
|
optimizeDeps: {
|
|
113
|
-
include: [
|
|
114
|
-
// VitePress 内部 CJS 依赖 —— 需要 Vite 预构建为 ESM
|
|
115
|
-
'vitepress > @vscode/markdown-it-katex',
|
|
116
|
-
'vitepress > @braintree/sanitize-url',
|
|
117
|
-
'vitepress > dayjs',
|
|
118
|
-
'vitepress > dayjs/plugin/utc',
|
|
119
|
-
'vitepress > dayjs/plugin/localizedFormat',
|
|
120
|
-
],
|
|
114
|
+
include: [...DEFAULT_OPTIMIZE_DEPS_INCLUDE],
|
|
121
115
|
...overrideVite?.optimizeDeps,
|
|
122
116
|
},
|
|
123
117
|
},
|