create-gui 8.2.1 → 8.3.2
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-gui-constants.js +5 -0
- package/dist/cjs/create-gui-constants.js.map +1 -0
- package/dist/cjs/helpers/asciiArts.js +43 -0
- package/dist/cjs/helpers/asciiArts.js.map +1 -0
- package/dist/cjs/helpers/cloneStarter.js +192 -0
- package/dist/cjs/helpers/cloneStarter.js.map +1 -0
- package/dist/cjs/helpers/getProjectName.js +46 -0
- package/dist/cjs/helpers/getProjectName.js.map +1 -0
- package/dist/cjs/helpers/getTemplateInfo.js +31 -0
- package/dist/cjs/helpers/getTemplateInfo.js.map +1 -0
- package/dist/cjs/helpers/installDependencies.js +26 -0
- package/dist/cjs/helpers/installDependencies.js.map +1 -0
- package/dist/cjs/helpers/rainbowChalk.js +20 -0
- package/dist/cjs/helpers/rainbowChalk.js.map +1 -0
- package/dist/cjs/helpers/validateNpmPackage.js +16 -0
- package/dist/cjs/helpers/validateNpmPackage.js.map +1 -0
- package/dist/cjs/here.js +6 -0
- package/dist/cjs/here.js.map +1 -0
- package/dist/cjs/index.js +165 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/manifest.js +8 -0
- package/dist/cjs/manifest.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/steps/expo-router.js +18 -0
- package/dist/cjs/steps/expo-router.js.map +1 -0
- package/dist/cjs/steps/remix.js +22 -0
- package/dist/cjs/steps/remix.js.map +1 -0
- package/dist/cjs/steps/starter-free.js +35 -0
- package/dist/cjs/steps/starter-free.js.map +1 -0
- package/dist/cjs/steps/takeout.js +174 -0
- package/dist/cjs/steps/takeout.js.map +1 -0
- package/dist/cjs/steps/types.js +3 -0
- package/dist/cjs/steps/types.js.map +1 -0
- package/dist/cjs/templates.js +97 -0
- package/dist/cjs/templates.js.map +1 -0
- package/dist/esm/create-gui-constants.js +2 -0
- package/dist/esm/create-gui-constants.js.map +1 -0
- package/dist/esm/helpers/asciiArts.js +39 -0
- package/dist/esm/helpers/asciiArts.js.map +1 -0
- package/dist/esm/helpers/cloneStarter.js +187 -0
- package/dist/esm/helpers/cloneStarter.js.map +1 -0
- package/dist/esm/helpers/getProjectName.js +41 -0
- package/dist/esm/helpers/getProjectName.js.map +1 -0
- package/dist/esm/helpers/getTemplateInfo.js +26 -0
- package/dist/esm/helpers/getTemplateInfo.js.map +1 -0
- package/dist/esm/helpers/installDependencies.js +22 -0
- package/dist/esm/helpers/installDependencies.js.map +1 -0
- package/dist/esm/helpers/rainbowChalk.js +15 -0
- package/dist/esm/helpers/rainbowChalk.js.map +1 -0
- package/dist/esm/helpers/validateNpmPackage.js +12 -0
- package/dist/esm/helpers/validateNpmPackage.js.map +1 -0
- package/dist/esm/here.js +3 -0
- package/dist/esm/here.js.map +1 -0
- package/dist/esm/index.js +162 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/manifest.js +5 -0
- package/dist/esm/manifest.js.map +1 -0
- package/dist/esm/steps/expo-router.js +15 -0
- package/dist/esm/steps/expo-router.js.map +1 -0
- package/dist/esm/steps/remix.js +19 -0
- package/dist/esm/steps/remix.js.map +1 -0
- package/dist/esm/steps/starter-free.js +32 -0
- package/dist/esm/steps/starter-free.js.map +1 -0
- package/dist/esm/steps/takeout.js +171 -0
- package/dist/esm/steps/takeout.js.map +1 -0
- package/dist/esm/steps/types.js +2 -0
- package/dist/esm/steps/types.js.map +1 -0
- package/dist/esm/templates.js +93 -0
- package/dist/esm/templates.js.map +1 -0
- package/package.json +38 -30
- package/src/create-gui-constants.ts +1 -0
- package/src/helpers/asciiArts.ts +49 -0
- package/src/helpers/cloneStarter.ts +220 -0
- package/src/helpers/getProjectName.ts +48 -0
- package/src/helpers/getTemplateInfo.ts +34 -0
- package/src/helpers/installDependencies.ts +23 -0
- package/src/helpers/rainbowChalk.ts +17 -0
- package/src/helpers/validateNpmPackage.ts +16 -0
- package/src/here.cjs.ts +3 -0
- package/src/here.ts +2 -0
- package/src/index.ts +223 -0
- package/src/manifest.ts +10 -0
- package/src/steps/expo-router.ts +20 -0
- package/src/steps/remix.ts +24 -0
- package/src/steps/starter-free.ts +40 -0
- package/src/steps/takeout.ts +210 -0
- package/src/steps/types.ts +5 -0
- package/src/templates.ts +116 -0
- package/types/create-gui-constants.d.ts +2 -0
- package/types/create-gui-constants.d.ts.map +1 -0
- package/types/helpers/asciiArts.d.ts +5 -0
- package/types/helpers/asciiArts.d.ts.map +1 -0
- package/types/helpers/cloneStarter.d.ts +3 -0
- package/types/helpers/cloneStarter.d.ts.map +1 -0
- package/types/helpers/getProjectName.d.ts +2 -0
- package/types/helpers/getProjectName.d.ts.map +1 -0
- package/types/helpers/getTemplateInfo.d.ts +3 -0
- package/types/helpers/getTemplateInfo.d.ts.map +1 -0
- package/types/helpers/installDependencies.d.ts +2 -0
- package/types/helpers/installDependencies.d.ts.map +1 -0
- package/types/helpers/rainbowChalk.d.ts +3 -0
- package/types/helpers/rainbowChalk.d.ts.map +1 -0
- package/types/helpers/validateNpmPackage.d.ts +5 -0
- package/types/helpers/validateNpmPackage.d.ts.map +1 -0
- package/types/here.d.ts +2 -0
- package/types/here.d.ts.map +1 -0
- package/types/index.d.ts +3 -0
- package/types/index.d.ts.map +1 -0
- package/types/manifest.d.ts +5 -0
- package/types/manifest.d.ts.map +1 -0
- package/types/steps/expo-router.d.ts +4 -0
- package/types/steps/expo-router.d.ts.map +1 -0
- package/types/steps/remix.d.ts +4 -0
- package/types/steps/remix.d.ts.map +1 -0
- package/types/steps/starter-free.d.ts +4 -0
- package/types/steps/starter-free.d.ts.map +1 -0
- package/types/steps/takeout.d.ts +4 -0
- package/types/steps/takeout.d.ts.map +1 -0
- package/types/steps/types.d.ts +6 -0
- package/types/steps/types.d.ts.map +1 -0
- package/types/templates.d.ts +16 -0
- package/types/templates.d.ts.map +1 -0
- package/dist/index.cjs +0 -929
- package/dist/index.native.js +0 -930
- package/run.js +0 -12
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-gui-constants.js","sourceRoot":"","sources":["../../src/create-gui-constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,CAAA"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.hanzoguiDuckAsciiArt = exports.takeoutAsciiArt = exports.hanzoguiRainbowAsciiArt = exports.hanzoguiAsciiArt = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const chalk_1 = tslib_1.__importDefault(require("chalk"));
|
|
6
|
+
const rainbowChalk_ts_1 = require("./rainbowChalk.js");
|
|
7
|
+
exports.hanzoguiAsciiArt = `▀█▀ ▄▀█ █▀▄▀█ ▄▀█ █▀▀ █ █ █
|
|
8
|
+
█ █▀█ █ ▀ █ █▀█ █▄█ █▄█ █`;
|
|
9
|
+
exports.hanzoguiRainbowAsciiArt = (function () {
|
|
10
|
+
const char0_1 = chalk_1.default.hex(rainbowChalk_ts_1.rainbowColors[0])('▀█▀');
|
|
11
|
+
const char0_2 = chalk_1.default.hex(rainbowChalk_ts_1.rainbowColors[0])(' █ ');
|
|
12
|
+
const char1_1 = chalk_1.default.hex(rainbowChalk_ts_1.rainbowColors[1])('▄▀█');
|
|
13
|
+
const char1_2 = chalk_1.default.hex(rainbowChalk_ts_1.rainbowColors[1])('█▀█');
|
|
14
|
+
const char2_1 = chalk_1.default.hex(rainbowChalk_ts_1.rainbowColors[2])('█▀▄▀█');
|
|
15
|
+
const char2_2 = chalk_1.default.hex(rainbowChalk_ts_1.rainbowColors[2])('█ ▀ █');
|
|
16
|
+
const char3_1 = chalk_1.default.hex(rainbowChalk_ts_1.rainbowColors[3])('▄▀█');
|
|
17
|
+
const char3_2 = chalk_1.default.hex(rainbowChalk_ts_1.rainbowColors[3])('█▀█');
|
|
18
|
+
const char4_1 = chalk_1.default.hex(rainbowChalk_ts_1.rainbowColors[4])('█▀▀');
|
|
19
|
+
const char4_2 = chalk_1.default.hex(rainbowChalk_ts_1.rainbowColors[4])('█▄█');
|
|
20
|
+
const char5_1 = chalk_1.default.hex(rainbowChalk_ts_1.rainbowColors[5])('█ █');
|
|
21
|
+
const char5_2 = chalk_1.default.hex(rainbowChalk_ts_1.rainbowColors[5])('█▄█');
|
|
22
|
+
const char6_1 = chalk_1.default.hex(rainbowChalk_ts_1.rainbowColors[6])('█');
|
|
23
|
+
const char6_2 = chalk_1.default.hex(rainbowChalk_ts_1.rainbowColors[6])('█');
|
|
24
|
+
return `${char0_1} ${char1_1} ${char2_1} ${char3_1} ${char4_1} ${char5_1} ${char6_1}
|
|
25
|
+
${char0_2} ${char1_2} ${char2_2} ${char3_2} ${char4_2} ${char5_2} ${char6_2}
|
|
26
|
+
`;
|
|
27
|
+
})();
|
|
28
|
+
exports.takeoutAsciiArt = `████████╗░█████╗░██╗░░██╗███████╗░█████╗░██╗░░░██╗████████╗
|
|
29
|
+
╚══██╔══╝██╔══██╗██║░██╔╝██╔════╝██╔══██╗██║░░░██║╚══██╔══╝
|
|
30
|
+
░░░██║░░░███████║█████═╝░█████╗░░██║░░██║██║░░░██║░░░██║░░░
|
|
31
|
+
░░░██║░░░██╔══██║██╔═██╗░██╔══╝░░██║░░██║██║░░░██║░░░██║░░░
|
|
32
|
+
░░░██║░░░██║░░██║██║░╚██╗███████╗╚█████╔╝╚██████╔╝░░░██║░░░
|
|
33
|
+
░░░╚═╝░░░╚═╝░░╚═╝╚═╝░░╚═╝╚══════╝░╚════╝░░╚═════╝░░░░╚═╝░░░`;
|
|
34
|
+
exports.hanzoguiDuckAsciiArt = ` ████████████
|
|
35
|
+
██ ██
|
|
36
|
+
██ ██ ██████
|
|
37
|
+
██ ██ ██
|
|
38
|
+
██ ████████
|
|
39
|
+
██ ██
|
|
40
|
+
██ ████
|
|
41
|
+
██ ██
|
|
42
|
+
██ ██ `;
|
|
43
|
+
//# sourceMappingURL=asciiArts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"asciiArts.js","sourceRoot":"","sources":["../../../src/helpers/asciiArts.ts"],"names":[],"mappings":";;;;AAAA,0DAAyB;AAEzB,uDAAiD;AAEpC,QAAA,gBAAgB,GAAG;4BACJ,CAAA;AAEf,QAAA,uBAAuB,GAAG,CAAC;IACtC,MAAM,OAAO,GAAG,eAAK,CAAC,GAAG,CAAC,+BAAa,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAClD,MAAM,OAAO,GAAG,eAAK,CAAC,GAAG,CAAC,+BAAa,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAElD,MAAM,OAAO,GAAG,eAAK,CAAC,GAAG,CAAC,+BAAa,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAClD,MAAM,OAAO,GAAG,eAAK,CAAC,GAAG,CAAC,+BAAa,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAElD,MAAM,OAAO,GAAG,eAAK,CAAC,GAAG,CAAC,+BAAa,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;IACpD,MAAM,OAAO,GAAG,eAAK,CAAC,GAAG,CAAC,+BAAa,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;IAEpD,MAAM,OAAO,GAAG,eAAK,CAAC,GAAG,CAAC,+BAAa,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAClD,MAAM,OAAO,GAAG,eAAK,CAAC,GAAG,CAAC,+BAAa,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAElD,MAAM,OAAO,GAAG,eAAK,CAAC,GAAG,CAAC,+BAAa,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAClD,MAAM,OAAO,GAAG,eAAK,CAAC,GAAG,CAAC,+BAAa,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAElD,MAAM,OAAO,GAAG,eAAK,CAAC,GAAG,CAAC,+BAAa,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAClD,MAAM,OAAO,GAAG,eAAK,CAAC,GAAG,CAAC,+BAAa,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAElD,MAAM,OAAO,GAAG,eAAK,CAAC,GAAG,CAAC,+BAAa,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;IAChD,MAAM,OAAO,GAAG,eAAK,CAAC,GAAG,CAAC,+BAAa,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;IAChD,OAAO,GAAG,OAAO,IAAI,OAAO,IAAI,OAAO,IAAI,OAAO,IAAI,OAAO,IAAI,OAAO,IAAI,OAAO;EACnF,OAAO,IAAI,OAAO,IAAI,OAAO,IAAI,OAAO,IAAI,OAAO,IAAI,OAAO,IAAI,OAAO;CAC1E,CAAA;AACD,CAAC,CAAC,EAAE,CAAA;AAES,QAAA,eAAe,GAAG;;;;;4DAK6B,CAAA;AAE/C,QAAA,oBAAoB,GAAG;;;;;;;;+BAQL,CAAA"}
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.cloneStarter = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const node_child_process_1 = require("node:child_process");
|
|
6
|
+
const node_fs_1 = require("node:fs");
|
|
7
|
+
const node_os_1 = require("node:os");
|
|
8
|
+
const node_path_1 = require("node:path");
|
|
9
|
+
const chalk_1 = tslib_1.__importDefault(require("chalk"));
|
|
10
|
+
const esm_1 = require("fs-extra/esm");
|
|
11
|
+
const rimraf_1 = require("rimraf");
|
|
12
|
+
const opener_1 = tslib_1.__importDefault(require("opener"));
|
|
13
|
+
const exec = (cmd, options) => {
|
|
14
|
+
console.info(`$ `, cmd);
|
|
15
|
+
return (0, node_child_process_1.execSync)(cmd, {
|
|
16
|
+
stdio: process.env.DEBUG ? 'inherit' : 'ignore',
|
|
17
|
+
...options,
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
const hanzoguiDir = (0, node_path_1.join)((0, node_os_1.homedir)(), '.hanzogui-repo-cache');
|
|
21
|
+
let targetGitDir = '';
|
|
22
|
+
const cloneStarter = async (template, resolvedProjectPath, projectName) => {
|
|
23
|
+
targetGitDir = (0, node_path_1.join)(hanzoguiDir, 'hanzogui', template.repo.url.split('/').at(-1));
|
|
24
|
+
console.info();
|
|
25
|
+
await setupGuiDotDir(template);
|
|
26
|
+
const starterDir = (0, node_path_1.join)(targetGitDir, ...template.repo.dir);
|
|
27
|
+
console.info();
|
|
28
|
+
console.info(`Copying starter from ${starterDir} into ${chalk_1.default.blueBright(projectName)}...`);
|
|
29
|
+
console.info();
|
|
30
|
+
// if (!(await pathExists(starterDir))) {
|
|
31
|
+
// console.error(`Missing template for ${template.value} in ${starterDir}`)
|
|
32
|
+
// process.exit(1)
|
|
33
|
+
// }
|
|
34
|
+
await (0, esm_1.copy)(starterDir, resolvedProjectPath);
|
|
35
|
+
await (0, rimraf_1.rimraf)(`${resolvedProjectPath}/.git`);
|
|
36
|
+
// rewrite workspace:* versions to real published versions
|
|
37
|
+
rewriteWorkspaceVersions(resolvedProjectPath);
|
|
38
|
+
console.info(chalk_1.default.green(`${projectName} created!`));
|
|
39
|
+
console.info();
|
|
40
|
+
};
|
|
41
|
+
exports.cloneStarter = cloneStarter;
|
|
42
|
+
async function setupGuiDotDir(template) {
|
|
43
|
+
console.info(`Setting up ${chalk_1.default.blueBright(targetGitDir)}...`);
|
|
44
|
+
if (process.env.GITHUB_HEAD_REF) {
|
|
45
|
+
try {
|
|
46
|
+
(0, node_child_process_1.execSync)(`git switch -c ${process.env.GITHUB_HEAD_REF}`, {
|
|
47
|
+
cwd: targetGitDir,
|
|
48
|
+
stdio: 'ignore',
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
catch {
|
|
52
|
+
// re-tries branch already exists
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
const branch = template.repo.branch;
|
|
56
|
+
await (0, esm_1.ensureDir)(hanzoguiDir);
|
|
57
|
+
const isInSubDir = template.repo.dir.length > 0;
|
|
58
|
+
const sourceGitRepo = template.repo.url;
|
|
59
|
+
const sourceGitRepoSshFallback = template.repo.sshFallback;
|
|
60
|
+
if (!(await (0, esm_1.pathExists)(targetGitDir))) {
|
|
61
|
+
console.info(`Cloning hanzogui base directory`);
|
|
62
|
+
console.info();
|
|
63
|
+
const cmd = `git clone --branch ${branch} ${isInSubDir ? '--depth 1 --sparse --filter=blob:none ' : ''}${sourceGitRepo} "${targetGitDir}"`;
|
|
64
|
+
try {
|
|
65
|
+
try {
|
|
66
|
+
console.info(`$ ${cmd}`);
|
|
67
|
+
console.info();
|
|
68
|
+
exec(cmd);
|
|
69
|
+
}
|
|
70
|
+
catch (error) {
|
|
71
|
+
if (cmd.includes('https://')) {
|
|
72
|
+
console.info(`https failed - trying with ssh now...`);
|
|
73
|
+
const sshCmd = cmd.replace(sourceGitRepo, sourceGitRepoSshFallback);
|
|
74
|
+
console.info(`$ ${sshCmd}`);
|
|
75
|
+
console.info();
|
|
76
|
+
exec(sshCmd);
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
throw error;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
catch (error) {
|
|
84
|
+
if (error instanceof Error) {
|
|
85
|
+
if (template.value === 'takeout-pro' ||
|
|
86
|
+
template.value === 'takeout-pro-classic') {
|
|
87
|
+
if (error?.stderr?.includes('Repository not found')) {
|
|
88
|
+
console.info(chalk_1.default.yellow(`You don't have access to this starter. Check 🥡 Gui Takeout (https://hanzogui.dev/takeout) for more info.`));
|
|
89
|
+
(0, opener_1.default)('https://hanzogui.dev/takeout');
|
|
90
|
+
process.exit(0);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
throw error;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
else {
|
|
98
|
+
if (!(await (0, esm_1.pathExists)((0, node_path_1.join)(targetGitDir, '.git')))) {
|
|
99
|
+
console.error(`Corrupt Gui directory, please delete ${targetGitDir} and re-run`);
|
|
100
|
+
process.exit(1);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
if (isInSubDir) {
|
|
104
|
+
const cmd = `git sparse-checkout set apps/starters`;
|
|
105
|
+
exec(cmd, { cwd: targetGitDir });
|
|
106
|
+
console.info();
|
|
107
|
+
}
|
|
108
|
+
try {
|
|
109
|
+
const remoteName = getDefaultRemoteName();
|
|
110
|
+
if (await (0, esm_1.pathExists)((0, node_path_1.join)(targetGitDir, '.git'))) {
|
|
111
|
+
const cmd2 = `git pull --rebase --allow-unrelated-histories --depth 1 ${remoteName} ${branch}`;
|
|
112
|
+
// this can fail with "could not parse commit" but if you re-run it generally works
|
|
113
|
+
try {
|
|
114
|
+
exec(cmd2, {
|
|
115
|
+
cwd: targetGitDir,
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
catch {
|
|
119
|
+
// so lets just retry on first failure at least
|
|
120
|
+
exec(cmd2, {
|
|
121
|
+
cwd: targetGitDir,
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
console.info();
|
|
125
|
+
}
|
|
126
|
+
else {
|
|
127
|
+
console.warn(`Warning: ${targetGitDir} is not a git repository. Skipping pull operation.`);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
catch (err) {
|
|
131
|
+
await (0, esm_1.remove)(targetGitDir);
|
|
132
|
+
console.info(`Error updating: ${err.message} ${err.stack}`);
|
|
133
|
+
console.info(`We removed the old template cache, so re-running may fix. If not, please file an issue: https://github.com/hanzoai/gui/issues/new?assignees=&labels=&template=bug_report.md&title=`);
|
|
134
|
+
process.exit(1);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
function rewriteWorkspaceVersions(projectPath) {
|
|
138
|
+
const pkgPath = (0, node_path_1.join)(projectPath, 'package.json');
|
|
139
|
+
try {
|
|
140
|
+
const pkg = JSON.parse((0, node_fs_1.readFileSync)(pkgPath, 'utf-8'));
|
|
141
|
+
// if the copied project is itself a workspace root (e.g. takeout-pro copies
|
|
142
|
+
// the whole monorepo, packages/* included), leave `workspace:*` alone —
|
|
143
|
+
// bun/yarn/pnpm resolve it natively against the local packages. rewriting
|
|
144
|
+
// would point at versions that don't exist on npm.
|
|
145
|
+
if (pkg.workspaces) {
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
148
|
+
// read create-gui's own version as the target
|
|
149
|
+
const ctPkgPath = require.resolve('create-gui/package.json');
|
|
150
|
+
const ctPkg = JSON.parse((0, node_fs_1.readFileSync)(ctPkgPath, 'utf-8'));
|
|
151
|
+
const version = `^${ctPkg.version}`;
|
|
152
|
+
let changed = false;
|
|
153
|
+
for (const field of ['dependencies', 'devDependencies']) {
|
|
154
|
+
const deps = pkg[field];
|
|
155
|
+
if (!deps)
|
|
156
|
+
continue;
|
|
157
|
+
for (const [key, val] of Object.entries(deps)) {
|
|
158
|
+
if (val === 'workspace:*') {
|
|
159
|
+
deps[key] = version;
|
|
160
|
+
changed = true;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
if (changed) {
|
|
165
|
+
(0, node_fs_1.writeFileSync)(pkgPath, JSON.stringify(pkg, null, 2) + '\n');
|
|
166
|
+
console.info(chalk_1.default.dim(` Rewrote workspace:* → ${version}`));
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
catch {
|
|
170
|
+
// non-fatal, user can fix manually
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
// Get the default remote name
|
|
174
|
+
const getDefaultRemoteName = () => {
|
|
175
|
+
try {
|
|
176
|
+
if (!(0, esm_1.pathExists)((0, node_path_1.join)(targetGitDir, '.git'))) {
|
|
177
|
+
console.warn('Warning: Not in a git repository. Using default remote name "origin".');
|
|
178
|
+
return 'origin';
|
|
179
|
+
}
|
|
180
|
+
const remotes = (0, node_child_process_1.execSync)('git remote', { cwd: targetGitDir })
|
|
181
|
+
.toString()
|
|
182
|
+
.trim()
|
|
183
|
+
.split('\n');
|
|
184
|
+
return remotes[0] || 'origin';
|
|
185
|
+
}
|
|
186
|
+
catch (error) {
|
|
187
|
+
console.warn('Error getting default remote name:', error);
|
|
188
|
+
console.warn('Using default remote name "origin".');
|
|
189
|
+
return 'origin';
|
|
190
|
+
}
|
|
191
|
+
};
|
|
192
|
+
//# sourceMappingURL=cloneStarter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cloneStarter.js","sourceRoot":"","sources":["../../../src/helpers/cloneStarter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getProjectName = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const node_path_1 = tslib_1.__importDefault(require("node:path"));
|
|
6
|
+
const chalk_1 = tslib_1.__importDefault(require("chalk"));
|
|
7
|
+
const prompts_1 = tslib_1.__importDefault(require("prompts"));
|
|
8
|
+
const validateNpmPackage_ts_1 = require("./validateNpmPackage.js");
|
|
9
|
+
const manifest_ts_1 = require("../manifest.js");
|
|
10
|
+
const getProjectName = async (projectPath) => {
|
|
11
|
+
if (typeof projectPath === 'string') {
|
|
12
|
+
projectPath = projectPath.trim();
|
|
13
|
+
}
|
|
14
|
+
if (!projectPath) {
|
|
15
|
+
const res = await (0, prompts_1.default)({
|
|
16
|
+
type: 'text',
|
|
17
|
+
name: 'path',
|
|
18
|
+
message: 'Project name:',
|
|
19
|
+
initial: 'myapp',
|
|
20
|
+
validate: (name) => {
|
|
21
|
+
const validation = (0, validateNpmPackage_ts_1.validateNpmName)(node_path_1.default.basename(node_path_1.default.resolve(name)));
|
|
22
|
+
if (validation.valid) {
|
|
23
|
+
return true;
|
|
24
|
+
}
|
|
25
|
+
return 'Invalid project name: ' + validation.problems[0];
|
|
26
|
+
},
|
|
27
|
+
});
|
|
28
|
+
if (typeof res.path === 'string') {
|
|
29
|
+
projectPath = res.path.trim();
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
if (!projectPath) {
|
|
33
|
+
console.info();
|
|
34
|
+
console.info('Please specify the project directory:');
|
|
35
|
+
console.info(` ${chalk_1.default.cyan(manifest_ts_1.packageJson.name)} ${chalk_1.default.green('<project-directory>')}`);
|
|
36
|
+
console.info();
|
|
37
|
+
console.info('For example:');
|
|
38
|
+
console.info(` ${chalk_1.default.cyan(manifest_ts_1.packageJson.name)} ${chalk_1.default.green('my-hanzogui-app')}`);
|
|
39
|
+
console.info();
|
|
40
|
+
console.info(`Run ${chalk_1.default.cyan(`${manifest_ts_1.packageJson.name} --help`)} to see all options.`);
|
|
41
|
+
process.exit(1);
|
|
42
|
+
}
|
|
43
|
+
return projectPath;
|
|
44
|
+
};
|
|
45
|
+
exports.getProjectName = getProjectName;
|
|
46
|
+
//# sourceMappingURL=getProjectName.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getProjectName.js","sourceRoot":"","sources":["../../../src/helpers/getProjectName.ts"],"names":[],"mappings":";;;;AAAA,kEAA4B;AAE5B,0DAAyB;AACzB,8DAA6B;AAE7B,mEAAyD;AACzD,gDAA4C;AAErC,MAAM,cAAc,GAAG,KAAK,EAAE,WAAoB,EAAE,EAAE;IAC3D,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QACpC,WAAW,GAAG,WAAW,CAAC,IAAI,EAAE,CAAA;IAClC,CAAC;IAED,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,GAAG,GAAG,MAAM,IAAA,iBAAO,EAAC;YACxB,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,eAAe;YACxB,OAAO,EAAE,OAAO;YAChB,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE;gBACjB,MAAM,UAAU,GAAG,IAAA,uCAAe,EAAC,mBAAI,CAAC,QAAQ,CAAC,mBAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;gBACrE,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;oBACrB,OAAO,IAAI,CAAA;gBACb,CAAC;gBACD,OAAO,wBAAwB,GAAG,UAAU,CAAC,QAAS,CAAC,CAAC,CAAC,CAAA;YAC3D,CAAC;SACF,CAAC,CAAA;QAEF,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACjC,WAAW,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;QAC/B,CAAC;IACH,CAAC;IAED,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,CAAC,IAAI,EAAE,CAAA;QACd,OAAO,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAA;QACrD,OAAO,CAAC,IAAI,CACV,KAAK,eAAK,CAAC,IAAI,CAAC,yBAAW,CAAC,IAAI,CAAC,IAAI,eAAK,CAAC,KAAK,CAAC,qBAAqB,CAAC,EAAE,CAC1E,CAAA;QACD,OAAO,CAAC,IAAI,EAAE,CAAA;QACd,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;QAC5B,OAAO,CAAC,IAAI,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,yBAAW,CAAC,IAAI,CAAC,IAAI,eAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAA;QACnF,OAAO,CAAC,IAAI,EAAE,CAAA;QACd,OAAO,CAAC,IAAI,CAAC,OAAO,eAAK,CAAC,IAAI,CAAC,GAAG,yBAAW,CAAC,IAAI,SAAS,CAAC,sBAAsB,CAAC,CAAA;QACnF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,OAAO,WAAW,CAAA;AACpB,CAAC,CAAA;AAvCY,QAAA,cAAc,GAAd,cAAc,CAuC1B"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getTemplateInfo = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const prompts_1 = tslib_1.__importDefault(require("prompts"));
|
|
6
|
+
const templates_ts_1 = require("../templates.js");
|
|
7
|
+
const validTemplates = templates_ts_1.templates.map(({ value }) => value).join(', ');
|
|
8
|
+
const getTemplateInfo = async (template) => {
|
|
9
|
+
let res = getValidTemplate(template);
|
|
10
|
+
if (template && !res) {
|
|
11
|
+
console.warn(`template ${template} is not valid. valid options: ${validTemplates}`);
|
|
12
|
+
process.exit(1);
|
|
13
|
+
}
|
|
14
|
+
if (!res) {
|
|
15
|
+
template = (await (0, prompts_1.default)({
|
|
16
|
+
name: 'template',
|
|
17
|
+
type: 'select',
|
|
18
|
+
message: `Pick a template:`,
|
|
19
|
+
choices: templates_ts_1.templates.filter((t) => !t.hidden),
|
|
20
|
+
})).template;
|
|
21
|
+
}
|
|
22
|
+
res = getValidTemplate(`${template}`);
|
|
23
|
+
if (!res) {
|
|
24
|
+
console.warn(`template ${template} is not valid. valid options: ${validTemplates}`);
|
|
25
|
+
process.exit(1);
|
|
26
|
+
}
|
|
27
|
+
return res;
|
|
28
|
+
};
|
|
29
|
+
exports.getTemplateInfo = getTemplateInfo;
|
|
30
|
+
const getValidTemplate = (template) => typeof template === 'string' && templates_ts_1.templates.find(({ value }) => value === template);
|
|
31
|
+
//# sourceMappingURL=getTemplateInfo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getTemplateInfo.js","sourceRoot":"","sources":["../../../src/helpers/getTemplateInfo.ts"],"names":[],"mappings":";;;;AAAA,8DAA6B;AAE7B,kDAA2C;AAE3C,MAAM,cAAc,GAAG,wBAAS,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAE9D,MAAM,eAAe,GAAG,KAAK,EAClC,QAAiB,EACoB,EAAE;IACvC,IAAI,GAAG,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAA;IACpC,IAAI,QAAQ,IAAI,CAAC,GAAG,EAAE,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,YAAY,QAAQ,iCAAiC,cAAc,EAAE,CAAC,CAAA;QACnF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,QAAQ,GAAG,CACT,MAAM,IAAA,iBAAO,EAAC;YACZ,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,kBAAkB;YAC3B,OAAO,EAAE,wBAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;SAC5C,CAAC,CACH,CAAC,QAAQ,CAAA;IACZ,CAAC;IACD,GAAG,GAAG,gBAAgB,CAAC,GAAG,QAAQ,EAAE,CAAC,CAAA;IACrC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,CAAC,IAAI,CAAC,YAAY,QAAQ,iCAAiC,cAAc,EAAE,CAAC,CAAA;QACnF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA;AAxBY,QAAA,eAAe,GAAf,eAAe,CAwB3B;AAED,MAAM,gBAAgB,GAAG,CAAC,QAAiB,EAAE,EAAE,CAC7C,OAAO,QAAQ,KAAK,QAAQ,IAAI,wBAAS,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAA"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.installDependencies = installDependencies;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const PackageManager = tslib_1.__importStar(require("@expo/package-manager"));
|
|
6
|
+
async function installDependencies(projectRoot, packageManager) {
|
|
7
|
+
// Check if Vitest 2 is running
|
|
8
|
+
if (process.env.VITEST) {
|
|
9
|
+
console.warn('Skipping dependency installation because Vitest 2 is running.');
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
const options = { cwd: projectRoot };
|
|
13
|
+
if (packageManager === 'yarn') {
|
|
14
|
+
await new PackageManager.YarnPackageManager(options).installAsync();
|
|
15
|
+
}
|
|
16
|
+
else if (packageManager === 'pnpm') {
|
|
17
|
+
await new PackageManager.PnpmPackageManager(options).installAsync();
|
|
18
|
+
}
|
|
19
|
+
else if (packageManager === 'bun') {
|
|
20
|
+
await new PackageManager.BunPackageManager(options).installAsync();
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
await new PackageManager.NpmPackageManager(options).installAsync();
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=installDependencies.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"installDependencies.js","sourceRoot":"","sources":["../../../src/helpers/installDependencies.ts"],"names":[],"mappings":";;;;AAAA,MAAY,cAAc,0DAA6B;AAEhD,KAAK,8BACV,WAAmB,EACnB,cAA+C;IAE/C,+BAA+B;IAC/B,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;QACvB,OAAO,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAA;QAC7E,OAAM;IACR,CAAC;IAED,MAAM,OAAO,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,CAAA;IACpC,IAAI,cAAc,KAAK,MAAM,EAAE,CAAC;QAC9B,MAAM,IAAI,cAAc,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,CAAA;IACrE,CAAC;SAAM,IAAI,cAAc,KAAK,MAAM,EAAE,CAAC;QACrC,MAAM,IAAI,cAAc,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,CAAA;IACrE,CAAC;SAAM,IAAI,cAAc,KAAK,KAAK,EAAE,CAAC;QACpC,MAAM,IAAI,cAAc,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,CAAA;IACpE,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,cAAc,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,CAAA;IACpE,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.makeRainbowChalk = exports.rainbowColors = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const chalk_1 = tslib_1.__importDefault(require("chalk"));
|
|
6
|
+
exports.rainbowColors = [
|
|
7
|
+
'#f76808',
|
|
8
|
+
'#f5d90a',
|
|
9
|
+
'#30a46c',
|
|
10
|
+
'#0091ff',
|
|
11
|
+
'#8e4ec6',
|
|
12
|
+
'#d6409f',
|
|
13
|
+
'#e5484d',
|
|
14
|
+
];
|
|
15
|
+
const makeRainbowChalk = (text) => text
|
|
16
|
+
.split('')
|
|
17
|
+
.map((char, idx) => chalk_1.default.hex(exports.rainbowColors[idx % exports.rainbowColors.length])(char))
|
|
18
|
+
.join('');
|
|
19
|
+
exports.makeRainbowChalk = makeRainbowChalk;
|
|
20
|
+
//# sourceMappingURL=rainbowChalk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rainbowChalk.js","sourceRoot":"","sources":["../../../src/helpers/rainbowChalk.ts"],"names":[],"mappings":";;;;AAAA,0DAAyB;AAEZ,QAAA,aAAa,GAAG;IAC3B,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;CACV,CAAA;AAEM,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAE,EAAE,CAC/C,IAAI;KACD,KAAK,CAAC,EAAE,CAAC;KACT,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,eAAK,CAAC,GAAG,CAAC,QAAA,aAAa,CAAC,GAAG,GAAG,QAAA,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;KAC9E,IAAI,CAAC,EAAE,CAAC,CAAA;AAJA,QAAA,gBAAgB,GAAhB,gBAAgB,CAIhB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateNpmName = validateNpmName;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const validate_npm_package_name_1 = tslib_1.__importDefault(require("validate-npm-package-name"));
|
|
6
|
+
function validateNpmName(name) {
|
|
7
|
+
const nameValidation = (0, validate_npm_package_name_1.default)(name);
|
|
8
|
+
if (nameValidation.validForNewPackages) {
|
|
9
|
+
return { valid: true };
|
|
10
|
+
}
|
|
11
|
+
return {
|
|
12
|
+
valid: false,
|
|
13
|
+
problems: [...(nameValidation.errors || []), ...(nameValidation.warnings || [])],
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=validateNpmPackage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validateNpmPackage.js","sourceRoot":"","sources":["../../../src/helpers/validateNpmPackage.ts"],"names":[],"mappings":";;;;AAAA,kGAA2D;AAE3D,yBAAgC,IAAY;IAI1C,MAAM,cAAc,GAAG,IAAA,mCAAmB,EAAC,IAAI,CAAC,CAAA;IAChD,IAAI,cAAc,CAAC,mBAAmB,EAAE,CAAC;QACvC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;IACxB,CAAC;IAED,OAAO;QACL,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,cAAc,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;KACjF,CAAA;AACH,CAAC"}
|
package/dist/cjs/here.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"here.cjs.js","sourceRoot":"","sources":["../../src/here.cjs.ts"],"names":[],"mappings":";;;AAAA,uCAAwC;AAE3B,QAAA,GAAG,GAAG,IAAA,wBAAa,EAAC,UAAU,CAAC,CAAC,IAAI,CAAA"}
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
// inspired by https://github.com/vercel/next.js/blob/0355e5f63f87db489f36db8d814958cb4c2b828b/packages/create-next-app/helpers/examples.ts#L71
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
const tslib_1 = require("tslib");
|
|
6
|
+
const chalk_1 = tslib_1.__importDefault(require("chalk"));
|
|
7
|
+
const commander_1 = require("commander");
|
|
8
|
+
const detect_package_manager_1 = require("detect-package-manager");
|
|
9
|
+
const node_fs_1 = require("node:fs");
|
|
10
|
+
const node_child_process_1 = require("node:child_process");
|
|
11
|
+
const node_fs_2 = tslib_1.__importDefault(require("node:fs"));
|
|
12
|
+
const node_path_1 = tslib_1.__importDefault(require("node:path"));
|
|
13
|
+
const node_process_1 = require("node:process");
|
|
14
|
+
const opener_1 = tslib_1.__importDefault(require("opener"));
|
|
15
|
+
const prompts_1 = tslib_1.__importDefault(require("prompts"));
|
|
16
|
+
const create_gui_constants_ts_1 = require("./create-gui-constants.js");
|
|
17
|
+
const asciiArts_ts_1 = require("./helpers/asciiArts.js");
|
|
18
|
+
const cloneStarter_ts_1 = require("./helpers/cloneStarter.js");
|
|
19
|
+
const getProjectName_ts_1 = require("./helpers/getProjectName.js");
|
|
20
|
+
const getTemplateInfo_ts_1 = require("./helpers/getTemplateInfo.js");
|
|
21
|
+
const installDependencies_ts_1 = require("./helpers/installDependencies.js");
|
|
22
|
+
const validateNpmPackage_ts_1 = require("./helpers/validateNpmPackage.js");
|
|
23
|
+
const manifest_ts_1 = require("./manifest.js");
|
|
24
|
+
let projectPath = '';
|
|
25
|
+
if (create_gui_constants_ts_1.IS_TEST) {
|
|
26
|
+
console.info(`🧐 Running create-gui in test mode 🧐`);
|
|
27
|
+
}
|
|
28
|
+
function exit() {
|
|
29
|
+
process.exit(0);
|
|
30
|
+
}
|
|
31
|
+
process.on('SIGTERM', exit);
|
|
32
|
+
process.on('SIGINT', exit);
|
|
33
|
+
const program = new commander_1.Command(manifest_ts_1.packageJson.name)
|
|
34
|
+
.version(manifest_ts_1.packageJson.version)
|
|
35
|
+
.arguments('[project-directory]')
|
|
36
|
+
.action((name) => {
|
|
37
|
+
projectPath = name;
|
|
38
|
+
})
|
|
39
|
+
.option(`--info`, 'Just shows the setup guide for the starter.')
|
|
40
|
+
.option(`-t, --template <template>`, 'Choose between four or more starter templates.', '')
|
|
41
|
+
.allowUnknownOption()
|
|
42
|
+
.usage(`${chalk_1.default.green('<project-directory>')} [options]
|
|
43
|
+
|
|
44
|
+
Example usage:
|
|
45
|
+
|
|
46
|
+
${chalk_1.default.blueBright(`npx ${manifest_ts_1.packageJson.name} next-expo`)}`)
|
|
47
|
+
.parse(process.argv);
|
|
48
|
+
if (process.argv.includes('--version')) {
|
|
49
|
+
console.info(manifest_ts_1.packageJson.version);
|
|
50
|
+
process.exit(0);
|
|
51
|
+
}
|
|
52
|
+
const options = program.opts();
|
|
53
|
+
const info = !!options.info;
|
|
54
|
+
async function run() {
|
|
55
|
+
try {
|
|
56
|
+
if (info) {
|
|
57
|
+
let template = await (0, getTemplateInfo_ts_1.getTemplateInfo)(options.template);
|
|
58
|
+
if (template?.extraSteps) {
|
|
59
|
+
await template.extraSteps({
|
|
60
|
+
isFullClone: false,
|
|
61
|
+
projectName: node_path_1.default.basename((0, node_process_1.cwd)()),
|
|
62
|
+
projectPath: (0, node_process_1.cwd)(),
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
process.exit(0);
|
|
66
|
+
}
|
|
67
|
+
console.info();
|
|
68
|
+
console.info(chalk_1.default.bold(' Note: You may need to run "npm create hanzogui@latest" to get the latest version!'));
|
|
69
|
+
console.info();
|
|
70
|
+
console.info(); // this newline prevents the ascii art from breaking
|
|
71
|
+
console.info(asciiArts_ts_1.hanzoguiRainbowAsciiArt);
|
|
72
|
+
console.info(chalk_1.default.bold('Creating hanzogui app...'));
|
|
73
|
+
const gitVersionString = Number.parseFloat((0, node_child_process_1.execSync)(`git --version`).toString().replace(`git version `, '').trim());
|
|
74
|
+
if (gitVersionString < 2.27) {
|
|
75
|
+
console.error(`\n\n ⚠️ Gui can't install: Git version must be >= 2.27\n\n`);
|
|
76
|
+
process.exit(1);
|
|
77
|
+
}
|
|
78
|
+
projectPath || (projectPath = await (0, getProjectName_ts_1.getProjectName)(projectPath));
|
|
79
|
+
let template = await (0, getTemplateInfo_ts_1.getTemplateInfo)(options.template);
|
|
80
|
+
if (template.type === 'premium') {
|
|
81
|
+
const didPurchase = (await (0, prompts_1.default)({
|
|
82
|
+
type: 'confirm',
|
|
83
|
+
name: 'purchased',
|
|
84
|
+
message: `Have you purchased Takeout on https://hanzogui.dev/takeout`,
|
|
85
|
+
})).purchased;
|
|
86
|
+
if (!didPurchase) {
|
|
87
|
+
(0, opener_1.default)(`https://hanzogui.dev/takeout`);
|
|
88
|
+
console.info(`\nOpening Takeout website - once you purchase you can restart the create process. Thank you!\n`);
|
|
89
|
+
process.exit(0);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
// space
|
|
93
|
+
console.info();
|
|
94
|
+
const resolvedProjectPath = node_path_1.default.resolve(process.cwd(), projectPath);
|
|
95
|
+
const projectName = node_path_1.default.basename(resolvedProjectPath);
|
|
96
|
+
const { valid, problems } = (0, validateNpmPackage_ts_1.validateNpmName)(projectName);
|
|
97
|
+
if (!valid) {
|
|
98
|
+
console.error(`Could not create a project called ${chalk_1.default.red(`"${projectName}"`)} because of npm naming restrictions:`);
|
|
99
|
+
problems.forEach((p) => console.error(` ${chalk_1.default.red.bold('*')} ${p}`));
|
|
100
|
+
process.exit(1);
|
|
101
|
+
}
|
|
102
|
+
if (node_fs_2.default.existsSync(resolvedProjectPath)) {
|
|
103
|
+
console.info();
|
|
104
|
+
console.info(chalk_1.default.red('🚨 [hanzogui] error'), `You tried to make a project called ${chalk_1.default.underline(chalk_1.default.blueBright(projectName))}, but a folder with that name already exists: ${chalk_1.default.blueBright(resolvedProjectPath)}
|
|
105
|
+
|
|
106
|
+
${chalk_1.default.bold(chalk_1.default.red(`Please pick a different project name 🥸`))}`);
|
|
107
|
+
console.info();
|
|
108
|
+
console.info();
|
|
109
|
+
process.exit(1);
|
|
110
|
+
}
|
|
111
|
+
console.info();
|
|
112
|
+
console.info(`Creating a new hanzogui app ${chalk_1.default.blueBright(resolvedProjectPath)}...`);
|
|
113
|
+
node_fs_2.default.mkdirSync(resolvedProjectPath);
|
|
114
|
+
console.info(chalk_1.default.green(`${projectName} folder created.`));
|
|
115
|
+
try {
|
|
116
|
+
await (0, cloneStarter_ts_1.cloneStarter)(template, resolvedProjectPath, projectName);
|
|
117
|
+
process.chdir(resolvedProjectPath);
|
|
118
|
+
// space
|
|
119
|
+
console.info();
|
|
120
|
+
}
|
|
121
|
+
catch (e) {
|
|
122
|
+
console.error(`[hanzogui] Failed to copy example into ${resolvedProjectPath}\n\n`, e);
|
|
123
|
+
process.exit(1);
|
|
124
|
+
}
|
|
125
|
+
// change root package.json's name to project name
|
|
126
|
+
updatePackageJsonName(projectName, resolvedProjectPath);
|
|
127
|
+
console.info('Installing packages. This might take a couple of minutes.');
|
|
128
|
+
console.info();
|
|
129
|
+
const packageManager = ('packageManager' in template ? template.packageManager : undefined) ||
|
|
130
|
+
(await (0, detect_package_manager_1.detect)());
|
|
131
|
+
try {
|
|
132
|
+
console.info('installing with ' + packageManager);
|
|
133
|
+
await (0, installDependencies_ts_1.installDependencies)(resolvedProjectPath, packageManager);
|
|
134
|
+
}
|
|
135
|
+
catch (e) {
|
|
136
|
+
console.error('[hanzogui] error installing with ' + packageManager + '\n' + `${e}`);
|
|
137
|
+
process.exit(1);
|
|
138
|
+
}
|
|
139
|
+
await template?.extraSteps?.({
|
|
140
|
+
isFullClone: true,
|
|
141
|
+
projectName,
|
|
142
|
+
projectPath: resolvedProjectPath,
|
|
143
|
+
});
|
|
144
|
+
console.info();
|
|
145
|
+
console.info(chalk_1.default.gray(asciiArts_ts_1.hanzoguiDuckAsciiArt));
|
|
146
|
+
process.exit(0);
|
|
147
|
+
}
|
|
148
|
+
catch (error) {
|
|
149
|
+
console.error('An unexpected error occurred:', error);
|
|
150
|
+
process.exit(1);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
function updatePackageJsonName(projectName, dir) {
|
|
154
|
+
const packageJsonPath = node_path_1.default.join(dir, 'package.json');
|
|
155
|
+
if ((0, node_fs_1.existsSync)(packageJsonPath)) {
|
|
156
|
+
const content = (0, node_fs_1.readFileSync)(packageJsonPath).toString();
|
|
157
|
+
const contentWithUpdatedName = content.replace(/("name": ")(.*)(",)/, `$1${projectName}$3`);
|
|
158
|
+
(0, node_fs_1.writeFileSync)(packageJsonPath, contentWithUpdatedName);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
run().catch((error) => {
|
|
162
|
+
console.error('An unexpected error occurred:', error);
|
|
163
|
+
process.exit(1);
|
|
164
|
+
});
|
|
165
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.packageJson = void 0;
|
|
4
|
+
const node_fs_1 = require("node:fs");
|
|
5
|
+
const here_ts_1 = require("./here.js");
|
|
6
|
+
// This package's own manifest, read from the package root at run time.
|
|
7
|
+
exports.packageJson = JSON.parse((0, node_fs_1.readFileSync)(new URL('../../package.json', here_ts_1.url), 'utf8'));
|
|
8
|
+
//# sourceMappingURL=manifest.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../src/manifest.ts"],"names":[],"mappings":";;;AAAA,qCAAsC;AACtC,uCAA+B;AAE/B,uEAAuE;AAC1D,QAAA,WAAW,GAAG,IAAI,CAAC,KAAK,CACnC,IAAA,sBAAY,EAAC,IAAI,GAAG,CAAC,oBAAoB,EAAE,aAAG,CAAC,EAAE,MAAM,CAAC,CAIzD,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{ "type": "commonjs" }
|