@sveltepress/create 0.22.5 → 0.24.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/dist/index.cjs +36 -27
- package/package.json +1 -1
- package/template-js/package.json +4 -4
- package/template-ts/package.json +4 -4
package/dist/index.cjs
CHANGED
|
@@ -8,8 +8,17 @@ const minimist = require('minimist');
|
|
|
8
8
|
const prompts = require('prompts');
|
|
9
9
|
const pc = require('picocolors');
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e.default : e; }
|
|
12
|
+
|
|
13
|
+
const fs__default = /*#__PURE__*/_interopDefaultCompat(fs);
|
|
14
|
+
const path__default = /*#__PURE__*/_interopDefaultCompat(path);
|
|
15
|
+
const spawn__default = /*#__PURE__*/_interopDefaultCompat(spawn);
|
|
16
|
+
const minimist__default = /*#__PURE__*/_interopDefaultCompat(minimist);
|
|
17
|
+
const prompts__default = /*#__PURE__*/_interopDefaultCompat(prompts);
|
|
18
|
+
const pc__default = /*#__PURE__*/_interopDefaultCompat(pc);
|
|
19
|
+
|
|
20
|
+
const { yellow, blue, reset, red } = pc__default;
|
|
21
|
+
const argv = minimist__default(process.argv.slice(2), { string: ["_"] });
|
|
13
22
|
const cwd = process.cwd();
|
|
14
23
|
const FRAMEWORKS = [
|
|
15
24
|
{
|
|
@@ -34,10 +43,10 @@ async function init() {
|
|
|
34
43
|
const argTargetDir = formatTargetDir(argv._[0]);
|
|
35
44
|
const argTemplate = argv.template || argv.t;
|
|
36
45
|
let targetDir = argTargetDir || defaultTargetDir;
|
|
37
|
-
const getProjectName = () => targetDir === "." ?
|
|
46
|
+
const getProjectName = () => targetDir === "." ? path__default.basename(path__default.resolve()) : targetDir;
|
|
38
47
|
let result;
|
|
39
48
|
try {
|
|
40
|
-
result = await
|
|
49
|
+
result = await prompts__default(
|
|
41
50
|
[
|
|
42
51
|
{
|
|
43
52
|
type: argTargetDir ? null : "text",
|
|
@@ -49,7 +58,7 @@ async function init() {
|
|
|
49
58
|
}
|
|
50
59
|
},
|
|
51
60
|
{
|
|
52
|
-
type: () => !
|
|
61
|
+
type: () => !fs__default.existsSync(targetDir) || isEmpty(targetDir) ? null : "confirm",
|
|
53
62
|
name: "overwrite",
|
|
54
63
|
message: () => `${targetDir === "." ? "Current directory" : `Target directory "${targetDir}"`} is not empty. Remove existing files and continue?`
|
|
55
64
|
},
|
|
@@ -98,11 +107,11 @@ async function init() {
|
|
|
98
107
|
return;
|
|
99
108
|
}
|
|
100
109
|
const { language, overwrite, packageName } = result;
|
|
101
|
-
const root =
|
|
110
|
+
const root = path__default.join(cwd, targetDir);
|
|
102
111
|
if (overwrite)
|
|
103
112
|
emptyDir(root);
|
|
104
|
-
else if (!
|
|
105
|
-
|
|
113
|
+
else if (!fs__default.existsSync(root))
|
|
114
|
+
fs__default.mkdirSync(root, { recursive: true });
|
|
106
115
|
const template = language || argTemplate;
|
|
107
116
|
const pkgInfo = pkgFromUserAgent(process.env.npm_config_user_agent);
|
|
108
117
|
const pkgManager = pkgInfo ? pkgInfo.name : "npm";
|
|
@@ -117,36 +126,36 @@ async function init() {
|
|
|
117
126
|
return "npm exec";
|
|
118
127
|
});
|
|
119
128
|
const [command, ...args] = fullCustomCommand.split(" ");
|
|
120
|
-
const { status } =
|
|
129
|
+
const { status } = spawn__default.sync(command, args, {
|
|
121
130
|
stdio: "inherit"
|
|
122
131
|
});
|
|
123
132
|
process.exit(status ?? 0);
|
|
124
133
|
}
|
|
125
134
|
console.log(`
|
|
126
135
|
Scaffolding project in ${root}...`);
|
|
127
|
-
const templateDir =
|
|
128
|
-
node_url.fileURLToPath((typeof document === 'undefined' ?
|
|
136
|
+
const templateDir = path__default.resolve(
|
|
137
|
+
node_url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (document.currentScript && document.currentScript.src || new URL('index.cjs', document.baseURI).href))),
|
|
129
138
|
"../..",
|
|
130
139
|
`template-${template}`
|
|
131
140
|
);
|
|
132
141
|
const write = (file, content) => {
|
|
133
|
-
const targetPath =
|
|
142
|
+
const targetPath = path__default.join(root, renameFiles[file] ?? file);
|
|
134
143
|
if (content)
|
|
135
|
-
|
|
144
|
+
fs__default.writeFileSync(targetPath, content);
|
|
136
145
|
else
|
|
137
|
-
copy(
|
|
146
|
+
copy(path__default.join(templateDir, file), targetPath);
|
|
138
147
|
};
|
|
139
|
-
const files =
|
|
148
|
+
const files = fs__default.readdirSync(templateDir);
|
|
140
149
|
for (const file of files.filter((f) => f !== "package.json"))
|
|
141
150
|
write(file);
|
|
142
151
|
const pkg = JSON.parse(
|
|
143
|
-
|
|
152
|
+
fs__default.readFileSync(path__default.join(templateDir, "package.json"), "utf-8")
|
|
144
153
|
);
|
|
145
154
|
pkg.name = packageName || getProjectName();
|
|
146
155
|
write("package.json", JSON.stringify(pkg, null, 2));
|
|
147
156
|
console.log("\nDone. Now run:\n");
|
|
148
157
|
if (root !== cwd)
|
|
149
|
-
console.log(` cd ${
|
|
158
|
+
console.log(` cd ${path__default.relative(cwd, root)}`);
|
|
150
159
|
switch (pkgManager) {
|
|
151
160
|
case "yarn":
|
|
152
161
|
console.log(" yarn");
|
|
@@ -163,11 +172,11 @@ function formatTargetDir(targetDir) {
|
|
|
163
172
|
return targetDir?.trim().replace(/\/+$/g, "");
|
|
164
173
|
}
|
|
165
174
|
function copy(src, dest) {
|
|
166
|
-
const stat =
|
|
175
|
+
const stat = fs__default.statSync(src);
|
|
167
176
|
if (stat.isDirectory())
|
|
168
177
|
copyDir(src, dest);
|
|
169
178
|
else
|
|
170
|
-
|
|
179
|
+
fs__default.copyFileSync(src, dest);
|
|
171
180
|
}
|
|
172
181
|
function isValidPackageName(projectName) {
|
|
173
182
|
return /^(?:@[a-z\d\-*~][a-z\d\-*._~]*\/)?[a-z\d\-~][a-z\d\-._~]*$/.test(
|
|
@@ -178,24 +187,24 @@ function toValidPackageName(projectName) {
|
|
|
178
187
|
return projectName.trim().toLowerCase().replace(/\s+/g, "-").replace(/^[._]/, "").replace(/[^a-z\d\-~]+/g, "-");
|
|
179
188
|
}
|
|
180
189
|
function copyDir(srcDir, destDir) {
|
|
181
|
-
|
|
182
|
-
for (const file of
|
|
183
|
-
const srcFile =
|
|
184
|
-
const destFile =
|
|
190
|
+
fs__default.mkdirSync(destDir, { recursive: true });
|
|
191
|
+
for (const file of fs__default.readdirSync(srcDir)) {
|
|
192
|
+
const srcFile = path__default.resolve(srcDir, file);
|
|
193
|
+
const destFile = path__default.resolve(destDir, file);
|
|
185
194
|
copy(srcFile, destFile);
|
|
186
195
|
}
|
|
187
196
|
}
|
|
188
197
|
function isEmpty(path2) {
|
|
189
|
-
const files =
|
|
198
|
+
const files = fs__default.readdirSync(path2);
|
|
190
199
|
return files.length === 0 || files.length === 1 && files[0] === ".git";
|
|
191
200
|
}
|
|
192
201
|
function emptyDir(dir) {
|
|
193
|
-
if (!
|
|
202
|
+
if (!fs__default.existsSync(dir))
|
|
194
203
|
return;
|
|
195
|
-
for (const file of
|
|
204
|
+
for (const file of fs__default.readdirSync(dir)) {
|
|
196
205
|
if (file === ".git")
|
|
197
206
|
continue;
|
|
198
|
-
|
|
207
|
+
fs__default.rmSync(path__default.resolve(dir, file), { recursive: true, force: true });
|
|
199
208
|
}
|
|
200
209
|
}
|
|
201
210
|
function pkgFromUserAgent(userAgent) {
|
package/package.json
CHANGED
package/template-js/package.json
CHANGED
|
@@ -7,13 +7,13 @@
|
|
|
7
7
|
"build": "vite build"
|
|
8
8
|
},
|
|
9
9
|
"devDependencies": {
|
|
10
|
-
"@sveltepress/theme-default": "^1.
|
|
11
|
-
"@sveltepress/vite": "^0.
|
|
10
|
+
"@sveltepress/theme-default": "^1.3.0",
|
|
11
|
+
"@sveltepress/vite": "^0.19.0",
|
|
12
12
|
"@sveltejs/adapter-static": "^2.0.1",
|
|
13
|
-
"@sveltejs/kit": "^1.
|
|
13
|
+
"@sveltejs/kit": "^1.16.2",
|
|
14
14
|
"@types/node": "^18.11.17",
|
|
15
15
|
"svelte": "^3.55.1",
|
|
16
|
-
"vite": "^4.
|
|
16
|
+
"vite": "^4.3.5"
|
|
17
17
|
},
|
|
18
18
|
"type": "module",
|
|
19
19
|
"license": "MIT"
|
package/template-ts/package.json
CHANGED
|
@@ -7,14 +7,14 @@
|
|
|
7
7
|
"build": "vite build"
|
|
8
8
|
},
|
|
9
9
|
"devDependencies": {
|
|
10
|
-
"@sveltepress/theme-default": "^1.
|
|
11
|
-
"@sveltepress/vite": "^0.
|
|
10
|
+
"@sveltepress/theme-default": "^1.3.0",
|
|
11
|
+
"@sveltepress/vite": "^0.19.0",
|
|
12
12
|
"@sveltejs/adapter-static": "^2.0.1",
|
|
13
|
-
"@sveltejs/kit": "^1.
|
|
13
|
+
"@sveltejs/kit": "^1.16.2",
|
|
14
14
|
"@types/node": "^18.11.17",
|
|
15
15
|
"svelte": "^3.55.1",
|
|
16
16
|
"typescript": "^4.9.3",
|
|
17
|
-
"vite": "^4.
|
|
17
|
+
"vite": "^4.3.5"
|
|
18
18
|
},
|
|
19
19
|
"type": "module",
|
|
20
20
|
"license": "MIT"
|