rspress 2.0.0-beta.10 → 2.0.0-beta.12
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/dist/index.js +25 -83
- package/package.json +6 -6
package/dist/index.js
CHANGED
@@ -1,98 +1,41 @@
|
|
1
|
-
import
|
2
|
-
import
|
3
|
-
import
|
4
|
-
import
|
5
|
-
import
|
6
|
-
import
|
7
|
-
import
|
8
|
-
import
|
9
|
-
|
10
|
-
|
11
|
-
var package_namespaceObject = JSON.parse('{"i8":"2.0.0-beta.10"}');
|
12
|
-
const findConfig = (basePath)=>__WEBPACK_EXTERNAL_MODULE__rspress_shared_constants_70084e62__.DEFAULT_CONFIG_EXTENSIONS.map((ext)=>basePath + ext).find(__WEBPACK_EXTERNAL_MODULE_node_fs_5ea92f0c__["default"].existsSync);
|
1
|
+
import external_node_path_default from "node:path";
|
2
|
+
import { build, dev, serve } from "@rspress/core";
|
3
|
+
import { logger } from "@rspress/shared/logger";
|
4
|
+
import { cac } from "cac";
|
5
|
+
import external_chokidar_default from "chokidar";
|
6
|
+
import external_picocolors_default from "picocolors";
|
7
|
+
import external_node_fs_default from "node:fs";
|
8
|
+
import { DEFAULT_CONFIG_EXTENSIONS, DEFAULT_CONFIG_NAME } from "@rspress/shared/constants";
|
9
|
+
var package_namespaceObject = JSON.parse('{"i8":"2.0.0-beta.12"}');
|
10
|
+
const findConfig = (basePath)=>DEFAULT_CONFIG_EXTENSIONS.map((ext)=>basePath + ext).find(external_node_fs_default.existsSync);
|
13
11
|
async function loadConfigFile(customConfigFile) {
|
14
12
|
const baseDir = process.cwd();
|
15
13
|
let configFilePath = '';
|
16
|
-
configFilePath = customConfigFile ?
|
14
|
+
configFilePath = customConfigFile ? external_node_path_default.isAbsolute(customConfigFile) ? customConfigFile : external_node_path_default.join(baseDir, customConfigFile) : findConfig(external_node_path_default.join(baseDir, DEFAULT_CONFIG_NAME));
|
17
15
|
if (!configFilePath) {
|
18
|
-
|
16
|
+
logger.info(`No config file found in ${baseDir}`);
|
19
17
|
return {};
|
20
18
|
}
|
21
19
|
const { loadConfig } = await import("@rsbuild/core");
|
22
20
|
const { content } = await loadConfig({
|
23
|
-
cwd:
|
21
|
+
cwd: external_node_path_default.dirname(configFilePath),
|
24
22
|
path: configFilePath
|
25
23
|
});
|
26
24
|
return content;
|
27
25
|
}
|
28
26
|
function resolveDocRoot(cwd, cliRoot, configRoot) {
|
29
|
-
if (cliRoot) return
|
30
|
-
if (configRoot) return
|
31
|
-
return
|
32
|
-
}
|
33
|
-
async function pathExists(path) {
|
34
|
-
try {
|
35
|
-
await __WEBPACK_EXTERNAL_MODULE_node_fs_promises_153e37e0__["default"].access(path);
|
36
|
-
return true;
|
37
|
-
} catch {
|
38
|
-
return false;
|
39
|
-
}
|
40
|
-
}
|
41
|
-
const lockfileMap = {
|
42
|
-
'package-lock.json': 'npm',
|
43
|
-
'yarn.lock': 'yarn',
|
44
|
-
'pnpm-lock.yaml': 'pnpm',
|
45
|
-
'bun.lockb': 'bun'
|
46
|
-
};
|
47
|
-
async function getPackageManager(rootPath) {
|
48
|
-
let packageManager = 'npm';
|
49
|
-
for (const file of Object.keys(lockfileMap))if (await pathExists(__WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].join(rootPath, file))) {
|
50
|
-
packageManager = lockfileMap[file];
|
51
|
-
break;
|
52
|
-
}
|
53
|
-
return packageManager;
|
54
|
-
}
|
55
|
-
async function getRspressDependencies(rootPath) {
|
56
|
-
const packageJson = JSON.parse(await __WEBPACK_EXTERNAL_MODULE_node_fs_promises_153e37e0__["default"].readFile(__WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].join(rootPath, 'package.json'), {
|
57
|
-
encoding: 'utf-8'
|
58
|
-
}));
|
59
|
-
const dependencies = packageJson?.dependencies ? Object.keys(packageJson.dependencies) : [];
|
60
|
-
const devDependencies = packageJson?.devDependencies ? Object.keys(packageJson.devDependencies) : [];
|
61
|
-
return dependencies.concat(devDependencies).filter((item)=>item.startsWith('@rspress') || item.startsWith('rspress'));
|
62
|
-
}
|
63
|
-
async function update() {
|
64
|
-
const cwd = process.cwd();
|
65
|
-
const packageManager = await getPackageManager(cwd);
|
66
|
-
const rspressDependencies = await getRspressDependencies(cwd);
|
67
|
-
__WEBPACK_EXTERNAL_MODULE__rspress_shared_logger_4374e44a__.logger.greet(`Using ${packageManager} to update ${rspressDependencies.join(' ')}`);
|
68
|
-
if ('npm' === packageManager || 'bun' === packageManager) {
|
69
|
-
const dependencies = rspressDependencies.map((item)=>`${item}@latest`);
|
70
|
-
(0, __WEBPACK_EXTERNAL_MODULE_node_child_process_27f17141__.spawn)(packageManager, [
|
71
|
-
'install',
|
72
|
-
'--save',
|
73
|
-
...dependencies
|
74
|
-
], {
|
75
|
-
stdio: 'inherit'
|
76
|
-
});
|
77
|
-
} else {
|
78
|
-
const subCommand = 'yarn' === packageManager ? 'upgrade' : 'update';
|
79
|
-
(0, __WEBPACK_EXTERNAL_MODULE_node_child_process_27f17141__.spawn)(packageManager, [
|
80
|
-
subCommand,
|
81
|
-
'--latest',
|
82
|
-
...rspressDependencies
|
83
|
-
], {
|
84
|
-
stdio: 'inherit'
|
85
|
-
});
|
86
|
-
}
|
27
|
+
if (cliRoot) return external_node_path_default.join(cwd, cliRoot);
|
28
|
+
if (configRoot) return external_node_path_default.isAbsolute(configRoot) ? configRoot : external_node_path_default.join(cwd, configRoot);
|
29
|
+
return external_node_path_default.join(cwd, 'docs');
|
87
30
|
}
|
88
31
|
const CONFIG_FILES = [
|
89
32
|
'rspress.config.ts',
|
90
33
|
'rspress.config.js'
|
91
34
|
];
|
92
35
|
const META_FILE = '_meta.json';
|
93
|
-
const cli =
|
36
|
+
const cli = cac('rspress').version(package_namespaceObject.i8).help();
|
94
37
|
const landingMessage = `\u{1F525} Rspress v${package_namespaceObject.i8}\n`;
|
95
|
-
|
38
|
+
logger.greet(landingMessage);
|
96
39
|
const setNodeEnv = (env)=>{
|
97
40
|
process.env.NODE_ENV = env;
|
98
41
|
};
|
@@ -108,7 +51,7 @@ cli.command('[root]', 'start dev server').alias('dev').option('--port [port]', '
|
|
108
51
|
const config = await loadConfigFile(options?.config);
|
109
52
|
config.root = resolveDocRoot(cwd, root, config.root);
|
110
53
|
const docDirectory = config.root;
|
111
|
-
devServer = await
|
54
|
+
devServer = await dev({
|
112
55
|
appDirectory: cwd,
|
113
56
|
docDirectory,
|
114
57
|
config,
|
@@ -119,7 +62,7 @@ cli.command('[root]', 'start dev server').alias('dev').option('--port [port]', '
|
|
119
62
|
}
|
120
63
|
}
|
121
64
|
});
|
122
|
-
cliWatcher =
|
65
|
+
cliWatcher = external_chokidar_default.watch([
|
123
66
|
`${cwd}/**/{${CONFIG_FILES.join(',')}}`,
|
124
67
|
docDirectory
|
125
68
|
], {
|
@@ -131,11 +74,11 @@ cli.command('[root]', 'start dev server').alias('dev').option('--port [port]', '
|
|
131
74
|
]
|
132
75
|
});
|
133
76
|
cliWatcher.on('all', async (eventName, filepath)=>{
|
134
|
-
if ('add' === eventName || 'unlink' === eventName || 'change' === eventName && (CONFIG_FILES.includes(
|
77
|
+
if ('add' === eventName || 'unlink' === eventName || 'change' === eventName && (CONFIG_FILES.includes(external_node_path_default.basename(filepath)) || external_node_path_default.basename(filepath) === META_FILE)) {
|
135
78
|
if (isRestarting) return;
|
136
79
|
isRestarting = true;
|
137
80
|
console.log(`
|
138
|
-
\u{2728} ${eventName} ${
|
81
|
+
\u{2728} ${eventName} ${external_picocolors_default.green(external_node_path_default.relative(cwd, filepath))}, dev server will restart...\n`);
|
139
82
|
await devServer.close();
|
140
83
|
await cliWatcher.close();
|
141
84
|
await startDevServer();
|
@@ -162,12 +105,12 @@ cli.command('build [root]').action(async (root, options)=>{
|
|
162
105
|
config.root = resolveDocRoot(cwd, root, config.root);
|
163
106
|
const docDirectory = config.root;
|
164
107
|
try {
|
165
|
-
await
|
108
|
+
await build({
|
166
109
|
docDirectory,
|
167
110
|
config
|
168
111
|
});
|
169
112
|
} catch (err) {
|
170
|
-
|
113
|
+
logger.error(err);
|
171
114
|
process.exit(1);
|
172
115
|
}
|
173
116
|
});
|
@@ -177,11 +120,10 @@ cli.command('preview [root]').alias('serve').option('--port [port]', 'port numbe
|
|
177
120
|
const { port, host } = options || {};
|
178
121
|
const config = await loadConfigFile(options?.config);
|
179
122
|
config.root = resolveDocRoot(cwd, root, config.root);
|
180
|
-
await
|
123
|
+
await serve({
|
181
124
|
config,
|
182
125
|
host,
|
183
126
|
port
|
184
127
|
});
|
185
128
|
});
|
186
|
-
cli.command('update', 'update relevant packages about rspress').action(update);
|
187
129
|
cli.parse();
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "rspress",
|
3
|
-
"version": "2.0.0-beta.
|
3
|
+
"version": "2.0.0-beta.12",
|
4
4
|
"repository": {
|
5
5
|
"type": "git",
|
6
6
|
"url": "git+https://github.com/web-infra-dev/rspress.git",
|
@@ -37,19 +37,19 @@
|
|
37
37
|
"meta-json-schema.json"
|
38
38
|
],
|
39
39
|
"dependencies": {
|
40
|
-
"@rsbuild/core": "~1.3.
|
40
|
+
"@rsbuild/core": "~1.3.22",
|
41
41
|
"cac": "^6.7.14",
|
42
42
|
"chokidar": "^3.6.0",
|
43
43
|
"picocolors": "^1.1.1",
|
44
|
-
"@rspress/core": "2.0.0-beta.
|
45
|
-
"@rspress/shared": "2.0.0-beta.
|
44
|
+
"@rspress/core": "2.0.0-beta.12",
|
45
|
+
"@rspress/shared": "2.0.0-beta.12"
|
46
46
|
},
|
47
47
|
"devDependencies": {
|
48
48
|
"@microsoft/api-extractor": "^7.52.8",
|
49
|
-
"@rslib/core": "0.
|
49
|
+
"@rslib/core": "0.9.2",
|
50
50
|
"@types/jest": "~29.5.14",
|
51
51
|
"@types/node": "^22.8.1",
|
52
|
-
"@types/react": "^
|
52
|
+
"@types/react": "^19.1.6",
|
53
53
|
"rimraf": "^6.0.1",
|
54
54
|
"rsbuild-plugin-publint": "^0.3.2",
|
55
55
|
"ts-json-schema-generator": "^2.4.0",
|