create-vxrn 1.25.3 → 1.25.5
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/package.json +2 -2
- package/.turbo/turbo-build.log +0 -2
- package/dist/cjs/create.cjs +0 -236
- package/dist/cjs/create.native.js +0 -273
- package/dist/cjs/create.native.js.map +0 -1
- package/dist/cjs/helpers/cloneStarter.cjs +0 -122
- package/dist/cjs/helpers/cloneStarter.native.js +0 -127
- package/dist/cjs/helpers/cloneStarter.native.js.map +0 -1
- package/dist/cjs/helpers/getProjectName.cjs +0 -82
- package/dist/cjs/helpers/getProjectName.native.js +0 -85
- package/dist/cjs/helpers/getProjectName.native.js.map +0 -1
- package/dist/cjs/helpers/getTemplateInfo.cjs +0 -68
- package/dist/cjs/helpers/getTemplateInfo.native.js +0 -81
- package/dist/cjs/helpers/getTemplateInfo.native.js.map +0 -1
- package/dist/cjs/helpers/installDependencies.cjs +0 -55
- package/dist/cjs/helpers/installDependencies.native.js +0 -58
- package/dist/cjs/helpers/installDependencies.native.js.map +0 -1
- package/dist/cjs/helpers/validateNpmPackage.cjs +0 -51
- package/dist/cjs/helpers/validateNpmPackage.native.js +0 -54
- package/dist/cjs/helpers/validateNpmPackage.native.js.map +0 -1
- package/dist/cjs/index.cjs +0 -98
- package/dist/cjs/index.native.js +0 -102
- package/dist/cjs/index.native.js.map +0 -1
- package/dist/cjs/steps/bare.cjs +0 -109
- package/dist/cjs/steps/bare.native.js +0 -134
- package/dist/cjs/steps/bare.native.js.map +0 -1
- package/dist/cjs/steps/fullstack.cjs +0 -57
- package/dist/cjs/steps/fullstack.native.js +0 -63
- package/dist/cjs/steps/fullstack.native.js.map +0 -1
- package/dist/cjs/steps/one.cjs +0 -106
- package/dist/cjs/steps/one.native.js +0 -113
- package/dist/cjs/steps/one.native.js.map +0 -1
- package/dist/cjs/steps/types.cjs +0 -18
- package/dist/cjs/steps/types.native.js +0 -21
- package/dist/cjs/steps/types.native.js.map +0 -1
- package/dist/cjs/templates.cjs +0 -73
- package/dist/cjs/templates.native.js +0 -76
- package/dist/cjs/templates.native.js.map +0 -1
- package/dist/esm/create.mjs +0 -199
- package/dist/esm/create.mjs.map +0 -1
- package/dist/esm/create.native.js +0 -233
- package/dist/esm/create.native.js.map +0 -1
- package/dist/esm/helpers/cloneStarter.mjs +0 -97
- package/dist/esm/helpers/cloneStarter.mjs.map +0 -1
- package/dist/esm/helpers/cloneStarter.native.js +0 -99
- package/dist/esm/helpers/cloneStarter.native.js.map +0 -1
- package/dist/esm/helpers/getProjectName.mjs +0 -46
- package/dist/esm/helpers/getProjectName.mjs.map +0 -1
- package/dist/esm/helpers/getProjectName.native.js +0 -46
- package/dist/esm/helpers/getProjectName.native.js.map +0 -1
- package/dist/esm/helpers/getTemplateInfo.mjs +0 -32
- package/dist/esm/helpers/getTemplateInfo.mjs.map +0 -1
- package/dist/esm/helpers/getTemplateInfo.native.js +0 -42
- package/dist/esm/helpers/getTemplateInfo.native.js.map +0 -1
- package/dist/esm/helpers/installDependencies.mjs +0 -30
- package/dist/esm/helpers/installDependencies.mjs.map +0 -1
- package/dist/esm/helpers/installDependencies.native.js +0 -30
- package/dist/esm/helpers/installDependencies.native.js.map +0 -1
- package/dist/esm/helpers/validateNpmPackage.mjs +0 -15
- package/dist/esm/helpers/validateNpmPackage.mjs.map +0 -1
- package/dist/esm/helpers/validateNpmPackage.native.js +0 -15
- package/dist/esm/helpers/validateNpmPackage.native.js.map +0 -1
- package/dist/esm/index.js +0 -74
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/index.mjs +0 -74
- package/dist/esm/index.mjs.map +0 -1
- package/dist/esm/index.native.js +0 -75
- package/dist/esm/index.native.js.map +0 -1
- package/dist/esm/steps/bare.mjs +0 -72
- package/dist/esm/steps/bare.mjs.map +0 -1
- package/dist/esm/steps/bare.native.js +0 -94
- package/dist/esm/steps/bare.native.js.map +0 -1
- package/dist/esm/steps/fullstack.mjs +0 -21
- package/dist/esm/steps/fullstack.mjs.map +0 -1
- package/dist/esm/steps/fullstack.native.js +0 -24
- package/dist/esm/steps/fullstack.native.js.map +0 -1
- package/dist/esm/steps/one.mjs +0 -69
- package/dist/esm/steps/one.mjs.map +0 -1
- package/dist/esm/steps/one.native.js +0 -73
- package/dist/esm/steps/one.native.js.map +0 -1
- package/dist/esm/steps/types.mjs +0 -2
- package/dist/esm/steps/types.mjs.map +0 -1
- package/dist/esm/steps/types.native.js +0 -2
- package/dist/esm/steps/types.native.js.map +0 -1
- package/dist/esm/templates.mjs +0 -37
- package/dist/esm/templates.mjs.map +0 -1
- package/dist/esm/templates.native.js +0 -37
- package/dist/esm/templates.native.js.map +0 -1
|
@@ -1,233 +0,0 @@
|
|
|
1
|
-
import ansis from "ansis";
|
|
2
|
-
import FSExtra from "fs-extra";
|
|
3
|
-
import { execSync, exec } from "child_process";
|
|
4
|
-
import fs from "fs";
|
|
5
|
-
import path from "path";
|
|
6
|
-
import { promisify } from "util";
|
|
7
|
-
import { fileURLToPath } from "url";
|
|
8
|
-
import { cloneStarter } from "./helpers/cloneStarter.native.js";
|
|
9
|
-
import { getProjectName } from "./helpers/getProjectName.native.js";
|
|
10
|
-
import { getTemplateInfo } from "./helpers/getTemplateInfo.native.js";
|
|
11
|
-
import { installDependencies } from "./helpers/installDependencies.native.js";
|
|
12
|
-
import { validateNpmName } from "./helpers/validateNpmPackage.native.js";
|
|
13
|
-
import prompts from "prompts";
|
|
14
|
-
import { detectPackageManager } from "@vxrn/utils";
|
|
15
|
-
function _instanceof(left, right) {
|
|
16
|
-
if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
|
|
17
|
-
return !!right[Symbol.hasInstance](left);
|
|
18
|
-
} else {
|
|
19
|
-
return left instanceof right;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
var {
|
|
23
|
-
existsSync,
|
|
24
|
-
readFileSync,
|
|
25
|
-
writeFileSync
|
|
26
|
-
} = FSExtra;
|
|
27
|
-
async function create(args) {
|
|
28
|
-
var gitVersionString = Number.parseFloat(execSync(`git --version`).toString().replace(`git version `, "").trim());
|
|
29
|
-
if (gitVersionString < 2.27) {
|
|
30
|
-
console.error(`
|
|
31
|
-
|
|
32
|
-
! vxrn can't install: Git version must be >= 2.27
|
|
33
|
-
|
|
34
|
-
`);
|
|
35
|
-
process.exit(1);
|
|
36
|
-
}
|
|
37
|
-
var projectName = args.name || "";
|
|
38
|
-
var resolvedProjectPath = path.resolve(process.cwd(), projectName);
|
|
39
|
-
async function promptForName() {
|
|
40
|
-
projectName = await getProjectName();
|
|
41
|
-
resolvedProjectPath = path.resolve(process.cwd(), projectName);
|
|
42
|
-
}
|
|
43
|
-
if (projectName) {
|
|
44
|
-
if (fs.existsSync(resolvedProjectPath)) {
|
|
45
|
-
console.error(`Error: folder already exists: ${resolvedProjectPath}`);
|
|
46
|
-
process.exit(1);
|
|
47
|
-
}
|
|
48
|
-
} else {
|
|
49
|
-
await promptForName();
|
|
50
|
-
while (fs.existsSync(resolvedProjectPath)) {
|
|
51
|
-
console.info();
|
|
52
|
-
console.info(ansis.yellow("!"), `The folder ${ansis.underline(ansis.blueBright(projectName))} already exists, lets try another name`);
|
|
53
|
-
console.info();
|
|
54
|
-
console.info();
|
|
55
|
-
await promptForName();
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
console.info();
|
|
59
|
-
var template = await getTemplateInfo(args.template);
|
|
60
|
-
if (template.type === "external-link") {
|
|
61
|
-
var url = template.externalUrl;
|
|
62
|
-
console.info();
|
|
63
|
-
console.info(ansis.green(`Opening ${url}...`));
|
|
64
|
-
console.info();
|
|
65
|
-
var openCmd = process.platform === "darwin" ? "open" : process.platform === "win32" ? "start" : "xdg-open";
|
|
66
|
-
exec(`${openCmd} ${url}`);
|
|
67
|
-
process.exit(0);
|
|
68
|
-
}
|
|
69
|
-
var {
|
|
70
|
-
valid,
|
|
71
|
-
problems
|
|
72
|
-
} = validateNpmName(projectName);
|
|
73
|
-
if (!valid) {
|
|
74
|
-
console.error(`Could not create a project called ${ansis.red(`"${projectName}"`)} because of npm naming restrictions:`);
|
|
75
|
-
problems.forEach(function (p) {
|
|
76
|
-
return console.error(` ${ansis.red.bold("*")} ${p}`);
|
|
77
|
-
});
|
|
78
|
-
process.exit(1);
|
|
79
|
-
}
|
|
80
|
-
console.info();
|
|
81
|
-
var Spinner = await import("yocto-spinner").then(function (x) {
|
|
82
|
-
return x.default;
|
|
83
|
-
});
|
|
84
|
-
var spinner = Spinner({
|
|
85
|
-
text: `Creating...`,
|
|
86
|
-
spinner: {
|
|
87
|
-
frames: ["\u280B", "\u2819", "\u2839", "\u2838", "\u283C", "\u2834", "\u2826", "\u2827", "\u2807", "\u280F"],
|
|
88
|
-
interval: 100
|
|
89
|
-
}
|
|
90
|
-
}).start();
|
|
91
|
-
await FSExtra.mkdir(resolvedProjectPath);
|
|
92
|
-
try {
|
|
93
|
-
await cloneStarter(template, resolvedProjectPath);
|
|
94
|
-
process.chdir(resolvedProjectPath);
|
|
95
|
-
} catch (e) {
|
|
96
|
-
console.error(`[vxrn] Failed to copy example into ${resolvedProjectPath}
|
|
97
|
-
|
|
98
|
-
`, e);
|
|
99
|
-
process.exit(1);
|
|
100
|
-
}
|
|
101
|
-
spinner.stop();
|
|
102
|
-
console.info();
|
|
103
|
-
console.info();
|
|
104
|
-
console.info(ansis.green(`${projectName} created!`));
|
|
105
|
-
console.info();
|
|
106
|
-
console.info();
|
|
107
|
-
var packageJson = await async function () {
|
|
108
|
-
var errorMessages = [];
|
|
109
|
-
try {
|
|
110
|
-
var dirname = typeof __dirname !== "undefined" ? __dirname : path.dirname(fileURLToPath(import.meta.url));
|
|
111
|
-
var possiblePaths = [path.join(dirname, "..", "package.json"), path.join(dirname, "..", "..", "package.json"), path.join(dirname, "..", "..", "..", "package.json")];
|
|
112
|
-
var readFile = promisify(fs.readFile);
|
|
113
|
-
var _iteratorNormalCompletion = true,
|
|
114
|
-
_didIteratorError = false,
|
|
115
|
-
_iteratorError = void 0;
|
|
116
|
-
try {
|
|
117
|
-
for (var _iterator = possiblePaths[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
118
|
-
var p = _step.value;
|
|
119
|
-
try {
|
|
120
|
-
var data = JSON.parse(await readFile(p));
|
|
121
|
-
return data;
|
|
122
|
-
} catch (e) {
|
|
123
|
-
if (_instanceof(e, Error)) errorMessages.push(e.message);
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
} catch (err) {
|
|
127
|
-
_didIteratorError = true;
|
|
128
|
-
_iteratorError = err;
|
|
129
|
-
} finally {
|
|
130
|
-
try {
|
|
131
|
-
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
132
|
-
_iterator.return();
|
|
133
|
-
}
|
|
134
|
-
} finally {
|
|
135
|
-
if (_didIteratorError) {
|
|
136
|
-
throw _iteratorError;
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
throw new Error("package.json not found in any of the expected locations.");
|
|
141
|
-
} catch (e) {
|
|
142
|
-
console.error("Failed to load package.json:", errorMessages.join("\n"));
|
|
143
|
-
throw e;
|
|
144
|
-
}
|
|
145
|
-
}();
|
|
146
|
-
updatePackageJsonName(projectName, resolvedProjectPath);
|
|
147
|
-
updatePackageJsonVersions(packageJson.version, resolvedProjectPath);
|
|
148
|
-
updateAppJsonName(projectName, resolvedProjectPath);
|
|
149
|
-
var packageManager = await async function () {
|
|
150
|
-
if ("packageManager" in template) {
|
|
151
|
-
return template.packageManager;
|
|
152
|
-
}
|
|
153
|
-
var found = await detectPackageManager();
|
|
154
|
-
var allFound = Object.keys(found);
|
|
155
|
-
if (allFound.length === 1) {
|
|
156
|
-
return allFound[0];
|
|
157
|
-
}
|
|
158
|
-
var response = await prompts({
|
|
159
|
-
name: "packageManager",
|
|
160
|
-
type: "select",
|
|
161
|
-
message: `Package Manager:`,
|
|
162
|
-
choices: allFound.filter(function (x) {
|
|
163
|
-
return found[x];
|
|
164
|
-
}).map(function (name) {
|
|
165
|
-
return {
|
|
166
|
-
title: name,
|
|
167
|
-
value: name
|
|
168
|
-
};
|
|
169
|
-
})
|
|
170
|
-
});
|
|
171
|
-
return response.packageManager;
|
|
172
|
-
}();
|
|
173
|
-
console.info();
|
|
174
|
-
if ("preInstall" in template) {
|
|
175
|
-
await template.preInstall({
|
|
176
|
-
packageManager,
|
|
177
|
-
isFullClone: true,
|
|
178
|
-
projectName,
|
|
179
|
-
projectPath: resolvedProjectPath
|
|
180
|
-
});
|
|
181
|
-
}
|
|
182
|
-
try {
|
|
183
|
-
console.info();
|
|
184
|
-
console.info(ansis.green(`Installing with ${packageManager}...`));
|
|
185
|
-
console.info();
|
|
186
|
-
await installDependencies(resolvedProjectPath, packageManager);
|
|
187
|
-
} catch (e) {
|
|
188
|
-
console.error("[vxrn] error installing with " + packageManager + `
|
|
189
|
-
${e}`);
|
|
190
|
-
process.exit(1);
|
|
191
|
-
}
|
|
192
|
-
var envDefault = path.join(resolvedProjectPath, ".env.default");
|
|
193
|
-
var env = path.join(resolvedProjectPath, ".env");
|
|
194
|
-
if (existsSync(envDefault) && !existsSync(env)) {
|
|
195
|
-
await FSExtra.move(envDefault, env);
|
|
196
|
-
}
|
|
197
|
-
if ("extraSteps" in template) {
|
|
198
|
-
await template.extraSteps({
|
|
199
|
-
packageManager,
|
|
200
|
-
isFullClone: true,
|
|
201
|
-
projectName,
|
|
202
|
-
projectPath: resolvedProjectPath
|
|
203
|
-
});
|
|
204
|
-
}
|
|
205
|
-
console.info();
|
|
206
|
-
}
|
|
207
|
-
function updatePackageJsonName(projectName, dir) {
|
|
208
|
-
var packageJsonPath = path.join(dir, "package.json");
|
|
209
|
-
if (existsSync(packageJsonPath)) {
|
|
210
|
-
var content = readFileSync(packageJsonPath).toString();
|
|
211
|
-
var contentWithUpdatedName = content.replace(/("name": ")(.*)(",)/, `$1${projectName}$3`);
|
|
212
|
-
writeFileSync(packageJsonPath, contentWithUpdatedName);
|
|
213
|
-
}
|
|
214
|
-
}
|
|
215
|
-
function updatePackageJsonVersions(version, dir) {
|
|
216
|
-
var packageJsonPath = path.join(dir, "package.json");
|
|
217
|
-
if (existsSync(packageJsonPath)) {
|
|
218
|
-
var content = readFileSync(packageJsonPath).toString();
|
|
219
|
-
var contentWithUpdatedVersions = content.replace(/"workspace:\^"/gm, `"^${version}"`).replace(/"workspace:~"/gm, `"~${version}"`).replace(/"workspace:\*"/gm, `"^${version}"`);
|
|
220
|
-
writeFileSync(packageJsonPath, contentWithUpdatedVersions);
|
|
221
|
-
}
|
|
222
|
-
}
|
|
223
|
-
function updateAppJsonName(projectName, dir) {
|
|
224
|
-
var appJsonPath = path.join(dir, "app.json");
|
|
225
|
-
if (existsSync(appJsonPath)) {
|
|
226
|
-
var content = readFileSync(appJsonPath).toString();
|
|
227
|
-
var projectSlug = projectName.toLowerCase().replace(/\s/g, "-");
|
|
228
|
-
var contentWithUpdatedName = content.replace(/("name": ")(.*)(",)/, `$1${projectName}$3`).replace(/("slug": ")(.*)(",)/, `$1${projectSlug}$3`);
|
|
229
|
-
writeFileSync(appJsonPath, contentWithUpdatedName);
|
|
230
|
-
}
|
|
231
|
-
}
|
|
232
|
-
export { create };
|
|
233
|
-
//# sourceMappingURL=create.native.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["ansis","FSExtra","execSync","exec","fs","path","promisify","fileURLToPath","cloneStarter","getProjectName","getTemplateInfo","installDependencies","validateNpmName","prompts","detectPackageManager","_instanceof","left","right","Symbol","hasInstance","existsSync","readFileSync","writeFileSync","create","args","gitVersionString","Number","parseFloat","toString","replace","trim","console","error","process","exit","projectName","name","resolvedProjectPath","resolve","cwd","promptForName","info","yellow","underline","blueBright","template","type","url","externalUrl","green","openCmd","platform","valid","problems","red","forEach","p","bold","Spinner","then","x","default","spinner","text","frames","interval","start","mkdir","chdir","e","stop","packageJson","errorMessages","dirname","__dirname","import","meta","possiblePaths","join","readFile","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","iterator","_step","next","done","value","data","JSON","parse","Error","push","message","err","return","updatePackageJsonName","updatePackageJsonVersions","version","updateAppJsonName","packageManager","found","allFound","Object","keys","length","response","choices","filter","map","title","preInstall","isFullClone","projectPath","envDefault","env","move","extraSteps"],"sources":["../../src/create.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,KAAA,MAAW;AAClB,OAAOC,OAAA,MAAa;AACpB,SAASC,QAAA,EAAUC,IAAA,QAAY;AAC/B,OAAOC,EAAA,MAAQ;AACf,OAAOC,IAAA,MAAU;AACjB,SAASC,SAAA,QAAiB;AAC1B,SAASC,aAAA,QAAqB;AAC9B,SAASC,YAAA,QAAoB;AAC7B,SAASC,cAAA,QAAsB;AAC/B,SAASC,eAAA,QAAuB;AAChC,SAASC,mBAAA,QAA2B;AACpC,SAASC,eAAA,QAAuB;AAChC,OAAOC,OAAA,MAAa;AACpB,SAASC,oBAAA,QAAqD;AAE9D,SAAQC,WAAYA,CAAAC,IAAA,EAAAC,KAAA,EAAc;EAElC,IAAAA,KAAA,IAAsB,QAAO,OAA4CC,MAAA,oBAAAD,KAAA,CAAAC,MAAA,CAAAC,WAAA;IACvE,OAAM,EAAAF,KAAA,CAAAC,MAAA,CAAAC,WAA0B,EAAAH,IAAA;EAAA,OAC9B;IACF,OAAAA,IAAA,YAAAC,KAAA;EACA;AACE;AAAc;EAAAG,UAAA;EAAAC,YAAA;EAAAC;AAAA,IAAArB,OAAA;AAAA,eAAAsB,OAAAC,IAAA;EAAA,IAAAC,gBAAA,GAAAC,MAAA,CAAAC,UAAA,CAAAzB,QAAA,kBAAA0B,QAAA,GAAAC,OAAA,qBAAAC,IAAA;EAA4D,IAAAL,gBAAA;IAC1EM,OAAA,CAAQC,KAAK,CAAC;AAAA;AAGhB;AACA;AAEA;IACEC,OAAA,CAAAC,IAAA,EAAc;EACd;EACF,IAAAC,WAAA,GAAAX,IAAA,CAAAY,IAAA;EAEA,IAAIC,mBAAa,GAAAhC,IAAA,CAAAiC,OAAA,CAAAL,OAAA,CAAAM,GAAA,IAAAJ,WAAA;EACf,eAAOK,aAAWA,CAAA;IAChBL,WAAQ,SAAM1B,cAAA;IACd4B,mBAAc,GAAAhC,IAAA,CAAAiC,OAAA,CAAAL,OAAA,CAAAM,GAAA,IAAAJ,WAAA;EAAA;EAElB,IAAAA,WAAO;IACL,IAAA/B,EAAM,CAAAgB,UAAA,CAAAiB,mBAAc;MAEpBN,OAAO,CAAGC,KAAA,kCAAiCK,mBAAA;MACzCJ,OAAA,CAAQC,IAAA,CAAK;IACb;EAAQ,OACN;IAAgB,MAChBM,aAAc;IAAM,OAClBpC,EAAA,CAAAgB,UAAM,CAAAiB,mBAAsB;MAAAN,OAC7B,CAAAU,IAAA;MACHV,OAAA,CAAAU,IAAA,CAAAzC,KAAA,CAAA0C,MAAA,qBAAA1C,KAAA,CAAA2C,SAAA,CAAA3C,KAAA,CAAA4C,UAAA,CAAAT,WAAA;MACAJ,OAAA,CAAQU,IAAA,CAAK;MACbV,OAAA,CAAQU,IAAA,CAAK;MACb,MAAMD,aAAA,CAAc;IACtB;EACF;EAGAT,OAAA,CAAQU,IAAA,CAAK;EAEb,IAAII,QAAA,GAAW,MAAMnC,eAAA,CAAgBc,IAAA,CAAKqB,QAAQ;EAGlD,IAAIA,QAAA,CAASC,IAAA,KAAS,iBAAiB;IACrC,IAAAC,GAAM,GAAAF,QAAO,CAAAG,WAAiB;IAC9BjB,OAAA,CAAQU,IAAA,CAAK;IACbV,OAAA,CAAQU,IAAA,CAAKzC,KAAA,CAAMiD,KAAA,CAAM,WAAWF,GAAG,KAAK,CAAC;IAC7ChB,OAAA,CAAQU,IAAA,CAAK;IACb,IAAAS,OAAM,GAAAjB,OACJ,CAAAkB,QAAQ,aAAa,SACjB,GAAAlB,OACA,CAAAkB,QAAQ,YAAa,UACnB,aACA;IACRhD,IAAA,CAAK,GAAG+C,OAAO,IAAIH,GAAG,EAAE;IACxBd,OAAA,CAAQC,IAAA,CAAK,CAAC;EAChB;EAEA;IAAMkB,KAAE;IAAAC;EAAO,IAASzC,eAAI,CAAAuB,WAAgB;EAC5C,IAAI,CAACiB,KAAA,EAAO;IACVrB,OAAA,CAAQC,KAAA,sCAAAhC,KAAA,CAAAsD,GAAA,KAAAnB,WAAA;IAAAkB,QACN,CAAAE,OAAA,WAAAC,CAAA;MAA2C,OACrCzB,OAAA,CAAAC,KAAW,QAAAhC,KAAA,CAAAsD,GAAA,CAAAG,IAAA,SAAAD,CAAA;IAAA,EACjB;IACFvB,OAAA,CAAAC,IAAA;EAEA;EACAH,OAAA,CAAAU,IAAQ;EACV,IAAAiB,OAAA,iCAAAC,IAAA,WAAAC,CAAA;IAEA,OAAQA,CAAA,CAAAC,OAAK;EAEb;EAEA,IAAAC,OAAM,GAAAJ,OAAU;IACdK,IAAA,EAAM;IACND,OAAA,EAAS;MACPE,MAAA,EAAQ,CACR,QAAU,EACZ,UACC,QAAM,EAEH,QAAQ,EAEV,UACF,QAAM,EACN,QAAQ,EACV,QAAY,EACV,QAAQ,EAA+D,SAAS;MAChFC,QAAQ;IACV;EAEA,GAAAC,KAAQ;EACR,MAAAjE,OAAa,CAAAkE,KAAA,CAAA9B,mBAAA;EACb;IACA,MAAQ7B,YAAW,CAAAqC,QAAS,EAAAR,mBAAsB,CAAC;IACnDJ,OAAQ,CAAAmC,KAAK,CAAA/B,mBAAA;EACb,SAAQgC,CAAA;IAERtC,OAAM,CAAAC,KAAA,uCAAiCK,mBAAA;AACrC;AAEA,GAAAgC,CAAA;IACEpC,OAAA,CAAMC,IAAA;EAMN;EAAsB4B,OACpB,CAAAQ,IAAK;EAAkCvC,OACvC,CAAAU,IAAK;EAAwCV,OAC7C,CAAAU,IAAK;EAA8CV,OACrD,CAAAU,IAAA,CAAAzC,KAAA,CAAAiD,KAAA,IAAAd,WAAA;EAEAJ,OAAA,CAAAU,IAAM;EAENV,OAAA,CAAAU,IAAA;EACE,IAAA8B,WAAI;IACF,IAAAC,aAAM,GAAO;IACb;MAAO,IACTC,OAAS,GAAG,OAAAC,SAAA,mBAAAA,SAAA,GAAArE,IAAA,CAAAoE,OAAA,CAAAlE,aAAA,CAAAoE,MAAA,CAAAC,IAAA,CAAA7B,GAAA;MACV,IAAA8B,aAAI,IACNxE,IAAA,CAAAyE,IAAA,CAAAL,OAAA,yBACFpE,IAAA,CAAAyE,IAAA,CAAAL,OAAA,+BAEApE,IAAM,CAAAyE,IAAI,CAAAL,OAAM,oCAClB;MACE,IAAAM,QAAQ,GAAMzE,SAAA,CAAAF,EAAA,CAAA2E,QAAA;MACd,IAAAC,yBAAM;QAAAC,iBAAA;QAAAC,cAAA;MACR;QACC,SAAAC,SAAA,GAAAN,aAAA,CAAA3D,MAAA,CAAAkE,QAAA,KAAAC,KAAA,IAAAL,yBAAA,IAAAK,KAAA,GAAAF,SAAA,CAAAG,IAAA,IAAAC,IAAA,GAAAP,yBAAA;UAGH,IAAAxB,CAAA,GAAA6B,KAAA,CAAsBG,KAAA;UAEtB;YAEA,IAAAC,IAAkB,GAAAC,IAAA,CAAAC,KAAa,OAAAZ,QAAA,CAAAvB,CAAA,EAAmB;YAE5C,OAAAiC,IAAA;UACA,SAAApB,CAAA;YACF,IAAOtD,WAAS,CAAAsD,CAAA,EAAAuB,KAAA,GAAApB,aAAA,CAAAqB,IAAA,CAAAxB,CAAA,CAAAyB,OAAA;UAClB;QACA;MAEA,SAAMC,GAAA;QAEFd,iBAAS,GAAW,IAAG;QACzBC,cAAgB,GAACa,GAAA;MACnB;QAEA,IAAM;UACJ,IAAM,CAAAf,yBAAA,IAAAG,SAAA,CAAAa,MAAA;YACAb,SAAA,CAAAa,MAAA;UACN;QACA,UAAS;UAGL,IAAAf,iBAAO;YACP,MAAOC,cAAA;UACP;QACL;MAED;MACC,UAAAU,KAAA;IAEH,SAAQvB,CAAA,EAAK;MAETtC,OAAA,CAAAC,KAAA,+BAA0B,EAAAwC,aAAA,CAAAM,IAAA;MAC5B,MAAMT,CAAA;IAAoB;EACxB,GACA;EAAa4B,qBACb,CAAA9D,WAAA,EAAAE,mBAAA;EAAA6D,yBACa,CAAA3B,WAAA,CAAA4B,OAAA,EAAA9D,mBAAA;EAAA+D,iBACd,CAAAjE,WAAA,EAAAE,mBAAA;EACH,IAAAgE,cAAA;IAEA,IAAI,oBAAAxD,QAAA;MACF,OAAQA,QAAK,CAAAwD,cAAA;IACb;IACA,IAAAC,KAAQ,SAAKxF,oBAAA;IACb,IAAAyF,QAAM,GAAAC,MAAA,CAAAC,IAAoB,CAAAH,KAAA;IAC5B,IAAAC,QAAiB,CAAAG,MAAA;MACf,OAAQH,QAAM;IAA8D;IAC5E,IAAAI,QAAQ,GAAM,MAAA9F,OAAA;MAChBuB,IAAA;MAGAU,IAAM;MACNgD,OAAM,EAAM,kBAAU;MAClBc,OAAA,EAAAL,QAAW,CAAAM,MAAU,WAAMjD,CAAA;QAC7B,OAAM0C,KAAQ,CAAA1C,CAAA,CAAK;MACrB,GAAAkD,GAAA,WAAA1E,IAAA;QAEI;UACI2E,KAAA,EAAA3E,IAAS;UACboD,KAAA,EAAApD;QACA;MACA;IAAA,EACA;IACF,OAACuE,QAAA,CAAAN,cAAA;EACH;EAEAtE,OAAA,CAAQU,IAAA,CAAK;EACf,oBAAAI,QAAA;IAEA,MAASA,QAAA,CAAAmE,UAAA;MACPX,cAAM;MACFY,WAAW;MACb9E,WAAM;MACN+E,WAAM,EAAA7E;IAAiC,EACrC;EAAA;EACgB,IAClB;IACAN,OAAA,CAAAU,IAAA,EAAc;IAChBV,OAAA,CAAAU,IAAA,CAAAzC,KAAA,CAAAiD,KAAA,oBAAAoD,cAAA;IACFtE,OAAA,CAAAU,IAAA;IAEA,MAAS9B,mBAAA,CAAA0B,mBAAwD,EAAAgE,cAAA;EAC/D,SAAMhC,CAAA;IACNtC,OAAI,CAAAC,KAAW,gCAAkB,GAAAqE,cAAA;AAC/B,EAAAhC,CAAA;IAEApC,OAAM,CAAAC,IAAA;EAIN;EACF,IAAAiF,UAAA,GAAA9G,IAAA,CAAAyE,IAAA,CAAAzC,mBAAA;EACF,IAAA+E,GAAA,GAAA/G,IAAA,CAAAyE,IAAA,CAAAzC,mBAAA;EAEA,IAAAjB,UAAS,CAAA+F,UAAkB,MAAA/F,UAAqB,CAAAgG,GAAa;IAC3D,MAAMnH,OAAA,CAAAoH,IAAc,CAAAF,UAAU,EAAAC,GAAK;EACnC;EACE,gBAAM,IAAUvE,QAAA;IAChB,MAAMA,QAAA,CAAAyE,UAAc;MACpBjB,cAAM;MAGNY,WAAA,EAAc;MAChB9E,WAAA;MACF+E,WAAA,EAAA7E","ignoreList":[]}
|
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
import { copy, ensureDir, pathExists } from "fs-extra";
|
|
2
|
-
import { homedir } from "node:os";
|
|
3
|
-
import { join, sep } from "node:path";
|
|
4
|
-
import { rimraf } from "rimraf";
|
|
5
|
-
import { exec, execPromiseQuiet } from "@vxrn/utils";
|
|
6
|
-
const home = homedir();
|
|
7
|
-
const vxrnDir = join(home, ".vxrn");
|
|
8
|
-
const cloneStarter = async (template, resolvedProjectPath) => {
|
|
9
|
-
const dir = await setupVxrnDotDir(template, join(vxrnDir, "vxrn", template.repo.url.split("/").at(-1)));
|
|
10
|
-
if (!(await pathExists(dir))) {
|
|
11
|
-
console.error(`Missing template for ${template.value} in ${dir}`);
|
|
12
|
-
process.exit(1);
|
|
13
|
-
}
|
|
14
|
-
await copy(dir, resolvedProjectPath);
|
|
15
|
-
await rimraf(join(resolvedProjectPath, ".git"));
|
|
16
|
-
if (!isInGitRepo()) {
|
|
17
|
-
await execPromiseQuiet(`git init`, {
|
|
18
|
-
cwd: resolvedProjectPath
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
};
|
|
22
|
-
async function setupVxrnDotDir(template, targetGitDir, isRetry = false) {
|
|
23
|
-
const branch = template.repo.branch;
|
|
24
|
-
await ensureDir(vxrnDir);
|
|
25
|
-
const isInSubDir = template.repo.dir.length > 0;
|
|
26
|
-
if (!(await pathExists(targetGitDir))) {
|
|
27
|
-
const sourceGitRepo = template.repo.url;
|
|
28
|
-
const sourceGitRepoSshFallback = template.repo.sshFallback;
|
|
29
|
-
const cmd = `git clone --branch ${branch} ${isInSubDir ? "--depth 1 --sparse --filter=blob:none " : ""}${sourceGitRepo} "${targetGitDir}"`;
|
|
30
|
-
try {
|
|
31
|
-
await execPromiseQuiet(cmd);
|
|
32
|
-
} catch (error) {
|
|
33
|
-
if (cmd.includes("https://")) {
|
|
34
|
-
console.info(`https failed - trying with ssh now...`);
|
|
35
|
-
const sshCmd = cmd.replace(sourceGitRepo, sourceGitRepoSshFallback);
|
|
36
|
-
await execPromiseQuiet(sshCmd);
|
|
37
|
-
} else {
|
|
38
|
-
throw error;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
} else {
|
|
42
|
-
if (!(await pathExists(join(targetGitDir, ".git")))) {
|
|
43
|
-
console.error(`Corrupt vxrn directory, please delete ${targetGitDir} folder and re-run`);
|
|
44
|
-
process.exit(1);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
if (isInSubDir) {
|
|
48
|
-
try {
|
|
49
|
-
const cmd = `git sparse-checkout set ${template.repo.dir.join(sep) ?? "."}`;
|
|
50
|
-
await execPromiseQuiet(cmd, {
|
|
51
|
-
cwd: targetGitDir
|
|
52
|
-
});
|
|
53
|
-
} catch (err) {
|
|
54
|
-
if (`${err}`.includes(`code 128`)) {
|
|
55
|
-
console.warn(`\u26A0\uFE0F Note: you need to be sure you can git clone from Github, your SSH key isn't valid.
|
|
56
|
-
|
|
57
|
-
- See: https://docs.github.com/en/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account
|
|
58
|
-
|
|
59
|
-
`);
|
|
60
|
-
}
|
|
61
|
-
throw err;
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
try {
|
|
65
|
-
const cmd2 = `git pull --rebase --allow-unrelated-histories --depth 1 origin ${branch}`;
|
|
66
|
-
await execPromiseQuiet(cmd2, {
|
|
67
|
-
cwd: targetGitDir
|
|
68
|
-
});
|
|
69
|
-
console.info();
|
|
70
|
-
const dir = join(targetGitDir, ...template.repo.dir);
|
|
71
|
-
if (!(await pathExists(dir))) {
|
|
72
|
-
throw new Error(`Re-clone...`);
|
|
73
|
-
}
|
|
74
|
-
return dir;
|
|
75
|
-
} catch (err) {
|
|
76
|
-
if (isRetry) {
|
|
77
|
-
console.info(`Error updating: ${err.message} ${isRetry ? `failing.
|
|
78
|
-
${err.stack}` : "trying from fresh."}`);
|
|
79
|
-
console.info(`Please file an issue: https://github.com/onejs/one/issues/new?assignees=&labels=&template=bug_report.md&title=`);
|
|
80
|
-
process.exit(1);
|
|
81
|
-
}
|
|
82
|
-
await rimraf(targetGitDir);
|
|
83
|
-
return await setupVxrnDotDir(template, targetGitDir, true);
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
function isInGitRepo() {
|
|
87
|
-
try {
|
|
88
|
-
exec("git rev-parse --is-inside-work-tree", {
|
|
89
|
-
stdio: "ignore"
|
|
90
|
-
});
|
|
91
|
-
return true;
|
|
92
|
-
} catch (error) {
|
|
93
|
-
return false;
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
export { cloneStarter };
|
|
97
|
-
//# sourceMappingURL=cloneStarter.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["copy","ensureDir","pathExists","homedir","join","sep","rimraf","exec","execPromiseQuiet","home","vxrnDir","cloneStarter","template","resolvedProjectPath","dir","setupVxrnDotDir","repo","url","split","at","console","error","value","process","exit","isInGitRepo","cwd","targetGitDir","isRetry","branch","isInSubDir","length","sourceGitRepo","sourceGitRepoSshFallback","sshFallback","cmd","includes","info","sshCmd","replace","err","warn","cmd2","Error","message","stack","stdio"],"sources":["../../../src/helpers/cloneStarter.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
import { copy, ensureDir, pathExists } from "fs-extra";
|
|
2
|
-
import { homedir } from "os";
|
|
3
|
-
import { join, sep } from "path";
|
|
4
|
-
import { rimraf } from "rimraf";
|
|
5
|
-
import { exec, execPromiseQuiet } from "@vxrn/utils";
|
|
6
|
-
var home = homedir();
|
|
7
|
-
var vxrnDir = join(home, ".vxrn");
|
|
8
|
-
var cloneStarter = async function (template, resolvedProjectPath) {
|
|
9
|
-
var dir = await setupVxrnDotDir(template, join(vxrnDir, "vxrn", template.repo.url.split("/").at(-1)));
|
|
10
|
-
if (!(await pathExists(dir))) {
|
|
11
|
-
console.error(`Missing template for ${template.value} in ${dir}`);
|
|
12
|
-
process.exit(1);
|
|
13
|
-
}
|
|
14
|
-
await copy(dir, resolvedProjectPath);
|
|
15
|
-
await rimraf(join(resolvedProjectPath, ".git"));
|
|
16
|
-
if (!isInGitRepo()) {
|
|
17
|
-
await execPromiseQuiet(`git init`, {
|
|
18
|
-
cwd: resolvedProjectPath
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
};
|
|
22
|
-
async function setupVxrnDotDir(template, targetGitDir) {
|
|
23
|
-
var isRetry = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : false;
|
|
24
|
-
var branch = template.repo.branch;
|
|
25
|
-
await ensureDir(vxrnDir);
|
|
26
|
-
var isInSubDir = template.repo.dir.length > 0;
|
|
27
|
-
if (!(await pathExists(targetGitDir))) {
|
|
28
|
-
var sourceGitRepo = template.repo.url;
|
|
29
|
-
var sourceGitRepoSshFallback = template.repo.sshFallback;
|
|
30
|
-
var cmd = `git clone --branch ${branch} ${isInSubDir ? "--depth 1 --sparse --filter=blob:none " : ""}${sourceGitRepo} "${targetGitDir}"`;
|
|
31
|
-
try {
|
|
32
|
-
await execPromiseQuiet(cmd);
|
|
33
|
-
} catch (error) {
|
|
34
|
-
if (cmd.includes("https://")) {
|
|
35
|
-
console.info(`https failed - trying with ssh now...`);
|
|
36
|
-
var sshCmd = cmd.replace(sourceGitRepo, sourceGitRepoSshFallback);
|
|
37
|
-
await execPromiseQuiet(sshCmd);
|
|
38
|
-
} else {
|
|
39
|
-
throw error;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
} else {
|
|
43
|
-
if (!(await pathExists(join(targetGitDir, ".git")))) {
|
|
44
|
-
console.error(`Corrupt vxrn directory, please delete ${targetGitDir} folder and re-run`);
|
|
45
|
-
process.exit(1);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
if (isInSubDir) {
|
|
49
|
-
try {
|
|
50
|
-
var _template_repo_dir_join;
|
|
51
|
-
var cmd1 = `git sparse-checkout set ${(_template_repo_dir_join = template.repo.dir.join(sep)) !== null && _template_repo_dir_join !== void 0 ? _template_repo_dir_join : "."}`;
|
|
52
|
-
await execPromiseQuiet(cmd1, {
|
|
53
|
-
cwd: targetGitDir
|
|
54
|
-
});
|
|
55
|
-
} catch (err) {
|
|
56
|
-
if (`${err}`.includes(`code 128`)) {
|
|
57
|
-
console.warn(`\u26A0\uFE0F Note: you need to be sure you can git clone from Github, your SSH key isn't valid.
|
|
58
|
-
|
|
59
|
-
- See: https://docs.github.com/en/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account
|
|
60
|
-
|
|
61
|
-
`);
|
|
62
|
-
}
|
|
63
|
-
throw err;
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
try {
|
|
67
|
-
var cmd2 = `git pull --rebase --allow-unrelated-histories --depth 1 origin ${branch}`;
|
|
68
|
-
await execPromiseQuiet(cmd2, {
|
|
69
|
-
cwd: targetGitDir
|
|
70
|
-
});
|
|
71
|
-
console.info();
|
|
72
|
-
var dir = join(targetGitDir, ...template.repo.dir);
|
|
73
|
-
if (!(await pathExists(dir))) {
|
|
74
|
-
throw new Error(`Re-clone...`);
|
|
75
|
-
}
|
|
76
|
-
return dir;
|
|
77
|
-
} catch (err) {
|
|
78
|
-
if (isRetry) {
|
|
79
|
-
console.info(`Error updating: ${err.message} ${isRetry ? `failing.
|
|
80
|
-
${err.stack}` : "trying from fresh."}`);
|
|
81
|
-
console.info(`Please file an issue: https://github.com/onejs/one/issues/new?assignees=&labels=&template=bug_report.md&title=`);
|
|
82
|
-
process.exit(1);
|
|
83
|
-
}
|
|
84
|
-
await rimraf(targetGitDir);
|
|
85
|
-
return await setupVxrnDotDir(template, targetGitDir, true);
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
function isInGitRepo() {
|
|
89
|
-
try {
|
|
90
|
-
exec("git rev-parse --is-inside-work-tree", {
|
|
91
|
-
stdio: "ignore"
|
|
92
|
-
});
|
|
93
|
-
return true;
|
|
94
|
-
} catch (error) {
|
|
95
|
-
return false;
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
export { cloneStarter };
|
|
99
|
-
//# sourceMappingURL=cloneStarter.native.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["copy","ensureDir","pathExists","homedir","join","sep","rimraf","exec","execPromiseQuiet","home","vxrnDir","cloneStarter","template","resolvedProjectPath","dir","setupVxrnDotDir","repo","url","split","at","console","error","value","process","exit","isInGitRepo","cwd","targetGitDir","isRetry","arguments","length","branch","isInSubDir","sourceGitRepo","sourceGitRepoSshFallback","sshFallback","cmd","includes","info","sshCmd","replace","_template_repo_dir_join","cmd1","err","warn","cmd2","Error","message","stack","stdio"],"sources":["../../../src/helpers/cloneStarter.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import path from "node:path";
|
|
2
|
-
import ansis from "ansis";
|
|
3
|
-
import prompts from "prompts";
|
|
4
|
-
import { validateNpmName } from "./validateNpmPackage.mjs";
|
|
5
|
-
const getProjectName = async projectPath => {
|
|
6
|
-
if (typeof projectPath === "string") {
|
|
7
|
-
projectPath = projectPath.trim();
|
|
8
|
-
}
|
|
9
|
-
console.info();
|
|
10
|
-
console.info(ansis.yellow(` Hello. Let's create a new ${ansis.yellowBright(`\u2460`)} app...`));
|
|
11
|
-
console.info();
|
|
12
|
-
if (!projectPath) {
|
|
13
|
-
const defaultName = "hello-world";
|
|
14
|
-
const res = await prompts({
|
|
15
|
-
type: "text",
|
|
16
|
-
name: "path",
|
|
17
|
-
message: "Name",
|
|
18
|
-
initial: defaultName,
|
|
19
|
-
validate: name => {
|
|
20
|
-
const validation = validateNpmName(path.basename(path.resolve(name)));
|
|
21
|
-
if (validation.valid) {
|
|
22
|
-
return true;
|
|
23
|
-
}
|
|
24
|
-
return "Invalid name: " + validation.problems[0];
|
|
25
|
-
}
|
|
26
|
-
});
|
|
27
|
-
if (typeof res.path === "string") {
|
|
28
|
-
projectPath = res.path.trim() || defaultName;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
if (!projectPath) {
|
|
32
|
-
const name = `create-vxrn`;
|
|
33
|
-
console.info();
|
|
34
|
-
console.info("Please specify the project directory:");
|
|
35
|
-
console.info(` ${ansis.cyan(name)} ${ansis.green("<project-directory>")}`);
|
|
36
|
-
console.info();
|
|
37
|
-
console.info("For example:");
|
|
38
|
-
console.info(` ${ansis.cyan(name)} ${ansis.green("my-app")}`);
|
|
39
|
-
console.info();
|
|
40
|
-
console.info(`Run ${ansis.cyan(`${name} --help`)} to see all options.`);
|
|
41
|
-
process.exit(1);
|
|
42
|
-
}
|
|
43
|
-
return projectPath;
|
|
44
|
-
};
|
|
45
|
-
export { getProjectName };
|
|
46
|
-
//# sourceMappingURL=getProjectName.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["path","ansis","prompts","validateNpmName","getProjectName","projectPath","trim","console","info","yellow","yellowBright","defaultName","res","type","name","message","initial","validate","validation","basename","resolve","valid","problems","cyan","green","process","exit"],"sources":["../../../src/helpers/getProjectName.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,IAAA,MAAU;AACjB,OAAOC,KAAA,MAAW;AAClB,OAAOC,OAAA,MAAa;AACpB,SAASC,eAAA,QAAuB;AAEzB,MAAMC,cAAA,GAAiB,MAAOC,WAAA,IAAyB;EAC5D,IAAI,OAAOA,WAAA,KAAgB,UAAU;IACnCA,WAAA,GAAcA,WAAA,CAAYC,IAAA,CAAK;EACjC;EAEAC,OAAA,CAAQC,IAAA,CAAK;EACbD,OAAA,CAAQC,IAAA,CACNP,KAAA,CAAMQ,MAAA,CAAO,+BAA+BR,KAAA,CAAMS,YAAA,CAAa,QAAG,CAAC,UAAU,CAC/E;EACAH,OAAA,CAAQC,IAAA,CAAK;EAEb,IAAI,CAACH,WAAA,EAAa;IAChB,MAAMM,WAAA,GAAc;IACpB,MAAMC,GAAA,GAAM,MAAMV,OAAA,CAAQ;MACxBW,IAAA,EAAM;MACNC,IAAA,EAAM;MACNC,OAAA,EAAS;MACTC,OAAA,EAASL,WAAA;MACTM,QAAA,EAAWH,IAAA,IAAiB;QAC1B,MAAMI,UAAA,GAAaf,eAAA,CAAgBH,IAAA,CAAKmB,QAAA,CAASnB,IAAA,CAAKoB,OAAA,CAAQN,IAAI,CAAC,CAAC;QACpE,IAAII,UAAA,CAAWG,KAAA,EAAO;UACpB,OAAO;QACT;QACA,OAAO,mBAAmBH,UAAA,CAAWI,QAAA,CAAU,CAAC;MAClD;IACF,CAAC;IAED,IAAI,OAAOV,GAAA,CAAIZ,IAAA,KAAS,UAAU;MAChCK,WAAA,GAAcO,GAAA,CAAIZ,IAAA,CAAKM,IAAA,CAAK,KAAKK,WAAA;IACnC;EACF;EAEA,IAAI,CAACN,WAAA,EAAa;IAChB,MAAMS,IAAA,GAAO;IACbP,OAAA,CAAQC,IAAA,CAAK;IACbD,OAAA,CAAQC,IAAA,CAAK,uCAAuC;IACpDD,OAAA,CAAQC,IAAA,CAAK,KAAKP,KAAA,CAAMsB,IAAA,CAAKT,IAAI,CAAC,IAAIb,KAAA,CAAMuB,KAAA,CAAM,qBAAqB,CAAC,EAAE;IAC1EjB,OAAA,CAAQC,IAAA,CAAK;IACbD,OAAA,CAAQC,IAAA,CAAK,cAAc;IAC3BD,OAAA,CAAQC,IAAA,CAAK,KAAKP,KAAA,CAAMsB,IAAA,CAAKT,IAAI,CAAC,IAAIb,KAAA,CAAMuB,KAAA,CAAM,QAAQ,CAAC,EAAE;IAC7DjB,OAAA,CAAQC,IAAA,CAAK;IACbD,OAAA,CAAQC,IAAA,CAAK,OAAOP,KAAA,CAAMsB,IAAA,CAAK,GAAGT,IAAI,SAAS,CAAC,sBAAsB;IACtEW,OAAA,CAAQC,IAAA,CAAK,CAAC;EAChB;EACA,OAAOrB,WAAA;AACT","ignoreList":[]}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import path from "path";
|
|
2
|
-
import ansis from "ansis";
|
|
3
|
-
import prompts from "prompts";
|
|
4
|
-
import { validateNpmName } from "./validateNpmPackage.native.js";
|
|
5
|
-
var getProjectName = async function (projectPath) {
|
|
6
|
-
if (typeof projectPath === "string") {
|
|
7
|
-
projectPath = projectPath.trim();
|
|
8
|
-
}
|
|
9
|
-
console.info();
|
|
10
|
-
console.info(ansis.yellow(` Hello. Let's create a new ${ansis.yellowBright(`\u2460`)} app...`));
|
|
11
|
-
console.info();
|
|
12
|
-
if (!projectPath) {
|
|
13
|
-
var defaultName = "hello-world";
|
|
14
|
-
var res = await prompts({
|
|
15
|
-
type: "text",
|
|
16
|
-
name: "path",
|
|
17
|
-
message: "Name",
|
|
18
|
-
initial: defaultName,
|
|
19
|
-
validate: function (name2) {
|
|
20
|
-
var validation = validateNpmName(path.basename(path.resolve(name2)));
|
|
21
|
-
if (validation.valid) {
|
|
22
|
-
return true;
|
|
23
|
-
}
|
|
24
|
-
return "Invalid name: " + validation.problems[0];
|
|
25
|
-
}
|
|
26
|
-
});
|
|
27
|
-
if (typeof res.path === "string") {
|
|
28
|
-
projectPath = res.path.trim() || defaultName;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
if (!projectPath) {
|
|
32
|
-
var name = `create-vxrn`;
|
|
33
|
-
console.info();
|
|
34
|
-
console.info("Please specify the project directory:");
|
|
35
|
-
console.info(` ${ansis.cyan(name)} ${ansis.green("<project-directory>")}`);
|
|
36
|
-
console.info();
|
|
37
|
-
console.info("For example:");
|
|
38
|
-
console.info(` ${ansis.cyan(name)} ${ansis.green("my-app")}`);
|
|
39
|
-
console.info();
|
|
40
|
-
console.info(`Run ${ansis.cyan(`${name} --help`)} to see all options.`);
|
|
41
|
-
process.exit(1);
|
|
42
|
-
}
|
|
43
|
-
return projectPath;
|
|
44
|
-
};
|
|
45
|
-
export { getProjectName };
|
|
46
|
-
//# sourceMappingURL=getProjectName.native.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["path","ansis","prompts","validateNpmName","getProjectName","projectPath","trim","console","info","yellow","yellowBright","defaultName","res","type","name","message","initial","validate","name2","validation","basename","resolve","valid","problems","cyan","green","process","exit"],"sources":["../../../src/helpers/getProjectName.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,IAAA,MAAU;AACjB,OAAOC,KAAA,MAAW;AAClB,OAAOC,OAAA,MAAa;AACpB,SAASC,eAAA,QAAuB;AAEzB,IAAAC,cAAM,kBAAAA,CAAwBC,WAAyB;EAC5D,IAAI,OAAOA,WAAA,KAAgB,UAAU;IACnCA,WAAA,GAAcA,WAAA,CAAYC,IAAA,CAAK;EACjC;EAEAC,OAAA,CAAQC,IAAA,CAAK;EACbD,OAAA,CAAQC,IAAA,CAAAP,KAAA,CAAAQ,MAAA,gCAAAR,KAAA,CAAAS,YAAA;EAAAH,OACN,CAAMC,IAAA;EACR,KAAAH,WAAA;IACA,IAAAM,WAAa;IAEb,IAAKC,GAAA,SAAaV,OAAA;MAChBW,IAAM;MACNC,IAAM,QAAM;MACVC,OAAM;MACNC,OAAM,EAAAL,WAAA;MACNM,QAAA,EAAS,SAAAA,CAAAC,KAAA;QACT,IAAAC,UAAS,GAAAhB,eAAA,CAAAH,IAAA,CAAAoB,QAAA,CAAApB,IAAA,CAAAqB,OAAA,CAAAH,KAAA;QACT,IAAAC,UAAW,CAAAG,KAAiB;UAC1B,OAAM;QACN;QACE,uBAAO,GAAAH,UAAA,CAAAI,QAAA;MAAA;IAET;IAAgD,IAClD,OAAAX,GAAA,CAAAZ,IAAA;MACDK,WAAA,GAAAO,GAAA,CAAAZ,IAAA,CAAAM,IAAA,MAAAK,WAAA;IAED;EACE;EAAiC,IACnC,CAAAN,WAAA;IACF,IAAAS,IAAA;IAEAP,OAAK,CAAAC,IAAA;IACHD,OAAM,CAAAC,IAAA,CAAO;IACbD,OAAA,CAAQC,IAAA,CAAK,KAAAP,KAAA,CAAAuB,IAAA,CAAAV,IAAA,KAAAb,KAAA,CAAAwB,KAAA;IACblB,OAAA,CAAQC,IAAA,CAAK;IACbD,OAAA,CAAQC,IAAA,CAAK,cAAW;IACxBD,OAAA,CAAQC,IAAA,CAAK,KAAAP,KAAA,CAAAuB,IAAA,CAAAV,IAAA,KAAAb,KAAA,CAAAwB,KAAA;IACblB,OAAA,CAAQC,IAAA,CAAK;IACbD,OAAA,CAAQC,IAAA,CAAK,OAAKP,KAAM,CAAAuB,IAAK,IAAKV,IAAI,SAAM,uBAAiB;IAC7DY,OAAA,CAAQC,IAAA,CAAK;EACb;EACA,OAAAtB,WAAc;AAAA;AAEhB,SACFD,cAAA","ignoreList":[]}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import prompts from "prompts";
|
|
2
|
-
import { templates } from "../templates.mjs";
|
|
3
|
-
const validTemplates = templates.map(({
|
|
4
|
-
value
|
|
5
|
-
}) => value).join(", ");
|
|
6
|
-
const getTemplateInfo = async template => {
|
|
7
|
-
let res = getValidTemplate(template);
|
|
8
|
-
if (template && !res) {
|
|
9
|
-
console.warn(`template ${template} is not valid. valid options: ${validTemplates}`);
|
|
10
|
-
process.exit(1);
|
|
11
|
-
}
|
|
12
|
-
if (!res) {
|
|
13
|
-
console.info();
|
|
14
|
-
template = (await prompts({
|
|
15
|
-
name: "template",
|
|
16
|
-
type: "select",
|
|
17
|
-
message: `Template`,
|
|
18
|
-
choices: templates.filter(t => !t.hidden)
|
|
19
|
-
})).template;
|
|
20
|
-
}
|
|
21
|
-
res = getValidTemplate(`${template}`);
|
|
22
|
-
if (!res) {
|
|
23
|
-
console.warn(`template ${template} is not valid. valid options: ${validTemplates}`);
|
|
24
|
-
process.exit(1);
|
|
25
|
-
}
|
|
26
|
-
return res;
|
|
27
|
-
};
|
|
28
|
-
const getValidTemplate = template => typeof template === "string" && templates.find(({
|
|
29
|
-
value
|
|
30
|
-
}) => value === template);
|
|
31
|
-
export { getTemplateInfo };
|
|
32
|
-
//# sourceMappingURL=getTemplateInfo.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["prompts","templates","validTemplates","map","value","join","getTemplateInfo","template","res","getValidTemplate","console","warn","process","exit","info","name","type","message","choices","filter","t","hidden","find"],"sources":["../../../src/helpers/getTemplateInfo.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,OAAA,MAAa;AAEpB,SAASC,SAAA,QAAiB;AAE1B,MAAMC,cAAA,GAAiBD,SAAA,CAAUE,GAAA,CAAI,CAAC;EAAEC;AAAM,MAAMA,KAAK,EAAEC,IAAA,CAAK,IAAI;AAE7D,MAAMC,eAAA,GAAkB,MAC7BC,QAAA,IACwC;EACxC,IAAIC,GAAA,GAAMC,gBAAA,CAAiBF,QAAQ;EACnC,IAAIA,QAAA,IAAY,CAACC,GAAA,EAAK;IACpBE,OAAA,CAAQC,IAAA,CAAK,YAAYJ,QAAQ,iCAAiCL,cAAc,EAAE;IAClFU,OAAA,CAAQC,IAAA,CAAK,CAAC;EAChB;EACA,IAAI,CAACL,GAAA,EAAK;IACRE,OAAA,CAAQI,IAAA,CAAK;IACbP,QAAA,IACE,MAAMP,OAAA,CAAQ;MACZe,IAAA,EAAM;MACNC,IAAA,EAAM;MACNC,OAAA,EAAS;MACTC,OAAA,EAASjB,SAAA,CAAUkB,MAAA,CAAQC,CAAA,IAAM,CAACA,CAAA,CAAEC,MAAM;IAC5C,CAAC,GACDd,QAAA;EACJ;EACAC,GAAA,GAAMC,gBAAA,CAAiB,GAAGF,QAAQ,EAAE;EACpC,IAAI,CAACC,GAAA,EAAK;IACRE,OAAA,CAAQC,IAAA,CAAK,YAAYJ,QAAQ,iCAAiCL,cAAc,EAAE;IAClFU,OAAA,CAAQC,IAAA,CAAK,CAAC;EAChB;EACA,OAAOL,GAAA;AACT;AAEA,MAAMC,gBAAA,GAAoBF,QAAA,IACxB,OAAOA,QAAA,KAAa,YAAYN,SAAA,CAAUqB,IAAA,CAAK,CAAC;EAAElB;AAAM,MAAMA,KAAA,KAAUG,QAAQ","ignoreList":[]}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import prompts from "prompts";
|
|
2
|
-
import { templates } from "../templates.native.js";
|
|
3
|
-
var validTemplates = templates.map(function (param) {
|
|
4
|
-
var {
|
|
5
|
-
value
|
|
6
|
-
} = param;
|
|
7
|
-
return value;
|
|
8
|
-
}).join(", ");
|
|
9
|
-
var getTemplateInfo = async function (template) {
|
|
10
|
-
var res = getValidTemplate(template);
|
|
11
|
-
if (template && !res) {
|
|
12
|
-
console.warn(`template ${template} is not valid. valid options: ${validTemplates}`);
|
|
13
|
-
process.exit(1);
|
|
14
|
-
}
|
|
15
|
-
if (!res) {
|
|
16
|
-
console.info();
|
|
17
|
-
template = (await prompts({
|
|
18
|
-
name: "template",
|
|
19
|
-
type: "select",
|
|
20
|
-
message: `Template`,
|
|
21
|
-
choices: templates.filter(function (t) {
|
|
22
|
-
return !t.hidden;
|
|
23
|
-
})
|
|
24
|
-
})).template;
|
|
25
|
-
}
|
|
26
|
-
res = getValidTemplate(`${template}`);
|
|
27
|
-
if (!res) {
|
|
28
|
-
console.warn(`template ${template} is not valid. valid options: ${validTemplates}`);
|
|
29
|
-
process.exit(1);
|
|
30
|
-
}
|
|
31
|
-
return res;
|
|
32
|
-
};
|
|
33
|
-
var getValidTemplate = function (template) {
|
|
34
|
-
return typeof template === "string" && templates.find(function (param) {
|
|
35
|
-
var {
|
|
36
|
-
value
|
|
37
|
-
} = param;
|
|
38
|
-
return value === template;
|
|
39
|
-
});
|
|
40
|
-
};
|
|
41
|
-
export { getTemplateInfo };
|
|
42
|
-
//# sourceMappingURL=getTemplateInfo.native.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["prompts","templates","validTemplates","map","param","value","join","getTemplateInfo","template","res","getValidTemplate","console","warn","process","exit","info","name","type","message","choices","filter","t","hidden"],"sources":["../../../src/helpers/getTemplateInfo.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,OAAA,MAAa;AAEpB,SAASC,SAAA,QAAiB;AAE1B,IAAAC,cAAM,GAAAD,SAAiB,CAAAE,GAAU,WAAOC,KAAM;EAEvC,IAAM;IAAAC;EAAA,IAAAD,KAAA;EAGX,OAAIC,KAAM;AACV,GAAAC,IAAI;AACF,IAAAC,eAAa,kBAAAA,CAAoBC,QAAA;EACjC,IAAAC,GAAA,GAAQC,gBAAM,CAAAF,QAAA;EAChB,IAAAA,QAAA,KAAAC,GAAA;IACAE,OAAK,CAAKC,IAAA,aAAAJ,QAAA,iCAAAN,cAAA;IACRW,OAAA,CAAQC,IAAA,CAAK;EACb;EACgB,IACZ,CAAAL,GAAA,EAAM;IAAAE,OACN,CAAMI,IAAA;IAAAP,QACN,GAAS,OAAAR,OAAA;MACTgB,IAAA,YAAS;MACVC,IACD;MACJC,OAAA;MACAC,OAAM,EAAAlB,SAAA,CAAiBmB,MAAG,WAAUC,CAAA;QAC/B,OAAK,CAAAA,CAAA,CAAAC,MAAA;MACR;IACA,IAAAd,QAAQ;EACV;EACAC,GAAA,GAAAC,gBAAO,IAAAF,QAAA;EACT,KAAAC,GAAA;IAEAE,OAAM,CAAAC,IAAA,aAAoBJ,QAAA,iCACJN,cAAsB,EAAK,CAAC","ignoreList":[]}
|