@cimplify/cli 0.15.3 → 0.17.0

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.
Files changed (120) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +2 -2
  3. package/dist/add-C3DPTVH3.mjs +140 -0
  4. package/dist/{add-KRIIKAS4.mjs → add-JX2GXWXU.mjs} +4 -4
  5. package/dist/ai-HUZTVJIQ.mjs +17 -0
  6. package/dist/{assets-CWB72PZG.mjs → assets-MPESJSUV.mjs} +12 -7
  7. package/dist/{auth-step-up-Z6KOTTV7.mjs → auth-step-up-VJAFGSW6.mjs} +5 -5
  8. package/dist/build-E7RRQWVF.mjs +616 -0
  9. package/dist/{cancel-ZHVVILOU.mjs → cancel-UMKR274A.mjs} +4 -4
  10. package/dist/capture-TK4NIUYM.mjs +69 -0
  11. package/dist/chunk-25ZPFHLF.mjs +51 -0
  12. package/dist/{chunk-OLZKNUMK.mjs → chunk-3LJG22FS.mjs} +6 -6
  13. package/dist/chunk-454RQ6NR.mjs +10614 -0
  14. package/dist/{chunk-O2TO2J4I.mjs → chunk-6CQMRZ2W.mjs} +2 -2
  15. package/dist/chunk-6KKLF5KG.mjs +32 -0
  16. package/dist/chunk-74QZQSCL.mjs +84 -0
  17. package/dist/chunk-BGM7CH5G.mjs +81 -0
  18. package/dist/chunk-BTNVYAC4.mjs +5557 -0
  19. package/dist/{chunk-I2UP7YTG.mjs → chunk-ECGDRU56.mjs} +1 -1
  20. package/dist/{chunk-UTD34C2H.mjs → chunk-EOOOXVHR.mjs} +2 -4
  21. package/dist/chunk-EYEMPIMP.mjs +74 -0
  22. package/dist/{chunk-3RPR33MO.mjs → chunk-FV273ECI.mjs} +11 -7
  23. package/dist/{chunk-MLE4MVYC.mjs → chunk-GGPN4QYQ.mjs} +2 -2
  24. package/dist/chunk-HQPZQIWW.mjs +1456 -0
  25. package/dist/{chunk-3QUK5BPY.mjs → chunk-I7GEHLDD.mjs} +16 -1
  26. package/dist/chunk-ITDAICBY.mjs +363 -0
  27. package/dist/chunk-JKECUAAV.mjs +2169 -0
  28. package/dist/chunk-JNCEKW2Y.mjs +41 -0
  29. package/dist/chunk-JTYVGORV.mjs +101 -0
  30. package/dist/chunk-KQNZKV6E.mjs +535 -0
  31. package/dist/chunk-LJDIQ4PF.mjs +6463 -0
  32. package/dist/{chunk-2MKZKUVH.mjs → chunk-LLRUOIMU.mjs} +1 -2
  33. package/dist/chunk-MJMRIMR7.mjs +86 -0
  34. package/dist/chunk-N2WZJX5P.mjs +1989 -0
  35. package/dist/chunk-NEB372WD.mjs +1152 -0
  36. package/dist/chunk-OPX7KPOU.mjs +68 -0
  37. package/dist/chunk-PHUBMRAS.mjs +623 -0
  38. package/dist/chunk-PQBALZUH.mjs +1941 -0
  39. package/dist/chunk-PVW5D5AW.mjs +42 -0
  40. package/dist/{chunk-LZEG3FEY.mjs → chunk-QQWYQ2HS.mjs} +7 -7
  41. package/dist/chunk-QVR6V6QP.mjs +46 -0
  42. package/dist/chunk-SGT5IJVW.mjs +28 -0
  43. package/dist/chunk-SZXO6YSX.mjs +502 -0
  44. package/dist/chunk-THATLMEX.mjs +1227 -0
  45. package/dist/chunk-TYR4Q37L.mjs +391 -0
  46. package/dist/{chunk-DMLQBAGC.mjs → chunk-V3R2NYQR.mjs} +1 -1
  47. package/dist/chunk-VHK7WBO3.mjs +189 -0
  48. package/dist/{chunk-TH4XENKH.mjs → chunk-XASDB7YS.mjs} +1 -1
  49. package/dist/{chunk-NYXA6X56.mjs → chunk-XBQ4LO2N.mjs} +31 -11
  50. package/dist/chunk-XF3MGADK.mjs +2946 -0
  51. package/dist/{chunk-5KYR6WJB.mjs → chunk-XQAHREKO.mjs} +17 -1
  52. package/dist/chunk-XZG3DTXV.mjs +696 -0
  53. package/dist/chunk-Y4YGR2NY.mjs +52 -0
  54. package/dist/{chunk-LJEKKFC7.mjs → chunk-YS2JUNSQ.mjs} +19 -11
  55. package/dist/chunk-ZG7NJLXN.mjs +104 -0
  56. package/dist/create-3TGG7B3X.mjs +10 -0
  57. package/dist/credits-MEG7V5DI.mjs +33 -0
  58. package/dist/{deploy-STWZ3OSM.mjs → deploy-CNRORHJ7.mjs} +11 -11
  59. package/dist/dev-RXSBY7U4.mjs +8 -0
  60. package/dist/dev-YLYC6B7R.mjs +401 -0
  61. package/dist/dispatcher.mjs +131 -30
  62. package/dist/{doctor-3RW3OGZJ.mjs → doctor-XRTNG2IT.mjs} +13 -21
  63. package/dist/{domains-FTNK4IKY.mjs → domains-JIHFKDWR.mjs} +6 -6
  64. package/dist/engine-runtime-fetch-QVKJVC3W.mjs +10 -0
  65. package/dist/{env-TNCYUAMT.mjs → env-LJ3DCAA5.mjs} +7 -7
  66. package/dist/env-R72AHBT2.mjs +19 -0
  67. package/dist/explain-32RSXEXC.mjs +251 -0
  68. package/dist/inspect-PYLYN45K.mjs +86 -0
  69. package/dist/{inspect-X3M7WSTL.mjs → inspect-ZOLZHNSZ.mjs} +28 -13
  70. package/dist/introspect-27MMTACH.mjs +9 -0
  71. package/dist/kernel-IC4ZC54Z.mjs +662 -0
  72. package/dist/kernel-plugin.js +6862 -0
  73. package/dist/keys-WKOQ4KQE.mjs +71 -0
  74. package/dist/lines-I6ZB2IOU.mjs +56 -0
  75. package/dist/{link-76Z6V6CJ.mjs → link-TE2FUX74.mjs} +6 -6
  76. package/dist/{lint-DDZ7HUQN.mjs → lint-735IPMC6.mjs} +2 -2
  77. package/dist/{list-2MFOQKKQ.mjs → list-CHYY2P4T.mjs} +7 -11
  78. package/dist/lock-XVR3RRZ6.mjs +57 -0
  79. package/dist/{login-RLMDEWAL.mjs → login-LW7CHZDZ.mjs} +10 -8
  80. package/dist/{logout-Z57X6HPE.mjs → logout-6U6OP5DM.mjs} +2 -2
  81. package/dist/{logs-TNDM4RFE.mjs → logs-HKH4H6PT.mjs} +5 -5
  82. package/dist/logs-SCQC5HNO.mjs +44 -0
  83. package/dist/mcp-VRHQOEGG.mjs +1077 -0
  84. package/dist/{mock-EVER34IX.mjs → mock-5H3CVPHC.mjs} +2 -2
  85. package/dist/outdated-T7QW6F3Z.mjs +58 -0
  86. package/dist/port-24R7ZNP4.mjs +2408 -0
  87. package/dist/{projects-YL4T24VV.mjs → projects-HYITVEXS.mjs} +6 -6
  88. package/dist/publish-DZRR5A5X.mjs +20 -0
  89. package/dist/remix-4HVXRIEB.mjs +125 -0
  90. package/dist/repo-FG3CMZQS.mjs +9 -0
  91. package/dist/report-M7F4ZYP7.mjs +2 -0
  92. package/dist/rollback-H7Q4XYGX.mjs +43 -0
  93. package/dist/{rollback-47VQ4HJK.mjs → rollback-OM64O67F.mjs} +6 -6
  94. package/dist/scene-QTHT3ZPL.mjs +324 -0
  95. package/dist/{status-TWPOMWNA.mjs → status-5D4RR3MM.mjs} +5 -5
  96. package/dist/status-AKI6E3JK.mjs +18 -0
  97. package/dist/test-W6MURUGZ.mjs +233 -0
  98. package/dist/testers-EI32JB5F.mjs +49 -0
  99. package/dist/{unlink-H3BO3DOQ.mjs → unlink-BND47IWW.mjs} +2 -2
  100. package/dist/{update-FLY46XI3.mjs → update-XKKFREKH.mjs} +4 -4
  101. package/dist/{whoami-CQPPARRS.mjs → whoami-WHLGCVRC.mjs} +3 -3
  102. package/dist/workshop-F2T4IDOU.mjs +1703 -0
  103. package/package.json +11 -7
  104. package/templates/storefront-auto/app/products/[slug]/page.tsx +1 -1
  105. package/templates/storefront-auto/package.json +1 -1
  106. package/templates/storefront-bakery/package.json +1 -1
  107. package/templates/storefront-fashion/app/products/[slug]/page.tsx +1 -1
  108. package/templates/storefront-fashion/package.json +1 -1
  109. package/templates/storefront-grocery/package.json +1 -1
  110. package/templates/storefront-pharmacy/app/products/[slug]/page.tsx +1 -1
  111. package/templates/storefront-pharmacy/package.json +1 -1
  112. package/templates/storefront-restaurant/package.json +1 -1
  113. package/templates/storefront-retail/app/products/[slug]/page.tsx +1 -1
  114. package/templates/storefront-retail/package.json +1 -1
  115. package/templates/storefront-services/package.json +1 -1
  116. package/dist/chunk-ARIDYKLO.mjs +0 -6463
  117. package/dist/dev-7O65HY6C.mjs +0 -8
  118. package/dist/explain-DLRUUCNS.mjs +0 -251
  119. package/dist/introspect-RC265ACF.mjs +0 -9
  120. package/dist/repo-UUT3AZ3L.mjs +0 -9
@@ -0,0 +1,52 @@
1
+ #!/usr/bin/env node
2
+ import { loadScript, parseDevice, DEFAULT_DEVICE, DEFAULT_SEED, DEFAULT_FRAMES } from './chunk-SZXO6YSX.mjs';
3
+ import { EMPTY_READINESS } from './chunk-XF3MGADK.mjs';
4
+ import { existsSync } from 'fs';
5
+ import path from 'path';
6
+
7
+ var READINESS_GATE = "readiness";
8
+ var READINESS_SCRIPTS = ["test/readiness.json", "test/readiness.ts"];
9
+ function kib(bytes) {
10
+ return `${Math.round(bytes / 1024)} KiB`;
11
+ }
12
+ function readinessSummary(readiness) {
13
+ if (readiness.first_frame < 0) return "readiness: the game presented no frame through the game API";
14
+ return `readiness: first frame at frame ${readiness.first_frame} (${Math.round(readiness.first_frame_ms)} ms wall), ${kib(readiness.bytes_before_first_play)} before first play, ${kib(readiness.bytes_total)} total, ${readiness.stall_frames} stall frames in ${readiness.frames}`;
15
+ }
16
+ function readinessScript(root) {
17
+ for (const name of READINESS_SCRIPTS) {
18
+ const file = path.join(root, name);
19
+ if (existsSync(file)) return file;
20
+ }
21
+ return null;
22
+ }
23
+ function judgeReadiness(readiness, maxStalls) {
24
+ const summary = readinessSummary(readiness);
25
+ if (maxStalls !== null && readiness.stall_frames > maxStalls) {
26
+ return { name: READINESS_GATE, status: "failed", detail: `${summary}; the script allows ${maxStalls} (max_stalls), first stalls at frames ${readiness.stalls.slice(0, 8).join(", ")}` };
27
+ }
28
+ return { name: READINESS_GATE, status: "passed", detail: maxStalls === null ? `${summary}; set max_stalls in the script to gate on stalls` : summary };
29
+ }
30
+ async function readinessGate(root, setup, run) {
31
+ const file = readinessScript(root);
32
+ if (file === null) return { name: READINESS_GATE, status: "skipped", detail: `add ${READINESS_SCRIPTS[0]} (an input script along a recorded path) to measure time to first frame, bytes before first play and streaming stalls` };
33
+ const script = await loadScript(file);
34
+ const device = parseDevice(script.devices?.[0] ?? DEFAULT_DEVICE);
35
+ if (typeof device === "string") throw new Error(device);
36
+ const request = {
37
+ device,
38
+ backend: "swiftshader",
39
+ seed: script.seed ?? DEFAULT_SEED,
40
+ scene: script.scene,
41
+ frame: DEFAULT_FRAMES,
42
+ script,
43
+ scriptPath: path.relative(root, file),
44
+ screenshots: false,
45
+ inspect: false
46
+ };
47
+ const frames = await run(setup, request);
48
+ const readiness = frames[frames.length - 1]?.sidecar.readiness ?? EMPTY_READINESS;
49
+ return judgeReadiness(readiness, script.max_stalls ?? null);
50
+ }
51
+
52
+ export { READINESS_GATE, readinessGate, readinessScript, readinessSummary };
@@ -1,10 +1,10 @@
1
1
  #!/usr/bin/env node
2
- import { parseEnvFile } from './chunk-I2UP7YTG.mjs';
3
- import { package_default } from './chunk-3RPR33MO.mjs';
4
- import { gitDetectRoot, gitCurrentBranch, gitCurrentSha, gitStatusPorcelain } from './chunk-UTD34C2H.mjs';
5
- import { parseArgs } from './chunk-5KYR6WJB.mjs';
6
- import { readAuthOrNull, readProjectLinkOrNull, readProjectState } from './chunk-MLE4MVYC.mjs';
7
- import { bold, dim, yellow, green, info, result, red } from './chunk-3QUK5BPY.mjs';
2
+ import { parseEnvFile } from './chunk-ECGDRU56.mjs';
3
+ import { package_default } from './chunk-FV273ECI.mjs';
4
+ import { gitDetectRoot, gitCurrentBranch, gitCurrentSha, gitStatusPorcelain } from './chunk-EOOOXVHR.mjs';
5
+ import { parseArgs } from './chunk-XQAHREKO.mjs';
6
+ import { readAuthOrNull, readProjectLinkOrNull, readProjectState } from './chunk-GGPN4QYQ.mjs';
7
+ import { bold, dim, orange, green, info, result, red } from './chunk-I7GEHLDD.mjs';
8
8
  import { promises } from 'fs';
9
9
  import path from 'path';
10
10
 
@@ -33,7 +33,13 @@ async function findFirstExisting(cwd, candidates) {
33
33
  async function gatherAuth() {
34
34
  const auth = await readAuthOrNull();
35
35
  if (!auth) {
36
- return { logged_in: false, account_id: null, business_id: null, email: null, api_base_url: null };
36
+ return {
37
+ logged_in: false,
38
+ account_id: null,
39
+ business_id: null,
40
+ email: null,
41
+ api_base_url: null
42
+ };
37
43
  }
38
44
  return {
39
45
  logged_in: true,
@@ -199,7 +205,9 @@ function renderIntrospection(snapshot) {
199
205
  if (p.last_deployment) {
200
206
  const d = p.last_deployment;
201
207
  const shortSha = d.sha ? d.sha.slice(0, SHA_DISPLAY_LEN) : "?";
202
- out.push(` ${" ".repeat(LABEL_WIDTH)}last deploy: ${d.environment ?? "?"} \xB7 ${shortSha} \xB7 ${d.id}`);
208
+ out.push(
209
+ ` ${" ".repeat(LABEL_WIDTH)}last deploy: ${d.environment ?? "?"} \xB7 ${shortSha} \xB7 ${d.id}`
210
+ );
203
211
  }
204
212
  } else {
205
213
  out.push(` ${label("Project")}${check(false)} not linked ${dim("(cimplify link <id>)")}`);
@@ -231,8 +239,8 @@ function renderIntrospection(snapshot) {
231
239
  const nc = snapshot.next_config;
232
240
  if (nc.path) {
233
241
  const flag = nc.cache_components;
234
- const sigil = flag === true ? check(true) : flag === false ? yellow("!") : dim("?");
235
- const note = flag === true ? "cacheComponents: true" : flag === false ? "cacheComponents: false" : "cacheComponents not set";
242
+ const sigil = flag === true ? check(false) : check(true);
243
+ const note = flag === true ? "cacheComponents: true (storefronts use the ISR Previous Model)" : "ISR Previous Model (cacheComponents off)";
236
244
  out.push(` ${label("Next")}${sigil} ${note} ${dim(nc.path)}`);
237
245
  }
238
246
  if (snapshot.mock.seed) {
@@ -244,7 +252,7 @@ function renderIntrospection(snapshot) {
244
252
  }
245
253
  if (snapshot.git) {
246
254
  const g = snapshot.git;
247
- const dirty = g.dirty ? yellow("dirty") : green("clean");
255
+ const dirty = g.dirty ? orange("dirty") : green("clean");
248
256
  out.push(` ${label("Git")}${g.branch ?? "(no branch)"} \xB7 ${dirty}`);
249
257
  }
250
258
  return out;
@@ -0,0 +1,104 @@
1
+ #!/usr/bin/env node
2
+ import { MANIFEST_FILE, LOCKFILE, serializeLockfile, currentLockfile } from './chunk-HQPZQIWW.mjs';
3
+ import { quoteTomlString } from './chunk-KQNZKV6E.mjs';
4
+ import { PINNED_TYPESCRIPT_VERSION, PINNED_SDK_VERSION } from './chunk-BGM7CH5G.mjs';
5
+
6
+ // src/interactives/templates/common.ts
7
+ var VITEST_VERSION = "^4.1.10";
8
+ function packageJson(name) {
9
+ const pkg = {
10
+ name,
11
+ private: true,
12
+ type: "module",
13
+ scripts: { dev: "cimplify dev", test: "vitest run", check: "tsc --noEmit" },
14
+ dependencies: { "@cimplify/sdk": `^${PINNED_SDK_VERSION}` },
15
+ devDependencies: { typescript: PINNED_TYPESCRIPT_VERSION, vitest: VITEST_VERSION }
16
+ };
17
+ return `${JSON.stringify(pkg, null, 2)}
18
+ `;
19
+ }
20
+ var TSCONFIG = `{
21
+ "compilerOptions": {
22
+ "target": "ES2022",
23
+ "module": "ESNext",
24
+ "moduleResolution": "bundler",
25
+ "lib": ["ES2022", "DOM"],
26
+ "strict": true,
27
+ "noEmit": true,
28
+ "isolatedModules": true,
29
+ "skipLibCheck": true,
30
+ "types": []
31
+ },
32
+ "include": ["src", "tests"]
33
+ }
34
+ `;
35
+ var GITIGNORE = "node_modules\n.cimplify\n";
36
+ function manifest(title, spec) {
37
+ let out = `[interactive]
38
+ name = ${quoteTomlString(title)}
39
+ description = ${quoteTomlString(spec.description)}
40
+ category = "${spec.category}"
41
+
42
+ `;
43
+ out += `[profile]
44
+ kind = "${spec.profile}"
45
+ `;
46
+ if (spec.game) out += `game = "game_api"
47
+ `;
48
+ if (spec.engineFeatures !== void 0) out += `engine_features = [${spec.engineFeatures.map(quoteTomlString).join(", ")}]
49
+ `;
50
+ out += `
51
+ [entries]
52
+ client = "src/client.ts"
53
+ `;
54
+ if (spec.game) out += `conformance = "src/conformance.ts"
55
+ `;
56
+ const caps = Object.keys(spec.capabilities);
57
+ if (caps.length > 0) {
58
+ out += "\n[capabilities]\n";
59
+ for (const c of caps) out += `${quoteTomlString(c)} = ${quoteTomlString(spec.capabilities[c])}
60
+ `;
61
+ }
62
+ if (spec.economy) out += `
63
+ ${spec.economy}`;
64
+ if (spec.extraManifest) out += `
65
+ ${spec.extraManifest}`;
66
+ out += `
67
+ [rating]
68
+ violence = "none"
69
+ sexuality = "none"
70
+ language = "none"
71
+ fear = "none"
72
+ simulated_gambling = false
73
+
74
+ [delivery]
75
+ min_device_tier = "${spec.minDeviceTier ?? "low"}"
76
+ download_size = "2 MiB"
77
+
78
+ [[delivery.groups]]
79
+ name = "core"
80
+ before_play = true
81
+ assets = ["assets/core/**"]
82
+
83
+ [[delivery.groups]]
84
+ name = "extras"
85
+ assets = ["assets/**"]
86
+ `;
87
+ return out;
88
+ }
89
+ function titleFromName(name) {
90
+ return name.split(/[-_\s]+/).filter((w) => w.length > 0).map((w) => w[0].toUpperCase() + w.slice(1)).join(" ");
91
+ }
92
+ function materialize(name, spec) {
93
+ const title = titleFromName(name);
94
+ return [
95
+ { path: MANIFEST_FILE, content: manifest(title, spec) },
96
+ { path: LOCKFILE, content: serializeLockfile(currentLockfile()) },
97
+ { path: "package.json", content: packageJson(name) },
98
+ { path: "tsconfig.json", content: TSCONFIG },
99
+ { path: ".gitignore", content: GITIGNORE },
100
+ ...spec.files.map((f) => ({ path: f.path, content: f.content.replaceAll("__TITLE__", title) }))
101
+ ];
102
+ }
103
+
104
+ export { materialize, titleFromName };
@@ -0,0 +1,10 @@
1
+ #!/usr/bin/env node
2
+ export { createProject, run as default, parseTemplate } from './chunk-PQBALZUH.mjs';
3
+ import './chunk-ZG7NJLXN.mjs';
4
+ import './chunk-HQPZQIWW.mjs';
5
+ import './chunk-KQNZKV6E.mjs';
6
+ import './chunk-BGM7CH5G.mjs';
7
+ import './chunk-25ZPFHLF.mjs';
8
+ import './chunk-SGT5IJVW.mjs';
9
+ import './chunk-XQAHREKO.mjs';
10
+ import './chunk-I7GEHLDD.mjs';
@@ -0,0 +1,33 @@
1
+ #!/usr/bin/env node
2
+ import { requireInteractiveProject, buildLocal, renderDiagnostics } from './chunk-BTNVYAC4.mjs';
3
+ import './chunk-VHK7WBO3.mjs';
4
+ import './chunk-454RQ6NR.mjs';
5
+ import './chunk-JKECUAAV.mjs';
6
+ import './chunk-HQPZQIWW.mjs';
7
+ import './chunk-KQNZKV6E.mjs';
8
+ import './chunk-N2WZJX5P.mjs';
9
+ import './chunk-EYEMPIMP.mjs';
10
+ import './chunk-BGM7CH5G.mjs';
11
+ import './chunk-25ZPFHLF.mjs';
12
+ import './chunk-SGT5IJVW.mjs';
13
+ import './chunk-GGPN4QYQ.mjs';
14
+ import { info, dim, result } from './chunk-I7GEHLDD.mjs';
15
+
16
+ // src/interactives/commands/credits.ts
17
+ async function run() {
18
+ const root = process.cwd();
19
+ requireInteractiveProject(root, "credits");
20
+ const { result: built } = await buildLocal(root);
21
+ const credits = built.package?.credits ?? [];
22
+ if (built.package === null) {
23
+ for (const line of renderDiagnostics(built.diagnostics)) info(line);
24
+ }
25
+ for (const credit of credits) {
26
+ const tags = [credit.modified ? "modified" : null, credit.ai === void 0 ? null : credit.ai === "generated" ? "made with AI" : "AI-assisted"].filter((t) => t !== null);
27
+ info(`${credit.title} by ${credit.authors.join(", ")} ${dim(`(${credit.licence}${tags.length > 0 ? `; ${tags.join(", ")}` : ""})`)}`);
28
+ }
29
+ if (credits.length === 0) info(dim("no credits; add [[credits]] to interactive.toml or Workshop content with cimplify add"));
30
+ result(credits);
31
+ }
32
+
33
+ export { run as default };
@@ -1,15 +1,15 @@
1
1
  #!/usr/bin/env node
2
- import { detectPackageManager } from './chunk-OLZKNUMK.mjs';
3
- import { fetchRepoRecord, fetchCloneToken } from './chunk-LZEG3FEY.mjs';
4
- import { pollDeployment } from './chunk-O2TO2J4I.mjs';
5
- import './chunk-I2UP7YTG.mjs';
6
- import { promptYesNo } from './chunk-TH4XENKH.mjs';
7
- import { isManagedRemote, gitDetectRoot, gitStatusPorcelain, gitCurrentBranch, gitCurrentSha, gitGetRemoteUrl, gitPushToUrl, gitPush } from './chunk-UTD34C2H.mjs';
8
- import { isManagedRepoProvider, ENV_SCOPE, DEPLOY_TRIGGER, DEPLOYMENT_STATUS, TOKEN_PURPOSE } from './chunk-2MKZKUVH.mjs';
9
- import { parseArgs, flagBool, flagString } from './chunk-5KYR6WJB.mjs';
10
- import { ApiClient } from './chunk-NYXA6X56.mjs';
11
- import { readAuth, readProjectLink, writeProjectState } from './chunk-MLE4MVYC.mjs';
12
- import { info, dim, step, CliError, CLI_ERROR_CODE, success, result, EXIT_CODE } from './chunk-3QUK5BPY.mjs';
2
+ import { detectPackageManager } from './chunk-3LJG22FS.mjs';
3
+ import { fetchRepoRecord, fetchCloneToken } from './chunk-QQWYQ2HS.mjs';
4
+ import { pollDeployment } from './chunk-6CQMRZ2W.mjs';
5
+ import './chunk-ECGDRU56.mjs';
6
+ import { promptYesNo } from './chunk-XASDB7YS.mjs';
7
+ import { isManagedRemote, gitDetectRoot, gitStatusPorcelain, gitCurrentBranch, gitCurrentSha, gitGetRemoteUrl, gitPushToUrl, gitPush } from './chunk-EOOOXVHR.mjs';
8
+ import { isManagedRepoProvider, ENV_SCOPE, DEPLOY_TRIGGER, DEPLOYMENT_STATUS, TOKEN_PURPOSE } from './chunk-LLRUOIMU.mjs';
9
+ import { parseArgs, flagBool, flagString } from './chunk-XQAHREKO.mjs';
10
+ import { ApiClient } from './chunk-XBQ4LO2N.mjs';
11
+ import { readAuth, readProjectLink, writeProjectState } from './chunk-GGPN4QYQ.mjs';
12
+ import { info, dim, step, CliError, CLI_ERROR_CODE, success, result, EXIT_CODE } from './chunk-I7GEHLDD.mjs';
13
13
  import { spawn } from 'child_process';
14
14
  import { promises } from 'fs';
15
15
  import path from 'path';
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env node
2
+ export { run as default, detectPackageManager, mergeEnvEntries } from './chunk-3LJG22FS.mjs';
3
+ import './chunk-ECGDRU56.mjs';
4
+ import './chunk-LLRUOIMU.mjs';
5
+ import './chunk-XQAHREKO.mjs';
6
+ import './chunk-XBQ4LO2N.mjs';
7
+ import './chunk-GGPN4QYQ.mjs';
8
+ import './chunk-I7GEHLDD.mjs';