create-astro 4.8.2 → 4.8.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 +212 -53
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,6 +1,176 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __commonJS = (cb, mod) => function __require() {
|
|
8
|
+
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
19
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
20
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
21
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
22
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
23
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
24
|
+
mod
|
|
25
|
+
));
|
|
26
|
+
|
|
27
|
+
// ../../node_modules/.pnpm/arg@5.0.2/node_modules/arg/index.js
|
|
28
|
+
var require_arg = __commonJS({
|
|
29
|
+
"../../node_modules/.pnpm/arg@5.0.2/node_modules/arg/index.js"(exports, module) {
|
|
30
|
+
var flagSymbol = Symbol("arg flag");
|
|
31
|
+
var ArgError = class _ArgError extends Error {
|
|
32
|
+
constructor(msg, code) {
|
|
33
|
+
super(msg);
|
|
34
|
+
this.name = "ArgError";
|
|
35
|
+
this.code = code;
|
|
36
|
+
Object.setPrototypeOf(this, _ArgError.prototype);
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
function arg2(opts, {
|
|
40
|
+
argv = process.argv.slice(2),
|
|
41
|
+
permissive = false,
|
|
42
|
+
stopAtPositional = false
|
|
43
|
+
} = {}) {
|
|
44
|
+
if (!opts) {
|
|
45
|
+
throw new ArgError(
|
|
46
|
+
"argument specification object is required",
|
|
47
|
+
"ARG_CONFIG_NO_SPEC"
|
|
48
|
+
);
|
|
49
|
+
}
|
|
50
|
+
const result = { _: [] };
|
|
51
|
+
const aliases = {};
|
|
52
|
+
const handlers = {};
|
|
53
|
+
for (const key of Object.keys(opts)) {
|
|
54
|
+
if (!key) {
|
|
55
|
+
throw new ArgError(
|
|
56
|
+
"argument key cannot be an empty string",
|
|
57
|
+
"ARG_CONFIG_EMPTY_KEY"
|
|
58
|
+
);
|
|
59
|
+
}
|
|
60
|
+
if (key[0] !== "-") {
|
|
61
|
+
throw new ArgError(
|
|
62
|
+
`argument key must start with '-' but found: '${key}'`,
|
|
63
|
+
"ARG_CONFIG_NONOPT_KEY"
|
|
64
|
+
);
|
|
65
|
+
}
|
|
66
|
+
if (key.length === 1) {
|
|
67
|
+
throw new ArgError(
|
|
68
|
+
`argument key must have a name; singular '-' keys are not allowed: ${key}`,
|
|
69
|
+
"ARG_CONFIG_NONAME_KEY"
|
|
70
|
+
);
|
|
71
|
+
}
|
|
72
|
+
if (typeof opts[key] === "string") {
|
|
73
|
+
aliases[key] = opts[key];
|
|
74
|
+
continue;
|
|
75
|
+
}
|
|
76
|
+
let type = opts[key];
|
|
77
|
+
let isFlag = false;
|
|
78
|
+
if (Array.isArray(type) && type.length === 1 && typeof type[0] === "function") {
|
|
79
|
+
const [fn] = type;
|
|
80
|
+
type = (value, name, prev = []) => {
|
|
81
|
+
prev.push(fn(value, name, prev[prev.length - 1]));
|
|
82
|
+
return prev;
|
|
83
|
+
};
|
|
84
|
+
isFlag = fn === Boolean || fn[flagSymbol] === true;
|
|
85
|
+
} else if (typeof type === "function") {
|
|
86
|
+
isFlag = type === Boolean || type[flagSymbol] === true;
|
|
87
|
+
} else {
|
|
88
|
+
throw new ArgError(
|
|
89
|
+
`type missing or not a function or valid array type: ${key}`,
|
|
90
|
+
"ARG_CONFIG_VAD_TYPE"
|
|
91
|
+
);
|
|
92
|
+
}
|
|
93
|
+
if (key[1] !== "-" && key.length > 2) {
|
|
94
|
+
throw new ArgError(
|
|
95
|
+
`short argument keys (with a single hyphen) must have only one character: ${key}`,
|
|
96
|
+
"ARG_CONFIG_SHORTOPT_TOOLONG"
|
|
97
|
+
);
|
|
98
|
+
}
|
|
99
|
+
handlers[key] = [type, isFlag];
|
|
100
|
+
}
|
|
101
|
+
for (let i = 0, len = argv.length; i < len; i++) {
|
|
102
|
+
const wholeArg = argv[i];
|
|
103
|
+
if (stopAtPositional && result._.length > 0) {
|
|
104
|
+
result._ = result._.concat(argv.slice(i));
|
|
105
|
+
break;
|
|
106
|
+
}
|
|
107
|
+
if (wholeArg === "--") {
|
|
108
|
+
result._ = result._.concat(argv.slice(i + 1));
|
|
109
|
+
break;
|
|
110
|
+
}
|
|
111
|
+
if (wholeArg.length > 1 && wholeArg[0] === "-") {
|
|
112
|
+
const separatedArguments = wholeArg[1] === "-" || wholeArg.length === 2 ? [wholeArg] : wholeArg.slice(1).split("").map((a) => `-${a}`);
|
|
113
|
+
for (let j = 0; j < separatedArguments.length; j++) {
|
|
114
|
+
const arg3 = separatedArguments[j];
|
|
115
|
+
const [originalArgName, argStr] = arg3[1] === "-" ? arg3.split(/=(.*)/, 2) : [arg3, void 0];
|
|
116
|
+
let argName = originalArgName;
|
|
117
|
+
while (argName in aliases) {
|
|
118
|
+
argName = aliases[argName];
|
|
119
|
+
}
|
|
120
|
+
if (!(argName in handlers)) {
|
|
121
|
+
if (permissive) {
|
|
122
|
+
result._.push(arg3);
|
|
123
|
+
continue;
|
|
124
|
+
} else {
|
|
125
|
+
throw new ArgError(
|
|
126
|
+
`unknown or unexpected option: ${originalArgName}`,
|
|
127
|
+
"ARG_UNKNOWN_OPTION"
|
|
128
|
+
);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
const [type, isFlag] = handlers[argName];
|
|
132
|
+
if (!isFlag && j + 1 < separatedArguments.length) {
|
|
133
|
+
throw new ArgError(
|
|
134
|
+
`option requires argument (but was followed by another short argument): ${originalArgName}`,
|
|
135
|
+
"ARG_MISSING_REQUIRED_SHORTARG"
|
|
136
|
+
);
|
|
137
|
+
}
|
|
138
|
+
if (isFlag) {
|
|
139
|
+
result[argName] = type(true, argName, result[argName]);
|
|
140
|
+
} else if (argStr === void 0) {
|
|
141
|
+
if (argv.length < i + 2 || argv[i + 1].length > 1 && argv[i + 1][0] === "-" && !(argv[i + 1].match(/^-?\d*(\.(?=\d))?\d*$/) && (type === Number || // eslint-disable-next-line no-undef
|
|
142
|
+
typeof BigInt !== "undefined" && type === BigInt))) {
|
|
143
|
+
const extended = originalArgName === argName ? "" : ` (alias for ${argName})`;
|
|
144
|
+
throw new ArgError(
|
|
145
|
+
`option requires argument: ${originalArgName}${extended}`,
|
|
146
|
+
"ARG_MISSING_REQUIRED_LONGARG"
|
|
147
|
+
);
|
|
148
|
+
}
|
|
149
|
+
result[argName] = type(argv[i + 1], argName, result[argName]);
|
|
150
|
+
++i;
|
|
151
|
+
} else {
|
|
152
|
+
result[argName] = type(argStr, argName, result[argName]);
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
} else {
|
|
156
|
+
result._.push(wholeArg);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
return result;
|
|
160
|
+
}
|
|
161
|
+
arg2.flag = (fn) => {
|
|
162
|
+
fn[flagSymbol] = true;
|
|
163
|
+
return fn;
|
|
164
|
+
};
|
|
165
|
+
arg2.COUNT = arg2.flag((v, name, existingCount) => (existingCount || 0) + 1);
|
|
166
|
+
arg2.ArgError = ArgError;
|
|
167
|
+
module.exports = arg2;
|
|
168
|
+
}
|
|
169
|
+
});
|
|
170
|
+
|
|
1
171
|
// src/actions/context.ts
|
|
172
|
+
var import_arg = __toESM(require_arg(), 1);
|
|
2
173
|
import os from "node:os";
|
|
3
|
-
import { parseArgs } from "node:util";
|
|
4
174
|
import { prompt } from "@astrojs/cli-kit";
|
|
5
175
|
import { random } from "@astrojs/cli-kit/utils";
|
|
6
176
|
|
|
@@ -293,7 +463,7 @@ function printHelp({
|
|
|
293
463
|
if (headline) {
|
|
294
464
|
message.push(
|
|
295
465
|
linebreak(),
|
|
296
|
-
`${title(commandName)} ${color.green(`v${"4.8.
|
|
466
|
+
`${title(commandName)} ${color.green(`v${"4.8.3"}`)} ${headline}`
|
|
297
467
|
);
|
|
298
468
|
}
|
|
299
469
|
if (usage) {
|
|
@@ -318,70 +488,59 @@ function printHelp({
|
|
|
318
488
|
|
|
319
489
|
// src/actions/context.ts
|
|
320
490
|
async function getContext(argv) {
|
|
321
|
-
const
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
"
|
|
332
|
-
|
|
333
|
-
"
|
|
334
|
-
|
|
335
|
-
"
|
|
336
|
-
"
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
}
|
|
340
|
-
|
|
491
|
+
const flags = (0, import_arg.default)(
|
|
492
|
+
{
|
|
493
|
+
"--template": String,
|
|
494
|
+
"--ref": String,
|
|
495
|
+
"--yes": Boolean,
|
|
496
|
+
"--no": Boolean,
|
|
497
|
+
"--install": Boolean,
|
|
498
|
+
"--no-install": Boolean,
|
|
499
|
+
"--git": Boolean,
|
|
500
|
+
"--no-git": Boolean,
|
|
501
|
+
"--typescript": String,
|
|
502
|
+
"--skip-houston": Boolean,
|
|
503
|
+
"--dry-run": Boolean,
|
|
504
|
+
"--help": Boolean,
|
|
505
|
+
"--fancy": Boolean,
|
|
506
|
+
"-y": "--yes",
|
|
507
|
+
"-n": "--no",
|
|
508
|
+
"-h": "--help"
|
|
509
|
+
},
|
|
510
|
+
{ argv, permissive: true }
|
|
511
|
+
);
|
|
341
512
|
const packageManager = detectPackageManager() ?? "npm";
|
|
342
|
-
|
|
513
|
+
let cwd = flags["_"][0];
|
|
343
514
|
let {
|
|
344
|
-
help: help2,
|
|
345
|
-
template: template2,
|
|
346
|
-
no,
|
|
347
|
-
yes,
|
|
348
|
-
install: install2,
|
|
349
|
-
"no-install": noInstall,
|
|
350
|
-
git: git2,
|
|
351
|
-
"no-git": noGit,
|
|
352
|
-
typescript: typescript2,
|
|
353
|
-
fancy,
|
|
354
|
-
"skip-houston": skipHouston,
|
|
355
|
-
"dry-run": dryRun,
|
|
356
|
-
ref
|
|
357
|
-
} =
|
|
515
|
+
"--help": help2 = false,
|
|
516
|
+
"--template": template2,
|
|
517
|
+
"--no": no,
|
|
518
|
+
"--yes": yes,
|
|
519
|
+
"--install": install2,
|
|
520
|
+
"--no-install": noInstall,
|
|
521
|
+
"--git": git2,
|
|
522
|
+
"--no-git": noGit,
|
|
523
|
+
"--typescript": typescript2,
|
|
524
|
+
"--fancy": fancy,
|
|
525
|
+
"--skip-houston": skipHouston,
|
|
526
|
+
"--dry-run": dryRun,
|
|
527
|
+
"--ref": ref
|
|
528
|
+
} = flags;
|
|
529
|
+
let projectName2 = cwd;
|
|
358
530
|
if (no) {
|
|
359
531
|
yes = false;
|
|
360
532
|
if (install2 == void 0) install2 = false;
|
|
361
533
|
if (git2 == void 0) git2 = false;
|
|
362
534
|
if (typescript2 == void 0) typescript2 = "strict";
|
|
363
535
|
}
|
|
364
|
-
skipHouston = typeof skipHouston == "boolean" ? skipHouston : void 0;
|
|
365
536
|
skipHouston = (os.platform() === "win32" && !fancy || skipHouston) ?? [yes, no, install2, git2, typescript2].some((v) => v !== void 0);
|
|
366
|
-
help2 = !!help2;
|
|
367
|
-
template2 = typeof template2 == "string" ? template2 : void 0;
|
|
368
|
-
no = !!no;
|
|
369
|
-
yes = !!yes;
|
|
370
|
-
install2 = !!install2;
|
|
371
|
-
noInstall = !!noInstall;
|
|
372
|
-
git2 = !!git2;
|
|
373
|
-
noGit = !!noGit;
|
|
374
|
-
typescript2 = typeof typescript2 == "string" ? typescript2 : void 0;
|
|
375
|
-
fancy = !!fancy;
|
|
376
|
-
dryRun = !!dryRun;
|
|
377
|
-
ref = typeof ref == "string" ? ref : void 0;
|
|
378
537
|
const { messages, hats, ties } = getSeasonalHouston({ fancy });
|
|
379
538
|
const context = {
|
|
380
539
|
help: help2,
|
|
381
540
|
prompt,
|
|
382
541
|
packageManager,
|
|
383
542
|
username: getName(),
|
|
384
|
-
version: getVersion(packageManager, "astro", "4.14.
|
|
543
|
+
version: getVersion(packageManager, "astro", "4.14.2"),
|
|
385
544
|
skipHouston,
|
|
386
545
|
fancy,
|
|
387
546
|
dryRun,
|
|
@@ -395,7 +554,7 @@ async function getContext(argv) {
|
|
|
395
554
|
install: install2 ?? (noInstall ? false : void 0),
|
|
396
555
|
git: git2 ?? (noGit ? false : void 0),
|
|
397
556
|
typescript: typescript2,
|
|
398
|
-
cwd
|
|
557
|
+
cwd,
|
|
399
558
|
exit(code) {
|
|
400
559
|
process.exit(code);
|
|
401
560
|
},
|
|
@@ -1087,7 +1246,7 @@ process.on("SIGINT", exit);
|
|
|
1087
1246
|
process.on("SIGTERM", exit);
|
|
1088
1247
|
async function main() {
|
|
1089
1248
|
console.log("");
|
|
1090
|
-
const cleanArgv = process.argv.slice(2).filter((
|
|
1249
|
+
const cleanArgv = process.argv.slice(2).filter((arg2) => arg2 !== "--");
|
|
1091
1250
|
const ctx = await getContext(cleanArgv);
|
|
1092
1251
|
if (ctx.help) {
|
|
1093
1252
|
help();
|