@take-out/cli 0.0.39
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/LICENSE +21 -0
- package/README.md +274 -0
- package/cli.mjs +3 -0
- package/dist/cjs/cli.cjs +71 -0
- package/dist/cjs/cli.js +70 -0
- package/dist/cjs/cli.js.map +6 -0
- package/dist/cjs/cli.native.js +79 -0
- package/dist/cjs/cli.native.js.map +6 -0
- package/dist/cjs/commands/changed.cjs +212 -0
- package/dist/cjs/commands/changed.js +214 -0
- package/dist/cjs/commands/changed.js.map +6 -0
- package/dist/cjs/commands/changed.native.js +289 -0
- package/dist/cjs/commands/changed.native.js.map +6 -0
- package/dist/cjs/commands/docs.cjs +388 -0
- package/dist/cjs/commands/docs.js +313 -0
- package/dist/cjs/commands/docs.js.map +6 -0
- package/dist/cjs/commands/docs.native.js +476 -0
- package/dist/cjs/commands/docs.native.js.map +6 -0
- package/dist/cjs/commands/env-setup.cjs +90 -0
- package/dist/cjs/commands/env-setup.js +78 -0
- package/dist/cjs/commands/env-setup.js.map +6 -0
- package/dist/cjs/commands/env-setup.native.js +85 -0
- package/dist/cjs/commands/env-setup.native.js.map +6 -0
- package/dist/cjs/commands/onboard.cjs +479 -0
- package/dist/cjs/commands/onboard.js +631 -0
- package/dist/cjs/commands/onboard.js.map +6 -0
- package/dist/cjs/commands/onboard.native.js +608 -0
- package/dist/cjs/commands/onboard.native.js.map +6 -0
- package/dist/cjs/commands/run.cjs +148 -0
- package/dist/cjs/commands/run.js +116 -0
- package/dist/cjs/commands/run.js.map +6 -0
- package/dist/cjs/commands/run.native.js +140 -0
- package/dist/cjs/commands/run.native.js.map +6 -0
- package/dist/cjs/commands/script.cjs +379 -0
- package/dist/cjs/commands/script.js +339 -0
- package/dist/cjs/commands/script.js.map +6 -0
- package/dist/cjs/commands/script.native.js +449 -0
- package/dist/cjs/commands/script.native.js.map +6 -0
- package/dist/cjs/commands/sync.cjs +190 -0
- package/dist/cjs/commands/sync.js +168 -0
- package/dist/cjs/commands/sync.js.map +6 -0
- package/dist/cjs/commands/sync.native.js +211 -0
- package/dist/cjs/commands/sync.native.js.map +6 -0
- package/dist/cjs/constants/ascii.cjs +36 -0
- package/dist/cjs/constants/ascii.js +30 -0
- package/dist/cjs/constants/ascii.js.map +6 -0
- package/dist/cjs/constants/ascii.native.js +36 -0
- package/dist/cjs/constants/ascii.native.js.map +6 -0
- package/dist/cjs/index.cjs +64 -0
- package/dist/cjs/index.js +55 -0
- package/dist/cjs/index.js.map +6 -0
- package/dist/cjs/index.native.js +94 -0
- package/dist/cjs/index.native.js.map +6 -0
- package/dist/cjs/types.cjs +16 -0
- package/dist/cjs/types.js +14 -0
- package/dist/cjs/types.js.map +6 -0
- package/dist/cjs/types.native.js +15 -0
- package/dist/cjs/types.native.js.map +6 -0
- package/dist/cjs/utils/env-categories.cjs +272 -0
- package/dist/cjs/utils/env-categories.js +296 -0
- package/dist/cjs/utils/env-categories.js.map +6 -0
- package/dist/cjs/utils/env-categories.native.js +317 -0
- package/dist/cjs/utils/env-categories.native.js.map +6 -0
- package/dist/cjs/utils/env-setup.cjs +181 -0
- package/dist/cjs/utils/env-setup.js +190 -0
- package/dist/cjs/utils/env-setup.js.map +6 -0
- package/dist/cjs/utils/env-setup.native.js +264 -0
- package/dist/cjs/utils/env-setup.native.js.map +6 -0
- package/dist/cjs/utils/env.cjs +118 -0
- package/dist/cjs/utils/env.js +97 -0
- package/dist/cjs/utils/env.js.map +6 -0
- package/dist/cjs/utils/env.native.js +128 -0
- package/dist/cjs/utils/env.native.js.map +6 -0
- package/dist/cjs/utils/files.cjs +215 -0
- package/dist/cjs/utils/files.js +164 -0
- package/dist/cjs/utils/files.js.map +6 -0
- package/dist/cjs/utils/files.native.js +266 -0
- package/dist/cjs/utils/files.native.js.map +6 -0
- package/dist/cjs/utils/parallel-runner.cjs +99 -0
- package/dist/cjs/utils/parallel-runner.js +84 -0
- package/dist/cjs/utils/parallel-runner.js.map +6 -0
- package/dist/cjs/utils/parallel-runner.native.js +123 -0
- package/dist/cjs/utils/parallel-runner.native.js.map +6 -0
- package/dist/cjs/utils/ports.cjs +101 -0
- package/dist/cjs/utils/ports.js +81 -0
- package/dist/cjs/utils/ports.js.map +6 -0
- package/dist/cjs/utils/ports.native.js +130 -0
- package/dist/cjs/utils/ports.native.js.map +6 -0
- package/dist/cjs/utils/prerequisites.cjs +119 -0
- package/dist/cjs/utils/prerequisites.js +107 -0
- package/dist/cjs/utils/prerequisites.js.map +6 -0
- package/dist/cjs/utils/prerequisites.native.js +127 -0
- package/dist/cjs/utils/prerequisites.native.js.map +6 -0
- package/dist/cjs/utils/prompts.cjs +161 -0
- package/dist/cjs/utils/prompts.js +162 -0
- package/dist/cjs/utils/prompts.js.map +6 -0
- package/dist/cjs/utils/prompts.native.js +179 -0
- package/dist/cjs/utils/prompts.native.js.map +6 -0
- package/dist/cjs/utils/script-listing.cjs +113 -0
- package/dist/cjs/utils/script-listing.js +108 -0
- package/dist/cjs/utils/script-listing.js.map +6 -0
- package/dist/cjs/utils/script-listing.native.js +174 -0
- package/dist/cjs/utils/script-listing.native.js.map +6 -0
- package/dist/cjs/utils/sync.cjs +85 -0
- package/dist/cjs/utils/sync.js +70 -0
- package/dist/cjs/utils/sync.js.map +6 -0
- package/dist/cjs/utils/sync.native.js +84 -0
- package/dist/cjs/utils/sync.native.js.map +6 -0
- package/dist/cjs/utils/welcome.cjs +50 -0
- package/dist/cjs/utils/welcome.js +42 -0
- package/dist/cjs/utils/welcome.js.map +6 -0
- package/dist/cjs/utils/welcome.native.js +47 -0
- package/dist/cjs/utils/welcome.native.js.map +6 -0
- package/dist/esm/cli.js +79 -0
- package/dist/esm/cli.js.map +6 -0
- package/dist/esm/cli.mjs +71 -0
- package/dist/esm/cli.mjs.map +1 -0
- package/dist/esm/cli.native.js +69 -0
- package/dist/esm/cli.native.js.map +1 -0
- package/dist/esm/commands/changed.js +194 -0
- package/dist/esm/commands/changed.js.map +6 -0
- package/dist/esm/commands/changed.mjs +178 -0
- package/dist/esm/commands/changed.mjs.map +1 -0
- package/dist/esm/commands/changed.native.js +273 -0
- package/dist/esm/commands/changed.native.js.map +1 -0
- package/dist/esm/commands/docs.js +306 -0
- package/dist/esm/commands/docs.js.map +6 -0
- package/dist/esm/commands/docs.mjs +353 -0
- package/dist/esm/commands/docs.mjs.map +1 -0
- package/dist/esm/commands/docs.native.js +516 -0
- package/dist/esm/commands/docs.native.js.map +1 -0
- package/dist/esm/commands/env-setup.js +56 -0
- package/dist/esm/commands/env-setup.js.map +6 -0
- package/dist/esm/commands/env-setup.mjs +56 -0
- package/dist/esm/commands/env-setup.mjs.map +1 -0
- package/dist/esm/commands/env-setup.native.js +59 -0
- package/dist/esm/commands/env-setup.native.js.map +1 -0
- package/dist/esm/commands/onboard.js +645 -0
- package/dist/esm/commands/onboard.js.map +6 -0
- package/dist/esm/commands/onboard.mjs +445 -0
- package/dist/esm/commands/onboard.mjs.map +1 -0
- package/dist/esm/commands/onboard.native.js +584 -0
- package/dist/esm/commands/onboard.native.js.map +1 -0
- package/dist/esm/commands/run.js +95 -0
- package/dist/esm/commands/run.js.map +6 -0
- package/dist/esm/commands/run.mjs +114 -0
- package/dist/esm/commands/run.mjs.map +1 -0
- package/dist/esm/commands/run.native.js +133 -0
- package/dist/esm/commands/run.native.js.map +1 -0
- package/dist/esm/commands/script.js +338 -0
- package/dist/esm/commands/script.js.map +6 -0
- package/dist/esm/commands/script.mjs +336 -0
- package/dist/esm/commands/script.mjs.map +1 -0
- package/dist/esm/commands/script.native.js +445 -0
- package/dist/esm/commands/script.native.js.map +1 -0
- package/dist/esm/commands/sync.js +158 -0
- package/dist/esm/commands/sync.js.map +6 -0
- package/dist/esm/commands/sync.mjs +155 -0
- package/dist/esm/commands/sync.mjs.map +1 -0
- package/dist/esm/commands/sync.native.js +173 -0
- package/dist/esm/commands/sync.native.js.map +1 -0
- package/dist/esm/constants/ascii.js +14 -0
- package/dist/esm/constants/ascii.js.map +6 -0
- package/dist/esm/constants/ascii.mjs +12 -0
- package/dist/esm/constants/ascii.mjs.map +1 -0
- package/dist/esm/constants/ascii.native.js +12 -0
- package/dist/esm/constants/ascii.native.js.map +1 -0
- package/dist/esm/index.js +83 -0
- package/dist/esm/index.js.map +6 -0
- package/dist/esm/index.mjs +7 -0
- package/dist/esm/index.mjs.map +1 -0
- package/dist/esm/index.native.js +7 -0
- package/dist/esm/index.native.js.map +1 -0
- package/dist/esm/types.js +1 -0
- package/dist/esm/types.js.map +6 -0
- package/dist/esm/types.mjs +2 -0
- package/dist/esm/types.mjs.map +1 -0
- package/dist/esm/types.native.js +2 -0
- package/dist/esm/types.native.js.map +1 -0
- package/dist/esm/utils/env-categories.js +272 -0
- package/dist/esm/utils/env-categories.js.map +6 -0
- package/dist/esm/utils/env-categories.mjs +233 -0
- package/dist/esm/utils/env-categories.mjs.map +1 -0
- package/dist/esm/utils/env-categories.native.js +246 -0
- package/dist/esm/utils/env-categories.native.js.map +1 -0
- package/dist/esm/utils/env-setup.js +173 -0
- package/dist/esm/utils/env-setup.js.map +6 -0
- package/dist/esm/utils/env-setup.mjs +146 -0
- package/dist/esm/utils/env-setup.mjs.map +1 -0
- package/dist/esm/utils/env-setup.native.js +243 -0
- package/dist/esm/utils/env-setup.native.js.map +1 -0
- package/dist/esm/utils/env.js +83 -0
- package/dist/esm/utils/env.js.map +6 -0
- package/dist/esm/utils/env.mjs +90 -0
- package/dist/esm/utils/env.mjs.map +1 -0
- package/dist/esm/utils/env.native.js +99 -0
- package/dist/esm/utils/env.native.js.map +1 -0
- package/dist/esm/utils/files.js +150 -0
- package/dist/esm/utils/files.js.map +6 -0
- package/dist/esm/utils/files.mjs +187 -0
- package/dist/esm/utils/files.mjs.map +1 -0
- package/dist/esm/utils/files.native.js +247 -0
- package/dist/esm/utils/files.native.js.map +1 -0
- package/dist/esm/utils/parallel-runner.js +69 -0
- package/dist/esm/utils/parallel-runner.js.map +6 -0
- package/dist/esm/utils/parallel-runner.mjs +76 -0
- package/dist/esm/utils/parallel-runner.mjs.map +1 -0
- package/dist/esm/utils/parallel-runner.native.js +109 -0
- package/dist/esm/utils/parallel-runner.native.js.map +1 -0
- package/dist/esm/utils/ports.js +65 -0
- package/dist/esm/utils/ports.js.map +6 -0
- package/dist/esm/utils/ports.mjs +74 -0
- package/dist/esm/utils/ports.mjs.map +1 -0
- package/dist/esm/utils/ports.native.js +93 -0
- package/dist/esm/utils/ports.native.js.map +1 -0
- package/dist/esm/utils/prerequisites.js +91 -0
- package/dist/esm/utils/prerequisites.js.map +6 -0
- package/dist/esm/utils/prerequisites.mjs +91 -0
- package/dist/esm/utils/prerequisites.mjs.map +1 -0
- package/dist/esm/utils/prerequisites.native.js +97 -0
- package/dist/esm/utils/prerequisites.native.js.map +1 -0
- package/dist/esm/utils/prompts.js +139 -0
- package/dist/esm/utils/prompts.js.map +6 -0
- package/dist/esm/utils/prompts.mjs +112 -0
- package/dist/esm/utils/prompts.mjs.map +1 -0
- package/dist/esm/utils/prompts.native.js +115 -0
- package/dist/esm/utils/prompts.native.js.map +1 -0
- package/dist/esm/utils/script-listing.js +91 -0
- package/dist/esm/utils/script-listing.js.map +6 -0
- package/dist/esm/utils/script-listing.mjs +76 -0
- package/dist/esm/utils/script-listing.mjs.map +1 -0
- package/dist/esm/utils/script-listing.native.js +151 -0
- package/dist/esm/utils/script-listing.native.js.map +1 -0
- package/dist/esm/utils/sync.js +50 -0
- package/dist/esm/utils/sync.js.map +6 -0
- package/dist/esm/utils/sync.mjs +48 -0
- package/dist/esm/utils/sync.mjs.map +1 -0
- package/dist/esm/utils/sync.native.js +53 -0
- package/dist/esm/utils/sync.native.js.map +1 -0
- package/dist/esm/utils/welcome.js +21 -0
- package/dist/esm/utils/welcome.js.map +6 -0
- package/dist/esm/utils/welcome.mjs +15 -0
- package/dist/esm/utils/welcome.mjs.map +1 -0
- package/dist/esm/utils/welcome.native.js +18 -0
- package/dist/esm/utils/welcome.native.js.map +1 -0
- package/docs/aggregates.md +579 -0
- package/docs/cloudflare-dev-tunnel.md +41 -0
- package/docs/database.md +203 -0
- package/docs/docs.md +8 -0
- package/docs/emitters.md +562 -0
- package/docs/hot-updater.md +223 -0
- package/docs/native-hot-update.md +252 -0
- package/docs/one-components.md +234 -0
- package/docs/one-hooks.md +570 -0
- package/docs/one-routes.md +660 -0
- package/docs/package-json.md +115 -0
- package/docs/react-native-navigation-flow.md +184 -0
- package/docs/scripts.md +147 -0
- package/docs/sync-prompt.md +208 -0
- package/docs/tamagui.md +478 -0
- package/docs/testing-integration.md +564 -0
- package/docs/triggers.md +450 -0
- package/docs/zero.md +719 -0
- package/package.json +76 -0
- package/scripts/seed.ts +209 -0
- package/src/cli.ts +147 -0
- package/src/commands/changed.ts +313 -0
- package/src/commands/docs.ts +582 -0
- package/src/commands/env-setup.ts +69 -0
- package/src/commands/onboard.ts +1391 -0
- package/src/commands/run.ts +173 -0
- package/src/commands/script.ts +587 -0
- package/src/commands/sync.ts +305 -0
- package/src/constants/ascii.ts +17 -0
- package/src/index.ts +63 -0
- package/src/types.ts +59 -0
- package/src/utils/env-categories.ts +245 -0
- package/src/utils/env-setup.ts +338 -0
- package/src/utils/env.ts +127 -0
- package/src/utils/files.ts +302 -0
- package/src/utils/parallel-runner.ts +129 -0
- package/src/utils/ports.ts +77 -0
- package/src/utils/prerequisites.ts +137 -0
- package/src/utils/prompts.ts +197 -0
- package/src/utils/script-listing.ts +214 -0
- package/src/utils/sync.ts +101 -0
- package/src/withOpSqliteStatic.cjs +51 -0
- package/types/cli.d.ts +7 -0
- package/types/cli.d.ts.map +1 -0
- package/types/commands/changed.d.ts +14 -0
- package/types/commands/changed.d.ts.map +1 -0
- package/types/commands/docs.d.ts +5 -0
- package/types/commands/docs.d.ts.map +1 -0
- package/types/commands/env-setup.d.ts +25 -0
- package/types/commands/env-setup.d.ts.map +1 -0
- package/types/commands/onboard.d.ts +16 -0
- package/types/commands/onboard.d.ts.map +1 -0
- package/types/commands/run.d.ts +8 -0
- package/types/commands/run.d.ts.map +1 -0
- package/types/commands/script.d.ts +28 -0
- package/types/commands/script.d.ts.map +1 -0
- package/types/commands/sync.d.ts +5 -0
- package/types/commands/sync.d.ts.map +1 -0
- package/types/constants/ascii.d.ts +6 -0
- package/types/constants/ascii.d.ts.map +1 -0
- package/types/index.d.ts +12 -0
- package/types/index.d.ts.map +1 -0
- package/types/types.d.ts +54 -0
- package/types/types.d.ts.map +1 -0
- package/types/utils/env-categories.d.ts +8 -0
- package/types/utils/env-categories.d.ts.map +1 -0
- package/types/utils/env-setup.d.ts +10 -0
- package/types/utils/env-setup.d.ts.map +1 -0
- package/types/utils/env.d.ts +19 -0
- package/types/utils/env.d.ts.map +1 -0
- package/types/utils/files.d.ts +47 -0
- package/types/utils/files.d.ts.map +1 -0
- package/types/utils/parallel-runner.d.ts +15 -0
- package/types/utils/parallel-runner.d.ts.map +1 -0
- package/types/utils/ports.d.ts +16 -0
- package/types/utils/ports.d.ts.map +1 -0
- package/types/utils/prerequisites.d.ts +11 -0
- package/types/utils/prerequisites.d.ts.map +1 -0
- package/types/utils/prompts.d.ts +30 -0
- package/types/utils/prompts.d.ts.map +1 -0
- package/types/utils/script-listing.d.ts +7 -0
- package/types/utils/script-listing.d.ts.map +1 -0
- package/types/utils/sync.d.ts +16 -0
- package/types/utils/sync.d.ts.map +1 -0
- package/types/utils/welcome.d.ts +6 -0
- package/types/utils/welcome.d.ts.map +1 -0
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { execSync } from "node:child_process";
|
|
2
|
+
function execCommand(command) {
|
|
3
|
+
try {
|
|
4
|
+
return execSync(command, {
|
|
5
|
+
encoding: "utf-8",
|
|
6
|
+
stdio: ["pipe", "pipe", "ignore"]
|
|
7
|
+
}).trim();
|
|
8
|
+
} catch {
|
|
9
|
+
return null;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
function getVersion(command) {
|
|
13
|
+
const output = execCommand(command);
|
|
14
|
+
if (!output) return null;
|
|
15
|
+
const match = output.match(/\d+\.\d+\.\d+/);
|
|
16
|
+
return match ? match[0] : output;
|
|
17
|
+
}
|
|
18
|
+
function compareVersions(current, required) {
|
|
19
|
+
const parseCurrent = current.replace(/^v/, "").split(".").map(Number),
|
|
20
|
+
parseRequired = required.replace(/^v/, "").split(".").map(Number);
|
|
21
|
+
for (let i = 0; i < 3; i++) {
|
|
22
|
+
const curr = parseCurrent[i] || 0,
|
|
23
|
+
req = parseRequired[i] || 0;
|
|
24
|
+
if (curr > req) return !0;
|
|
25
|
+
if (curr < req) return !1;
|
|
26
|
+
}
|
|
27
|
+
return !0;
|
|
28
|
+
}
|
|
29
|
+
function checkBun() {
|
|
30
|
+
const version = getVersion("bun --version") ?? void 0,
|
|
31
|
+
requiredVersion = "1.0.0",
|
|
32
|
+
hasBunv = !!execCommand("bunv --version");
|
|
33
|
+
let message = version ? compareVersions(version, requiredVersion) ? `Bun ${version} installed` : `Bun ${version} installed (${requiredVersion}+ recommended)` : "Bun not found";
|
|
34
|
+
return version && !hasBunv && (message += " (consider installing bunv for auto version switching)"), {
|
|
35
|
+
name: "Bun",
|
|
36
|
+
required: !0,
|
|
37
|
+
installed: !!version,
|
|
38
|
+
version,
|
|
39
|
+
requiredVersion,
|
|
40
|
+
message,
|
|
41
|
+
installUrl: "https://bun.sh",
|
|
42
|
+
recommendation: hasBunv ? void 0 : "Install bunv to automatically switch bun versions: https://github.com/aklinker1/bunv"
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
function checkNode() {
|
|
46
|
+
const version = getVersion("node --version") ?? void 0,
|
|
47
|
+
requiredVersion = "20.0.0",
|
|
48
|
+
hasFnm = !!execCommand("fnm --version");
|
|
49
|
+
let message = version ? compareVersions(version, requiredVersion) ? `Node.js ${version} installed` : `Node.js ${version} installed (${requiredVersion}+ recommended)` : "Node.js not found (optional)";
|
|
50
|
+
return version && !hasFnm && (message += " (consider installing fnm for auto version switching)"), {
|
|
51
|
+
name: "Node.js",
|
|
52
|
+
required: !1,
|
|
53
|
+
installed: !!version,
|
|
54
|
+
version,
|
|
55
|
+
requiredVersion,
|
|
56
|
+
message,
|
|
57
|
+
installUrl: "https://nodejs.org",
|
|
58
|
+
recommendation: hasFnm ? void 0 : "Install fnm to automatically switch node versions: https://github.com/Schniz/fnm"
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
function checkDocker() {
|
|
62
|
+
const version = getVersion("docker --version") ?? void 0,
|
|
63
|
+
isRunning = !!execCommand("docker ps");
|
|
64
|
+
return {
|
|
65
|
+
name: "Docker",
|
|
66
|
+
required: !0,
|
|
67
|
+
installed: !!version,
|
|
68
|
+
version,
|
|
69
|
+
message: version ? isRunning ? `Docker ${version} running` : "Docker installed but not running" : "Docker not found",
|
|
70
|
+
installUrl: "https://docs.docker.com/get-docker/"
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
function checkGit() {
|
|
74
|
+
const version = getVersion("git --version") ?? void 0;
|
|
75
|
+
return {
|
|
76
|
+
name: "Git",
|
|
77
|
+
required: !0,
|
|
78
|
+
installed: !!version,
|
|
79
|
+
version,
|
|
80
|
+
message: version ? `Git ${version} installed` : "Git not found",
|
|
81
|
+
installUrl: "https://git-scm.com"
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
function checkAllPrerequisites() {
|
|
85
|
+
return [checkBun(), checkNode(), checkDocker(), checkGit()];
|
|
86
|
+
}
|
|
87
|
+
function hasRequiredPrerequisites(checks) {
|
|
88
|
+
return checks.filter(c => c.required).every(c => c.installed);
|
|
89
|
+
}
|
|
90
|
+
export { checkAllPrerequisites, checkBun, checkDocker, checkGit, checkNode, hasRequiredPrerequisites };
|
|
91
|
+
//# sourceMappingURL=prerequisites.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["execSync","execCommand","command","encoding","stdio","trim","getVersion","output","match","compareVersions","current","required","parseCurrent","replace","split","map","Number","parseRequired","i","curr","req","checkBun","version","requiredVersion","hasBunv","message","name","installed","installUrl","recommendation","checkNode","hasFnm","checkDocker","isRunning","checkGit","checkAllPrerequisites","hasRequiredPrerequisites","checks","filter","c","every"],"sources":["../../../src/utils/prerequisites.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { execSync } from "child_process";
|
|
2
|
+
function execCommand(command) {
|
|
3
|
+
try {
|
|
4
|
+
return execSync(command, {
|
|
5
|
+
encoding: "utf-8",
|
|
6
|
+
stdio: ["pipe", "pipe", "ignore"]
|
|
7
|
+
}).trim();
|
|
8
|
+
} catch {
|
|
9
|
+
return null;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
function getVersion(command) {
|
|
13
|
+
var output = execCommand(command);
|
|
14
|
+
if (!output) return null;
|
|
15
|
+
var match = output.match(/\d+\.\d+\.\d+/);
|
|
16
|
+
return match ? match[0] : output;
|
|
17
|
+
}
|
|
18
|
+
function compareVersions(current, required) {
|
|
19
|
+
for (var parseCurrent = current.replace(/^v/, "").split(".").map(Number), parseRequired = required.replace(/^v/, "").split(".").map(Number), i = 0; i < 3; i++) {
|
|
20
|
+
var curr = parseCurrent[i] || 0,
|
|
21
|
+
req = parseRequired[i] || 0;
|
|
22
|
+
if (curr > req) return !0;
|
|
23
|
+
if (curr < req) return !1;
|
|
24
|
+
}
|
|
25
|
+
return !0;
|
|
26
|
+
}
|
|
27
|
+
function checkBun() {
|
|
28
|
+
var _getVersion,
|
|
29
|
+
version = (_getVersion = getVersion("bun --version")) !== null && _getVersion !== void 0 ? _getVersion : void 0,
|
|
30
|
+
requiredVersion = "1.0.0",
|
|
31
|
+
hasBunv = !!execCommand("bunv --version"),
|
|
32
|
+
message = version ? compareVersions(version, requiredVersion) ? `Bun ${version} installed` : `Bun ${version} installed (${requiredVersion}+ recommended)` : "Bun not found";
|
|
33
|
+
return version && !hasBunv && (message += " (consider installing bunv for auto version switching)"), {
|
|
34
|
+
name: "Bun",
|
|
35
|
+
required: !0,
|
|
36
|
+
installed: !!version,
|
|
37
|
+
version,
|
|
38
|
+
requiredVersion,
|
|
39
|
+
message,
|
|
40
|
+
installUrl: "https://bun.sh",
|
|
41
|
+
recommendation: hasBunv ? void 0 : "Install bunv to automatically switch bun versions: https://github.com/aklinker1/bunv"
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
function checkNode() {
|
|
45
|
+
var _getVersion,
|
|
46
|
+
version = (_getVersion = getVersion("node --version")) !== null && _getVersion !== void 0 ? _getVersion : void 0,
|
|
47
|
+
requiredVersion = "20.0.0",
|
|
48
|
+
hasFnm = !!execCommand("fnm --version"),
|
|
49
|
+
message = version ? compareVersions(version, requiredVersion) ? `Node.js ${version} installed` : `Node.js ${version} installed (${requiredVersion}+ recommended)` : "Node.js not found (optional)";
|
|
50
|
+
return version && !hasFnm && (message += " (consider installing fnm for auto version switching)"), {
|
|
51
|
+
name: "Node.js",
|
|
52
|
+
required: !1,
|
|
53
|
+
installed: !!version,
|
|
54
|
+
version,
|
|
55
|
+
requiredVersion,
|
|
56
|
+
message,
|
|
57
|
+
installUrl: "https://nodejs.org",
|
|
58
|
+
recommendation: hasFnm ? void 0 : "Install fnm to automatically switch node versions: https://github.com/Schniz/fnm"
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
function checkDocker() {
|
|
62
|
+
var _getVersion,
|
|
63
|
+
version = (_getVersion = getVersion("docker --version")) !== null && _getVersion !== void 0 ? _getVersion : void 0,
|
|
64
|
+
isRunning = !!execCommand("docker ps");
|
|
65
|
+
return {
|
|
66
|
+
name: "Docker",
|
|
67
|
+
required: !0,
|
|
68
|
+
installed: !!version,
|
|
69
|
+
version,
|
|
70
|
+
message: version ? isRunning ? `Docker ${version} running` : "Docker installed but not running" : "Docker not found",
|
|
71
|
+
installUrl: "https://docs.docker.com/get-docker/"
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
function checkGit() {
|
|
75
|
+
var _getVersion,
|
|
76
|
+
version = (_getVersion = getVersion("git --version")) !== null && _getVersion !== void 0 ? _getVersion : void 0;
|
|
77
|
+
return {
|
|
78
|
+
name: "Git",
|
|
79
|
+
required: !0,
|
|
80
|
+
installed: !!version,
|
|
81
|
+
version,
|
|
82
|
+
message: version ? `Git ${version} installed` : "Git not found",
|
|
83
|
+
installUrl: "https://git-scm.com"
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
function checkAllPrerequisites() {
|
|
87
|
+
return [checkBun(), checkNode(), checkDocker(), checkGit()];
|
|
88
|
+
}
|
|
89
|
+
function hasRequiredPrerequisites(checks) {
|
|
90
|
+
return checks.filter(function (c) {
|
|
91
|
+
return c.required;
|
|
92
|
+
}).every(function (c) {
|
|
93
|
+
return c.installed;
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
export { checkAllPrerequisites, checkBun, checkDocker, checkGit, checkNode, hasRequiredPrerequisites };
|
|
97
|
+
//# sourceMappingURL=prerequisites.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["execSync","execCommand","command","encoding","stdio","trim","getVersion","output","match","compareVersions","current","required","parseCurrent","replace","split","map","Number","parseRequired","i","curr","req","checkBun","_getVersion","version","requiredVersion","hasBunv","message","name","installed","installUrl","recommendation","checkNode","hasFnm","checkDocker","isRunning","checkGit","checkAllPrerequisites"],"sources":["../../../src/utils/prerequisites.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
import * as p from "@clack/prompts";
|
|
2
|
+
import pc from "picocolors";
|
|
3
|
+
function displayWelcome(projectName = "Takeout") {
|
|
4
|
+
console.info(), p.intro(pc.bgCyan(pc.black(` ${projectName} Starter Kit `))), console.info(), p.note(
|
|
5
|
+
pc.dim(
|
|
6
|
+
`You can re-run 'bun onboard' anytime to reconfigure or skip to specific steps.
|
|
7
|
+
No need to decide everything upfront!`
|
|
8
|
+
),
|
|
9
|
+
pc.cyan("Tip")
|
|
10
|
+
);
|
|
11
|
+
}
|
|
12
|
+
function displayOutro(message) {
|
|
13
|
+
p.outro(pc.green(message));
|
|
14
|
+
}
|
|
15
|
+
function displayPrerequisites(checks) {
|
|
16
|
+
const items = checks.map((check) => {
|
|
17
|
+
const icon = check.installed ? pc.green("\u2713") : pc.red("\u2717"), message = check.message || "", recommendation = check.recommendation ? `
|
|
18
|
+
${pc.dim(check.recommendation)}` : "";
|
|
19
|
+
return `${icon} ${pc.bold(check.name)}: ${message}${recommendation}`;
|
|
20
|
+
});
|
|
21
|
+
p.note(items.join(`
|
|
22
|
+
`), "Prerequisites");
|
|
23
|
+
}
|
|
24
|
+
function displayPortConflicts(conflicts) {
|
|
25
|
+
if (conflicts.length === 0) return;
|
|
26
|
+
const items = conflicts.map((conflict) => {
|
|
27
|
+
const pid = conflict.pid ? ` (PID: ${conflict.pid})` : "";
|
|
28
|
+
return `${pc.yellow("\u26A0")} Port ${conflict.port} (${conflict.name})${pid}`;
|
|
29
|
+
});
|
|
30
|
+
p.note(items.join(`
|
|
31
|
+
`), pc.yellow("Port Conflicts Detected"));
|
|
32
|
+
}
|
|
33
|
+
async function confirmContinue(message, defaultValue = !0) {
|
|
34
|
+
const result = await p.confirm({
|
|
35
|
+
message,
|
|
36
|
+
initialValue: defaultValue
|
|
37
|
+
});
|
|
38
|
+
return p.isCancel(result) && (p.cancel("Operation cancelled."), process.exit(0)), result;
|
|
39
|
+
}
|
|
40
|
+
async function promptText(message, defaultValue, placeholder) {
|
|
41
|
+
const result = await p.text({
|
|
42
|
+
message,
|
|
43
|
+
defaultValue,
|
|
44
|
+
placeholder
|
|
45
|
+
});
|
|
46
|
+
return p.isCancel(result) && (p.cancel("Operation cancelled."), process.exit(0)), result;
|
|
47
|
+
}
|
|
48
|
+
async function promptPassword(message) {
|
|
49
|
+
const result = await p.password({
|
|
50
|
+
message
|
|
51
|
+
});
|
|
52
|
+
return p.isCancel(result) && (p.cancel("Operation cancelled."), process.exit(0)), result;
|
|
53
|
+
}
|
|
54
|
+
async function promptSelect(message, options) {
|
|
55
|
+
const result = await p.select({
|
|
56
|
+
message,
|
|
57
|
+
options
|
|
58
|
+
});
|
|
59
|
+
return p.isCancel(result) ? "cancel" : result;
|
|
60
|
+
}
|
|
61
|
+
async function promptStartStep() {
|
|
62
|
+
return console.info(), console.info(pc.gray("What would you like to do?")), console.info(), promptSelect("Select starting point:", [
|
|
63
|
+
{
|
|
64
|
+
value: "full",
|
|
65
|
+
label: "Complete setup",
|
|
66
|
+
hint: "Run through all setup steps"
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
value: "prerequisites",
|
|
70
|
+
label: "Check prerequisites",
|
|
71
|
+
hint: "Verify bun, docker, git, etc."
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
value: "identity",
|
|
75
|
+
label: "Project identity",
|
|
76
|
+
hint: "Customize app name and bundle ID"
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
value: "ports",
|
|
80
|
+
label: "Check ports",
|
|
81
|
+
hint: "Verify required ports are available"
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
value: "eject",
|
|
85
|
+
label: "Eject from monorepo",
|
|
86
|
+
hint: "Remove ./packages, use published versions"
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
value: "production",
|
|
90
|
+
label: "Production deployment",
|
|
91
|
+
hint: "Configure production environment and deployment"
|
|
92
|
+
}
|
|
93
|
+
]);
|
|
94
|
+
}
|
|
95
|
+
async function promptOldSelect(message, options) {
|
|
96
|
+
const result = await p.select({
|
|
97
|
+
message,
|
|
98
|
+
options
|
|
99
|
+
});
|
|
100
|
+
return p.isCancel(result) && (p.cancel("Operation cancelled."), process.exit(0)), result;
|
|
101
|
+
}
|
|
102
|
+
function showSpinner(message) {
|
|
103
|
+
const s = p.spinner();
|
|
104
|
+
return s.start(message), s;
|
|
105
|
+
}
|
|
106
|
+
function showError(message) {
|
|
107
|
+
p.log.error(pc.red(message));
|
|
108
|
+
}
|
|
109
|
+
function showWarning(message) {
|
|
110
|
+
p.log.warning(pc.yellow(message));
|
|
111
|
+
}
|
|
112
|
+
function showSuccess(message) {
|
|
113
|
+
p.log.success(pc.green(message));
|
|
114
|
+
}
|
|
115
|
+
function showInfo(message) {
|
|
116
|
+
p.log.info(pc.blue(message));
|
|
117
|
+
}
|
|
118
|
+
function showStep(message) {
|
|
119
|
+
p.log.step(message);
|
|
120
|
+
}
|
|
121
|
+
export {
|
|
122
|
+
confirmContinue,
|
|
123
|
+
displayOutro,
|
|
124
|
+
displayPortConflicts,
|
|
125
|
+
displayPrerequisites,
|
|
126
|
+
displayWelcome,
|
|
127
|
+
promptOldSelect,
|
|
128
|
+
promptPassword,
|
|
129
|
+
promptSelect,
|
|
130
|
+
promptStartStep,
|
|
131
|
+
promptText,
|
|
132
|
+
showError,
|
|
133
|
+
showInfo,
|
|
134
|
+
showSpinner,
|
|
135
|
+
showStep,
|
|
136
|
+
showSuccess,
|
|
137
|
+
showWarning
|
|
138
|
+
};
|
|
139
|
+
//# sourceMappingURL=prompts.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/utils/prompts.ts"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import * as p from "@clack/prompts";
|
|
2
|
+
import pc from "picocolors";
|
|
3
|
+
function displayWelcome(projectName = "Takeout") {
|
|
4
|
+
console.info(), p.intro(pc.bgCyan(pc.black(` ${projectName} Starter Kit `))), console.info(), p.note(pc.dim(`You can re-run 'bun onboard' anytime to reconfigure or skip to specific steps.
|
|
5
|
+
No need to decide everything upfront!`), pc.cyan("Tip"));
|
|
6
|
+
}
|
|
7
|
+
function displayOutro(message) {
|
|
8
|
+
p.outro(pc.green(message));
|
|
9
|
+
}
|
|
10
|
+
function displayPrerequisites(checks) {
|
|
11
|
+
const items = checks.map(check => {
|
|
12
|
+
const icon = check.installed ? pc.green("\u2713") : pc.red("\u2717"),
|
|
13
|
+
message = check.message || "",
|
|
14
|
+
recommendation = check.recommendation ? `
|
|
15
|
+
${pc.dim(check.recommendation)}` : "";
|
|
16
|
+
return `${icon} ${pc.bold(check.name)}: ${message}${recommendation}`;
|
|
17
|
+
});
|
|
18
|
+
p.note(items.join(`
|
|
19
|
+
`), "Prerequisites");
|
|
20
|
+
}
|
|
21
|
+
function displayPortConflicts(conflicts) {
|
|
22
|
+
if (conflicts.length === 0) return;
|
|
23
|
+
const items = conflicts.map(conflict => {
|
|
24
|
+
const pid = conflict.pid ? ` (PID: ${conflict.pid})` : "";
|
|
25
|
+
return `${pc.yellow("\u26A0")} Port ${conflict.port} (${conflict.name})${pid}`;
|
|
26
|
+
});
|
|
27
|
+
p.note(items.join(`
|
|
28
|
+
`), pc.yellow("Port Conflicts Detected"));
|
|
29
|
+
}
|
|
30
|
+
async function confirmContinue(message, defaultValue = !0) {
|
|
31
|
+
const result = await p.confirm({
|
|
32
|
+
message,
|
|
33
|
+
initialValue: defaultValue
|
|
34
|
+
});
|
|
35
|
+
return p.isCancel(result) && (p.cancel("Operation cancelled."), process.exit(0)), result;
|
|
36
|
+
}
|
|
37
|
+
async function promptText(message, defaultValue, placeholder) {
|
|
38
|
+
const result = await p.text({
|
|
39
|
+
message,
|
|
40
|
+
defaultValue,
|
|
41
|
+
placeholder
|
|
42
|
+
});
|
|
43
|
+
return p.isCancel(result) && (p.cancel("Operation cancelled."), process.exit(0)), result;
|
|
44
|
+
}
|
|
45
|
+
async function promptPassword(message) {
|
|
46
|
+
const result = await p.password({
|
|
47
|
+
message
|
|
48
|
+
});
|
|
49
|
+
return p.isCancel(result) && (p.cancel("Operation cancelled."), process.exit(0)), result;
|
|
50
|
+
}
|
|
51
|
+
async function promptSelect(message, options) {
|
|
52
|
+
const result = await p.select({
|
|
53
|
+
message,
|
|
54
|
+
options
|
|
55
|
+
});
|
|
56
|
+
return p.isCancel(result) ? "cancel" : result;
|
|
57
|
+
}
|
|
58
|
+
async function promptStartStep() {
|
|
59
|
+
return console.info(), console.info(pc.gray("What would you like to do?")), console.info(), promptSelect("Select starting point:", [{
|
|
60
|
+
value: "full",
|
|
61
|
+
label: "Complete setup",
|
|
62
|
+
hint: "Run through all setup steps"
|
|
63
|
+
}, {
|
|
64
|
+
value: "prerequisites",
|
|
65
|
+
label: "Check prerequisites",
|
|
66
|
+
hint: "Verify bun, docker, git, etc."
|
|
67
|
+
}, {
|
|
68
|
+
value: "identity",
|
|
69
|
+
label: "Project identity",
|
|
70
|
+
hint: "Customize app name and bundle ID"
|
|
71
|
+
}, {
|
|
72
|
+
value: "ports",
|
|
73
|
+
label: "Check ports",
|
|
74
|
+
hint: "Verify required ports are available"
|
|
75
|
+
}, {
|
|
76
|
+
value: "eject",
|
|
77
|
+
label: "Eject from monorepo",
|
|
78
|
+
hint: "Remove ./packages, use published versions"
|
|
79
|
+
}, {
|
|
80
|
+
value: "production",
|
|
81
|
+
label: "Production deployment",
|
|
82
|
+
hint: "Configure production environment and deployment"
|
|
83
|
+
}]);
|
|
84
|
+
}
|
|
85
|
+
async function promptOldSelect(message, options) {
|
|
86
|
+
const result = await p.select({
|
|
87
|
+
message,
|
|
88
|
+
options
|
|
89
|
+
});
|
|
90
|
+
return p.isCancel(result) && (p.cancel("Operation cancelled."), process.exit(0)), result;
|
|
91
|
+
}
|
|
92
|
+
function showSpinner(message) {
|
|
93
|
+
const s = p.spinner();
|
|
94
|
+
return s.start(message), s;
|
|
95
|
+
}
|
|
96
|
+
function showError(message) {
|
|
97
|
+
p.log.error(pc.red(message));
|
|
98
|
+
}
|
|
99
|
+
function showWarning(message) {
|
|
100
|
+
p.log.warning(pc.yellow(message));
|
|
101
|
+
}
|
|
102
|
+
function showSuccess(message) {
|
|
103
|
+
p.log.success(pc.green(message));
|
|
104
|
+
}
|
|
105
|
+
function showInfo(message) {
|
|
106
|
+
p.log.info(pc.blue(message));
|
|
107
|
+
}
|
|
108
|
+
function showStep(message) {
|
|
109
|
+
p.log.step(message);
|
|
110
|
+
}
|
|
111
|
+
export { confirmContinue, displayOutro, displayPortConflicts, displayPrerequisites, displayWelcome, promptOldSelect, promptPassword, promptSelect, promptStartStep, promptText, showError, showInfo, showSpinner, showStep, showSuccess, showWarning };
|
|
112
|
+
//# sourceMappingURL=prompts.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["p","pc","displayWelcome","projectName","console","info","intro","bgCyan","black","note","dim","cyan","displayOutro","message","outro","green","displayPrerequisites","checks","items","map","check","icon","installed","red","recommendation","bold","name","join","displayPortConflicts","conflicts","length","conflict","pid","yellow","port","confirmContinue","defaultValue","result","confirm","initialValue","isCancel","cancel","process","exit","promptText","placeholder","text","promptPassword","password","promptSelect","options","select","promptStartStep","gray","value","label","hint","promptOldSelect","showSpinner","s","spinner","start","showError","log","error","showWarning","warning","showSuccess","success","showInfo","blue","showStep","step"],"sources":["../../../src/utils/prompts.ts"],"sourcesContent":[null],"mappings":"AAIA,YAAYA,CAAA,MAAO;AACnB,OAAOC,EAAA,MAAQ;AAIR,SAASC,eAAeC,WAAA,GAAc,WAAiB;EAC5DC,OAAA,CAAQC,IAAA,CAAK,GACbL,CAAA,CAAEM,KAAA,CAAML,EAAA,CAAGM,MAAA,CAAON,EAAA,CAAGO,KAAA,CAAM,IAAIL,WAAW,eAAe,CAAC,CAAC,GAC3DC,OAAA,CAAQC,IAAA,CAAK,GACbL,CAAA,CAAES,IAAA,CACAR,EAAA,CAAGS,GAAA,CACD;AAAA,sCACF,GACAT,EAAA,CAAGU,IAAA,CAAK,KAAK,CACf;AACF;AAEO,SAASC,aAAaC,OAAA,EAAuB;EAClDb,CAAA,CAAEc,KAAA,CAAMb,EAAA,CAAGc,KAAA,CAAMF,OAAO,CAAC;AAC3B;AAEO,SAASG,qBAAqBC,MAAA,EAAmC;EACtE,MAAMC,KAAA,GAAQD,MAAA,CAAOE,GAAA,CAAKC,KAAA,IAAU;IAClC,MAAMC,IAAA,GAAOD,KAAA,CAAME,SAAA,GAAYrB,EAAA,CAAGc,KAAA,CAAM,QAAG,IAAId,EAAA,CAAGsB,GAAA,CAAI,QAAG;MACnDV,OAAA,GAAUO,KAAA,CAAMP,OAAA,IAAW;MAC3BW,cAAA,GAAiBJ,KAAA,CAAMI,cAAA,GACzB;AAAA,MAASvB,EAAA,CAAGS,GAAA,CAAIU,KAAA,CAAMI,cAAc,CAAC,KACrC;IACJ,OAAO,GAAGH,IAAI,IAAIpB,EAAA,CAAGwB,IAAA,CAAKL,KAAA,CAAMM,IAAI,CAAC,KAAKb,OAAO,GAAGW,cAAc;EACpE,CAAC;EAEDxB,CAAA,CAAES,IAAA,CAAKS,KAAA,CAAMS,IAAA,CAAK;AAAA,CAAI,GAAG,eAAe;AAC1C;AAEO,SAASC,qBAAqBC,SAAA,EAA8B;EACjE,IAAIA,SAAA,CAAUC,MAAA,KAAW,GAAG;EAE5B,MAAMZ,KAAA,GAAQW,SAAA,CAAUV,GAAA,CAAKY,QAAA,IAAa;IACxC,MAAMC,GAAA,GAAMD,QAAA,CAASC,GAAA,GAAM,UAAUD,QAAA,CAASC,GAAG,MAAM;IACvD,OAAO,GAAG/B,EAAA,CAAGgC,MAAA,CAAO,QAAG,CAAC,SAASF,QAAA,CAASG,IAAI,KAAKH,QAAA,CAASL,IAAI,IAAIM,GAAG;EACzE,CAAC;EAEDhC,CAAA,CAAES,IAAA,CAAKS,KAAA,CAAMS,IAAA,CAAK;AAAA,CAAI,GAAG1B,EAAA,CAAGgC,MAAA,CAAO,yBAAyB,CAAC;AAC/D;AAEA,eAAsBE,gBACpBtB,OAAA,EACAuB,YAAA,GAAe,IACG;EAClB,MAAMC,MAAA,GAAS,MAAMrC,CAAA,CAAEsC,OAAA,CAAQ;IAC7BzB,OAAA;IACA0B,YAAA,EAAcH;EAChB,CAAC;EAED,OAAIpC,CAAA,CAAEwC,QAAA,CAASH,MAAM,MACnBrC,CAAA,CAAEyC,MAAA,CAAO,sBAAsB,GAC/BC,OAAA,CAAQC,IAAA,CAAK,CAAC,IAGTN,MAAA;AACT;AAEA,eAAsBO,WACpB/B,OAAA,EACAuB,YAAA,EACAS,WAAA,EACiB;EACjB,MAAMR,MAAA,GAAS,MAAMrC,CAAA,CAAE8C,IAAA,CAAK;IAC1BjC,OAAA;IACAuB,YAAA;IACAS;EACF,CAAC;EAED,OAAI7C,CAAA,CAAEwC,QAAA,CAASH,MAAM,MACnBrC,CAAA,CAAEyC,MAAA,CAAO,sBAAsB,GAC/BC,OAAA,CAAQC,IAAA,CAAK,CAAC,IAGTN,MAAA;AACT;AAEA,eAAsBU,eAAelC,OAAA,EAAkC;EACrE,MAAMwB,MAAA,GAAS,MAAMrC,CAAA,CAAEgD,QAAA,CAAS;IAC9BnC;EACF,CAAC;EAED,OAAIb,CAAA,CAAEwC,QAAA,CAASH,MAAM,MACnBrC,CAAA,CAAEyC,MAAA,CAAO,sBAAsB,GAC/BC,OAAA,CAAQC,IAAA,CAAK,CAAC,IAGTN,MAAA;AACT;AAEA,eAAsBY,aACpBpC,OAAA,EACAqC,OAAA,EACuB;EACvB,MAAMb,MAAA,GAAS,MAAMrC,CAAA,CAAEmD,MAAA,CAAO;IAC5BtC,OAAA;IACAqC;EACF,CAAC;EAED,OAAIlD,CAAA,CAAEwC,QAAA,CAASH,MAAM,IACZ,WAGFA,MAAA;AACT;AAEA,eAAsBe,gBAAA,EAEpB;EACA,OAAAhD,OAAA,CAAQC,IAAA,CAAK,GACbD,OAAA,CAAQC,IAAA,CAAKJ,EAAA,CAAGoD,IAAA,CAAK,4BAA4B,CAAC,GAClDjD,OAAA,CAAQC,IAAA,CAAK,GAEN4C,YAAA,CAAa,0BAA0B,CAC5C;IACEK,KAAA,EAAO;IACPC,KAAA,EAAO;IACPC,IAAA,EAAM;EACR,GACA;IACEF,KAAA,EAAO;IACPC,KAAA,EAAO;IACPC,IAAA,EAAM;EACR,GACA;IACEF,KAAA,EAAO;IACPC,KAAA,EAAO;IACPC,IAAA,EAAM;EACR,GACA;IACEF,KAAA,EAAO;IACPC,KAAA,EAAO;IACPC,IAAA,EAAM;EACR,GACA;IACEF,KAAA,EAAO;IACPC,KAAA,EAAO;IACPC,IAAA,EAAM;EACR,GACA;IACEF,KAAA,EAAO;IACPC,KAAA,EAAO;IACPC,IAAA,EAAM;EACR,EACD;AACH;AAEA,eAAsBC,gBACpB5C,OAAA,EACAqC,OAAA,EACY;EACZ,MAAMb,MAAA,GAAS,MAAMrC,CAAA,CAAEmD,MAAA,CAAe;IACpCtC,OAAA;IACAqC;EACF,CAAC;EAED,OAAIlD,CAAA,CAAEwC,QAAA,CAASH,MAAM,MACnBrC,CAAA,CAAEyC,MAAA,CAAO,sBAAsB,GAC/BC,OAAA,CAAQC,IAAA,CAAK,CAAC,IAGTN,MAAA;AACT;AAEO,SAASqB,YAAY7C,OAAA,EAA+C;EACzE,MAAM8C,CAAA,GAAI3D,CAAA,CAAE4D,OAAA,CAAQ;EACpB,OAAAD,CAAA,CAAEE,KAAA,CAAMhD,OAAO,GACR8C,CAAA;AACT;AAEO,SAASG,UAAUjD,OAAA,EAAuB;EAC/Cb,CAAA,CAAE+D,GAAA,CAAIC,KAAA,CAAM/D,EAAA,CAAGsB,GAAA,CAAIV,OAAO,CAAC;AAC7B;AAEO,SAASoD,YAAYpD,OAAA,EAAuB;EACjDb,CAAA,CAAE+D,GAAA,CAAIG,OAAA,CAAQjE,EAAA,CAAGgC,MAAA,CAAOpB,OAAO,CAAC;AAClC;AAEO,SAASsD,YAAYtD,OAAA,EAAuB;EACjDb,CAAA,CAAE+D,GAAA,CAAIK,OAAA,CAAQnE,EAAA,CAAGc,KAAA,CAAMF,OAAO,CAAC;AACjC;AAEO,SAASwD,SAASxD,OAAA,EAAuB;EAC9Cb,CAAA,CAAE+D,GAAA,CAAI1D,IAAA,CAAKJ,EAAA,CAAGqE,IAAA,CAAKzD,OAAO,CAAC;AAC7B;AAEO,SAAS0D,SAAS1D,OAAA,EAAuB;EAC9Cb,CAAA,CAAE+D,GAAA,CAAIS,IAAA,CAAK3D,OAAO;AACpB","ignoreList":[]}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import * as p from "@clack/prompts";
|
|
2
|
+
import pc from "picocolors";
|
|
3
|
+
function displayWelcome() {
|
|
4
|
+
var projectName = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "Takeout";
|
|
5
|
+
console.info(), p.intro(pc.bgCyan(pc.black(` ${projectName} Starter Kit `))), console.info(), p.note(pc.dim(`You can re-run 'bun onboard' anytime to reconfigure or skip to specific steps.
|
|
6
|
+
No need to decide everything upfront!`), pc.cyan("Tip"));
|
|
7
|
+
}
|
|
8
|
+
function displayOutro(message) {
|
|
9
|
+
p.outro(pc.green(message));
|
|
10
|
+
}
|
|
11
|
+
function displayPrerequisites(checks) {
|
|
12
|
+
var items = checks.map(function (check) {
|
|
13
|
+
var icon = check.installed ? pc.green("\u2713") : pc.red("\u2717"),
|
|
14
|
+
message = check.message || "",
|
|
15
|
+
recommendation = check.recommendation ? `
|
|
16
|
+
${pc.dim(check.recommendation)}` : "";
|
|
17
|
+
return `${icon} ${pc.bold(check.name)}: ${message}${recommendation}`;
|
|
18
|
+
});
|
|
19
|
+
p.note(items.join(`
|
|
20
|
+
`), "Prerequisites");
|
|
21
|
+
}
|
|
22
|
+
function displayPortConflicts(conflicts) {
|
|
23
|
+
if (conflicts.length !== 0) {
|
|
24
|
+
var items = conflicts.map(function (conflict) {
|
|
25
|
+
var pid = conflict.pid ? ` (PID: ${conflict.pid})` : "";
|
|
26
|
+
return `${pc.yellow("\u26A0")} Port ${conflict.port} (${conflict.name})${pid}`;
|
|
27
|
+
});
|
|
28
|
+
p.note(items.join(`
|
|
29
|
+
`), pc.yellow("Port Conflicts Detected"));
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
async function confirmContinue(message) {
|
|
33
|
+
var defaultValue = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !0,
|
|
34
|
+
result = await p.confirm({
|
|
35
|
+
message,
|
|
36
|
+
initialValue: defaultValue
|
|
37
|
+
});
|
|
38
|
+
return p.isCancel(result) && (p.cancel("Operation cancelled."), process.exit(0)), result;
|
|
39
|
+
}
|
|
40
|
+
async function promptText(message, defaultValue, placeholder) {
|
|
41
|
+
var result = await p.text({
|
|
42
|
+
message,
|
|
43
|
+
defaultValue,
|
|
44
|
+
placeholder
|
|
45
|
+
});
|
|
46
|
+
return p.isCancel(result) && (p.cancel("Operation cancelled."), process.exit(0)), result;
|
|
47
|
+
}
|
|
48
|
+
async function promptPassword(message) {
|
|
49
|
+
var result = await p.password({
|
|
50
|
+
message
|
|
51
|
+
});
|
|
52
|
+
return p.isCancel(result) && (p.cancel("Operation cancelled."), process.exit(0)), result;
|
|
53
|
+
}
|
|
54
|
+
async function promptSelect(message, options) {
|
|
55
|
+
var result = await p.select({
|
|
56
|
+
message,
|
|
57
|
+
options
|
|
58
|
+
});
|
|
59
|
+
return p.isCancel(result) ? "cancel" : result;
|
|
60
|
+
}
|
|
61
|
+
async function promptStartStep() {
|
|
62
|
+
return console.info(), console.info(pc.gray("What would you like to do?")), console.info(), promptSelect("Select starting point:", [{
|
|
63
|
+
value: "full",
|
|
64
|
+
label: "Complete setup",
|
|
65
|
+
hint: "Run through all setup steps"
|
|
66
|
+
}, {
|
|
67
|
+
value: "prerequisites",
|
|
68
|
+
label: "Check prerequisites",
|
|
69
|
+
hint: "Verify bun, docker, git, etc."
|
|
70
|
+
}, {
|
|
71
|
+
value: "identity",
|
|
72
|
+
label: "Project identity",
|
|
73
|
+
hint: "Customize app name and bundle ID"
|
|
74
|
+
}, {
|
|
75
|
+
value: "ports",
|
|
76
|
+
label: "Check ports",
|
|
77
|
+
hint: "Verify required ports are available"
|
|
78
|
+
}, {
|
|
79
|
+
value: "eject",
|
|
80
|
+
label: "Eject from monorepo",
|
|
81
|
+
hint: "Remove ./packages, use published versions"
|
|
82
|
+
}, {
|
|
83
|
+
value: "production",
|
|
84
|
+
label: "Production deployment",
|
|
85
|
+
hint: "Configure production environment and deployment"
|
|
86
|
+
}]);
|
|
87
|
+
}
|
|
88
|
+
async function promptOldSelect(message, options) {
|
|
89
|
+
var result = await p.select({
|
|
90
|
+
message,
|
|
91
|
+
options
|
|
92
|
+
});
|
|
93
|
+
return p.isCancel(result) && (p.cancel("Operation cancelled."), process.exit(0)), result;
|
|
94
|
+
}
|
|
95
|
+
function showSpinner(message) {
|
|
96
|
+
var s = p.spinner();
|
|
97
|
+
return s.start(message), s;
|
|
98
|
+
}
|
|
99
|
+
function showError(message) {
|
|
100
|
+
p.log.error(pc.red(message));
|
|
101
|
+
}
|
|
102
|
+
function showWarning(message) {
|
|
103
|
+
p.log.warning(pc.yellow(message));
|
|
104
|
+
}
|
|
105
|
+
function showSuccess(message) {
|
|
106
|
+
p.log.success(pc.green(message));
|
|
107
|
+
}
|
|
108
|
+
function showInfo(message) {
|
|
109
|
+
p.log.info(pc.blue(message));
|
|
110
|
+
}
|
|
111
|
+
function showStep(message) {
|
|
112
|
+
p.log.step(message);
|
|
113
|
+
}
|
|
114
|
+
export { confirmContinue, displayOutro, displayPortConflicts, displayPrerequisites, displayWelcome, promptOldSelect, promptPassword, promptSelect, promptStartStep, promptText, showError, showInfo, showSpinner, showStep, showSuccess, showWarning };
|
|
115
|
+
//# sourceMappingURL=prompts.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["p","pc","displayWelcome","projectName","arguments","length","console","info","intro","bgCyan","black","note","dim","cyan","displayOutro","message","outro","green","displayPrerequisites","checks","items","map","check","icon","installed","red","recommendation","bold","name","join","displayPortConflicts","conflicts","conflict","pid","yellow","port","confirmContinue","defaultValue","result","confirm","initialValue","isCancel","cancel","process","exit","promptText","placeholder","text","promptPassword","password","promptSelect","options","select","promptStartStep","gray","value","label","hint","promptOldSelect","showSpinner","s","spinner","start","showError","log","error","showWarning","warning","showSuccess","success","showInfo","blue","showStep","step"],"sources":["../../../src/utils/prompts.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|