ph-cmd 4.1.0-dev.58 → 4.1.0-dev.59

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 (32) hide show
  1. package/dist/src/commands/__tests__/use.test.js +43 -23
  2. package/dist/src/commands/__tests__/use.test.js.map +1 -1
  3. package/dist/src/utils/constants.d.ts +53 -0
  4. package/dist/src/utils/constants.d.ts.map +1 -0
  5. package/dist/src/utils/constants.js +72 -0
  6. package/dist/src/utils/constants.js.map +1 -0
  7. package/dist/src/utils/create-global-project.d.ts +3 -0
  8. package/dist/src/utils/create-global-project.d.ts.map +1 -0
  9. package/dist/src/utils/create-global-project.js +28 -0
  10. package/dist/src/utils/create-global-project.js.map +1 -0
  11. package/dist/src/utils/dependencies.d.ts +4 -0
  12. package/dist/src/utils/dependencies.d.ts.map +1 -0
  13. package/dist/src/utils/dependencies.js +61 -0
  14. package/dist/src/utils/dependencies.js.map +1 -0
  15. package/dist/src/utils/help.d.ts +31 -0
  16. package/dist/src/utils/help.d.ts.map +1 -0
  17. package/dist/src/utils/help.js +72 -0
  18. package/dist/src/utils/help.js.map +1 -0
  19. package/dist/src/utils/index.d.ts +6 -130
  20. package/dist/src/utils/index.d.ts.map +1 -1
  21. package/dist/src/utils/index.js +5 -367
  22. package/dist/src/utils/index.js.map +1 -1
  23. package/dist/src/utils/package-manager.d.ts +32 -0
  24. package/dist/src/utils/package-manager.d.ts.map +1 -0
  25. package/dist/src/utils/package-manager.js +149 -0
  26. package/dist/src/utils/package-manager.js.map +1 -0
  27. package/dist/src/utils/types.d.ts +21 -0
  28. package/dist/src/utils/types.d.ts.map +1 -0
  29. package/dist/src/utils/types.js +2 -0
  30. package/dist/src/utils/types.js.map +1 -0
  31. package/dist/tsconfig.tsbuildinfo +1 -1
  32. package/package.json +2 -2
@@ -1,14 +1,18 @@
1
- import { Command } from "commander";
2
- import * as fs from "node:fs";
3
1
  import path from "node:path";
4
- import { getPackageManagerFromLockfile, getProjectInfo, useCommand, } from "ph-cmd";
5
2
  import { beforeEach, describe, expect, it, vi } from "vitest";
6
- // Mock dependencies
7
- vi.mock("node:fs");
8
- // Import installDependency after mocking
9
- import { installDependency, updateDependencyVersionString } from "ph-cmd";
10
- vi.mock("../../utils/index.js", async (importOriginal) => {
11
- const actual = await importOriginal();
3
+ vi.mock("node:fs", async () => {
4
+ // eslint-disable-next-line @typescript-eslint/consistent-type-imports
5
+ const actual = await vi.importActual("node:fs");
6
+ return {
7
+ ...actual,
8
+ existsSync: vi.fn(),
9
+ readFileSync: vi.fn(),
10
+ readdirSync: vi.fn(),
11
+ };
12
+ });
13
+ vi.mock("../../utils/package-manager.js", async () => {
14
+ // eslint-disable-next-line @typescript-eslint/consistent-type-imports
15
+ const actual = await vi.importActual("../../utils/package-manager.js");
12
16
  return {
13
17
  ...actual,
14
18
  packageManagers: {
@@ -22,24 +26,44 @@ vi.mock("../../utils/index.js", async (importOriginal) => {
22
26
  },
23
27
  getPackageManagerFromLockfile: vi.fn(),
24
28
  getProjectInfo: vi.fn(),
29
+ };
30
+ });
31
+ vi.mock("../../utils/dependencies.js", async () => {
32
+ // eslint-disable-next-line @typescript-eslint/consistent-type-imports
33
+ const actual = await vi.importActual("../../utils/dependencies.js");
34
+ return {
35
+ ...actual,
25
36
  installDependency: vi.fn(),
26
37
  updateDependencyVersionString: vi.fn(),
27
38
  };
28
39
  });
40
+ vi.mock("../use.js", async () => {
41
+ // eslint-disable-next-line @typescript-eslint/consistent-type-imports
42
+ const actual = await vi.importActual("../use.js");
43
+ return {
44
+ ...actual,
45
+ useCommand: vi.fn(actual.useCommand),
46
+ };
47
+ });
48
+ import { Command } from "commander";
49
+ import * as fs from "node:fs";
50
+ import { installDependency, updateDependencyVersionString, } from "../../utils/dependencies.js";
51
+ import { getPackageManagerFromLockfile, getProjectInfo, } from "../../utils/package-manager.js";
52
+ import { useCommand } from "../use.js";
29
53
  describe("useCommand", () => {
30
54
  let program;
31
55
  beforeEach(() => {
32
56
  vi.clearAllMocks();
33
- vi.restoreAllMocks();
34
57
  program = new Command();
35
58
  useCommand(program);
36
- // Mock utils functions
37
- vi.mocked(getPackageManagerFromLockfile).mockReturnValue("pnpm");
38
- vi.mocked(getProjectInfo).mockResolvedValue({
39
- path: "/test/project",
40
- });
41
- // Mock fs.existsSync to return true for test paths and monorepo structure
42
- vi.spyOn(fs, "existsSync").mockImplementation((p) => {
59
+ const mpkg = vi.mocked(getPackageManagerFromLockfile);
60
+ const mproj = vi.mocked(getProjectInfo);
61
+ const mexists = vi.mocked(fs.existsSync);
62
+ const mread = vi.mocked(fs.readFileSync);
63
+ const minstall = vi.mocked(installDependency);
64
+ mpkg.mockReturnValue("pnpm");
65
+ mproj.mockResolvedValue({ path: "/test/project" });
66
+ mexists.mockImplementation((p) => {
43
67
  const pathStr = p;
44
68
  const validPaths = [
45
69
  "/test/project",
@@ -47,14 +71,12 @@ describe("useCommand", () => {
47
71
  path.join("/test/project", "package.json"),
48
72
  path.join("/test/project", "pnpm-lock.yaml"),
49
73
  ];
50
- // Mock monorepo structure for local path tests
51
74
  const isPackagePath = pathStr.includes("/path/to/local/packages/");
52
75
  const isAppPath = pathStr.includes("/path/to/local/apps/");
53
76
  const isCliPath = pathStr.includes("/path/to/local/clis/");
54
77
  return (validPaths.includes(pathStr) || isPackagePath || isAppPath || isCliPath);
55
78
  });
56
- // Mock fs.readFileSync to return a test package.json
57
- vi.spyOn(fs, "readFileSync").mockImplementation((p) => {
79
+ mread.mockImplementation((p) => {
58
80
  if (p === path.join("/test/project", "package.json")) {
59
81
  return JSON.stringify({
60
82
  dependencies: {
@@ -73,8 +95,7 @@ describe("useCommand", () => {
73
95
  }
74
96
  return "";
75
97
  });
76
- // Mock installDependency
77
- vi.mocked(installDependency).mockImplementation(() => { });
98
+ minstall.mockImplementation(() => { });
78
99
  });
79
100
  it("should register the use command with correct options", () => {
80
101
  const cmd = program.commands.find((c) => c.name() === "use");
@@ -87,7 +108,6 @@ describe("useCommand", () => {
87
108
  it("should execute use command with dev environment", async () => {
88
109
  const cmd = program.commands.find((c) => c.name() === "use");
89
110
  await cmd?.parseAsync(["node", "test", "dev"]);
90
- // With dynamic detection, verify it updates the packages found in mock package.json
91
111
  expect(updateDependencyVersionString).toHaveBeenCalledWith("pnpm", expect.arrayContaining([
92
112
  "@powerhousedao/common@dev",
93
113
  "@powerhousedao/design-system@dev",
@@ -1 +1 @@
1
- {"version":3,"file":"use.test.js","sourceRoot":"","sources":["../../../../src/commands/__tests__/use.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use.test.js","sourceRoot":"","sources":["../../../../src/commands/__tests__/use.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ export declare const PH_BIN_PATH: string;
2
+ export declare const PH_BIN = "ph-cli";
3
+ export declare const PH_CLI_COMMANDS: string[];
4
+ export declare const POWERHOUSE_CONFIG_FILE = "powerhouse.config.json";
5
+ export declare const HOME_DIR: string;
6
+ export declare const PH_GLOBAL_PROJECT_NAME = ".ph";
7
+ export declare const POWERHOUSE_GLOBAL_DIR: string;
8
+ export declare const packageManagers: {
9
+ readonly bun: {
10
+ readonly installCommand: "bun add {{dependency}}";
11
+ readonly execCommand: "bun ph-cli {{arguments}}";
12
+ readonly execScript: "bun {{arguments}}";
13
+ readonly lockfile: "bun.lock";
14
+ readonly globalPathRegexp: RegExp;
15
+ readonly updateCommand: "bun update {{dependency}}";
16
+ readonly buildAffected: "bun run build:affected";
17
+ readonly workspaceOption: "";
18
+ readonly installDepsCommand: "bun install";
19
+ };
20
+ readonly pnpm: {
21
+ readonly installCommand: "pnpm add {{dependency}}";
22
+ readonly execCommand: "pnpm exec ph-cli {{arguments}}";
23
+ readonly execScript: "pnpm {{arguments}}";
24
+ readonly lockfile: "pnpm-lock.yaml";
25
+ readonly globalPathRegexp: RegExp;
26
+ readonly updateCommand: "pnpm update {{dependency}}";
27
+ readonly buildAffected: "pnpm run build:affected";
28
+ readonly workspaceOption: "--workspace-root";
29
+ readonly installDepsCommand: "pnpm install";
30
+ };
31
+ readonly yarn: {
32
+ readonly installCommand: "yarn add {{dependency}}";
33
+ readonly execCommand: "yarn ph-cli {{arguments}}";
34
+ readonly execScript: "yarn {{arguments}}";
35
+ readonly lockfile: "yarn.lock";
36
+ readonly globalPathRegexp: RegExp;
37
+ readonly updateCommand: "yarn upgrade {{dependency}}";
38
+ readonly buildAffected: "yarn run build:affected";
39
+ readonly workspaceOption: "-W";
40
+ readonly installDepsCommand: "yarn install";
41
+ };
42
+ readonly npm: {
43
+ readonly installCommand: "npm install {{dependency}}";
44
+ readonly execCommand: "npx ph-cli {{arguments}}";
45
+ readonly execScript: "npm run {{arguments}}";
46
+ readonly lockfile: "package-lock.json";
47
+ readonly updateCommand: "npm update {{dependency}} --save";
48
+ readonly buildAffected: "npm run build:affected";
49
+ readonly workspaceOption: "";
50
+ readonly installDepsCommand: "npm install";
51
+ };
52
+ };
53
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/utils/constants.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,WAAW,QAAkB,CAAC;AAC3C,eAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,eAAO,MAAM,eAAe,UAiB3B,CAAC;AACF,eAAO,MAAM,sBAAsB,2BAA2B,CAAC;AAC/D,eAAO,MAAM,QAAQ,QAAY,CAAC;AAClC,eAAO,MAAM,sBAAsB,QAAQ,CAAC;AAC5C,eAAO,MAAM,qBAAqB,QAGjC,CAAC;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4ClB,CAAC"}
@@ -0,0 +1,72 @@
1
+ import { homedir } from "node:os";
2
+ import path from "node:path";
3
+ export const PH_BIN_PATH = process.argv[1];
4
+ export const PH_BIN = "ph-cli";
5
+ export const PH_CLI_COMMANDS = [
6
+ "init",
7
+ "dev",
8
+ "connect",
9
+ "generate",
10
+ "reactor",
11
+ "switchboard",
12
+ "help",
13
+ "install",
14
+ "add",
15
+ "i",
16
+ "remove",
17
+ "uninstall",
18
+ "service",
19
+ "list",
20
+ "inspect",
21
+ "version",
22
+ ];
23
+ export const POWERHOUSE_CONFIG_FILE = "powerhouse.config.json";
24
+ export const HOME_DIR = homedir();
25
+ export const PH_GLOBAL_PROJECT_NAME = ".ph";
26
+ export const POWERHOUSE_GLOBAL_DIR = path.join(HOME_DIR, PH_GLOBAL_PROJECT_NAME);
27
+ export const packageManagers = {
28
+ bun: {
29
+ installCommand: "bun add {{dependency}}",
30
+ execCommand: `bun ${PH_BIN} {{arguments}}`,
31
+ execScript: `bun {{arguments}}`,
32
+ lockfile: "bun.lock",
33
+ globalPathRegexp: /[\\/].bun[\\/]/,
34
+ updateCommand: "bun update {{dependency}}",
35
+ buildAffected: "bun run build:affected",
36
+ workspaceOption: "",
37
+ installDepsCommand: "bun install",
38
+ },
39
+ pnpm: {
40
+ installCommand: "pnpm add {{dependency}}",
41
+ execCommand: `pnpm exec ${PH_BIN} {{arguments}}`,
42
+ execScript: `pnpm {{arguments}}`,
43
+ lockfile: "pnpm-lock.yaml",
44
+ globalPathRegexp: /[\\/]pnpm[\\/]/,
45
+ updateCommand: "pnpm update {{dependency}}",
46
+ buildAffected: "pnpm run build:affected",
47
+ workspaceOption: "--workspace-root",
48
+ installDepsCommand: "pnpm install",
49
+ },
50
+ yarn: {
51
+ installCommand: "yarn add {{dependency}}",
52
+ execCommand: `yarn ${PH_BIN} {{arguments}}`,
53
+ execScript: `yarn {{arguments}}`,
54
+ lockfile: "yarn.lock",
55
+ globalPathRegexp: /[\\/]yarn[\\/]/,
56
+ updateCommand: "yarn upgrade {{dependency}}",
57
+ buildAffected: "yarn run build:affected",
58
+ workspaceOption: "-W",
59
+ installDepsCommand: "yarn install",
60
+ },
61
+ npm: {
62
+ installCommand: "npm install {{dependency}}",
63
+ execCommand: `npx ${PH_BIN} {{arguments}}`,
64
+ execScript: `npm run {{arguments}}`,
65
+ lockfile: "package-lock.json",
66
+ updateCommand: "npm update {{dependency}} --save",
67
+ buildAffected: "npm run build:affected",
68
+ workspaceOption: "",
69
+ installDepsCommand: "npm install",
70
+ },
71
+ };
72
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/utils/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC3C,MAAM,CAAC,MAAM,MAAM,GAAG,QAAQ,CAAC;AAC/B,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,MAAM;IACN,KAAK;IACL,SAAS;IACT,UAAU;IACV,SAAS;IACT,aAAa;IACb,MAAM;IACN,SAAS;IACT,KAAK;IACL,GAAG;IACH,QAAQ;IACR,WAAW;IACX,SAAS;IACT,MAAM;IACN,SAAS;IACT,SAAS;CACV,CAAC;AACF,MAAM,CAAC,MAAM,sBAAsB,GAAG,wBAAwB,CAAC;AAC/D,MAAM,CAAC,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC;AAClC,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,CAAC;AAC5C,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAC,IAAI,CAC5C,QAAQ,EACR,sBAAsB,CACvB,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,GAAG,EAAE;QACH,cAAc,EAAE,wBAAwB;QACxC,WAAW,EAAE,OAAO,MAAM,gBAAgB;QAC1C,UAAU,EAAE,mBAAmB;QAC/B,QAAQ,EAAE,UAAU;QACpB,gBAAgB,EAAE,gBAAgB;QAClC,aAAa,EAAE,2BAA2B;QAC1C,aAAa,EAAE,wBAAwB;QACvC,eAAe,EAAE,EAAE;QACnB,kBAAkB,EAAE,aAAa;KAClC;IACD,IAAI,EAAE;QACJ,cAAc,EAAE,yBAAyB;QACzC,WAAW,EAAE,aAAa,MAAM,gBAAgB;QAChD,UAAU,EAAE,oBAAoB;QAChC,QAAQ,EAAE,gBAAgB;QAC1B,gBAAgB,EAAE,gBAAgB;QAClC,aAAa,EAAE,4BAA4B;QAC3C,aAAa,EAAE,yBAAyB;QACxC,eAAe,EAAE,kBAAkB;QACnC,kBAAkB,EAAE,cAAc;KACnC;IACD,IAAI,EAAE;QACJ,cAAc,EAAE,yBAAyB;QACzC,WAAW,EAAE,QAAQ,MAAM,gBAAgB;QAC3C,UAAU,EAAE,oBAAoB;QAChC,QAAQ,EAAE,WAAW;QACrB,gBAAgB,EAAE,gBAAgB;QAClC,aAAa,EAAE,6BAA6B;QAC5C,aAAa,EAAE,yBAAyB;QACxC,eAAe,EAAE,IAAI;QACrB,kBAAkB,EAAE,cAAc;KACnC;IACD,GAAG,EAAE;QACH,cAAc,EAAE,4BAA4B;QAC5C,WAAW,EAAE,OAAO,MAAM,gBAAgB;QAC1C,UAAU,EAAE,uBAAuB;QACnC,QAAQ,EAAE,mBAAmB;QAC7B,aAAa,EAAE,kCAAkC;QACjD,aAAa,EAAE,wBAAwB;QACvC,eAAe,EAAE,EAAE;QACnB,kBAAkB,EAAE,aAAa;KAClC;CACO,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { GlobalProjectOptions } from "./types.js";
2
+ export declare const createGlobalProject: (projectName?: string, options?: GlobalProjectOptions) => Promise<void>;
3
+ //# sourceMappingURL=create-global-project.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-global-project.d.ts","sourceRoot":"","sources":["../../../src/utils/create-global-project.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEvD,eAAO,MAAM,mBAAmB,GAC9B,cAAc,MAAM,EACpB,UAAS,oBAAyB,kBA6BnC,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { createProject, parseVersion } from "@powerhousedao/codegen";
2
+ import { existsSync } from "node:fs";
3
+ import { getPackageManagerFromPath, resolvePackageManagerOptions, } from "./package-manager.js";
4
+ import { HOME_DIR, PH_BIN_PATH, PH_GLOBAL_PROJECT_NAME, POWERHOUSE_GLOBAL_DIR, } from "./constants.js";
5
+ export const createGlobalProject = async (projectName, options = {}) => {
6
+ // check if the global project already exists
7
+ const globalProjectExists = existsSync(POWERHOUSE_GLOBAL_DIR);
8
+ if (globalProjectExists) {
9
+ console.log(`📦 Using global project: ${POWERHOUSE_GLOBAL_DIR}`);
10
+ return;
11
+ }
12
+ console.log("📦 Initializing global project...");
13
+ process.chdir(HOME_DIR);
14
+ try {
15
+ await createProject({
16
+ name: PH_GLOBAL_PROJECT_NAME,
17
+ interactive: false,
18
+ version: parseVersion(options),
19
+ packageManager: resolvePackageManagerOptions(options) ??
20
+ getPackageManagerFromPath(PH_BIN_PATH),
21
+ });
22
+ console.log(`🚀 Global project initialized successfully: ${POWERHOUSE_GLOBAL_DIR}`);
23
+ }
24
+ catch (error) {
25
+ console.error("❌ Failed to initialize the global project", error);
26
+ }
27
+ };
28
+ //# sourceMappingURL=create-global-project.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-global-project.js","sourceRoot":"","sources":["../../../src/utils/create-global-project.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EACL,yBAAyB,EACzB,4BAA4B,GAC7B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,QAAQ,EACR,WAAW,EACX,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,gBAAgB,CAAC;AAGxB,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EACtC,WAAoB,EACpB,UAAgC,EAAE,EAClC,EAAE;IACF,6CAA6C;IAC7C,MAAM,mBAAmB,GAAG,UAAU,CAAC,qBAAqB,CAAC,CAAC;IAE9D,IAAI,mBAAmB,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,4BAA4B,qBAAqB,EAAE,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;IACjD,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAExB,IAAI,CAAC;QACH,MAAM,aAAa,CAAC;YAClB,IAAI,EAAE,sBAAsB;YAC5B,WAAW,EAAE,KAAK;YAClB,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC;YAC9B,cAAc,EACZ,4BAA4B,CAAC,OAAO,CAAC;gBACrC,yBAAyB,CAAC,WAAW,CAAC;SACzC,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CACT,+CAA+C,qBAAqB,EAAE,CACvE,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,2CAA2C,EAAE,KAAK,CAAC,CAAC;IACpE,CAAC;AACH,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { PackageManager } from "./types.js";
2
+ export declare function updateDependencyVersionString(packageManager: PackageManager, dependencies: string[], projectPath: string): void;
3
+ export declare function installDependency(packageManager: PackageManager, dependencies: string[], projectPath: string, workspace?: boolean): void;
4
+ //# sourceMappingURL=dependencies.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dependencies.d.ts","sourceRoot":"","sources":["../../../src/utils/dependencies.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAe,cAAc,EAAE,MAAM,YAAY,CAAC;AAsB9D,wBAAgB,6BAA6B,CAC3C,cAAc,EAAE,cAAc,EAC9B,YAAY,EAAE,MAAM,EAAE,EACtB,WAAW,EAAE,MAAM,QAmCpB;AAED,wBAAgB,iBAAiB,CAC/B,cAAc,EAAE,cAAc,EAC9B,YAAY,EAAE,MAAM,EAAE,EACtB,WAAW,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,OAAO,QAuBpB"}
@@ -0,0 +1,61 @@
1
+ import { existsSync, readFileSync, writeFileSync } from "fs";
2
+ import { execSync } from "node:child_process";
3
+ import path from "path";
4
+ import { packageManagers } from "./constants.js";
5
+ function parseDependencyString(dependency) {
6
+ // Handle scoped packages (e.g. @org/package@version)
7
+ const lastAtIndex = dependency.lastIndexOf("@");
8
+ if (lastAtIndex === 0) {
9
+ // This is a scoped package without version
10
+ return { name: dependency, version: "latest" };
11
+ }
12
+ const name = dependency.slice(0, lastAtIndex);
13
+ const version = dependency.slice(lastAtIndex + 1);
14
+ return {
15
+ name,
16
+ version: version || "latest",
17
+ };
18
+ }
19
+ export function updateDependencyVersionString(packageManager, dependencies, projectPath) {
20
+ const manager = packageManagers[packageManager];
21
+ const packageJsonPath = path.join(projectPath, "package.json");
22
+ const packageJson = JSON.parse(readFileSync(packageJsonPath, "utf8"));
23
+ // Initialize dependencies and devDependencies if they don't exist
24
+ packageJson.dependencies = packageJson.dependencies || {};
25
+ packageJson.devDependencies = packageJson.devDependencies || {};
26
+ // Process each dependency string
27
+ for (const dependency of dependencies) {
28
+ const { name, version } = parseDependencyString(dependency);
29
+ // Check if the package exists in either dependencies or devDependencies
30
+ if (name in packageJson.dependencies) {
31
+ packageJson.dependencies[name] = version;
32
+ }
33
+ else if (name in packageJson.devDependencies) {
34
+ packageJson.devDependencies[name] = version;
35
+ }
36
+ }
37
+ // Write the updated package.json back to the file
38
+ writeFileSync(packageJsonPath, JSON.stringify(packageJson, null, 2), "utf8");
39
+ const installDepsCommand = manager.installDepsCommand;
40
+ const commandOptions = { cwd: projectPath };
41
+ execSync(installDepsCommand, {
42
+ stdio: "inherit",
43
+ ...commandOptions,
44
+ });
45
+ }
46
+ export function installDependency(packageManager, dependencies, projectPath, workspace) {
47
+ if (!existsSync(projectPath)) {
48
+ throw new Error(`Project path not found: ${projectPath}`);
49
+ }
50
+ const manager = packageManagers[packageManager];
51
+ let installCommand = manager.installCommand.replace("{{dependency}}", dependencies.join(" "));
52
+ if (workspace) {
53
+ installCommand += ` ${manager.workspaceOption}`;
54
+ }
55
+ const commandOptions = { cwd: projectPath };
56
+ execSync(installCommand, {
57
+ stdio: "inherit",
58
+ ...commandOptions,
59
+ });
60
+ }
61
+ //# sourceMappingURL=dependencies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dependencies.js","sourceRoot":"","sources":["../../../src/utils/dependencies.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGjD,SAAS,qBAAqB,CAAC,UAAkB;IAI/C,qDAAqD;IACrD,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAChD,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;QACtB,2CAA2C;QAC3C,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;IACjD,CAAC;IAED,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;IAC9C,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;IAElD,OAAO;QACL,IAAI;QACJ,OAAO,EAAE,OAAO,IAAI,QAAQ;KAC7B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,cAA8B,EAC9B,YAAsB,EACtB,WAAmB;IAEnB,MAAM,OAAO,GAAG,eAAe,CAAC,cAAc,CAAC,CAAC;IAEhD,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IAC/D,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAC5B,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC,CACvB,CAAC;IAEjB,kEAAkE;IAClE,WAAW,CAAC,YAAY,GAAG,WAAW,CAAC,YAAY,IAAI,EAAE,CAAC;IAC1D,WAAW,CAAC,eAAe,GAAG,WAAW,CAAC,eAAe,IAAI,EAAE,CAAC;IAEhE,iCAAiC;IACjC,KAAK,MAAM,UAAU,IAAI,YAAY,EAAE,CAAC;QACtC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAC;QAE5D,wEAAwE;QACxE,IAAI,IAAI,IAAI,WAAW,CAAC,YAAY,EAAE,CAAC;YACrC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;QAC3C,CAAC;aAAM,IAAI,IAAI,IAAI,WAAW,CAAC,eAAe,EAAE,CAAC;YAC/C,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;QAC9C,CAAC;IACH,CAAC;IAED,kDAAkD;IAClD,aAAa,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAE7E,MAAM,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IACtD,MAAM,cAAc,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC;IAE5C,QAAQ,CAAC,kBAAkB,EAAE;QAC3B,KAAK,EAAE,SAAS;QAChB,GAAG,cAAc;KAClB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,cAA8B,EAC9B,YAAsB,EACtB,WAAmB,EACnB,SAAmB;IAEnB,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,2BAA2B,WAAW,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,OAAO,GAAG,eAAe,CAAC,cAAc,CAAC,CAAC;IAEhD,IAAI,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,OAAO,CACjD,gBAAgB,EAChB,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CACvB,CAAC;IAEF,IAAI,SAAS,EAAE,CAAC;QACd,cAAc,IAAI,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAClD,CAAC;IAED,MAAM,cAAc,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC;IAE5C,QAAQ,CAAC,cAAc,EAAE;QACvB,KAAK,EAAE,SAAS;QAChB,GAAG,cAAc;KAClB,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,31 @@
1
+ import type { Command } from "commander";
2
+ /**
3
+ * Helper to handle help flag detection for commands
4
+ * This centralizes the pattern of checking for help flags and showing command-specific help
5
+ *
6
+ * @param command - The Command instance
7
+ * @param actionFn - The original action function to call if help is not requested
8
+ * @returns A wrapped action function
9
+ */
10
+ export declare function withHelpHandler<T extends unknown[]>(command: Command, actionFn: (...args: T) => Promise<void> | void): (...args: T) => Promise<void> | void;
11
+ /**
12
+ * Simplified utility to connect a command with an action function that includes help handling
13
+ * This reduces boilerplate in command files by automatically setting up the action with help handling
14
+ *
15
+ * @param command - The Command instance
16
+ * @param actionFn - The action function to call when the command is executed
17
+ * @param preCheck - Optional validation function that runs before the action
18
+ * @returns The command for chaining
19
+ */
20
+ export declare function withHelpAction<T extends unknown[]>(command: Command, actionFn: (...args: T) => Promise<void> | void, preCheck?: (...args: T) => boolean | undefined): Command;
21
+ /**
22
+ * Enhanced version of withHelpAction that allows custom help text without duplication
23
+ *
24
+ * @param command - The Command instance
25
+ * @param actionFn - The action function to call when the command is executed
26
+ * @param helpText - The custom help text to display (replacing the auto-generated help)
27
+ * @param preCheck - Optional validation function that runs before the action
28
+ * @returns The command for chaining
29
+ */
30
+ export declare function withCustomHelp<T extends unknown[]>(command: Command, actionFn: (...args: T) => Promise<void> | void, helpText: string, preCheck?: (...args: T) => boolean | undefined): Command;
31
+ //# sourceMappingURL=help.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../../src/utils/help.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,OAAO,EAAE,EACjD,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,GAC7C,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAgBtC;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,OAAO,EAAE,EAChD,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,EAC9C,QAAQ,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,GAAG,SAAS,GAC7C,OAAO,CAeT;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,OAAO,EAAE,EAChD,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,EAC9C,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,GAAG,SAAS,GAC7C,OAAO,CAkBT"}
@@ -0,0 +1,72 @@
1
+ /**
2
+ * Helper to handle help flag detection for commands
3
+ * This centralizes the pattern of checking for help flags and showing command-specific help
4
+ *
5
+ * @param command - The Command instance
6
+ * @param actionFn - The original action function to call if help is not requested
7
+ * @returns A wrapped action function
8
+ */
9
+ export function withHelpHandler(command, actionFn) {
10
+ return (...args) => {
11
+ // Check if help was requested
12
+ const rawArgs = process.argv;
13
+ const isHelpRequested = rawArgs.includes("--help") || rawArgs.includes("-h");
14
+ // If help was explicitly requested, show the help and exit
15
+ if (isHelpRequested) {
16
+ command.outputHelp();
17
+ process.exit(0);
18
+ }
19
+ // Otherwise, run the original action
20
+ return actionFn(...args);
21
+ };
22
+ }
23
+ /**
24
+ * Simplified utility to connect a command with an action function that includes help handling
25
+ * This reduces boilerplate in command files by automatically setting up the action with help handling
26
+ *
27
+ * @param command - The Command instance
28
+ * @param actionFn - The action function to call when the command is executed
29
+ * @param preCheck - Optional validation function that runs before the action
30
+ * @returns The command for chaining
31
+ */
32
+ export function withHelpAction(command, actionFn, preCheck) {
33
+ command.action(withHelpHandler(command, (...args) => {
34
+ // If there's a pre-check function, run it before the action
35
+ if (preCheck) {
36
+ const result = preCheck(...args);
37
+ // If the pre-check returns false explicitly, don't run the action
38
+ if (result === false)
39
+ return;
40
+ }
41
+ return actionFn(...args);
42
+ }));
43
+ return command;
44
+ }
45
+ /**
46
+ * Enhanced version of withHelpAction that allows custom help text without duplication
47
+ *
48
+ * @param command - The Command instance
49
+ * @param actionFn - The action function to call when the command is executed
50
+ * @param helpText - The custom help text to display (replacing the auto-generated help)
51
+ * @param preCheck - Optional validation function that runs before the action
52
+ * @returns The command for chaining
53
+ */
54
+ export function withCustomHelp(command, actionFn, helpText, preCheck) {
55
+ // Clear any existing help text
56
+ command.helpInformation = function () {
57
+ const name = command.name();
58
+ const args = command.usage();
59
+ const description = command.description();
60
+ // Create a minimal header
61
+ let header = `\nUsage: ph ${name}`;
62
+ if (args)
63
+ header += ` ${args}`;
64
+ if (description)
65
+ header += `\n\n${description}\n`;
66
+ // Return the custom help text
67
+ return header + "\n" + helpText;
68
+ };
69
+ // Add help action handler
70
+ return withHelpAction(command, actionFn, preCheck);
71
+ }
72
+ //# sourceMappingURL=help.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"help.js","sourceRoot":"","sources":["../../../src/utils/help.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAC7B,OAAgB,EAChB,QAA8C;IAE9C,OAAO,CAAC,GAAG,IAAO,EAAE,EAAE;QACpB,8BAA8B;QAC9B,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;QAC7B,MAAM,eAAe,GACnB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEvD,2DAA2D;QAC3D,IAAI,eAAe,EAAE,CAAC;YACpB,OAAO,CAAC,UAAU,EAAE,CAAC;YACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,qCAAqC;QACrC,OAAO,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC;IAC3B,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAC5B,OAAgB,EAChB,QAA8C,EAC9C,QAA8C;IAE9C,OAAO,CAAC,MAAM,CACZ,eAAe,CAAI,OAAO,EAAE,CAAC,GAAG,IAAO,EAAE,EAAE;QACzC,4DAA4D;QAC5D,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC;YACjC,kEAAkE;YAClE,IAAI,MAAM,KAAK,KAAK;gBAAE,OAAO;QAC/B,CAAC;QAED,OAAO,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC;IAC3B,CAAC,CAAC,CACH,CAAC;IAEF,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAC5B,OAAgB,EAChB,QAA8C,EAC9C,QAAgB,EAChB,QAA8C;IAE9C,+BAA+B;IAC/B,OAAO,CAAC,eAAe,GAAG;QACxB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;QAC7B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAE1C,0BAA0B;QAC1B,IAAI,MAAM,GAAG,eAAe,IAAI,EAAE,CAAC;QACnC,IAAI,IAAI;YAAE,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;QAC/B,IAAI,WAAW;YAAE,MAAM,IAAI,OAAO,WAAW,IAAI,CAAC;QAElD,8BAA8B;QAC9B,OAAO,MAAM,GAAG,IAAI,GAAG,QAAQ,CAAC;IAClC,CAAC,CAAC;IAEF,0BAA0B;IAC1B,OAAO,cAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;AACrD,CAAC"}