create-vxrn 1.1.347 → 1.1.348
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/cjs/create.cjs +34 -6
- package/dist/cjs/create.js +35 -4
- package/dist/cjs/create.js.map +1 -1
- package/dist/cjs/create.native.js +46 -2
- package/dist/cjs/create.native.js.map +2 -2
- package/dist/esm/create.js +38 -3
- package/dist/esm/create.js.map +1 -1
- package/dist/esm/create.mjs +28 -1
- package/dist/esm/create.mjs.map +1 -1
- package/dist/esm/create.native.js +45 -1
- package/dist/esm/create.native.js.map +2 -2
- package/package.json +1 -1
- package/src/create.ts +59 -2
package/dist/cjs/create.cjs
CHANGED
|
@@ -39,6 +39,8 @@ var import_ansis = __toESM(require("ansis")),
|
|
|
39
39
|
import_node_child_process = require("node:child_process"),
|
|
40
40
|
import_node_fs = __toESM(require("node:fs")),
|
|
41
41
|
import_node_path = __toESM(require("node:path")),
|
|
42
|
+
import_node_util = require("node:util"),
|
|
43
|
+
import_node_url = require("node:url"),
|
|
42
44
|
import_cloneStarter = require("./helpers/cloneStarter.cjs"),
|
|
43
45
|
import_getProjectName = require("./helpers/getProjectName.cjs"),
|
|
44
46
|
import_getTemplateInfo = require("./helpers/getTemplateInfo.cjs"),
|
|
@@ -46,11 +48,12 @@ var import_ansis = __toESM(require("ansis")),
|
|
|
46
48
|
import_validateNpmPackage = require("./helpers/validateNpmPackage.cjs"),
|
|
47
49
|
import_prompts = __toESM(require("prompts")),
|
|
48
50
|
import_detectPackageManager = require("./helpers/detectPackageManager.cjs");
|
|
49
|
-
const {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
51
|
+
const import_meta = {},
|
|
52
|
+
{
|
|
53
|
+
existsSync,
|
|
54
|
+
readFileSync,
|
|
55
|
+
writeFileSync
|
|
56
|
+
} = import_fs_extra.default;
|
|
54
57
|
async function create(args) {
|
|
55
58
|
Number.parseFloat((0, import_node_child_process.execSync)("git --version").toString().replace("git version ", "").trim()) < 2.27 && (console.error(`
|
|
56
59
|
|
|
@@ -85,7 +88,25 @@ async function create(args) {
|
|
|
85
88
|
|
|
86
89
|
`, e), process.exit(1);
|
|
87
90
|
}
|
|
88
|
-
spinner.stop(), console.info(), console.info(), console.info(import_ansis.default.green(`${projectName} created!`)), console.info(), console.info()
|
|
91
|
+
spinner.stop(), console.info(), console.info(), console.info(import_ansis.default.green(`${projectName} created!`)), console.info(), console.info();
|
|
92
|
+
const packageJson = await (async () => {
|
|
93
|
+
const errorMessages = [];
|
|
94
|
+
try {
|
|
95
|
+
const dirname = typeof __dirname < "u" ? __dirname : import_node_path.default.dirname((0, import_node_url.fileURLToPath)(import_meta.url)),
|
|
96
|
+
possiblePaths = [import_node_path.default.join(dirname, "..", "package.json"), import_node_path.default.join(dirname, "..", "..", "package.json"), import_node_path.default.join(dirname, "..", "..", "..", "package.json")],
|
|
97
|
+
readFile = (0, import_node_util.promisify)(import_node_fs.default.readFile);
|
|
98
|
+
for (const p of possiblePaths) try {
|
|
99
|
+
return JSON.parse(await readFile(p));
|
|
100
|
+
} catch (e) {
|
|
101
|
+
e instanceof Error && errorMessages.push(e.message);
|
|
102
|
+
}
|
|
103
|
+
throw new Error("package.json not found in any of the expected locations.");
|
|
104
|
+
} catch (e) {
|
|
105
|
+
throw console.error("Failed to load package.json:", errorMessages.join(`
|
|
106
|
+
`)), e;
|
|
107
|
+
}
|
|
108
|
+
})();
|
|
109
|
+
updatePackageJsonName(projectName, resolvedProjectPath), updatePackageJsonVersions(packageJson.version, resolvedProjectPath), updateAppJsonName(projectName, resolvedProjectPath);
|
|
89
110
|
const packageManager = await (async () => {
|
|
90
111
|
if ("packageManager" in template) return template.packageManager;
|
|
91
112
|
const found = await (0, import_detectPackageManager.detectPackageManager)(),
|
|
@@ -128,6 +149,13 @@ function updatePackageJsonName(projectName, dir) {
|
|
|
128
149
|
writeFileSync(packageJsonPath, contentWithUpdatedName);
|
|
129
150
|
}
|
|
130
151
|
}
|
|
152
|
+
function updatePackageJsonVersions(version, dir) {
|
|
153
|
+
const packageJsonPath = import_node_path.default.join(dir, "package.json");
|
|
154
|
+
if (existsSync(packageJsonPath)) {
|
|
155
|
+
const contentWithUpdatedVersions = readFileSync(packageJsonPath).toString().replace(/"workspace:\^"/gm, `"^${version}"`).replace(/"workspace:~"/gm, `"~${version}"`).replace(/"workspace:\*"/gm, `"${version}"`);
|
|
156
|
+
writeFileSync(packageJsonPath, contentWithUpdatedVersions);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
131
159
|
function updateAppJsonName(projectName, dir) {
|
|
132
160
|
const appJsonPath = import_node_path.default.join(dir, "app.json");
|
|
133
161
|
if (existsSync(appJsonPath)) {
|
package/dist/cjs/create.js
CHANGED
|
@@ -25,8 +25,8 @@ __export(create_exports, {
|
|
|
25
25
|
create: () => create
|
|
26
26
|
});
|
|
27
27
|
module.exports = __toCommonJS(create_exports);
|
|
28
|
-
var import_ansis = __toESM(require("ansis")), import_fs_extra = __toESM(require("fs-extra")), import_node_child_process = require("node:child_process"), import_node_fs = __toESM(require("node:fs")), import_node_path = __toESM(require("node:path")), import_cloneStarter = require("./helpers/cloneStarter"), import_getProjectName = require("./helpers/getProjectName"), import_getTemplateInfo = require("./helpers/getTemplateInfo"), import_installDependencies = require("./helpers/installDependencies"), import_validateNpmPackage = require("./helpers/validateNpmPackage"), import_prompts = __toESM(require("prompts")), import_detectPackageManager = require("./helpers/detectPackageManager");
|
|
29
|
-
const { existsSync, readFileSync, writeFileSync } = import_fs_extra.default;
|
|
28
|
+
var import_ansis = __toESM(require("ansis")), import_fs_extra = __toESM(require("fs-extra")), import_node_child_process = require("node:child_process"), import_node_fs = __toESM(require("node:fs")), import_node_path = __toESM(require("node:path")), import_node_util = require("node:util"), import_node_url = require("node:url"), import_cloneStarter = require("./helpers/cloneStarter"), import_getProjectName = require("./helpers/getProjectName"), import_getTemplateInfo = require("./helpers/getTemplateInfo"), import_installDependencies = require("./helpers/installDependencies"), import_validateNpmPackage = require("./helpers/validateNpmPackage"), import_prompts = __toESM(require("prompts")), import_detectPackageManager = require("./helpers/detectPackageManager");
|
|
29
|
+
const import_meta = {}, { existsSync, readFileSync, writeFileSync } = import_fs_extra.default;
|
|
30
30
|
async function create(args) {
|
|
31
31
|
Number.parseFloat(
|
|
32
32
|
(0, import_node_child_process.execSync)("git --version").toString().replace("git version ", "").trim()
|
|
@@ -72,7 +72,28 @@ async function create(args) {
|
|
|
72
72
|
|
|
73
73
|
`, e), process.exit(1);
|
|
74
74
|
}
|
|
75
|
-
spinner.stop(), console.info(), console.info(), console.info(import_ansis.default.green(`${projectName} created!`)), console.info(), console.info()
|
|
75
|
+
spinner.stop(), console.info(), console.info(), console.info(import_ansis.default.green(`${projectName} created!`)), console.info(), console.info();
|
|
76
|
+
const packageJson = await (async () => {
|
|
77
|
+
const errorMessages = [];
|
|
78
|
+
try {
|
|
79
|
+
const dirname = typeof __dirname < "u" ? __dirname : import_node_path.default.dirname((0, import_node_url.fileURLToPath)(import_meta.url)), possiblePaths = [
|
|
80
|
+
import_node_path.default.join(dirname, "..", "package.json"),
|
|
81
|
+
import_node_path.default.join(dirname, "..", "..", "package.json"),
|
|
82
|
+
import_node_path.default.join(dirname, "..", "..", "..", "package.json")
|
|
83
|
+
], readFile = (0, import_node_util.promisify)(import_node_fs.default.readFile);
|
|
84
|
+
for (const p of possiblePaths)
|
|
85
|
+
try {
|
|
86
|
+
return JSON.parse(await readFile(p));
|
|
87
|
+
} catch (e) {
|
|
88
|
+
e instanceof Error && errorMessages.push(e.message);
|
|
89
|
+
}
|
|
90
|
+
throw new Error("package.json not found in any of the expected locations.");
|
|
91
|
+
} catch (e) {
|
|
92
|
+
throw console.error("Failed to load package.json:", errorMessages.join(`
|
|
93
|
+
`)), e;
|
|
94
|
+
}
|
|
95
|
+
})();
|
|
96
|
+
updatePackageJsonName(projectName, resolvedProjectPath), updatePackageJsonVersions(packageJson.version, resolvedProjectPath), updateAppJsonName(projectName, resolvedProjectPath);
|
|
76
97
|
const packageManager = await (async () => {
|
|
77
98
|
if ("packageManager" in template)
|
|
78
99
|
return template.packageManager;
|
|
@@ -110,10 +131,20 @@ ${e}`), process.exit(1);
|
|
|
110
131
|
function updatePackageJsonName(projectName, dir) {
|
|
111
132
|
const packageJsonPath = import_node_path.default.join(dir, "package.json");
|
|
112
133
|
if (existsSync(packageJsonPath)) {
|
|
113
|
-
const contentWithUpdatedName = readFileSync(packageJsonPath).toString().replace(
|
|
134
|
+
const contentWithUpdatedName = readFileSync(packageJsonPath).toString().replace(
|
|
135
|
+
/("name": ")(.*)(",)/,
|
|
136
|
+
`$1${projectName}$3`
|
|
137
|
+
);
|
|
114
138
|
writeFileSync(packageJsonPath, contentWithUpdatedName);
|
|
115
139
|
}
|
|
116
140
|
}
|
|
141
|
+
function updatePackageJsonVersions(version, dir) {
|
|
142
|
+
const packageJsonPath = import_node_path.default.join(dir, "package.json");
|
|
143
|
+
if (existsSync(packageJsonPath)) {
|
|
144
|
+
const contentWithUpdatedVersions = readFileSync(packageJsonPath).toString().replace(/"workspace:\^"/gm, `"^${version}"`).replace(/"workspace:~"/gm, `"~${version}"`).replace(/"workspace:\*"/gm, `"${version}"`);
|
|
145
|
+
writeFileSync(packageJsonPath, contentWithUpdatedVersions);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
117
148
|
function updateAppJsonName(projectName, dir) {
|
|
118
149
|
const appJsonPath = import_node_path.default.join(dir, "app.json");
|
|
119
150
|
if (existsSync(appJsonPath)) {
|
package/dist/cjs/create.js.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/create.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB,2BAClB,kBAAoB,8BACpB,4BAAyB,+BACzB,iBAAe,6BACf,mBAAiB,+BACjB,sBAA6B,mCAC7B,wBAA+B,qCAC/B,yBAAgC,sCAChC,6BAAoC,0CACpC,4BAAgC,yCAChC,iBAAoB,6BACpB,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["FSExtra", "path", "fs", "ansis", "prompts"]
|
|
6
6
|
}
|
|
@@ -26,7 +26,9 @@ __export(create_exports, {
|
|
|
26
26
|
create: () => create
|
|
27
27
|
});
|
|
28
28
|
module.exports = __toCommonJS(create_exports);
|
|
29
|
-
var import_ansis = __toESM(require("ansis")), import_fs_extra = __toESM(require("fs-extra")), import_node_child_process = require("node:child_process"), import_node_fs = __toESM(require("node:fs")), import_node_path = __toESM(require("node:path")), import_cloneStarter = require("./helpers/cloneStarter"), import_getProjectName = require("./helpers/getProjectName"), import_getTemplateInfo = require("./helpers/getTemplateInfo"), import_installDependencies = require("./helpers/installDependencies"), import_validateNpmPackage = require("./helpers/validateNpmPackage"), import_prompts = __toESM(require("prompts")), import_detectPackageManager = require("./helpers/detectPackageManager")
|
|
29
|
+
var import_ansis = __toESM(require("ansis")), import_fs_extra = __toESM(require("fs-extra")), import_node_child_process = require("node:child_process"), import_node_fs = __toESM(require("node:fs")), import_node_path = __toESM(require("node:path")), import_node_util = require("node:util"), import_node_url = require("node:url"), import_cloneStarter = require("./helpers/cloneStarter"), import_getProjectName = require("./helpers/getProjectName"), import_getTemplateInfo = require("./helpers/getTemplateInfo"), import_installDependencies = require("./helpers/installDependencies"), import_validateNpmPackage = require("./helpers/validateNpmPackage"), import_prompts = __toESM(require("prompts")), import_detectPackageManager = require("./helpers/detectPackageManager");
|
|
30
|
+
const import_meta = {};
|
|
31
|
+
var { existsSync, readFileSync, writeFileSync } = import_fs_extra.default;
|
|
30
32
|
async function create(args) {
|
|
31
33
|
var gitVersionString = Number.parseFloat((0, import_node_child_process.execSync)("git --version").toString().replace("git version ", "").trim());
|
|
32
34
|
gitVersionString < 2.27 && (console.error(`
|
|
@@ -76,7 +78,42 @@ async function create(args) {
|
|
|
76
78
|
|
|
77
79
|
`, e), process.exit(1);
|
|
78
80
|
}
|
|
79
|
-
spinner.stop(), console.info(), console.info(), console.info(import_ansis.default.green(`${projectName} created!`)), console.info(), console.info()
|
|
81
|
+
spinner.stop(), console.info(), console.info(), console.info(import_ansis.default.green(`${projectName} created!`)), console.info(), console.info();
|
|
82
|
+
var packageJson = await async function() {
|
|
83
|
+
var errorMessages = [];
|
|
84
|
+
try {
|
|
85
|
+
var dirname = typeof __dirname < "u" ? __dirname : import_node_path.default.dirname((0, import_node_url.fileURLToPath)(import_meta.url)), possiblePaths = [
|
|
86
|
+
import_node_path.default.join(dirname, "..", "package.json"),
|
|
87
|
+
import_node_path.default.join(dirname, "..", "..", "package.json"),
|
|
88
|
+
import_node_path.default.join(dirname, "..", "..", "..", "package.json")
|
|
89
|
+
], readFile = (0, import_node_util.promisify)(import_node_fs.default.readFile), _iteratorNormalCompletion = !0, _didIteratorError = !1, _iteratorError = void 0;
|
|
90
|
+
try {
|
|
91
|
+
for (var _iterator = possiblePaths[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
|
|
92
|
+
var p = _step.value;
|
|
93
|
+
try {
|
|
94
|
+
var data = JSON.parse(await readFile(p));
|
|
95
|
+
return data;
|
|
96
|
+
} catch (e) {
|
|
97
|
+
e instanceof Error && errorMessages.push(e.message);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
} catch (err) {
|
|
101
|
+
_didIteratorError = !0, _iteratorError = err;
|
|
102
|
+
} finally {
|
|
103
|
+
try {
|
|
104
|
+
!_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
|
|
105
|
+
} finally {
|
|
106
|
+
if (_didIteratorError)
|
|
107
|
+
throw _iteratorError;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
throw new Error("package.json not found in any of the expected locations.");
|
|
111
|
+
} catch (e) {
|
|
112
|
+
throw console.error("Failed to load package.json:", errorMessages.join(`
|
|
113
|
+
`)), e;
|
|
114
|
+
}
|
|
115
|
+
}();
|
|
116
|
+
updatePackageJsonName(projectName, resolvedProjectPath), updatePackageJsonVersions(packageJson.version, resolvedProjectPath), updateAppJsonName(projectName, resolvedProjectPath);
|
|
80
117
|
var packageManager = await async function() {
|
|
81
118
|
if ("packageManager" in template)
|
|
82
119
|
return template.packageManager;
|
|
@@ -125,6 +162,13 @@ function updatePackageJsonName(projectName, dir) {
|
|
|
125
162
|
writeFileSync(packageJsonPath, contentWithUpdatedName);
|
|
126
163
|
}
|
|
127
164
|
}
|
|
165
|
+
function updatePackageJsonVersions(version, dir) {
|
|
166
|
+
var packageJsonPath = import_node_path.default.join(dir, "package.json");
|
|
167
|
+
if (existsSync(packageJsonPath)) {
|
|
168
|
+
var content = readFileSync(packageJsonPath).toString(), contentWithUpdatedVersions = content.replace(/"workspace:\^"/gm, `"^${version}"`).replace(/"workspace:~"/gm, `"~${version}"`).replace(/"workspace:\*"/gm, `"${version}"`);
|
|
169
|
+
writeFileSync(packageJsonPath, contentWithUpdatedVersions);
|
|
170
|
+
}
|
|
171
|
+
}
|
|
128
172
|
function updateAppJsonName(projectName, dir) {
|
|
129
173
|
var appJsonPath = import_node_path.default.join(dir, "app.json");
|
|
130
174
|
if (existsSync(appJsonPath)) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Users/n8/one/packages/create-vxrn/src/create.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;mBAAkB,2BAClB,kBAAoB,8BACpB,4BAAyB,+BACzB,iBAAe,6BACf,mBAAiB,+BACjB,sBAA6B,mCAC7B,wBAA+B,qCAC/B,yBAAgC,sCAChC,6BAAoC,0CACpC,4BAAgC,yCAChC,iBAAoB,6BACpB,
|
|
5
|
-
"names": ["existsSync", "readFileSync", "writeFileSync", "FSExtra", "create", "args", "gitVersionString", "Number", "parseFloat", "execSync", "toString", "replace", "trim", "console", "error", "process", "exit", "projectName", "name", "resolvedProjectPath", "path", "resolve", "cwd", "promptForName", "getProjectName", "fs", "info", "ansis", "yellow", "underline", "blueBright", "template", "getTemplateInfo", "valid", "problems", "validateNpmName", "red", "forEach", "p", "bold", "Spinner", "then", "x", "default", "spinner", "text", "frames", "interval", "start", "mkdir", "cloneStarter", "chdir", "e", "stop", "green", "updatePackageJsonName", "updateAppJsonName", "packageManager", "found", "detectPackageManager", "allFound", "Object", "keys", "length", "response", "prompts", "type", "
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["existsSync", "readFileSync", "writeFileSync", "FSExtra", "create", "args", "gitVersionString", "Number", "parseFloat", "execSync", "toString", "replace", "trim", "console", "error", "process", "exit", "projectName", "name", "resolvedProjectPath", "path", "resolve", "cwd", "promptForName", "getProjectName", "fs", "info", "ansis", "yellow", "underline", "blueBright", "template", "getTemplateInfo", "valid", "problems", "validateNpmName", "red", "forEach", "p", "bold", "Spinner", "then", "x", "default", "spinner", "text", "frames", "interval", "start", "mkdir", "cloneStarter", "chdir", "e", "stop", "green", "packageJson", "errorMessages", "dirname", "__dirname", "fileURLToPath", "url", "possiblePaths", "join", "readFile", "promisify", "data", "JSON", "parse", "Error", "push", "message", "updatePackageJsonName", "updatePackageJsonVersions", "version", "updateAppJsonName", "packageManager", "found", "detectPackageManager", "allFound", "Object", "keys", "length", "response", "prompts", "type", "choices", "filter", "map", "title", "value", "preInstall", "isFullClone", "projectPath", "installDependencies", "envDefault", "env", "move", "extraSteps", "dir", "packageJsonPath", "content", "contentWithUpdatedName", "contentWithUpdatedVersions", "appJsonPath", "projectSlug", "toLowerCase"]
|
|
6
6
|
}
|
package/dist/esm/create.js
CHANGED
|
@@ -3,13 +3,17 @@ import FSExtra from "fs-extra";
|
|
|
3
3
|
import { execSync } from "node:child_process";
|
|
4
4
|
import fs from "node:fs";
|
|
5
5
|
import path from "node:path";
|
|
6
|
+
import { promisify } from "node:util";
|
|
7
|
+
import { fileURLToPath } from "node:url";
|
|
6
8
|
import { cloneStarter } from "./helpers/cloneStarter";
|
|
7
9
|
import { getProjectName } from "./helpers/getProjectName";
|
|
8
10
|
import { getTemplateInfo } from "./helpers/getTemplateInfo";
|
|
9
11
|
import { installDependencies } from "./helpers/installDependencies";
|
|
10
12
|
import { validateNpmName } from "./helpers/validateNpmPackage";
|
|
11
13
|
import prompts from "prompts";
|
|
12
|
-
import {
|
|
14
|
+
import {
|
|
15
|
+
detectPackageManager
|
|
16
|
+
} from "./helpers/detectPackageManager";
|
|
13
17
|
const { existsSync, readFileSync, writeFileSync } = FSExtra;
|
|
14
18
|
async function create(args) {
|
|
15
19
|
Number.parseFloat(
|
|
@@ -56,7 +60,28 @@ async function create(args) {
|
|
|
56
60
|
|
|
57
61
|
`, e), process.exit(1);
|
|
58
62
|
}
|
|
59
|
-
spinner.stop(), console.info(), console.info(), console.info(ansis.green(`${projectName} created!`)), console.info(), console.info()
|
|
63
|
+
spinner.stop(), console.info(), console.info(), console.info(ansis.green(`${projectName} created!`)), console.info(), console.info();
|
|
64
|
+
const packageJson = await (async () => {
|
|
65
|
+
const errorMessages = [];
|
|
66
|
+
try {
|
|
67
|
+
const dirname = typeof __dirname < "u" ? __dirname : path.dirname(fileURLToPath(import.meta.url)), possiblePaths = [
|
|
68
|
+
path.join(dirname, "..", "package.json"),
|
|
69
|
+
path.join(dirname, "..", "..", "package.json"),
|
|
70
|
+
path.join(dirname, "..", "..", "..", "package.json")
|
|
71
|
+
], readFile = promisify(fs.readFile);
|
|
72
|
+
for (const p of possiblePaths)
|
|
73
|
+
try {
|
|
74
|
+
return JSON.parse(await readFile(p));
|
|
75
|
+
} catch (e) {
|
|
76
|
+
e instanceof Error && errorMessages.push(e.message);
|
|
77
|
+
}
|
|
78
|
+
throw new Error("package.json not found in any of the expected locations.");
|
|
79
|
+
} catch (e) {
|
|
80
|
+
throw console.error("Failed to load package.json:", errorMessages.join(`
|
|
81
|
+
`)), e;
|
|
82
|
+
}
|
|
83
|
+
})();
|
|
84
|
+
updatePackageJsonName(projectName, resolvedProjectPath), updatePackageJsonVersions(packageJson.version, resolvedProjectPath), updateAppJsonName(projectName, resolvedProjectPath);
|
|
60
85
|
const packageManager = await (async () => {
|
|
61
86
|
if ("packageManager" in template)
|
|
62
87
|
return template.packageManager;
|
|
@@ -94,10 +119,20 @@ ${e}`), process.exit(1);
|
|
|
94
119
|
function updatePackageJsonName(projectName, dir) {
|
|
95
120
|
const packageJsonPath = path.join(dir, "package.json");
|
|
96
121
|
if (existsSync(packageJsonPath)) {
|
|
97
|
-
const contentWithUpdatedName = readFileSync(packageJsonPath).toString().replace(
|
|
122
|
+
const contentWithUpdatedName = readFileSync(packageJsonPath).toString().replace(
|
|
123
|
+
/("name": ")(.*)(",)/,
|
|
124
|
+
`$1${projectName}$3`
|
|
125
|
+
);
|
|
98
126
|
writeFileSync(packageJsonPath, contentWithUpdatedName);
|
|
99
127
|
}
|
|
100
128
|
}
|
|
129
|
+
function updatePackageJsonVersions(version, dir) {
|
|
130
|
+
const packageJsonPath = path.join(dir, "package.json");
|
|
131
|
+
if (existsSync(packageJsonPath)) {
|
|
132
|
+
const contentWithUpdatedVersions = readFileSync(packageJsonPath).toString().replace(/"workspace:\^"/gm, `"^${version}"`).replace(/"workspace:~"/gm, `"~${version}"`).replace(/"workspace:\*"/gm, `"${version}"`);
|
|
133
|
+
writeFileSync(packageJsonPath, contentWithUpdatedVersions);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
101
136
|
function updateAppJsonName(projectName, dir) {
|
|
102
137
|
const appJsonPath = path.join(dir, "app.json");
|
|
103
138
|
if (existsSync(appJsonPath)) {
|
package/dist/esm/create.js.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/create.ts"],
|
|
4
|
-
"mappings": "AAAA,OAAO,WAAW;AAClB,OAAO,aAAa;AACpB,SAAS,gBAAgB;AACzB,OAAO,QAAQ;AACf,OAAO,UAAU;AACjB,SAAS,oBAAoB;AAC7B,SAAS,sBAAsB;AAC/B,SAAS,uBAAuB;AAChC,SAAS,2BAA2B;AACpC,SAAS,uBAAuB;AAChC,OAAO,aAAa;AACpB,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/esm/create.mjs
CHANGED
|
@@ -3,6 +3,8 @@ import FSExtra from "fs-extra";
|
|
|
3
3
|
import { execSync } from "node:child_process";
|
|
4
4
|
import fs from "node:fs";
|
|
5
5
|
import path from "node:path";
|
|
6
|
+
import { promisify } from "node:util";
|
|
7
|
+
import { fileURLToPath } from "node:url";
|
|
6
8
|
import { cloneStarter } from "./helpers/cloneStarter.mjs";
|
|
7
9
|
import { getProjectName } from "./helpers/getProjectName.mjs";
|
|
8
10
|
import { getTemplateInfo } from "./helpers/getTemplateInfo.mjs";
|
|
@@ -49,7 +51,25 @@ async function create(args) {
|
|
|
49
51
|
|
|
50
52
|
`, e), process.exit(1);
|
|
51
53
|
}
|
|
52
|
-
spinner.stop(), console.info(), console.info(), console.info(ansis.green(`${projectName} created!`)), console.info(), console.info()
|
|
54
|
+
spinner.stop(), console.info(), console.info(), console.info(ansis.green(`${projectName} created!`)), console.info(), console.info();
|
|
55
|
+
const packageJson = await (async () => {
|
|
56
|
+
const errorMessages = [];
|
|
57
|
+
try {
|
|
58
|
+
const dirname = typeof __dirname < "u" ? __dirname : path.dirname(fileURLToPath(import.meta.url)),
|
|
59
|
+
possiblePaths = [path.join(dirname, "..", "package.json"), path.join(dirname, "..", "..", "package.json"), path.join(dirname, "..", "..", "..", "package.json")],
|
|
60
|
+
readFile = promisify(fs.readFile);
|
|
61
|
+
for (const p of possiblePaths) try {
|
|
62
|
+
return JSON.parse(await readFile(p));
|
|
63
|
+
} catch (e) {
|
|
64
|
+
e instanceof Error && errorMessages.push(e.message);
|
|
65
|
+
}
|
|
66
|
+
throw new Error("package.json not found in any of the expected locations.");
|
|
67
|
+
} catch (e) {
|
|
68
|
+
throw console.error("Failed to load package.json:", errorMessages.join(`
|
|
69
|
+
`)), e;
|
|
70
|
+
}
|
|
71
|
+
})();
|
|
72
|
+
updatePackageJsonName(projectName, resolvedProjectPath), updatePackageJsonVersions(packageJson.version, resolvedProjectPath), updateAppJsonName(projectName, resolvedProjectPath);
|
|
53
73
|
const packageManager = await (async () => {
|
|
54
74
|
if ("packageManager" in template) return template.packageManager;
|
|
55
75
|
const found = await detectPackageManager(),
|
|
@@ -92,6 +112,13 @@ function updatePackageJsonName(projectName, dir) {
|
|
|
92
112
|
writeFileSync(packageJsonPath, contentWithUpdatedName);
|
|
93
113
|
}
|
|
94
114
|
}
|
|
115
|
+
function updatePackageJsonVersions(version, dir) {
|
|
116
|
+
const packageJsonPath = path.join(dir, "package.json");
|
|
117
|
+
if (existsSync(packageJsonPath)) {
|
|
118
|
+
const contentWithUpdatedVersions = readFileSync(packageJsonPath).toString().replace(/"workspace:\^"/gm, `"^${version}"`).replace(/"workspace:~"/gm, `"~${version}"`).replace(/"workspace:\*"/gm, `"${version}"`);
|
|
119
|
+
writeFileSync(packageJsonPath, contentWithUpdatedVersions);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
95
122
|
function updateAppJsonName(projectName, dir) {
|
|
96
123
|
const appJsonPath = path.join(dir, "app.json");
|
|
97
124
|
if (existsSync(appJsonPath)) {
|
package/dist/esm/create.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ansis","FSExtra","execSync","fs","path","cloneStarter","getProjectName","getTemplateInfo","installDependencies","validateNpmName","prompts","detectPackageManager","existsSync","readFileSync","writeFileSync","create","args","Number","parseFloat","toString","replace","trim","console","error","process","exit","projectName","name","resolvedProjectPath","resolve","cwd","promptForName","info","yellow","underline","blueBright","template","valid","problems","red","forEach","p","bold","spinner","then","x","default","text","frames","interval","start","mkdir","chdir","e","stop","green","updatePackageJsonName","updateAppJsonName","packageManager","found","allFound","Object","keys","length","type","
|
|
1
|
+
{"version":3,"names":["ansis","FSExtra","execSync","fs","path","promisify","fileURLToPath","cloneStarter","getProjectName","getTemplateInfo","installDependencies","validateNpmName","prompts","detectPackageManager","existsSync","readFileSync","writeFileSync","create","args","Number","parseFloat","toString","replace","trim","console","error","process","exit","projectName","name","resolvedProjectPath","resolve","cwd","promptForName","info","yellow","underline","blueBright","template","valid","problems","red","forEach","p","bold","spinner","then","x","default","text","frames","interval","start","mkdir","chdir","e","stop","green","packageJson","errorMessages","dirname","__dirname","import","meta","url","possiblePaths","join","readFile","JSON","parse","Error","push","message","updatePackageJsonName","updatePackageJsonVersions","version","updateAppJsonName","packageManager","found","allFound","Object","keys","length","type","choices","filter","map","title","value","preInstall","isFullClone","projectPath","envDefault","env","move","extraSteps","dir","packageJsonPath","contentWithUpdatedName","contentWithUpdatedVersions","appJsonPath","content","projectSlug","toLowerCase"],"sources":["../../src/create.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -3,6 +3,8 @@ import FSExtra from "fs-extra";
|
|
|
3
3
|
import { execSync } from "node:child_process";
|
|
4
4
|
import fs from "node:fs";
|
|
5
5
|
import path from "node:path";
|
|
6
|
+
import { promisify } from "node:util";
|
|
7
|
+
import { fileURLToPath } from "node:url";
|
|
6
8
|
import { cloneStarter } from "./helpers/cloneStarter";
|
|
7
9
|
import { getProjectName } from "./helpers/getProjectName";
|
|
8
10
|
import { getTemplateInfo } from "./helpers/getTemplateInfo";
|
|
@@ -60,7 +62,42 @@ async function create(args) {
|
|
|
60
62
|
|
|
61
63
|
`, e), process.exit(1);
|
|
62
64
|
}
|
|
63
|
-
spinner.stop(), console.info(), console.info(), console.info(ansis.green(`${projectName} created!`)), console.info(), console.info()
|
|
65
|
+
spinner.stop(), console.info(), console.info(), console.info(ansis.green(`${projectName} created!`)), console.info(), console.info();
|
|
66
|
+
var packageJson = await async function() {
|
|
67
|
+
var errorMessages = [];
|
|
68
|
+
try {
|
|
69
|
+
var dirname = typeof __dirname < "u" ? __dirname : path.dirname(fileURLToPath(import.meta.url)), possiblePaths = [
|
|
70
|
+
path.join(dirname, "..", "package.json"),
|
|
71
|
+
path.join(dirname, "..", "..", "package.json"),
|
|
72
|
+
path.join(dirname, "..", "..", "..", "package.json")
|
|
73
|
+
], readFile = promisify(fs.readFile), _iteratorNormalCompletion = !0, _didIteratorError = !1, _iteratorError = void 0;
|
|
74
|
+
try {
|
|
75
|
+
for (var _iterator = possiblePaths[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
|
|
76
|
+
var p = _step.value;
|
|
77
|
+
try {
|
|
78
|
+
var data = JSON.parse(await readFile(p));
|
|
79
|
+
return data;
|
|
80
|
+
} catch (e) {
|
|
81
|
+
e instanceof Error && errorMessages.push(e.message);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
} catch (err) {
|
|
85
|
+
_didIteratorError = !0, _iteratorError = err;
|
|
86
|
+
} finally {
|
|
87
|
+
try {
|
|
88
|
+
!_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
|
|
89
|
+
} finally {
|
|
90
|
+
if (_didIteratorError)
|
|
91
|
+
throw _iteratorError;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
throw new Error("package.json not found in any of the expected locations.");
|
|
95
|
+
} catch (e) {
|
|
96
|
+
throw console.error("Failed to load package.json:", errorMessages.join(`
|
|
97
|
+
`)), e;
|
|
98
|
+
}
|
|
99
|
+
}();
|
|
100
|
+
updatePackageJsonName(projectName, resolvedProjectPath), updatePackageJsonVersions(packageJson.version, resolvedProjectPath), updateAppJsonName(projectName, resolvedProjectPath);
|
|
64
101
|
var packageManager = await async function() {
|
|
65
102
|
if ("packageManager" in template)
|
|
66
103
|
return template.packageManager;
|
|
@@ -109,6 +146,13 @@ function updatePackageJsonName(projectName, dir) {
|
|
|
109
146
|
writeFileSync(packageJsonPath, contentWithUpdatedName);
|
|
110
147
|
}
|
|
111
148
|
}
|
|
149
|
+
function updatePackageJsonVersions(version, dir) {
|
|
150
|
+
var packageJsonPath = path.join(dir, "package.json");
|
|
151
|
+
if (existsSync(packageJsonPath)) {
|
|
152
|
+
var content = readFileSync(packageJsonPath).toString(), contentWithUpdatedVersions = content.replace(/"workspace:\^"/gm, `"^${version}"`).replace(/"workspace:~"/gm, `"~${version}"`).replace(/"workspace:\*"/gm, `"${version}"`);
|
|
153
|
+
writeFileSync(packageJsonPath, contentWithUpdatedVersions);
|
|
154
|
+
}
|
|
155
|
+
}
|
|
112
156
|
function updateAppJsonName(projectName, dir) {
|
|
113
157
|
var appJsonPath = path.join(dir, "app.json");
|
|
114
158
|
if (existsSync(appJsonPath)) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Users/n8/one/packages/create-vxrn/src/create.ts"],
|
|
4
|
-
"mappings": "AAAA,OAAOA,WAAW;AAClB,OAAOC,aAAa;AACpB,SAASC,gBAAgB;AACzB,OAAOC,QAAQ;AACf,OAAOC,UAAU;AACjB,SAASC,oBAAoB;AAC7B,SAASC,sBAAsB;AAC/B,SAASC,uBAAuB;AAChC,SAASC,2BAA2B;AACpC,SAASC,uBAAuB;AAChC,OAAOC,aAAa;AACpB,
|
|
5
|
-
"names": ["ansis", "FSExtra", "execSync", "fs", "path", "cloneStarter", "getProjectName", "getTemplateInfo", "installDependencies", "validateNpmName", "prompts", "detectPackageManager", "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", "valid", "problems", "red", "forEach", "p", "bold", "Spinner", "then", "x", "default", "spinner", "text", "frames", "interval", "start", "mkdir", "chdir", "e", "stop", "green", "updatePackageJsonName", "updateAppJsonName", "packageManager", "found", "allFound", "Object", "keys", "length", "response", "type", "
|
|
4
|
+
"mappings": "AAAA,OAAOA,WAAW;AAClB,OAAOC,aAAa;AACpB,SAASC,gBAAgB;AACzB,OAAOC,QAAQ;AACf,OAAOC,UAAU;AACjB,SAASC,iBAAiB;AAC1B,SAASC,qBAAqB;AAC9B,SAASC,oBAAoB;AAC7B,SAASC,sBAAsB;AAC/B,SAASC,uBAAuB;AAChC,SAASC,2BAA2B;AACpC,SAASC,uBAAuB;AAChC,OAAOC,aAAa;AACpB,SACEC,4BAEK;AAEP,IAAM,EAAEC,YAAYC,cAAcC,cAAa,IAAKf;AAEpD,eAAsBgB,OAAOC,MAA0C;AACrE,MAAMC,mBAAmBC,OAAOC,WAC9BnB,SAAS,eAAe,EAAEoB,SAAQ,EAAGC,QAAQ,gBAAgB,EAAA,EAAIC,KAAI,CAAA;AAEvE,EAAIL,mBAAmB,SACrBM,QAAQC,MAAM;;;;CAA6D,GAC3EC,QAAQC,KAAK,CAAA;AAGf,MAAIC,cAAcX,KAAKY,QAAQ,IAC3BC,sBAAsB3B,KAAK4B,QAAQL,QAAQM,IAAG,GAAIJ,WAAAA;AAEtD,iBAAeK,gBAAAA;AACbL,kBAAc,MAAMrB,eAAAA,GACpBuB,sBAAsB3B,KAAK4B,QAAQL,QAAQM,IAAG,GAAIJ,WAAAA;EACpD;AAEA,MAAIA;AACF,IAAI1B,GAAGW,WAAWiB,mBAAAA,MAChBN,QAAQC,MAAM,iCAAiCK,mBAAAA,EAAqB,GACpEJ,QAAQC,KAAK,CAAA;;AAKf,SAFA,MAAMM,cAAAA,GAEC/B,GAAGW,WAAWiB,mBAAAA;AACnBN,cAAQU,KAAI,GACZV,QAAQU,KACNnC,MAAMoC,OAAO,cAAA,GACb,cAAcpC,MAAMqC,UAClBrC,MAAMsC,WAAWT,WAAAA,CAAAA,CAAAA,wCACsB,GAE3CJ,QAAQU,KAAI,GACZV,QAAQU,KAAI,GACZ,MAAMD,cAAAA;AAKVT,UAAQU,KAAI;AAEZ,MAAII,WAAW,MAAM9B,gBAAgBS,KAAKqB,QAAQ,GAE5C,EAAEC,OAAOC,SAAQ,IAAK9B,gBAAgBkB,WAAAA;AAC5C,EAAKW,UACHf,QAAQC,MACN,qCAAqC1B,MAAM0C,IACzC,IAAIb,WAAAA,GAAc,CAAA,sCACmB,GAGzCY,SAAUE,QAAQ,SAACC,GAAAA;WAAMnB,QAAQC,MAAM,OAAO1B,MAAM0C,IAAIG,KAAK,GAAA,CAAA,IAAQD,CAAAA,EAAG;MACxEjB,QAAQC,KAAK,CAAA,IAGfH,QAAQU,KAAI;AAEZ,MAAMW,UAAU,MAAM,OAAO,eAAA,EAAiBC,KAAK,SAACC,GAAAA;WAAMA,EAAEC;MAEtDC,UAAUJ,QAAQ;IACtBK,MAAM;IACND,SAAS;MACPE,QAAQ;QAAC;QAAK;QAAK;QAAK;QAAK;QAAK;QAAK;QAAK;QAAK;QAAK;;MACtDC,UAAU;IACZ;EACF,CAAA,EAAGC,MAAK;AAER,QAAMrD,QAAQsD,MAAMxB,mBAAAA;AAEpB,MAAI;AACF,UAAMxB,aAAagC,UAAUR,mBAAAA,GAC7BJ,QAAQ6B,MAAMzB,mBAAAA;EAChB,SAAS0B,GAAG;AACVhC,YAAQC,MAAM,sCAAsCK,mBAAAA;;GAA2B0B,CAAAA,GAC/E9B,QAAQC,KAAK,CAAA;EACf;AAEAsB,UAAQQ,KAAI,GACZjC,QAAQU,KAAI,GACZV,QAAQU,KAAI,GACZV,QAAQU,KAAKnC,MAAM2D,MAAM,GAAG9B,WAAAA,WAAsB,CAAA,GAClDJ,QAAQU,KAAI,GACZV,QAAQU,KAAI;AAEZ,MAAMyB,cAAc,MAAO,iBAAA;AACzB,QAAMC,gBAA0B,CAAA;AAEhC,QAAI;AACF,UAAMC,UACJ,OAAOC,YAAc,MACjBA,YACA3D,KAAK0D,QAAQxD,cAAc,YAAY0D,GAAG,CAAA,GAG1CC,gBAAgB;QACpB7D,KAAK8D,KAAKJ,SAAS,MAAM,cAAA;QACzB1D,KAAK8D,KAAKJ,SAAS,MAAM,MAAM,cAAA;QAC/B1D,KAAK8D,KAAKJ,SAAS,MAAM,MAAM,MAAM,cAAA;SAGjCK,WAAW9D,UAAUF,GAAGgE,QAAQ,GAEjC,4BAAA,IAAA,oBAAA,IAAA,iBAAA;;AAAL,iBAAK,YAAWF,cAAAA,OAAAA,QAAAA,EAAAA,GAAX,OAAA,EAAA,6BAAA,QAAA,UAAA,KAAA,GAAA,OAAA,4BAAA,IAA0B;AAA1B,cAAMrB,IAAN,MAAA;AACH,cAAI;AACF,gBAAMwB,OAAOC,KAAKC,MAAO,MAAMH,SAASvB,CAAAA,CAAAA;AACxC,mBAAOwB;UACT,SAASX,GAAG;AACV,YAAIA,aAAac,SAAOV,cAAcW,KAAKf,EAAEgB,OAAO;UACtD;QACF;;AAPK,4BAAA,IAAA,iBAAA;;;WAAA,6BAAA,UAAA,UAAA,QAAA,UAAA,OAAA;;cAAA;kBAAA;;;AASL,YAAM,IAAIF,MAAM,0DAAA;IAClB,SAASd,GAAG;AACVhC,oBAAQC,MAAM,gCAAgCmC,cAAcK,KAAK;CAAA,CAAA,GAC3DT;IACR;EACF,EAAA;AAGAiB,wBAAsB7C,aAAaE,mBAAAA,GAEnC4C,0BAA0Bf,YAAYgB,SAAS7C,mBAAAA,GAE/C8C,kBAAkBhD,aAAaE,mBAAAA;AAE/B,MAAM+C,iBAAqC,MAAO,iBAAA;AAChD,QAAI,oBAAoBvC;AACtB,aAAOA,SAASuC;AAElB,QAAMC,QAAQ,MAAMlE,qBAAAA,GAEdmE,WAAWC,OAAOC,KAAKH,KAAAA;AAE7B,QAAIC,SAASG,WAAW;AACtB,aAAOH,SAAS,CAAA;AAGlB,QAAMI,WAAW,MAAMxE,QAAQ;MAC7BkB,MAAM;MACNuD,MAAM;MACNZ,SAAS;MACTa,SAASN,SACNO,OAAO,SAACvC,GAAAA;eAAM+B,MAAM/B,CAAAA;SACpBwC,IAAI,SAAC1D,MAAAA;eAAU;UACd2D,OAAO3D;UACP4D,OAAO5D;QACT;;IACJ,CAAA;AAEA,WAAOsD,SAASN;EAClB,EAAA;AAEArD,UAAQU,KAAI,GAER,gBAAgBI,YAClB,MAAMA,SAASoD,WAAW;IACxBb;IACAc,aAAa;IACb/D;IACAgE,aAAa9D;EACf,CAAA;AAGF,MAAI;AACFN,YAAQU,KAAI,GACZV,QAAQU,KAAKnC,MAAM2D,MAAM,mBAAmBmB,cAAAA,KAAmB,CAAA,GAC/DrD,QAAQU,KAAI,GACZ,MAAMzB,oBAAoBqB,qBAAqB+C,cAAAA;EACjD,SAASrB,GAAQ;AACfhC,YAAQC,MAAM,kCAAkCoD,iBAAiB;EAAUrB,CAAAA,EAAG,GAC9E9B,QAAQC,KAAK,CAAA;EACf;AAGA,MAAMkE,aAAa1F,KAAK8D,KAAKnC,qBAAqB,cAAA,GAC5CgE,MAAM3F,KAAK8D,KAAKnC,qBAAqB,MAAA;AAC3C,EAAIjB,WAAWgF,UAAAA,KAAe,CAAChF,WAAWiF,GAAAA,KACxC,MAAM9F,QAAQ+F,KAAKF,YAAYC,GAAAA,GAG7B,gBAAgBxD,YAClB,MAAMA,SAAS0D,WAAW;IACxBnB;IACAc,aAAa;IACb/D;IACAgE,aAAa9D;EACf,CAAA,GAGFN,QAAQU,KAAI;AACd;AAEA,SAASuC,sBAAsB7C,aAAqBqE,KAAW;AAC7D,MAAMC,kBAAkB/F,KAAK8D,KAAKgC,KAAK,cAAA;AACvC,MAAIpF,WAAWqF,eAAAA,GAAkB;AAC/B,QAAMC,UAAUrF,aAAaoF,eAAAA,EAAiB7E,SAAQ,GAChD+E,yBAAyBD,QAAQ7E,QACrC,uBACA,KAAKM,WAAAA,IAAe;AAEtBb,kBAAcmF,iBAAiBE,sBAAAA;EACjC;AACF;AAEA,SAAS1B,0BAA0BC,SAAiBsB,KAAW;AAC7D,MAAMC,kBAAkB/F,KAAK8D,KAAKgC,KAAK,cAAA;AACvC,MAAIpF,WAAWqF,eAAAA,GAAkB;AAC/B,QAAMC,UAAUrF,aAAaoF,eAAAA,EAAiB7E,SAAQ,GAEhDgF,6BAA6BF,QAChC7E,QAAQ,oBAAoB,KAAKqD,OAAAA,GAAU,EAC3CrD,QAAQ,mBAAmB,KAAKqD,OAAAA,GAAU,EAC1CrD,QAAQ,oBAAoB,IAAIqD,OAAAA,GAAU;AAC7C5D,kBAAcmF,iBAAiBG,0BAAAA;EACjC;AACF;AAEA,SAASzB,kBAAkBhD,aAAqBqE,KAAW;AACzD,MAAMK,cAAcnG,KAAK8D,KAAKgC,KAAK,UAAA;AACnC,MAAIpF,WAAWyF,WAAAA,GAAc;AAC3B,QAAMH,UAAUrF,aAAawF,WAAAA,EAAajF,SAAQ,GAC5CkF,cAAc3E,YAAY4E,YAAW,EAAGlF,QAAQ,OAAO,GAAA,GACvD8E,yBAAyBD,QAC5B7E,QAAQ,uBAAuB,KAAKM,WAAAA,IAAe,EACnDN,QAAQ,uBAAuB,KAAKiF,WAAAA,IAAe;AACtDxF,kBAAcuF,aAAaF,sBAAAA;EAC7B;AACF;",
|
|
5
|
+
"names": ["ansis", "FSExtra", "execSync", "fs", "path", "promisify", "fileURLToPath", "cloneStarter", "getProjectName", "getTemplateInfo", "installDependencies", "validateNpmName", "prompts", "detectPackageManager", "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", "valid", "problems", "red", "forEach", "p", "bold", "Spinner", "then", "x", "default", "spinner", "text", "frames", "interval", "start", "mkdir", "chdir", "e", "stop", "green", "packageJson", "errorMessages", "dirname", "__dirname", "url", "possiblePaths", "join", "readFile", "data", "JSON", "parse", "Error", "push", "message", "updatePackageJsonName", "updatePackageJsonVersions", "version", "updateAppJsonName", "packageManager", "found", "allFound", "Object", "keys", "length", "response", "type", "choices", "filter", "map", "title", "value", "preInstall", "isFullClone", "projectPath", "envDefault", "env", "move", "extraSteps", "dir", "packageJsonPath", "content", "contentWithUpdatedName", "contentWithUpdatedVersions", "appJsonPath", "projectSlug", "toLowerCase"]
|
|
6
6
|
}
|
package/package.json
CHANGED
package/src/create.ts
CHANGED
|
@@ -3,13 +3,18 @@ import FSExtra from 'fs-extra'
|
|
|
3
3
|
import { execSync } from 'node:child_process'
|
|
4
4
|
import fs from 'node:fs'
|
|
5
5
|
import path from 'node:path'
|
|
6
|
+
import { promisify } from 'node:util'
|
|
7
|
+
import { fileURLToPath } from 'node:url'
|
|
6
8
|
import { cloneStarter } from './helpers/cloneStarter'
|
|
7
9
|
import { getProjectName } from './helpers/getProjectName'
|
|
8
10
|
import { getTemplateInfo } from './helpers/getTemplateInfo'
|
|
9
11
|
import { installDependencies } from './helpers/installDependencies'
|
|
10
12
|
import { validateNpmName } from './helpers/validateNpmPackage'
|
|
11
13
|
import prompts from 'prompts'
|
|
12
|
-
import {
|
|
14
|
+
import {
|
|
15
|
+
detectPackageManager,
|
|
16
|
+
type PackageManagerName,
|
|
17
|
+
} from './helpers/detectPackageManager'
|
|
13
18
|
|
|
14
19
|
const { existsSync, readFileSync, writeFileSync } = FSExtra
|
|
15
20
|
|
|
@@ -98,8 +103,44 @@ export async function create(args: { template?: string; name?: string }) {
|
|
|
98
103
|
console.info()
|
|
99
104
|
console.info()
|
|
100
105
|
|
|
106
|
+
const packageJson = await (async () => {
|
|
107
|
+
const errorMessages: string[] = []
|
|
108
|
+
|
|
109
|
+
try {
|
|
110
|
+
const dirname =
|
|
111
|
+
typeof __dirname !== 'undefined'
|
|
112
|
+
? __dirname
|
|
113
|
+
: path.dirname(fileURLToPath(import.meta.url))
|
|
114
|
+
|
|
115
|
+
// Test the paths to ensure they exist
|
|
116
|
+
const possiblePaths = [
|
|
117
|
+
path.join(dirname, '..', 'package.json'),
|
|
118
|
+
path.join(dirname, '..', '..', 'package.json'),
|
|
119
|
+
path.join(dirname, '..', '..', '..', 'package.json'),
|
|
120
|
+
]
|
|
121
|
+
|
|
122
|
+
const readFile = promisify(fs.readFile)
|
|
123
|
+
|
|
124
|
+
for (const p of possiblePaths) {
|
|
125
|
+
try {
|
|
126
|
+
const data = JSON.parse((await readFile(p)) as any)
|
|
127
|
+
return data
|
|
128
|
+
} catch (e) {
|
|
129
|
+
if (e instanceof Error) errorMessages.push(e.message)
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
throw new Error('package.json not found in any of the expected locations.')
|
|
134
|
+
} catch (e) {
|
|
135
|
+
console.error('Failed to load package.json:', errorMessages.join('\n'))
|
|
136
|
+
throw e
|
|
137
|
+
}
|
|
138
|
+
})()
|
|
139
|
+
|
|
101
140
|
// change root package.json's name to project name
|
|
102
141
|
updatePackageJsonName(projectName, resolvedProjectPath)
|
|
142
|
+
// replace `"workspace:^"` with the actual version
|
|
143
|
+
updatePackageJsonVersions(packageJson.version, resolvedProjectPath)
|
|
103
144
|
// change root app.json's name to project name
|
|
104
145
|
updateAppJsonName(projectName, resolvedProjectPath)
|
|
105
146
|
|
|
@@ -174,11 +215,27 @@ function updatePackageJsonName(projectName: string, dir: string) {
|
|
|
174
215
|
const packageJsonPath = path.join(dir, 'package.json')
|
|
175
216
|
if (existsSync(packageJsonPath)) {
|
|
176
217
|
const content = readFileSync(packageJsonPath).toString()
|
|
177
|
-
const contentWithUpdatedName = content.replace(
|
|
218
|
+
const contentWithUpdatedName = content.replace(
|
|
219
|
+
/("name": ")(.*)(",)/,
|
|
220
|
+
`$1${projectName}$3`
|
|
221
|
+
)
|
|
178
222
|
writeFileSync(packageJsonPath, contentWithUpdatedName)
|
|
179
223
|
}
|
|
180
224
|
}
|
|
181
225
|
|
|
226
|
+
function updatePackageJsonVersions(version: string, dir: string) {
|
|
227
|
+
const packageJsonPath = path.join(dir, 'package.json')
|
|
228
|
+
if (existsSync(packageJsonPath)) {
|
|
229
|
+
const content = readFileSync(packageJsonPath).toString()
|
|
230
|
+
// https://yarnpkg.com/features/workspaces#cross-references
|
|
231
|
+
const contentWithUpdatedVersions = content
|
|
232
|
+
.replace(/"workspace:\^"/gm, `"^${version}"`)
|
|
233
|
+
.replace(/"workspace:~"/gm, `"~${version}"`)
|
|
234
|
+
.replace(/"workspace:\*"/gm, `"${version}"`)
|
|
235
|
+
writeFileSync(packageJsonPath, contentWithUpdatedVersions)
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
|
|
182
239
|
function updateAppJsonName(projectName: string, dir: string) {
|
|
183
240
|
const appJsonPath = path.join(dir, 'app.json')
|
|
184
241
|
if (existsSync(appJsonPath)) {
|