@weirdfingers/baseboards 0.9.11 → 0.9.12

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/index.js CHANGED
@@ -3218,8 +3218,8 @@ var require_utils = __commonJS({
3218
3218
  }
3219
3219
  return ind;
3220
3220
  }
3221
- function removeDotSegments(path19) {
3222
- let input = path19;
3221
+ function removeDotSegments(path20) {
3222
+ let input = path20;
3223
3223
  const output = [];
3224
3224
  let nextSlash = -1;
3225
3225
  let len = 0;
@@ -3418,8 +3418,8 @@ var require_schemes = __commonJS({
3418
3418
  wsComponent.secure = void 0;
3419
3419
  }
3420
3420
  if (wsComponent.resourceName) {
3421
- const [path19, query] = wsComponent.resourceName.split("?");
3422
- wsComponent.path = path19 && path19 !== "/" ? path19 : void 0;
3421
+ const [path20, query] = wsComponent.resourceName.split("?");
3422
+ wsComponent.path = path20 && path20 !== "/" ? path20 : void 0;
3423
3423
  wsComponent.query = query;
3424
3424
  wsComponent.resourceName = void 0;
3425
3425
  }
@@ -6723,10 +6723,10 @@ function createRootPackageJsonContent(projectName, cliVersion) {
6723
6723
  dev: "baseboards dev",
6724
6724
  up: "baseboards up",
6725
6725
  "up:attach": "baseboards up --attach",
6726
- down: "baseboards down",
6727
- logs: "baseboards logs -f",
6728
- status: "baseboards status",
6729
- clean: "baseboards clean"
6726
+ down: "baseboards down .",
6727
+ logs: "baseboards logs . -f",
6728
+ status: "baseboards status .",
6729
+ clean: "baseboards clean ."
6730
6730
  },
6731
6731
  devDependencies: {
6732
6732
  "@weirdfingers/baseboards": `^${cliVersion}`
@@ -8381,18 +8381,39 @@ async function cleanupDockerVolumes(ctx) {
8381
8381
 
8382
8382
  // src/commands/down.ts
8383
8383
  import { execa as execa4 } from "execa";
8384
- import path7 from "path";
8384
+ import path8 from "path";
8385
8385
  import chalk4 from "chalk";
8386
8386
  import ora3 from "ora";
8387
+
8388
+ // src/utils/compose.ts
8389
+ import fs7 from "fs-extra";
8390
+ import path7 from "path";
8391
+ function getComposeFiles2(dir) {
8392
+ const files = ["compose.yaml"];
8393
+ if (fs7.existsSync(path7.join(dir, "compose.web.yaml"))) {
8394
+ files.push("compose.web.yaml");
8395
+ }
8396
+ return files;
8397
+ }
8398
+ function getComposeBaseArgs2(dir) {
8399
+ return [
8400
+ "compose",
8401
+ "--env-file",
8402
+ "docker/.env",
8403
+ ...getComposeFiles2(dir).flatMap((f) => ["-f", f])
8404
+ ];
8405
+ }
8406
+
8407
+ // src/commands/down.ts
8387
8408
  async function down(directory, options) {
8388
- const dir = path7.resolve(process.cwd(), directory);
8409
+ const dir = path8.resolve(process.cwd(), directory);
8389
8410
  if (!isScaffolded(dir)) {
8390
8411
  console.error(chalk4.red("\n\u274C Error: Not a Baseboards project"));
8391
8412
  console.log(chalk4.gray(" Run"), chalk4.cyan("baseboards up"), chalk4.gray("to scaffold a project first."));
8392
8413
  process.exit(1);
8393
8414
  }
8394
8415
  const spinner = ora3("Stopping services...").start();
8395
- const args = ["compose", "down"];
8416
+ const args = [...getComposeBaseArgs2(dir), "down"];
8396
8417
  if (options.volumes) {
8397
8418
  args.push("--volumes");
8398
8419
  }
@@ -8412,15 +8433,15 @@ async function down(directory, options) {
8412
8433
 
8413
8434
  // src/commands/dev.ts
8414
8435
  import { execa as execa5 } from "execa";
8415
- import path9 from "path";
8436
+ import path10 from "path";
8416
8437
  import chalk5 from "chalk";
8417
- import fs8 from "fs-extra";
8438
+ import fs9 from "fs-extra";
8418
8439
 
8419
8440
  // src/utils/mode-detection.ts
8420
8441
  import { exec } from "child_process";
8421
8442
  import { promisify } from "util";
8422
- import path8 from "path";
8423
- import fs7 from "fs-extra";
8443
+ import path9 from "path";
8444
+ import fs8 from "fs-extra";
8424
8445
  var execAsync2 = promisify(exec);
8425
8446
  async function detectProjectMode(projectDir) {
8426
8447
  try {
@@ -8431,15 +8452,15 @@ async function detectProjectMode(projectDir) {
8431
8452
  }
8432
8453
  } catch {
8433
8454
  }
8434
- const modeFile = path8.join(projectDir, ".baseboards-mode");
8435
- if (await fs7.pathExists(modeFile)) {
8436
- const mode = (await fs7.readFile(modeFile, "utf-8")).trim();
8455
+ const modeFile = path9.join(projectDir, ".baseboards-mode");
8456
+ if (await fs8.pathExists(modeFile)) {
8457
+ const mode = (await fs8.readFile(modeFile, "utf-8")).trim();
8437
8458
  if (mode === "default" || mode === "app-dev") {
8438
8459
  return mode;
8439
8460
  }
8440
8461
  }
8441
- const webNodeModules = path8.join(projectDir, "web", "node_modules");
8442
- if (await fs7.pathExists(webNodeModules)) {
8462
+ const webNodeModules = path9.join(projectDir, "web", "node_modules");
8463
+ if (await fs8.pathExists(webNodeModules)) {
8443
8464
  return "app-dev";
8444
8465
  }
8445
8466
  return "default";
@@ -8460,8 +8481,8 @@ function getDevCommand(pm) {
8460
8481
  }
8461
8482
  }
8462
8483
  async function dev(directory) {
8463
- const dir = path9.resolve(process.cwd(), directory);
8464
- const webDir = path9.join(dir, "web");
8484
+ const dir = path10.resolve(process.cwd(), directory);
8485
+ const webDir = path10.join(dir, "web");
8465
8486
  if (!isScaffolded(dir)) {
8466
8487
  console.error(chalk5.red("\n\u274C Error: Not a Baseboards project"));
8467
8488
  console.log(
@@ -8471,7 +8492,7 @@ async function dev(directory) {
8471
8492
  );
8472
8493
  process.exit(1);
8473
8494
  }
8474
- if (!await fs8.pathExists(webDir)) {
8495
+ if (!await fs9.pathExists(webDir)) {
8475
8496
  console.error(chalk5.red("\n\u274C Error: No web/ directory found"));
8476
8497
  console.log(
8477
8498
  chalk5.gray(" This project may not have a frontend component.")
@@ -8500,8 +8521,8 @@ async function dev(directory) {
8500
8521
  );
8501
8522
  process.exit(1);
8502
8523
  }
8503
- const nodeModulesDir = path9.join(webDir, "node_modules");
8504
- if (!await fs8.pathExists(nodeModulesDir)) {
8524
+ const nodeModulesDir = path10.join(webDir, "node_modules");
8525
+ if (!await fs9.pathExists(nodeModulesDir)) {
8505
8526
  console.error(chalk5.yellow("\n\u26A0\uFE0F Dependencies not installed"));
8506
8527
  console.log(
8507
8528
  chalk5.gray(" Run the following to install dependencies:")
@@ -8564,16 +8585,16 @@ async function dev(directory) {
8564
8585
 
8565
8586
  // src/commands/logs.ts
8566
8587
  import { execa as execa6 } from "execa";
8567
- import path10 from "path";
8588
+ import path11 from "path";
8568
8589
  import chalk6 from "chalk";
8569
8590
  async function logs(directory, services, options) {
8570
- const dir = path10.resolve(process.cwd(), directory);
8591
+ const dir = path11.resolve(process.cwd(), directory);
8571
8592
  if (!isScaffolded(dir)) {
8572
8593
  console.error(chalk6.red("\n\u274C Error: Not a Baseboards project"));
8573
8594
  console.log(chalk6.gray(" Run"), chalk6.cyan("baseboards up"), chalk6.gray("to scaffold a project first."));
8574
8595
  process.exit(1);
8575
8596
  }
8576
- const args = ["compose", "logs"];
8597
+ const args = [...getComposeBaseArgs2(dir), "logs"];
8577
8598
  if (options.follow) {
8578
8599
  args.push("--follow");
8579
8600
  }
@@ -8600,10 +8621,10 @@ async function logs(directory, services, options) {
8600
8621
 
8601
8622
  // src/commands/status.ts
8602
8623
  import { execa as execa7 } from "execa";
8603
- import path11 from "path";
8624
+ import path12 from "path";
8604
8625
  import chalk7 from "chalk";
8605
8626
  async function status(directory) {
8606
- const dir = path11.resolve(process.cwd(), directory);
8627
+ const dir = path12.resolve(process.cwd(), directory);
8607
8628
  if (!isScaffolded(dir)) {
8608
8629
  console.error(chalk7.red("\n\u274C Error: Not a Baseboards project"));
8609
8630
  console.log(chalk7.gray(" Run"), chalk7.cyan("baseboards up"), chalk7.gray("to scaffold a project first."));
@@ -8611,7 +8632,7 @@ async function status(directory) {
8611
8632
  }
8612
8633
  console.log(chalk7.blue.bold("\n\u{1F4CA} Service Status\n"));
8613
8634
  try {
8614
- await execa7("docker", ["compose", "ps"], {
8635
+ await execa7("docker", [...getComposeBaseArgs2(dir), "ps"], {
8615
8636
  cwd: dir,
8616
8637
  stdio: "inherit"
8617
8638
  });
@@ -8623,12 +8644,12 @@ async function status(directory) {
8623
8644
 
8624
8645
  // src/commands/clean.ts
8625
8646
  import { execa as execa8 } from "execa";
8626
- import path12 from "path";
8647
+ import path13 from "path";
8627
8648
  import chalk8 from "chalk";
8628
8649
  import ora4 from "ora";
8629
8650
  import prompts3 from "prompts";
8630
8651
  async function clean(directory, options) {
8631
- const dir = path12.resolve(process.cwd(), directory);
8652
+ const dir = path13.resolve(process.cwd(), directory);
8632
8653
  if (!isScaffolded(dir)) {
8633
8654
  console.error(chalk8.red("\n\u274C Error: Not a Baseboards project"));
8634
8655
  console.log(chalk8.gray(" Run"), chalk8.cyan("baseboards up"), chalk8.gray("to scaffold a project first."));
@@ -8652,12 +8673,12 @@ async function clean(directory, options) {
8652
8673
  }
8653
8674
  const spinner = ora4("Cleaning up...").start();
8654
8675
  try {
8655
- await execa8("docker", ["compose", "down", "--volumes", "--remove-orphans"], {
8676
+ await execa8("docker", [...getComposeBaseArgs2(dir), "down", "--volumes", "--remove-orphans"], {
8656
8677
  cwd: dir
8657
8678
  });
8658
8679
  if (options.hard) {
8659
8680
  try {
8660
- const { stdout } = await execa8("docker", ["compose", "images", "-q"], {
8681
+ const { stdout } = await execa8("docker", [...getComposeBaseArgs2(dir), "images", "-q"], {
8661
8682
  cwd: dir
8662
8683
  });
8663
8684
  const imageIds = stdout.split("\n").filter(Boolean);
@@ -8681,10 +8702,10 @@ async function clean(directory, options) {
8681
8702
  }
8682
8703
 
8683
8704
  // src/commands/update.ts
8684
- import path13 from "path";
8705
+ import path14 from "path";
8685
8706
  import chalk9 from "chalk";
8686
8707
  async function update(directory, options) {
8687
- const dir = path13.resolve(process.cwd(), directory);
8708
+ const dir = path14.resolve(process.cwd(), directory);
8688
8709
  if (!isScaffolded(dir)) {
8689
8710
  console.error(chalk9.red("\n\u274C Error: Not a Baseboards project"));
8690
8711
  console.log(chalk9.gray(" Run"), chalk9.cyan("baseboards up"), chalk9.gray("to scaffold a project first."));
@@ -8700,7 +8721,7 @@ async function update(directory, options) {
8700
8721
  }
8701
8722
 
8702
8723
  // src/commands/upgrade.ts
8703
- import path17 from "path";
8724
+ import path18 from "path";
8704
8725
  import chalk12 from "chalk";
8705
8726
  import prompts4 from "prompts";
8706
8727
 
@@ -8709,8 +8730,8 @@ import semver from "semver";
8709
8730
 
8710
8731
  // src/utils/compatibility-fetcher.ts
8711
8732
  var import_ajv = __toESM(require_ajv(), 1);
8712
- import fs9 from "fs-extra";
8713
- import path14 from "path";
8733
+ import fs10 from "fs-extra";
8734
+ import path15 from "path";
8714
8735
  import os from "os";
8715
8736
  import addFormats from "ajv-formats";
8716
8737
 
@@ -8773,7 +8794,7 @@ var compatibility_manifest_schema_default = {
8773
8794
 
8774
8795
  // src/utils/compatibility-fetcher.ts
8775
8796
  var GITHUB_REPO = "weirdfingers/boards";
8776
- var CACHE_DIR = path14.join(os.homedir(), ".baseboards", "compatibility");
8797
+ var CACHE_DIR = path15.join(os.homedir(), ".baseboards", "compatibility");
8777
8798
  var ajv = new import_ajv.default({ strict: false });
8778
8799
  addFormats(ajv);
8779
8800
  var validateManifest = ajv.compile(compatibility_manifest_schema_default);
@@ -8821,31 +8842,31 @@ function getManifestUrl(version) {
8821
8842
  }
8822
8843
  async function loadFromCache(version) {
8823
8844
  const cachePath = getCachePath(version);
8824
- if (!await fs9.pathExists(cachePath)) {
8845
+ if (!await fs10.pathExists(cachePath)) {
8825
8846
  return null;
8826
8847
  }
8827
8848
  try {
8828
- const content = await fs9.readFile(cachePath, "utf-8");
8849
+ const content = await fs10.readFile(cachePath, "utf-8");
8829
8850
  const manifest = JSON.parse(content);
8830
8851
  if (!validateManifest(manifest)) {
8831
- await fs9.remove(cachePath);
8852
+ await fs10.remove(cachePath);
8832
8853
  return null;
8833
8854
  }
8834
8855
  return manifest;
8835
8856
  } catch (error) {
8836
- await fs9.remove(cachePath).catch(() => {
8857
+ await fs10.remove(cachePath).catch(() => {
8837
8858
  });
8838
8859
  return null;
8839
8860
  }
8840
8861
  }
8841
8862
  async function saveToCache(version, manifest) {
8842
8863
  const cachePath = getCachePath(version);
8843
- await fs9.ensureDir(CACHE_DIR);
8844
- await fs9.writeFile(cachePath, JSON.stringify(manifest, null, 2), "utf-8");
8864
+ await fs10.ensureDir(CACHE_DIR);
8865
+ await fs10.writeFile(cachePath, JSON.stringify(manifest, null, 2), "utf-8");
8845
8866
  }
8846
8867
  function getCachePath(version) {
8847
8868
  const cleanVersion = version.replace(/^v/, "");
8848
- return path14.join(CACHE_DIR, `compatibility-${cleanVersion}.json`);
8869
+ return path15.join(CACHE_DIR, `compatibility-${cleanVersion}.json`);
8849
8870
  }
8850
8871
 
8851
8872
  // src/utils/compatibility-checker.ts
@@ -8897,8 +8918,8 @@ function isVersionAffected(version, affectedRange) {
8897
8918
  }
8898
8919
 
8899
8920
  // src/commands/upgrade-default.ts
8900
- import path15 from "path";
8901
- import fs10 from "fs-extra";
8921
+ import path16 from "path";
8922
+ import fs11 from "fs-extra";
8902
8923
  import chalk10 from "chalk";
8903
8924
  import { execa as execa9 } from "execa";
8904
8925
  import ora5 from "ora";
@@ -8939,21 +8960,21 @@ async function upgradeDefaultMode(projectDir, currentVersion, targetVersion) {
8939
8960
  }
8940
8961
  }
8941
8962
  async function updateWebPackageJson(projectDir, version) {
8942
- const packageJsonPath = path15.join(projectDir, "web", "package.json");
8943
- const packageJson2 = await fs10.readJson(packageJsonPath);
8963
+ const packageJsonPath = path16.join(projectDir, "web", "package.json");
8964
+ const packageJson2 = await fs11.readJson(packageJsonPath);
8944
8965
  if (packageJson2.dependencies && packageJson2.dependencies["@weirdfingers/boards"]) {
8945
8966
  packageJson2.dependencies["@weirdfingers/boards"] = version;
8946
8967
  }
8947
- await fs10.writeJson(packageJsonPath, packageJson2, { spaces: 2 });
8968
+ await fs11.writeJson(packageJsonPath, packageJson2, { spaces: 2 });
8948
8969
  }
8949
8970
  async function updateEnvVersion(projectDir, version) {
8950
- const envPath = path15.join(projectDir, "docker", ".env");
8951
- let content = await fs10.readFile(envPath, "utf-8");
8971
+ const envPath = path16.join(projectDir, "docker", ".env");
8972
+ let content = await fs11.readFile(envPath, "utf-8");
8952
8973
  content = content.replace(
8953
8974
  /^BACKEND_VERSION=.*/m,
8954
8975
  `BACKEND_VERSION=${version}`
8955
8976
  );
8956
- await fs10.writeFile(envPath, content, "utf-8");
8977
+ await fs11.writeFile(envPath, content, "utf-8");
8957
8978
  }
8958
8979
  async function waitForHealth(projectDir, services) {
8959
8980
  const spinner = ora5("Waiting for services to be healthy...").start();
@@ -9006,8 +9027,8 @@ function printUpgradeSuccess(projectDir, version) {
9006
9027
  console.log(chalk10.gray(" All services are running and healthy.\n"));
9007
9028
  console.log(chalk10.gray("Next steps:"));
9008
9029
  console.log(chalk10.gray(` \u2022 Check release notes: https://github.com/weirdfingers/boards/releases/tag/v${version}`));
9009
- console.log(chalk10.gray(` \u2022 View logs: baseboards logs ${path15.basename(projectDir)}`));
9010
- console.log(chalk10.gray(` \u2022 Check status: baseboards status ${path15.basename(projectDir)}
9030
+ console.log(chalk10.gray(` \u2022 View logs: baseboards logs ${path16.basename(projectDir)}`));
9031
+ console.log(chalk10.gray(` \u2022 Check status: baseboards status ${path16.basename(projectDir)}
9011
9032
  `));
9012
9033
  }
9013
9034
  async function execAsync3(command, options) {
@@ -9016,8 +9037,8 @@ async function execAsync3(command, options) {
9016
9037
  }
9017
9038
 
9018
9039
  // src/commands/upgrade-app-dev.ts
9019
- import path16 from "path";
9020
- import fs11 from "fs-extra";
9040
+ import path17 from "path";
9041
+ import fs12 from "fs-extra";
9021
9042
  import chalk11 from "chalk";
9022
9043
  import { execa as execa10 } from "execa";
9023
9044
  import ora6 from "ora";
@@ -9053,22 +9074,22 @@ async function upgradeAppDevMode(projectDir, currentVersion, targetVersion) {
9053
9074
  }
9054
9075
  }
9055
9076
  async function updateEnvVersion2(projectDir, version) {
9056
- const envPath = path16.join(projectDir, "docker", ".env");
9057
- let content = await fs11.readFile(envPath, "utf-8");
9077
+ const envPath = path17.join(projectDir, "docker", ".env");
9078
+ let content = await fs12.readFile(envPath, "utf-8");
9058
9079
  content = content.replace(
9059
9080
  /^BACKEND_VERSION=.*/m,
9060
9081
  `BACKEND_VERSION=${version}`
9061
9082
  );
9062
- await fs11.writeFile(envPath, content, "utf-8");
9083
+ await fs12.writeFile(envPath, content, "utf-8");
9063
9084
  }
9064
9085
  async function printAppDevUpgradeInstructions(projectDir, oldVersion, newVersion) {
9065
- const webDir = path16.join(projectDir, "web");
9086
+ const webDir = path17.join(projectDir, "web");
9066
9087
  const packageManager = await detectPackageManager(webDir);
9067
9088
  const updateCommand = packageManager === "npm" ? `npm install @weirdfingers/boards@${newVersion}` : packageManager === "yarn" ? `yarn upgrade @weirdfingers/boards@${newVersion}` : packageManager === "bun" ? `bun update @weirdfingers/boards@${newVersion}` : `pnpm update @weirdfingers/boards@${newVersion}`;
9068
9089
  console.log(chalk11.yellow("\u26A0\uFE0F Frontend requires manual upgrade:\n"));
9069
9090
  console.log(chalk11.gray(" 1. Stop your dev server (Ctrl+C if running)\n"));
9070
9091
  console.log(chalk11.gray(" 2. Update the frontend package:\n"));
9071
- console.log(chalk11.cyan(` cd ${path16.basename(projectDir)}/web`));
9092
+ console.log(chalk11.cyan(` cd ${path17.basename(projectDir)}/web`));
9072
9093
  console.log(chalk11.cyan(` ${updateCommand}
9073
9094
  `));
9074
9095
  console.log(chalk11.gray(" 3. Check for breaking changes:\n"));
@@ -9084,8 +9105,8 @@ async function printAppDevUpgradeInstructions(projectDir, oldVersion, newVersion
9084
9105
  console.log(chalk11.gray(" Consider committing before updating dependencies.\n"));
9085
9106
  }
9086
9107
  } catch (error) {
9087
- const gitDir = path16.join(webDir, ".git");
9088
- if (!fs11.existsSync(gitDir)) {
9108
+ const gitDir = path17.join(webDir, ".git");
9109
+ if (!fs12.existsSync(gitDir)) {
9089
9110
  console.log(chalk11.gray(" Skipping git status check: web/ is not a git repository."));
9090
9111
  } else {
9091
9112
  console.log(
@@ -9145,7 +9166,7 @@ async function waitForHealth2(projectDir, services) {
9145
9166
 
9146
9167
  // src/commands/upgrade.ts
9147
9168
  async function upgrade(directory, options) {
9148
- const dir = path17.resolve(process.cwd(), directory);
9169
+ const dir = path18.resolve(process.cwd(), directory);
9149
9170
  if (!isScaffolded(dir)) {
9150
9171
  console.error(chalk12.red("\n\u274C Error: Not a Baseboards project"));
9151
9172
  console.log(chalk12.gray(" Run"), chalk12.cyan("baseboards up"), chalk12.gray("to scaffold a project first."));
@@ -9234,11 +9255,11 @@ async function getLatestVersion() {
9234
9255
  }
9235
9256
 
9236
9257
  // src/commands/doctor.ts
9237
- import path18 from "path";
9238
- import fs12 from "fs-extra";
9258
+ import path19 from "path";
9259
+ import fs13 from "fs-extra";
9239
9260
  import chalk13 from "chalk";
9240
9261
  async function doctor(directory) {
9241
- const dir = path18.resolve(process.cwd(), directory);
9262
+ const dir = path19.resolve(process.cwd(), directory);
9242
9263
  console.log(chalk13.blue.bold("\n\u{1FA7A} Baseboards Diagnostics\n"));
9243
9264
  console.log(chalk13.cyan("CLI Version:"), getCliVersion());
9244
9265
  console.log(chalk13.cyan("\n\u{1F4CB} Prerequisites:"));
@@ -9271,38 +9292,38 @@ async function doctor(directory) {
9271
9292
  );
9272
9293
  if (scaffolded) {
9273
9294
  console.log(chalk13.gray(" Directory:"), dir);
9274
- const webPkg = path18.join(dir, "web/package.json");
9275
- const apiPkg = path18.join(dir, "api/pyproject.toml");
9276
- const composeFile = path18.join(dir, "compose.yaml");
9295
+ const webPkg = path19.join(dir, "web/package.json");
9296
+ const apiPkg = path19.join(dir, "api/pyproject.toml");
9297
+ const composeFile = path19.join(dir, "compose.yaml");
9277
9298
  console.log(
9278
9299
  chalk13.gray(" Web package:"),
9279
- fs12.existsSync(webPkg) ? chalk13.green("\u2713") : chalk13.red("\u2717")
9300
+ fs13.existsSync(webPkg) ? chalk13.green("\u2713") : chalk13.red("\u2717")
9280
9301
  );
9281
9302
  console.log(
9282
9303
  chalk13.gray(" API package:"),
9283
- fs12.existsSync(apiPkg) ? chalk13.green("\u2713") : chalk13.red("\u2717")
9304
+ fs13.existsSync(apiPkg) ? chalk13.green("\u2713") : chalk13.red("\u2717")
9284
9305
  );
9285
9306
  console.log(
9286
9307
  chalk13.gray(" Compose file:"),
9287
- fs12.existsSync(composeFile) ? chalk13.green("\u2713") : chalk13.red("\u2717")
9308
+ fs13.existsSync(composeFile) ? chalk13.green("\u2713") : chalk13.red("\u2717")
9288
9309
  );
9289
9310
  console.log(chalk13.cyan("\n\u{1F510} Environment:"));
9290
- const webEnv = path18.join(dir, "web/.env");
9291
- const apiEnv = path18.join(dir, "api/.env");
9292
- const dockerEnv = path18.join(dir, "docker/.env");
9311
+ const webEnv = path19.join(dir, "web/.env");
9312
+ const apiEnv = path19.join(dir, "api/.env");
9313
+ const dockerEnv = path19.join(dir, "docker/.env");
9293
9314
  console.log(
9294
9315
  chalk13.gray(" Web .env:"),
9295
- fs12.existsSync(webEnv) ? chalk13.green("\u2713") : chalk13.yellow("\u2717 Missing")
9316
+ fs13.existsSync(webEnv) ? chalk13.green("\u2713") : chalk13.yellow("\u2717 Missing")
9296
9317
  );
9297
9318
  console.log(
9298
9319
  chalk13.gray(" API .env:"),
9299
- fs12.existsSync(apiEnv) ? chalk13.green("\u2713") : chalk13.yellow("\u2717 Missing")
9320
+ fs13.existsSync(apiEnv) ? chalk13.green("\u2713") : chalk13.yellow("\u2717 Missing")
9300
9321
  );
9301
9322
  console.log(
9302
9323
  chalk13.gray(" Docker .env:"),
9303
- fs12.existsSync(dockerEnv) ? chalk13.green("\u2713") : chalk13.yellow("\u2717 Missing")
9324
+ fs13.existsSync(dockerEnv) ? chalk13.green("\u2713") : chalk13.yellow("\u2717 Missing")
9304
9325
  );
9305
- if (fs12.existsSync(apiEnv)) {
9326
+ if (fs13.existsSync(apiEnv)) {
9306
9327
  const missingKeys = detectMissingProviderKeys(apiEnv);
9307
9328
  if (missingKeys.length > 0) {
9308
9329
  console.log(
@@ -9315,20 +9336,20 @@ async function doctor(directory) {
9315
9336
  }
9316
9337
  }
9317
9338
  console.log(chalk13.cyan("\n\u2699\uFE0F Configuration:"));
9318
- const generatorsYaml = path18.join(dir, "api/config/generators.yaml");
9319
- const storageYaml = path18.join(dir, "api/config/storage_config.yaml");
9339
+ const generatorsYaml = path19.join(dir, "api/config/generators.yaml");
9340
+ const storageYaml = path19.join(dir, "api/config/storage_config.yaml");
9320
9341
  console.log(
9321
9342
  chalk13.gray(" generators.yaml:"),
9322
- fs12.existsSync(generatorsYaml) ? chalk13.green("\u2713") : chalk13.yellow("\u2717 Missing")
9343
+ fs13.existsSync(generatorsYaml) ? chalk13.green("\u2713") : chalk13.yellow("\u2717 Missing")
9323
9344
  );
9324
9345
  console.log(
9325
9346
  chalk13.gray(" storage_config.yaml:"),
9326
- fs12.existsSync(storageYaml) ? chalk13.green("\u2713") : chalk13.yellow("\u2717 Missing")
9347
+ fs13.existsSync(storageYaml) ? chalk13.green("\u2713") : chalk13.yellow("\u2717 Missing")
9327
9348
  );
9328
- const storageDir = path18.join(dir, "data/storage");
9349
+ const storageDir = path19.join(dir, "data/storage");
9329
9350
  console.log(
9330
9351
  chalk13.gray(" Storage directory:"),
9331
- fs12.existsSync(storageDir) ? chalk13.green("\u2713") : chalk13.yellow("\u2717 Missing")
9352
+ fs13.existsSync(storageDir) ? chalk13.green("\u2713") : chalk13.yellow("\u2717 Missing")
9332
9353
  );
9333
9354
  }
9334
9355
  console.log(chalk13.cyan("\n\u{1F4A1} Recommendations:"));