ph-cmd 6.0.0-dev.6 → 6.0.0-dev.8

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 (139) hide show
  1. package/build/cli.js +1495 -0
  2. package/package.json +8 -8
  3. package/dist/scripts/generate-commands-md.d.ts +0 -2
  4. package/dist/scripts/generate-commands-md.d.ts.map +0 -1
  5. package/dist/scripts/generate-commands-md.js +0 -72
  6. package/dist/scripts/generate-commands-md.js.map +0 -1
  7. package/dist/scripts/generate-version.d.ts +0 -2
  8. package/dist/scripts/generate-version.d.ts.map +0 -1
  9. package/dist/scripts/generate-version.js +0 -13
  10. package/dist/scripts/generate-version.js.map +0 -1
  11. package/dist/src/cli.d.ts +0 -3
  12. package/dist/src/cli.d.ts.map +0 -1
  13. package/dist/src/cli.js +0 -120
  14. package/dist/src/cli.js.map +0 -1
  15. package/dist/src/commands/__tests__/update.test.d.ts +0 -2
  16. package/dist/src/commands/__tests__/update.test.d.ts.map +0 -1
  17. package/dist/src/commands/__tests__/update.test.js +0 -157
  18. package/dist/src/commands/__tests__/update.test.js.map +0 -1
  19. package/dist/src/commands/__tests__/use.test.d.ts +0 -2
  20. package/dist/src/commands/__tests__/use.test.d.ts.map +0 -1
  21. package/dist/src/commands/__tests__/use.test.js +0 -496
  22. package/dist/src/commands/__tests__/use.test.js.map +0 -1
  23. package/dist/src/commands/checkout.d.ts +0 -9
  24. package/dist/src/commands/checkout.d.ts.map +0 -1
  25. package/dist/src/commands/checkout.js +0 -37
  26. package/dist/src/commands/checkout.js.map +0 -1
  27. package/dist/src/commands/forward.d.ts +0 -7
  28. package/dist/src/commands/forward.d.ts.map +0 -1
  29. package/dist/src/commands/forward.js +0 -45
  30. package/dist/src/commands/forward.js.map +0 -1
  31. package/dist/src/commands/help.d.ts +0 -7
  32. package/dist/src/commands/help.d.ts.map +0 -1
  33. package/dist/src/commands/help.js +0 -14
  34. package/dist/src/commands/help.js.map +0 -1
  35. package/dist/src/commands/index.d.ts +0 -9
  36. package/dist/src/commands/index.d.ts.map +0 -1
  37. package/dist/src/commands/index.js +0 -15
  38. package/dist/src/commands/index.js.map +0 -1
  39. package/dist/src/commands/init.d.ts +0 -2
  40. package/dist/src/commands/init.d.ts.map +0 -1
  41. package/dist/src/commands/init.js +0 -165
  42. package/dist/src/commands/init.js.map +0 -1
  43. package/dist/src/commands/setup-globals.d.ts +0 -20
  44. package/dist/src/commands/setup-globals.d.ts.map +0 -1
  45. package/dist/src/commands/setup-globals.js +0 -24
  46. package/dist/src/commands/setup-globals.js.map +0 -1
  47. package/dist/src/commands/update.d.ts +0 -2
  48. package/dist/src/commands/update.d.ts.map +0 -1
  49. package/dist/src/commands/update.js +0 -95
  50. package/dist/src/commands/update.js.map +0 -1
  51. package/dist/src/commands/update.old.d.ts +0 -13
  52. package/dist/src/commands/update.old.d.ts.map +0 -1
  53. package/dist/src/commands/update.old.js +0 -105
  54. package/dist/src/commands/update.old.js.map +0 -1
  55. package/dist/src/commands/use-local.d.ts +0 -2
  56. package/dist/src/commands/use-local.d.ts.map +0 -1
  57. package/dist/src/commands/use-local.js +0 -115
  58. package/dist/src/commands/use-local.js.map +0 -1
  59. package/dist/src/commands/use.d.ts +0 -2
  60. package/dist/src/commands/use.d.ts.map +0 -1
  61. package/dist/src/commands/use.js +0 -117
  62. package/dist/src/commands/use.js.map +0 -1
  63. package/dist/src/commands/use.old.d.ts +0 -55
  64. package/dist/src/commands/use.old.d.ts.map +0 -1
  65. package/dist/src/commands/use.old.js +0 -219
  66. package/dist/src/commands/use.old.js.map +0 -1
  67. package/dist/src/commands/version.d.ts +0 -5
  68. package/dist/src/commands/version.d.ts.map +0 -1
  69. package/dist/src/commands/version.js +0 -42
  70. package/dist/src/commands/version.js.map +0 -1
  71. package/dist/src/help.d.ts +0 -25
  72. package/dist/src/help.d.ts.map +0 -1
  73. package/dist/src/help.js +0 -230
  74. package/dist/src/help.js.map +0 -1
  75. package/dist/src/index.d.ts +0 -3
  76. package/dist/src/index.d.ts.map +0 -1
  77. package/dist/src/index.js +0 -3
  78. package/dist/src/index.js.map +0 -1
  79. package/dist/src/types.d.ts +0 -2
  80. package/dist/src/types.d.ts.map +0 -1
  81. package/dist/src/types.js +0 -2
  82. package/dist/src/types.js.map +0 -1
  83. package/dist/src/utils/constants.d.ts +0 -59
  84. package/dist/src/utils/constants.d.ts.map +0 -1
  85. package/dist/src/utils/constants.js +0 -102
  86. package/dist/src/utils/constants.js.map +0 -1
  87. package/dist/src/utils/dependencies.d.ts +0 -4
  88. package/dist/src/utils/dependencies.d.ts.map +0 -1
  89. package/dist/src/utils/dependencies.js +0 -61
  90. package/dist/src/utils/dependencies.js.map +0 -1
  91. package/dist/src/utils/file-system.d.ts +0 -2
  92. package/dist/src/utils/file-system.d.ts.map +0 -1
  93. package/dist/src/utils/file-system.js +0 -12
  94. package/dist/src/utils/file-system.js.map +0 -1
  95. package/dist/src/utils/help-formatting.d.ts +0 -35
  96. package/dist/src/utils/help-formatting.d.ts.map +0 -1
  97. package/dist/src/utils/help-formatting.js +0 -188
  98. package/dist/src/utils/help-formatting.js.map +0 -1
  99. package/dist/src/utils/help.d.ts +0 -31
  100. package/dist/src/utils/help.d.ts.map +0 -1
  101. package/dist/src/utils/help.js +0 -72
  102. package/dist/src/utils/help.js.map +0 -1
  103. package/dist/src/utils/index.d.ts +0 -8
  104. package/dist/src/utils/index.d.ts.map +0 -1
  105. package/dist/src/utils/index.js +0 -7
  106. package/dist/src/utils/index.js.map +0 -1
  107. package/dist/src/utils/package-manager.d.ts +0 -27
  108. package/dist/src/utils/package-manager.d.ts.map +0 -1
  109. package/dist/src/utils/package-manager.js +0 -177
  110. package/dist/src/utils/package-manager.js.map +0 -1
  111. package/dist/src/utils/parsing.d.ts +0 -20
  112. package/dist/src/utils/parsing.d.ts.map +0 -1
  113. package/dist/src/utils/parsing.js +0 -52
  114. package/dist/src/utils/parsing.js.map +0 -1
  115. package/dist/src/utils/run-cmd.d.ts +0 -2
  116. package/dist/src/utils/run-cmd.d.ts.map +0 -1
  117. package/dist/src/utils/run-cmd.js +0 -11
  118. package/dist/src/utils/run-cmd.js.map +0 -1
  119. package/dist/src/utils/types.d.ts +0 -21
  120. package/dist/src/utils/types.d.ts.map +0 -1
  121. package/dist/src/utils/types.js +0 -2
  122. package/dist/src/utils/types.js.map +0 -1
  123. package/dist/src/utils/validate-remote-drive-checkout.d.ts +0 -7
  124. package/dist/src/utils/validate-remote-drive-checkout.d.ts.map +0 -1
  125. package/dist/src/utils/validate-remote-drive-checkout.js +0 -45
  126. package/dist/src/utils/validate-remote-drive-checkout.js.map +0 -1
  127. package/dist/src/utils/validate-remote-drive.d.ts +0 -7
  128. package/dist/src/utils/validate-remote-drive.d.ts.map +0 -1
  129. package/dist/src/utils/validate-remote-drive.js +0 -51
  130. package/dist/src/utils/validate-remote-drive.js.map +0 -1
  131. package/dist/src/version.d.ts +0 -2
  132. package/dist/src/version.d.ts.map +0 -1
  133. package/dist/src/version.js +0 -3
  134. package/dist/src/version.js.map +0 -1
  135. package/dist/tsconfig.tsbuildinfo +0 -1
  136. package/dist/vitest.config.d.ts +0 -3
  137. package/dist/vitest.config.d.ts.map +0 -1
  138. package/dist/vitest.config.js +0 -7
  139. package/dist/vitest.config.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ph-cmd",
3
- "version": "6.0.0-dev.6",
3
+ "version": "6.0.0-dev.8",
4
4
  "description": "",
5
5
  "license": "AGPL-3.0-only",
6
6
  "type": "module",
@@ -12,13 +12,11 @@
12
12
  "access": "public"
13
13
  },
14
14
  "bin": {
15
- "ph": "dist/src/cli.js"
15
+ "ph": "build/cli.js"
16
16
  },
17
17
  "files": [
18
- "dist"
18
+ "build/cli.js"
19
19
  ],
20
- "exports": "./dist/src/index.js",
21
- "types": "./dist/src/index.d.ts",
22
20
  "keywords": [],
23
21
  "author": "",
24
22
  "dependencies": {
@@ -30,10 +28,11 @@
30
28
  "package-manager-detector": "^0.2.11",
31
29
  "read-pkg": "^9.0.1",
32
30
  "write-package": "^7.2.0",
33
- "@powerhousedao/codegen": "6.0.0-dev.6",
34
- "@powerhousedao/common": "6.0.0-dev.6"
31
+ "@powerhousedao/common": "6.0.0-dev.8",
32
+ "@powerhousedao/codegen": "6.0.0-dev.8"
35
33
  },
36
34
  "devDependencies": {
35
+ "tsup": "^8.5.1",
37
36
  "vitest": "^3.2.4"
38
37
  },
39
38
  "scripts": {
@@ -41,7 +40,8 @@
41
40
  "lint": "eslint",
42
41
  "generate-commands-md": "tsx scripts/generate-commands-md.ts",
43
42
  "generate-version": "tsx scripts/generate-version.ts",
44
- "build": "npm run generate-commands-md && npm run generate-version",
43
+ "bundle-cli": "tsup-node src/cli.ts --outDir build --format esm",
44
+ "build": "npm run generate-commands-md && npm run generate-version && npm run bundle-cli",
45
45
  "dev": "tsx src/cli.ts",
46
46
  "test": "vitest run",
47
47
  "test:watch": "vitest watch"
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=generate-commands-md.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-commands-md.d.ts","sourceRoot":"","sources":["../../scripts/generate-commands-md.ts"],"names":[],"mappings":""}
@@ -1,72 +0,0 @@
1
- import * as fs from "fs";
2
- import * as path from "path";
3
- import { fileURLToPath } from "url";
4
- /**
5
- * Generate COMMANDS.md file from the help texts in help.ts
6
- */
7
- async function generateCommandsMd() {
8
- try {
9
- // Define paths for ES modules
10
- const __filename = fileURLToPath(import.meta.url);
11
- const __dirname = path.dirname(__filename);
12
- const rootDir = path.resolve(__dirname, "..");
13
- const helpFilePath = path.join(rootDir, "src", "help.ts");
14
- const outputPath = path.join(rootDir, "COMMANDS.md");
15
- // Read the help.ts file
16
- const helpFileContent = fs.readFileSync(helpFilePath, "utf8");
17
- // Extract all help text constants using regex
18
- const helpTextRegex = /export const (\w+)Help = `([\s\S]+?)`;/g;
19
- const commands = [];
20
- let match;
21
- while ((match = helpTextRegex.exec(helpFileContent)) !== null) {
22
- const commandName = match[1];
23
- const helpContent = match[2];
24
- commands.push({ name: commandName, content: helpContent });
25
- }
26
- // Sort commands alphabetically
27
- commands.sort((a, b) => a.name.localeCompare(b.name));
28
- // Generate the markdown content
29
- let markdown = "# Powerhouse CLI Commands\n\n";
30
- markdown +=
31
- "This document provides detailed information about the available commands in the Powerhouse CLI.\n\n";
32
- markdown += "## Table of Contents\n\n";
33
- // Add table of contents
34
- commands.forEach((command) => {
35
- const displayName = formatCommandName(command.name);
36
- const anchor = displayName.toLowerCase().replace(/\s+/g, "-");
37
- markdown += `- [${displayName}](#${anchor})\n`;
38
- });
39
- markdown += "\n";
40
- // Add command details
41
- commands.forEach((command) => {
42
- const displayName = formatCommandName(command.name);
43
- markdown += `## ${displayName}\n\n`;
44
- markdown += "```\n";
45
- markdown += command.content.trim();
46
- markdown += "\n```\n\n";
47
- });
48
- // Add footer
49
- markdown += "---\n\n";
50
- markdown +=
51
- "*This document was automatically generated from the help text in the codebase.*\n";
52
- // Write to COMMANDS.md
53
- fs.writeFileSync(outputPath, markdown);
54
- console.log(`✅ COMMANDS.md has been generated at ${outputPath}`);
55
- }
56
- catch (error) {
57
- console.error("Failed to generate COMMANDS.md:", error);
58
- process.exit(1);
59
- }
60
- }
61
- /**
62
- * Format command name for display (e.g., "setupGlobals" -> "Setup Globals")
63
- */
64
- function formatCommandName(commandName) {
65
- // Convert camelCase to separate words with spaces
66
- const name = commandName.replace(/([A-Z])/g, " $1").trim();
67
- // Capitalize first letter and convert the rest to lowercase
68
- return name.charAt(0).toUpperCase() + name.slice(1);
69
- }
70
- // Run the script
71
- generateCommandsMd();
72
- //# sourceMappingURL=generate-commands-md.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-commands-md.js","sourceRoot":"","sources":["../../scripts/generate-commands-md.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=generate-version.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-version.d.ts","sourceRoot":"","sources":["../../scripts/generate-version.ts"],"names":[],"mappings":""}
@@ -1,13 +0,0 @@
1
- import { readFileSync, writeFileSync } from "fs";
2
- import { join } from "path";
3
- import { fileURLToPath } from "url";
4
- const __dirname = fileURLToPath(new URL(".", import.meta.url));
5
- // Read package.json
6
- const packageJson = JSON.parse(readFileSync(join(__dirname, "../package.json"), "utf-8"));
7
- // Generate version.ts content
8
- const versionFileContent = `// This file is auto-generated. DO NOT EDIT.
9
- export const version = "${packageJson.version}";
10
- `;
11
- // Write version.ts
12
- writeFileSync(join(__dirname, "../src/version.ts"), versionFileContent);
13
- //# sourceMappingURL=generate-version.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-version.js","sourceRoot":"","sources":["../../scripts/generate-version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAMpC,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAE/D,oBAAoB;AACpB,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAC5B,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,iBAAiB,CAAC,EAAE,OAAO,CAAC,CAC3C,CAAC;AAEjB,8BAA8B;AAC9B,MAAM,kBAAkB,GAAG;0BACD,WAAW,CAAC,OAAO;CAC5C,CAAC;AAEF,mBAAmB;AACnB,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,mBAAmB,CAAC,EAAE,kBAAkB,CAAC,CAAC"}
package/dist/src/cli.d.ts DELETED
@@ -1,3 +0,0 @@
1
- #!/usr/bin/env node
2
- export {};
3
- //# sourceMappingURL=cli.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":""}
package/dist/src/cli.js DELETED
@@ -1,120 +0,0 @@
1
- #!/usr/bin/env node
2
- import { Command } from "commander";
3
- import { forwardCommand } from "./commands/forward.js";
4
- import registerCommands from "./commands/index.js";
5
- import { init } from "./commands/init.js";
6
- import { update } from "./commands/update.js";
7
- import { useLocal } from "./commands/use-local.js";
8
- import { use } from "./commands/use.js";
9
- import { generateMergedHelp } from "./utils/index.js";
10
- function ensureNodeVersion(minVersion = "22") {
11
- const version = process.versions.node;
12
- if (!version) {
13
- return;
14
- }
15
- if (version < minVersion) {
16
- console.error(`Node version ${minVersion} or higher is required. Current version: ${version}`);
17
- process.exit(1);
18
- }
19
- }
20
- // Ensure minimum Node.js version
21
- ensureNodeVersion("22");
22
- const program = new Command();
23
- // Flag to prevent duplicate help output
24
- let helpShown = false;
25
- // Custom help handler that uses the merged help functionality
26
- async function customHelpHandler() {
27
- if (helpShown)
28
- return;
29
- helpShown = true;
30
- await generateMergedHelp(program);
31
- process.exit(0);
32
- }
33
- const defaultCommand = async (options) => {
34
- const allArgs = process.argv.slice(2);
35
- const args = allArgs.join(" ");
36
- const firstPositionalArg = allArgs[0];
37
- const isInit = firstPositionalArg === "init";
38
- if (isInit) {
39
- // forward from 3 to skip initial `ph`
40
- await init(process.argv.slice(3));
41
- process.exit(0);
42
- }
43
- const isUpdate = firstPositionalArg === "update";
44
- if (isUpdate) {
45
- // forward from 3 to skip initial `ph`
46
- await update(process.argv.slice(3));
47
- process.exit(0);
48
- }
49
- const isUse = firstPositionalArg === "use";
50
- if (isUse) {
51
- // forward from 3 to skip initial `ph`
52
- await use(process.argv.slice(3));
53
- process.exit(0);
54
- }
55
- const isUseLocal = firstPositionalArg === "use-local";
56
- if (isUseLocal) {
57
- // forward from 3 to skip initial `ph`
58
- await useLocal(process.argv.slice(3));
59
- process.exit(0);
60
- }
61
- const isHelpCommand = args.startsWith("--help") || args.startsWith("-h");
62
- const isVersionCommand = args.startsWith("--version") ||
63
- args.startsWith("-v") ||
64
- args.startsWith("version");
65
- // if no args are provided then runs the help command
66
- if (!args.length) {
67
- program.parse(process.argv.concat("--help"));
68
- process.exit(0);
69
- }
70
- if (!isHelpCommand && !isVersionCommand) {
71
- forwardCommand(args, { debug: !!options.verbose }).catch((error) => {
72
- if (typeof error === "string" || options.verbose) {
73
- console.error(error);
74
- }
75
- else if (error instanceof Error) {
76
- console.error(error.message);
77
- }
78
- process.exit(1);
79
- });
80
- }
81
- };
82
- program
83
- .name("ph")
84
- .description("The Powerhouse CLI (ph-cmd) is a command-line interface tool that provides essential commands for managing Powerhouse projects. The tool and it's commands are fundamental for creating, building, and running Document Models as a builder in studio mode.")
85
- .allowUnknownOption()
86
- .option("--verbose, --debug", "Enable debug mode")
87
- .option("-h, --help", "Display help information");
88
- // Register our commands
89
- registerCommands(program);
90
- // Hook the root action
91
- program.action(defaultCommand);
92
- // Handle global help requests - only for root help, not command-specific help
93
- program.on("option:help", () => {
94
- // Check if this is a root help command (no other arguments except possibly --verbose)
95
- const nonHelpArgs = process.argv
96
- .slice(2)
97
- .filter((arg) => arg !== "--help" && arg !== "-h");
98
- // Only run the custom help handler for global help
99
- if (nonHelpArgs.length === 0) {
100
- customHelpHandler().catch((error) => {
101
- console.error(error);
102
- process.exit(1);
103
- });
104
- }
105
- });
106
- // Logs full error only on debug mode. Otherwise logs only error message
107
- program.parseAsync(process.argv).catch((error) => {
108
- const isDebug = process.argv.find((arg) => ["--verbose", "--debug"].includes(arg));
109
- if (isDebug) {
110
- console.error(error);
111
- return;
112
- }
113
- const errorMessage = error instanceof Error
114
- ? error.message
115
- : typeof error === "string"
116
- ? error
117
- : JSON.stringify(error, null, 2);
118
- console.error(errorMessage);
119
- });
120
- //# sourceMappingURL=cli.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=update.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"update.test.d.ts","sourceRoot":"","sources":["../../../../src/commands/__tests__/update.test.ts"],"names":[],"mappings":""}
@@ -1,157 +0,0 @@
1
- import { Command } from "commander";
2
- import * as childProcess from "node:child_process";
3
- import * as fs from "node:fs";
4
- import path from "node:path";
5
- import { beforeEach, describe, expect, it, vi } from "vitest";
6
- import { findContainerDirectory, getPackageManagerFromLockfile, getProjectInfo, } from "../../utils/index.js";
7
- import { updateCommand } from "../update.old.js";
8
- // Mock dependencies
9
- vi.mock("node:fs");
10
- vi.mock("node:child_process");
11
- // Import installDependency after mocking
12
- import { installDependency, updateDependencyVersionString, } from "../../utils/index.js";
13
- vi.mock("../../utils/index.js", async (importOriginal) => {
14
- const actual = await importOriginal();
15
- return {
16
- ...actual,
17
- packageManagers: {
18
- pnpm: {
19
- buildAffected: "pnpm run build:affected",
20
- updateCommand: "pnpm update {{dependency}}",
21
- installCommand: "pnpm install {{dependency}}",
22
- workspaceOption: "--workspace-root",
23
- lockfile: "pnpm-lock.yaml",
24
- },
25
- },
26
- getPackageManagerFromLockfile: vi.fn(),
27
- getProjectInfo: vi.fn(),
28
- findContainerDirectory: vi.fn(),
29
- installDependency: vi.fn(),
30
- updateDependencyVersionString: vi.fn(),
31
- };
32
- });
33
- describe("updateCommand", () => {
34
- let program;
35
- beforeEach(() => {
36
- vi.clearAllMocks();
37
- vi.restoreAllMocks();
38
- program = new Command();
39
- updateCommand(program);
40
- // Mock utils functions
41
- vi.mocked(getPackageManagerFromLockfile).mockReturnValue("pnpm");
42
- vi.mocked(getProjectInfo).mockResolvedValue({
43
- path: "/test/project",
44
- });
45
- vi.mocked(findContainerDirectory).mockReturnValue("/user/powerhouse/monorepo");
46
- // Mock fs.readFileSync for package.json
47
- vi.mocked(fs.readFileSync).mockImplementation((filePath) => {
48
- if (filePath === path.join("/test/project", "package.json")) {
49
- return JSON.stringify({
50
- dependencies: {
51
- "@powerhousedao/builder-tools": "link:/user/powerhouse/monorepo/packages/builder-tools",
52
- "@powerhousedao/common": "^0.40.0",
53
- "@powerhousedao/design-system": "^0.40.0",
54
- },
55
- });
56
- }
57
- throw new Error(`Unexpected file read: ${String(filePath)}`);
58
- });
59
- // Mock fs.existsSync to return true for test paths
60
- vi.spyOn(fs, "existsSync").mockImplementation((p) => {
61
- const validPaths = [
62
- "/test/project",
63
- "/user/powerhouse/monorepo",
64
- "/test/project/package.json",
65
- path.join("/test/project", "package.json"),
66
- path.join("/test/project", "pnpm-lock.yaml"),
67
- ];
68
- return validPaths.includes(p);
69
- });
70
- // Mock execSync
71
- vi.mocked(childProcess.execSync).mockReturnValue(Buffer.from(""));
72
- // Mock installDependency
73
- vi.mocked(installDependency).mockImplementation(() => { });
74
- });
75
- it("should register the update command with correct options", () => {
76
- const cmd = program.commands.find((c) => c.name() === "update");
77
- expect(cmd).toBeDefined();
78
- expect(cmd?.description()).toContain("update your dependencies");
79
- // Get options from the command definition, not from parsed args
80
- const options = cmd?.options.map((opt) => opt.attributeName());
81
- expect(options).toContain("force");
82
- expect(options).toContain("packageManager");
83
- expect(options).toContain("debug");
84
- });
85
- it("should execute update command with local dependencies", async () => {
86
- const cmd = program.commands.find((c) => c.name() === "update");
87
- await cmd?.parseAsync(["node", "test"]);
88
- expect(childProcess.execSync).toHaveBeenCalledWith("pnpm run build:affected", expect.objectContaining({
89
- stdio: "inherit",
90
- cwd: "/user/powerhouse/monorepo",
91
- }));
92
- });
93
- it("should execute update command with force flag", async () => {
94
- // Mock fs.readFileSync for the specific package.json read in this test
95
- vi.mocked(fs.readFileSync).mockImplementation((filePath) => {
96
- if (filePath === path.join("/test/project", "package.json")) {
97
- return JSON.stringify({
98
- dependencies: {
99
- "@powerhousedao/common": "^0.40.0",
100
- "@powerhousedao/design-system": "^0.40.0",
101
- },
102
- });
103
- }
104
- throw new Error(`Unexpected file read: ${String(filePath)}`);
105
- });
106
- const cmd = program.commands.find((c) => c.name() === "update");
107
- await cmd?.parseAsync(["node", "test", "--force", "prod"]);
108
- // When using --force, it should call installDependency with the latest versions
109
- expect(updateDependencyVersionString).toHaveBeenCalledWith("pnpm", ["@powerhousedao/common@latest", "@powerhousedao/design-system@latest"], "/test/project");
110
- });
111
- it("should handle debug flag", async () => {
112
- const consoleSpy = vi.spyOn(console, "log");
113
- const cmd = program.commands.find((c) => c.name() === "update");
114
- await cmd?.parseAsync(["node", "test", "--debug"]);
115
- expect(consoleSpy).toHaveBeenCalledWith(">>> options", expect.any(Object));
116
- });
117
- it("should execute update command without local dependencies", async () => {
118
- // Mock fs.readFileSync to return package.json without local dependencies
119
- vi.mocked(fs.readFileSync).mockImplementation((filePath) => {
120
- if (filePath === path.join("/test/project", "package.json")) {
121
- return JSON.stringify({
122
- dependencies: {
123
- "@powerhousedao/builder-tools": "^0.40.0",
124
- "@powerhousedao/common": "^0.40.0",
125
- },
126
- });
127
- }
128
- throw new Error(`Unexpected file read: ${String(filePath)}`);
129
- });
130
- const cmd = program.commands.find((c) => c.name() === "update");
131
- await cmd?.parseAsync(["node", "test"]);
132
- // Should call execSync with pnpm update for only the installed dependencies (sorted alphabetically)
133
- expect(childProcess.execSync).toHaveBeenCalledWith("pnpm update @powerhousedao/builder-tools @powerhousedao/common", expect.objectContaining({
134
- stdio: "inherit",
135
- cwd: "/test/project",
136
- }));
137
- });
138
- it("should show message when no Powerhouse dependencies are found", async () => {
139
- // Mock fs.readFileSync to return package.json without any Powerhouse dependencies
140
- vi.mocked(fs.readFileSync).mockImplementation((filePath) => {
141
- if (filePath === path.join("/test/project", "package.json")) {
142
- return JSON.stringify({
143
- dependencies: {
144
- "some-other-package": "^1.0.0",
145
- },
146
- });
147
- }
148
- throw new Error(`Unexpected file read: ${String(filePath)}`);
149
- });
150
- const consoleSpy = vi.spyOn(console, "log");
151
- const cmd = program.commands.find((c) => c.name() === "update");
152
- await cmd?.parseAsync(["node", "test"]);
153
- expect(consoleSpy).toHaveBeenCalledWith("ℹ️ No Powerhouse dependencies found to update");
154
- expect(childProcess.execSync).not.toHaveBeenCalled();
155
- });
156
- });
157
- //# sourceMappingURL=update.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"update.test.js","sourceRoot":"","sources":["../../../../src/commands/__tests__/update.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=use.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use.test.d.ts","sourceRoot":"","sources":["../../../../src/commands/__tests__/use.test.ts"],"names":[],"mappings":""}