ph-cmd 6.0.0-dev.5 → 6.0.0-dev.7
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/build/cli.js +1495 -0
- package/package.json +8 -8
- package/dist/scripts/generate-commands-md.d.ts +0 -2
- package/dist/scripts/generate-commands-md.d.ts.map +0 -1
- package/dist/scripts/generate-commands-md.js +0 -72
- package/dist/scripts/generate-commands-md.js.map +0 -1
- package/dist/scripts/generate-version.d.ts +0 -2
- package/dist/scripts/generate-version.d.ts.map +0 -1
- package/dist/scripts/generate-version.js +0 -13
- package/dist/scripts/generate-version.js.map +0 -1
- package/dist/src/cli.d.ts +0 -3
- package/dist/src/cli.d.ts.map +0 -1
- package/dist/src/cli.js +0 -120
- package/dist/src/cli.js.map +0 -1
- package/dist/src/commands/__tests__/update.test.d.ts +0 -2
- package/dist/src/commands/__tests__/update.test.d.ts.map +0 -1
- package/dist/src/commands/__tests__/update.test.js +0 -157
- package/dist/src/commands/__tests__/update.test.js.map +0 -1
- package/dist/src/commands/__tests__/use.test.d.ts +0 -2
- package/dist/src/commands/__tests__/use.test.d.ts.map +0 -1
- package/dist/src/commands/__tests__/use.test.js +0 -496
- package/dist/src/commands/__tests__/use.test.js.map +0 -1
- package/dist/src/commands/checkout.d.ts +0 -9
- package/dist/src/commands/checkout.d.ts.map +0 -1
- package/dist/src/commands/checkout.js +0 -37
- package/dist/src/commands/checkout.js.map +0 -1
- package/dist/src/commands/forward.d.ts +0 -7
- package/dist/src/commands/forward.d.ts.map +0 -1
- package/dist/src/commands/forward.js +0 -45
- package/dist/src/commands/forward.js.map +0 -1
- package/dist/src/commands/help.d.ts +0 -7
- package/dist/src/commands/help.d.ts.map +0 -1
- package/dist/src/commands/help.js +0 -14
- package/dist/src/commands/help.js.map +0 -1
- package/dist/src/commands/index.d.ts +0 -9
- package/dist/src/commands/index.d.ts.map +0 -1
- package/dist/src/commands/index.js +0 -15
- package/dist/src/commands/index.js.map +0 -1
- package/dist/src/commands/init.d.ts +0 -2
- package/dist/src/commands/init.d.ts.map +0 -1
- package/dist/src/commands/init.js +0 -165
- package/dist/src/commands/init.js.map +0 -1
- package/dist/src/commands/setup-globals.d.ts +0 -20
- package/dist/src/commands/setup-globals.d.ts.map +0 -1
- package/dist/src/commands/setup-globals.js +0 -24
- package/dist/src/commands/setup-globals.js.map +0 -1
- package/dist/src/commands/update.d.ts +0 -2
- package/dist/src/commands/update.d.ts.map +0 -1
- package/dist/src/commands/update.js +0 -95
- package/dist/src/commands/update.js.map +0 -1
- package/dist/src/commands/update.old.d.ts +0 -13
- package/dist/src/commands/update.old.d.ts.map +0 -1
- package/dist/src/commands/update.old.js +0 -105
- package/dist/src/commands/update.old.js.map +0 -1
- package/dist/src/commands/use-local.d.ts +0 -2
- package/dist/src/commands/use-local.d.ts.map +0 -1
- package/dist/src/commands/use-local.js +0 -115
- package/dist/src/commands/use-local.js.map +0 -1
- package/dist/src/commands/use.d.ts +0 -2
- package/dist/src/commands/use.d.ts.map +0 -1
- package/dist/src/commands/use.js +0 -117
- package/dist/src/commands/use.js.map +0 -1
- package/dist/src/commands/use.old.d.ts +0 -55
- package/dist/src/commands/use.old.d.ts.map +0 -1
- package/dist/src/commands/use.old.js +0 -219
- package/dist/src/commands/use.old.js.map +0 -1
- package/dist/src/commands/version.d.ts +0 -5
- package/dist/src/commands/version.d.ts.map +0 -1
- package/dist/src/commands/version.js +0 -42
- package/dist/src/commands/version.js.map +0 -1
- package/dist/src/help.d.ts +0 -25
- package/dist/src/help.d.ts.map +0 -1
- package/dist/src/help.js +0 -230
- package/dist/src/help.js.map +0 -1
- package/dist/src/index.d.ts +0 -3
- package/dist/src/index.d.ts.map +0 -1
- package/dist/src/index.js +0 -3
- package/dist/src/index.js.map +0 -1
- package/dist/src/types.d.ts +0 -2
- package/dist/src/types.d.ts.map +0 -1
- package/dist/src/types.js +0 -2
- package/dist/src/types.js.map +0 -1
- package/dist/src/utils/constants.d.ts +0 -59
- package/dist/src/utils/constants.d.ts.map +0 -1
- package/dist/src/utils/constants.js +0 -102
- package/dist/src/utils/constants.js.map +0 -1
- package/dist/src/utils/dependencies.d.ts +0 -4
- package/dist/src/utils/dependencies.d.ts.map +0 -1
- package/dist/src/utils/dependencies.js +0 -61
- package/dist/src/utils/dependencies.js.map +0 -1
- package/dist/src/utils/file-system.d.ts +0 -2
- package/dist/src/utils/file-system.d.ts.map +0 -1
- package/dist/src/utils/file-system.js +0 -12
- package/dist/src/utils/file-system.js.map +0 -1
- package/dist/src/utils/help-formatting.d.ts +0 -35
- package/dist/src/utils/help-formatting.d.ts.map +0 -1
- package/dist/src/utils/help-formatting.js +0 -188
- package/dist/src/utils/help-formatting.js.map +0 -1
- package/dist/src/utils/help.d.ts +0 -31
- package/dist/src/utils/help.d.ts.map +0 -1
- package/dist/src/utils/help.js +0 -72
- package/dist/src/utils/help.js.map +0 -1
- package/dist/src/utils/index.d.ts +0 -8
- package/dist/src/utils/index.d.ts.map +0 -1
- package/dist/src/utils/index.js +0 -7
- package/dist/src/utils/index.js.map +0 -1
- package/dist/src/utils/package-manager.d.ts +0 -27
- package/dist/src/utils/package-manager.d.ts.map +0 -1
- package/dist/src/utils/package-manager.js +0 -177
- package/dist/src/utils/package-manager.js.map +0 -1
- package/dist/src/utils/parsing.d.ts +0 -20
- package/dist/src/utils/parsing.d.ts.map +0 -1
- package/dist/src/utils/parsing.js +0 -52
- package/dist/src/utils/parsing.js.map +0 -1
- package/dist/src/utils/run-cmd.d.ts +0 -2
- package/dist/src/utils/run-cmd.d.ts.map +0 -1
- package/dist/src/utils/run-cmd.js +0 -11
- package/dist/src/utils/run-cmd.js.map +0 -1
- package/dist/src/utils/types.d.ts +0 -21
- package/dist/src/utils/types.d.ts.map +0 -1
- package/dist/src/utils/types.js +0 -2
- package/dist/src/utils/types.js.map +0 -1
- package/dist/src/utils/validate-remote-drive-checkout.d.ts +0 -7
- package/dist/src/utils/validate-remote-drive-checkout.d.ts.map +0 -1
- package/dist/src/utils/validate-remote-drive-checkout.js +0 -45
- package/dist/src/utils/validate-remote-drive-checkout.js.map +0 -1
- package/dist/src/utils/validate-remote-drive.d.ts +0 -7
- package/dist/src/utils/validate-remote-drive.d.ts.map +0 -1
- package/dist/src/utils/validate-remote-drive.js +0 -51
- package/dist/src/utils/validate-remote-drive.js.map +0 -1
- package/dist/src/version.d.ts +0 -2
- package/dist/src/version.d.ts.map +0 -1
- package/dist/src/version.js +0 -3
- package/dist/src/version.js.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
- package/dist/vitest.config.d.ts +0 -3
- package/dist/vitest.config.d.ts.map +0 -1
- package/dist/vitest.config.js +0 -7
- 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.
|
|
3
|
+
"version": "6.0.0-dev.7",
|
|
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": "
|
|
15
|
+
"ph": "build/cli.js"
|
|
16
16
|
},
|
|
17
17
|
"files": [
|
|
18
|
-
"
|
|
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.
|
|
34
|
-
"@powerhousedao/common": "6.0.0-dev.
|
|
31
|
+
"@powerhousedao/codegen": "6.0.0-dev.7",
|
|
32
|
+
"@powerhousedao/common": "6.0.0-dev.7"
|
|
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
|
-
"
|
|
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 +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 +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
package/dist/src/cli.d.ts.map
DELETED
|
@@ -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
|
package/dist/src/cli.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -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 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"use.test.d.ts","sourceRoot":"","sources":["../../../../src/commands/__tests__/use.test.ts"],"names":[],"mappings":""}
|