create-astro 4.7.1 → 4.7.3
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 +28 -21
- package/dist/messages.d.ts +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -162,7 +162,7 @@ var require_arg = __commonJS({
|
|
|
162
162
|
fn[flagSymbol] = true;
|
|
163
163
|
return fn;
|
|
164
164
|
};
|
|
165
|
-
arg2.COUNT = arg2.flag((
|
|
165
|
+
arg2.COUNT = arg2.flag((v, name, existingCount) => (existingCount || 0) + 1);
|
|
166
166
|
arg2.ArgError = ArgError;
|
|
167
167
|
module.exports = arg2;
|
|
168
168
|
}
|
|
@@ -229,13 +229,20 @@ async function shell(command, flags, opts = {}) {
|
|
|
229
229
|
}
|
|
230
230
|
|
|
231
231
|
// src/messages.ts
|
|
232
|
+
var _registry;
|
|
232
233
|
async function getRegistry(packageManager) {
|
|
234
|
+
if (_registry)
|
|
235
|
+
return _registry;
|
|
236
|
+
const fallback = "https://registry.npmjs.org";
|
|
233
237
|
try {
|
|
234
238
|
const { stdout: stdout2 } = await shell(packageManager, ["config", "get", "registry"]);
|
|
235
|
-
|
|
239
|
+
_registry = stdout2?.trim()?.replace(/\/$/, "") || fallback;
|
|
240
|
+
if (!new URL(_registry).host)
|
|
241
|
+
_registry = fallback;
|
|
236
242
|
} catch (e) {
|
|
237
|
-
|
|
243
|
+
_registry = fallback;
|
|
238
244
|
}
|
|
245
|
+
return _registry;
|
|
239
246
|
}
|
|
240
247
|
var stdout = process.stdout;
|
|
241
248
|
function setStdout(writable) {
|
|
@@ -258,17 +265,15 @@ var getName = () => new Promise((resolve) => {
|
|
|
258
265
|
});
|
|
259
266
|
});
|
|
260
267
|
});
|
|
261
|
-
var
|
|
262
|
-
var getVersion = (packageManager) => new Promise(async (resolve) => {
|
|
263
|
-
if (v)
|
|
264
|
-
return resolve(v);
|
|
268
|
+
var getVersion = (packageManager, packageName, fallback = "") => new Promise(async (resolve) => {
|
|
265
269
|
let registry = await getRegistry(packageManager);
|
|
266
|
-
const { version } = await fetch(`${registry}/
|
|
270
|
+
const { version } = await fetch(`${registry}/${packageName}/latest`, {
|
|
271
|
+
redirect: "follow"
|
|
272
|
+
}).then(
|
|
267
273
|
(res) => res.json(),
|
|
268
|
-
() => ({ version:
|
|
274
|
+
() => ({ version: fallback })
|
|
269
275
|
);
|
|
270
|
-
|
|
271
|
-
resolve(version);
|
|
276
|
+
return resolve(version);
|
|
272
277
|
});
|
|
273
278
|
var log = (message) => stdout.write(message + "\n");
|
|
274
279
|
var banner = () => {
|
|
@@ -361,7 +366,7 @@ function printHelp({
|
|
|
361
366
|
if (headline) {
|
|
362
367
|
message.push(
|
|
363
368
|
linebreak(),
|
|
364
|
-
`${title(commandName)} ${color.green(`v${"4.7.
|
|
369
|
+
`${title(commandName)} ${color.green(`v${"4.7.3"}`)} ${headline}`
|
|
365
370
|
);
|
|
366
371
|
}
|
|
367
372
|
if (usage) {
|
|
@@ -538,14 +543,14 @@ async function getContext(argv) {
|
|
|
538
543
|
if (typescript2 == void 0)
|
|
539
544
|
typescript2 = "strict";
|
|
540
545
|
}
|
|
541
|
-
skipHouston = (os.platform() === "win32" && !fancy || skipHouston) ?? [yes, no, install2, git2, typescript2].some((
|
|
546
|
+
skipHouston = (os.platform() === "win32" && !fancy || skipHouston) ?? [yes, no, install2, git2, typescript2].some((v) => v !== void 0);
|
|
542
547
|
const { messages, hats, ties } = getSeasonalHouston({ fancy });
|
|
543
548
|
const context = {
|
|
544
549
|
help: help2,
|
|
545
550
|
prompt,
|
|
546
551
|
packageManager,
|
|
547
552
|
username: getName(),
|
|
548
|
-
version: getVersion(packageManager),
|
|
553
|
+
version: getVersion(packageManager, "astro"),
|
|
549
554
|
skipHouston,
|
|
550
555
|
fancy,
|
|
551
556
|
dryRun,
|
|
@@ -1129,19 +1134,21 @@ async function typescript(ctx) {
|
|
|
1129
1134
|
var FILES_TO_UPDATE2 = {
|
|
1130
1135
|
"package.json": async (file, options) => {
|
|
1131
1136
|
try {
|
|
1132
|
-
if (options.ctx.install)
|
|
1133
|
-
await shell(options.ctx.packageManager, ["add", "@astrojs/check", "typescript"], {
|
|
1134
|
-
cwd: path6.dirname(file),
|
|
1135
|
-
stdio: "ignore"
|
|
1136
|
-
});
|
|
1137
1137
|
const data = await readFile(file, { encoding: "utf-8" });
|
|
1138
1138
|
const indent = /(^\s+)/m.exec(data)?.[1] ?? " ";
|
|
1139
1139
|
const parsedPackageJson = JSON.parse(data);
|
|
1140
1140
|
const buildScript = parsedPackageJson.scripts?.build;
|
|
1141
1141
|
if (typeof buildScript === "string" && !buildScript.includes("astro check")) {
|
|
1142
1142
|
parsedPackageJson.scripts.build = `astro check && ${buildScript}`;
|
|
1143
|
-
await writeFile(file, JSON.stringify(parsedPackageJson, null, indent), "utf-8");
|
|
1144
1143
|
}
|
|
1144
|
+
const [astroCheckVersion, typescriptVersion] = await Promise.all([
|
|
1145
|
+
getVersion(options.ctx.packageManager, "@astrojs/check"),
|
|
1146
|
+
getVersion(options.ctx.packageManager, "typescript")
|
|
1147
|
+
]);
|
|
1148
|
+
parsedPackageJson.dependencies ??= {};
|
|
1149
|
+
parsedPackageJson.dependencies["@astrojs/check"] = `^${astroCheckVersion}`;
|
|
1150
|
+
parsedPackageJson.dependencies.typescript = `^${typescriptVersion}`;
|
|
1151
|
+
await writeFile(file, JSON.stringify(parsedPackageJson, null, indent), "utf-8");
|
|
1145
1152
|
} catch (err) {
|
|
1146
1153
|
if (err && err.code === "ENOENT")
|
|
1147
1154
|
return;
|
|
@@ -1256,8 +1263,8 @@ async function main() {
|
|
|
1256
1263
|
intro,
|
|
1257
1264
|
projectName,
|
|
1258
1265
|
template,
|
|
1259
|
-
dependencies,
|
|
1260
1266
|
typescript,
|
|
1267
|
+
dependencies,
|
|
1261
1268
|
// Steps which write to files need to go above git
|
|
1262
1269
|
git
|
|
1263
1270
|
];
|
package/dist/messages.d.ts
CHANGED
|
@@ -11,7 +11,7 @@ export declare function spinner(args: {
|
|
|
11
11
|
}): Promise<void>;
|
|
12
12
|
export declare const title: (text: string) => string;
|
|
13
13
|
export declare const getName: () => Promise<string>;
|
|
14
|
-
export declare const getVersion: (packageManager: string) => Promise<string>;
|
|
14
|
+
export declare const getVersion: (packageManager: string, packageName: string, fallback?: string) => Promise<string>;
|
|
15
15
|
export declare const log: (message: string) => boolean;
|
|
16
16
|
export declare const banner: () => void;
|
|
17
17
|
export declare const bannerAbort: () => boolean;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-astro",
|
|
3
|
-
"version": "4.7.
|
|
3
|
+
"version": "4.7.3",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"author": "withastro",
|
|
6
6
|
"license": "MIT",
|
|
@@ -46,6 +46,6 @@
|
|
|
46
46
|
"build": "astro-scripts build \"src/index.ts\" --bundle && tsc",
|
|
47
47
|
"build:ci": "astro-scripts build \"src/index.ts\" --bundle",
|
|
48
48
|
"dev": "astro-scripts dev \"src/**/*.ts\"",
|
|
49
|
-
"test": "
|
|
49
|
+
"test": "astro-scripts test \"test/**/*.test.js\""
|
|
50
50
|
}
|
|
51
51
|
}
|