ph-cmd 0.43.13-staging.1 → 0.43.13-staging.2
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/scripts/generate-commands-md.d.ts +2 -0
- package/dist/scripts/generate-commands-md.d.ts.map +1 -0
- package/dist/scripts/generate-commands-md.js +72 -0
- package/dist/scripts/generate-commands-md.js.map +1 -0
- package/dist/scripts/generate-version.d.ts +2 -0
- package/dist/scripts/generate-version.d.ts.map +1 -0
- package/dist/scripts/generate-version.js +13 -0
- package/dist/scripts/generate-version.js.map +1 -0
- package/dist/src/cli.js +39 -4
- package/dist/src/cli.js.map +1 -1
- package/dist/src/commands/__tests__/update.test.js +4 -4
- package/dist/src/commands/__tests__/update.test.js.map +1 -1
- package/dist/src/commands/__tests__/use.test.js +4 -4
- package/dist/src/commands/__tests__/use.test.js.map +1 -1
- package/dist/src/commands/forward.d.ts +2 -1
- package/dist/src/commands/forward.d.ts.map +1 -1
- package/dist/src/commands/forward.js +13 -4
- package/dist/src/commands/forward.js.map +1 -1
- package/dist/src/commands/help.d.ts +7 -0
- package/dist/src/commands/help.d.ts.map +1 -0
- package/dist/src/commands/help.js +14 -0
- package/dist/src/commands/help.js.map +1 -0
- package/dist/src/commands/index.d.ts +4 -2
- package/dist/src/commands/index.d.ts.map +1 -1
- package/dist/src/commands/index.js +6 -0
- package/dist/src/commands/index.js.map +1 -1
- package/dist/src/commands/init.d.ts +10 -9
- package/dist/src/commands/init.d.ts.map +1 -1
- package/dist/src/commands/init.js +7 -4
- package/dist/src/commands/init.js.map +1 -1
- package/dist/src/commands/setup-globals.d.ts +10 -9
- package/dist/src/commands/setup-globals.d.ts.map +1 -1
- package/dist/src/commands/setup-globals.js +7 -26
- package/dist/src/commands/setup-globals.js.map +1 -1
- package/dist/src/commands/update.d.ts +7 -8
- package/dist/src/commands/update.d.ts.map +1 -1
- package/dist/src/commands/update.js +9 -16
- package/dist/src/commands/update.js.map +1 -1
- package/dist/src/commands/use.d.ts +13 -12
- package/dist/src/commands/use.d.ts.map +1 -1
- package/dist/src/commands/use.js +21 -9
- package/dist/src/commands/use.js.map +1 -1
- package/dist/src/commands/version.d.ts +4 -0
- package/dist/src/commands/version.d.ts.map +1 -0
- package/dist/src/commands/version.js +25 -0
- package/dist/src/commands/version.js.map +1 -0
- package/dist/src/help.d.ts +21 -0
- package/dist/src/help.d.ts.map +1 -0
- package/dist/src/help.js +186 -0
- package/dist/src/help.js.map +1 -0
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/utils/help-formatting.d.ts +35 -0
- package/dist/src/utils/help-formatting.d.ts.map +1 -0
- package/dist/src/utils/help-formatting.js +176 -0
- package/dist/src/utils/help-formatting.js.map +1 -0
- package/dist/src/{utils.d.ts → utils/index.d.ts} +44 -4
- package/dist/src/utils/index.d.ts.map +1 -0
- package/dist/src/{utils.js → utils/index.js} +121 -7
- package/dist/src/utils/index.js.map +1 -0
- package/dist/src/version.d.ts +2 -0
- package/dist/src/version.d.ts.map +1 -0
- package/dist/src/version.js +3 -0
- package/dist/src/version.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -2
- package/dist/src/utils.d.ts.map +0 -1
- package/dist/src/utils.js.map +0 -1
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
import { forwardPHCommand, getPackageManagerFromLockfile, getProjectInfo, } from "./index.js";
|
|
2
|
+
// Configuration constants for help formatting
|
|
3
|
+
export const HELP_FORMATTING_CONFIG = {
|
|
4
|
+
// Column width for command descriptions alignment
|
|
5
|
+
FIXED_COLUMN_WIDTH: 55,
|
|
6
|
+
// List of command names to apply padding to
|
|
7
|
+
COMMANDS_TO_PAD: ["setup-globals", "init", "use", "update", "help"],
|
|
8
|
+
// Padding to add before command descriptions for alignment
|
|
9
|
+
DESCRIPTION_PADDING: " ",
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Extracts command and description parts from a command line
|
|
13
|
+
* @param {string} line - A line from the help text containing a command
|
|
14
|
+
* @returns {{ cmd: string, desc: string }} Normalized command parts
|
|
15
|
+
*/
|
|
16
|
+
function extractCommandParts(line) {
|
|
17
|
+
// First try to match a command with options and arguments
|
|
18
|
+
let match = /^(\s+\S+(?:\|\S+)*(?:\s+\[options\])?(?:\s+\[[^\]]+\]|\s+<[^>]+>)*)(.*)$/.exec(line);
|
|
19
|
+
if (!match) {
|
|
20
|
+
// Fallback to a simpler pattern
|
|
21
|
+
match = /^(\s+\S+(?:\|\S+)*)(.*)$/.exec(line);
|
|
22
|
+
}
|
|
23
|
+
if (!match) {
|
|
24
|
+
return { cmd: line, desc: "" };
|
|
25
|
+
}
|
|
26
|
+
return {
|
|
27
|
+
cmd: match[1].trimEnd(),
|
|
28
|
+
desc: match[2].trim(),
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Formats a command with proper description alignment
|
|
33
|
+
* @param {object} parts - Command parts with cmd and desc properties
|
|
34
|
+
* @param {number} columnWidth - Fixed position for descriptions to start
|
|
35
|
+
* @returns {string} Formatted command line
|
|
36
|
+
*/
|
|
37
|
+
function formatCommandLine({ cmd, desc }, columnWidth) {
|
|
38
|
+
// Calculate padding needed for alignment
|
|
39
|
+
const padding = " ".repeat(Math.max(2, columnWidth - cmd.length));
|
|
40
|
+
return `${cmd}${padding}${desc}`;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Extracts command lines from help text starting from the Commands section
|
|
44
|
+
* @param {string[]} lines - Help text split into lines
|
|
45
|
+
* @param {number} startIndex - Index of the Commands section header
|
|
46
|
+
* @returns {string[]} Array of command lines
|
|
47
|
+
*/
|
|
48
|
+
function extractCommandLines(lines, startIndex) {
|
|
49
|
+
const commands = [];
|
|
50
|
+
for (let i = startIndex + 1; i < lines.length; i++) {
|
|
51
|
+
const line = lines[i];
|
|
52
|
+
// Stop when we hit an empty line or no longer see command formatting
|
|
53
|
+
if (!line.trim() || !/^\s{2}\S/.exec(line)) {
|
|
54
|
+
break;
|
|
55
|
+
}
|
|
56
|
+
commands.push(line);
|
|
57
|
+
}
|
|
58
|
+
return commands;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Merges CLI help text with the forwarded PH CLI help text
|
|
62
|
+
* @param {string} cliHelp - Commander-generated help text
|
|
63
|
+
* @param {string} forwardedHelp - Help text from the PH CLI
|
|
64
|
+
* @returns {string} Merged help text
|
|
65
|
+
*/
|
|
66
|
+
export function mergeHelp(cliHelp, forwardedHelp) {
|
|
67
|
+
// Split help text into lines
|
|
68
|
+
const cliLines = cliHelp.split("\n");
|
|
69
|
+
const forwardedLines = forwardedHelp.split("\n");
|
|
70
|
+
// Find the Commands section in both help texts
|
|
71
|
+
const cliCommandsIndex = cliLines.findIndex((line) => line.trim() === "Commands:");
|
|
72
|
+
const forwardedCommandsIndex = forwardedLines.findIndex((line) => line.trim() === "Commands:");
|
|
73
|
+
// Extract command lines
|
|
74
|
+
const cliCommands = extractCommandLines(cliLines, cliCommandsIndex);
|
|
75
|
+
const forwardedCommands = extractCommandLines(forwardedLines, forwardedCommandsIndex);
|
|
76
|
+
// Create a set of CLI command names to avoid duplicates
|
|
77
|
+
const cliCommandNames = new Set();
|
|
78
|
+
cliCommands.forEach((line) => {
|
|
79
|
+
const match = /^\s+(\S+)(?:\|.*)?/.exec(line);
|
|
80
|
+
if (match)
|
|
81
|
+
cliCommandNames.add(match[1]);
|
|
82
|
+
});
|
|
83
|
+
// Filter out duplicate commands from forwarded help
|
|
84
|
+
const uniqueForwardedCommands = forwardedCommands.filter((line) => {
|
|
85
|
+
const match = /^\s+(\S+)(?:\|.*)?/.exec(line);
|
|
86
|
+
if (!match)
|
|
87
|
+
return false;
|
|
88
|
+
// Explicitly filter out 'help' command from forwarded commands
|
|
89
|
+
if (match[1] === "help")
|
|
90
|
+
return false;
|
|
91
|
+
return !cliCommandNames.has(match[1]);
|
|
92
|
+
});
|
|
93
|
+
// Process and format all commands
|
|
94
|
+
const cliParts = cliCommands.map(extractCommandParts);
|
|
95
|
+
const forwardedParts = uniqueForwardedCommands.map(extractCommandParts);
|
|
96
|
+
// Format with consistent alignment
|
|
97
|
+
const formattedCliCommands = cliParts.map((parts) => formatCommandLine(parts, HELP_FORMATTING_CONFIG.FIXED_COLUMN_WIDTH));
|
|
98
|
+
const formattedForwardedCommands = forwardedParts.map((parts) => formatCommandLine(parts, HELP_FORMATTING_CONFIG.FIXED_COLUMN_WIDTH));
|
|
99
|
+
// Extract header section
|
|
100
|
+
const headerSection = cliLines.slice(0, cliCommandsIndex + 1).join("\n");
|
|
101
|
+
// Combine all sections
|
|
102
|
+
return [
|
|
103
|
+
headerSection,
|
|
104
|
+
formattedCliCommands.join("\n"),
|
|
105
|
+
formattedForwardedCommands.join("\n"),
|
|
106
|
+
].join("\n");
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Applies padding to command descriptions for better alignment
|
|
110
|
+
* @param {Command} program - Commander program instance
|
|
111
|
+
*/
|
|
112
|
+
export function applyCommandPadding(program) {
|
|
113
|
+
program.commands.forEach((cmd) => {
|
|
114
|
+
if (HELP_FORMATTING_CONFIG.COMMANDS_TO_PAD.includes(cmd.name())) {
|
|
115
|
+
// Store original description in a property we can retrieve later
|
|
116
|
+
const desc = cmd.description();
|
|
117
|
+
// Add padding to the description
|
|
118
|
+
cmd.description(HELP_FORMATTING_CONFIG.DESCRIPTION_PADDING + desc);
|
|
119
|
+
}
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Restores original command descriptions after generating help
|
|
124
|
+
* @param {Command} program - Commander program instance
|
|
125
|
+
*/
|
|
126
|
+
export function restoreCommandDescriptions(program) {
|
|
127
|
+
program.commands.forEach((cmd) => {
|
|
128
|
+
if (HELP_FORMATTING_CONFIG.COMMANDS_TO_PAD.includes(cmd.name())) {
|
|
129
|
+
const desc = cmd.description();
|
|
130
|
+
cmd.description(desc.trim());
|
|
131
|
+
}
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Captures Commander help output as a string
|
|
136
|
+
* @param {Command} program - Commander program instance
|
|
137
|
+
* @returns {string} Help text as a string
|
|
138
|
+
*/
|
|
139
|
+
export function captureCommanderHelp(program) {
|
|
140
|
+
let helpText = "";
|
|
141
|
+
const originalConsoleLog = console.log;
|
|
142
|
+
// Override console.log to capture output
|
|
143
|
+
console.log = (...args) => {
|
|
144
|
+
helpText += args.join(" ") + "\n";
|
|
145
|
+
};
|
|
146
|
+
program.outputHelp();
|
|
147
|
+
// Restore console.log
|
|
148
|
+
console.log = originalConsoleLog;
|
|
149
|
+
return helpText;
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Generates and displays the merged help output
|
|
153
|
+
* @param {Command} program - Commander program instance
|
|
154
|
+
*/
|
|
155
|
+
export async function generateMergedHelp(program) {
|
|
156
|
+
// Get project information
|
|
157
|
+
const projectInfo = await getProjectInfo(undefined, false);
|
|
158
|
+
if (projectInfo.available) {
|
|
159
|
+
const packageManager = getPackageManagerFromLockfile(projectInfo.path);
|
|
160
|
+
// Get forwarded help from PH CLI
|
|
161
|
+
const forwardedHelp = forwardPHCommand(packageManager, projectInfo.path, "help", undefined, true);
|
|
162
|
+
// Apply padding to command descriptions for better alignment
|
|
163
|
+
applyCommandPadding(program);
|
|
164
|
+
// Capture the output without displaying it
|
|
165
|
+
const helpText = captureCommanderHelp(program);
|
|
166
|
+
// Restore original descriptions
|
|
167
|
+
restoreCommandDescriptions(program);
|
|
168
|
+
// Merge and display help
|
|
169
|
+
const mergedHelp = mergeHelp(helpText, forwardedHelp);
|
|
170
|
+
console.log(mergedHelp);
|
|
171
|
+
}
|
|
172
|
+
else {
|
|
173
|
+
console.log(captureCommanderHelp(program));
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
//# sourceMappingURL=help-formatting.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"help-formatting.js","sourceRoot":"","sources":["../../../src/utils/help-formatting.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { type Command } from "commander";
|
|
2
|
+
export * from "./help-formatting.js";
|
|
1
3
|
export declare const PH_BIN_PATH: string;
|
|
2
4
|
export declare const PH_BIN = "ph-cli";
|
|
3
5
|
export declare const PH_CLI_COMMANDS: string[];
|
|
@@ -48,6 +50,7 @@ export declare const packageManagers: {
|
|
|
48
50
|
};
|
|
49
51
|
export type ProjectInfo = {
|
|
50
52
|
isGlobal: boolean;
|
|
53
|
+
available: boolean;
|
|
51
54
|
path: string;
|
|
52
55
|
};
|
|
53
56
|
export type PackageManager = "npm" | "yarn" | "pnpm" | "bun";
|
|
@@ -57,8 +60,8 @@ export declare function isPowerhouseProject(dir: string): boolean;
|
|
|
57
60
|
export declare function findNodeProjectRoot(dir: string, pathValidation?: PathValidation): string | null;
|
|
58
61
|
export declare function getPackageManagerFromPath(dir: string): PackageManager;
|
|
59
62
|
export declare function getPackageManagerFromLockfile(dir: string): PackageManager;
|
|
60
|
-
export declare function getProjectInfo(debug?: boolean): ProjectInfo
|
|
61
|
-
export declare function forwardPHCommand(packageManager: PackageManager, projectPath: string, args: string, debug?: boolean):
|
|
63
|
+
export declare function getProjectInfo(debug?: boolean, generateGlobalProject?: boolean): Promise<ProjectInfo>;
|
|
64
|
+
export declare function forwardPHCommand(packageManager: PackageManager, projectPath: string, args: string, debug?: boolean, captureOutput?: boolean): string;
|
|
62
65
|
/**
|
|
63
66
|
* Recursively searches for a specific file by traversing up the directory tree.
|
|
64
67
|
* Starting from the given path, it checks each parent directory until it finds
|
|
@@ -77,5 +80,42 @@ export declare function forwardPHCommand(packageManager: PackageManager, project
|
|
|
77
80
|
*/
|
|
78
81
|
export declare const findContainerDirectory: (startPath: string, targetFile: string) => string | null;
|
|
79
82
|
export declare function installDependency(packageManager: PackageManager, dependencies: string[], projectPath: string, workspace?: boolean): void;
|
|
80
|
-
export {
|
|
81
|
-
|
|
83
|
+
export type GlobalProjectOptions = {
|
|
84
|
+
project?: string;
|
|
85
|
+
interactive?: boolean;
|
|
86
|
+
version?: string;
|
|
87
|
+
dev?: boolean;
|
|
88
|
+
staging?: boolean;
|
|
89
|
+
packageManager?: string;
|
|
90
|
+
};
|
|
91
|
+
export declare const createGlobalProject: (projectName?: string, options?: GlobalProjectOptions) => Promise<void>;
|
|
92
|
+
/**
|
|
93
|
+
* Helper to handle help flag detection for commands
|
|
94
|
+
* This centralizes the pattern of checking for help flags and showing command-specific help
|
|
95
|
+
*
|
|
96
|
+
* @param command - The Command instance
|
|
97
|
+
* @param actionFn - The original action function to call if help is not requested
|
|
98
|
+
* @returns A wrapped action function
|
|
99
|
+
*/
|
|
100
|
+
export declare function withHelpHandler<T extends unknown[]>(command: Command, actionFn: (...args: T) => Promise<void> | void): (...args: T) => Promise<void> | void;
|
|
101
|
+
/**
|
|
102
|
+
* Simplified utility to connect a command with an action function that includes help handling
|
|
103
|
+
* This reduces boilerplate in command files by automatically setting up the action with help handling
|
|
104
|
+
*
|
|
105
|
+
* @param command - The Command instance
|
|
106
|
+
* @param actionFn - The action function to call when the command is executed
|
|
107
|
+
* @param preCheck - Optional validation function that runs before the action
|
|
108
|
+
* @returns The command for chaining
|
|
109
|
+
*/
|
|
110
|
+
export declare function withHelpAction<T extends unknown[]>(command: Command, actionFn: (...args: T) => Promise<void> | void, preCheck?: (...args: T) => boolean | undefined): Command;
|
|
111
|
+
/**
|
|
112
|
+
* Enhanced version of withHelpAction that allows custom help text without duplication
|
|
113
|
+
*
|
|
114
|
+
* @param command - The Command instance
|
|
115
|
+
* @param actionFn - The action function to call when the command is executed
|
|
116
|
+
* @param helpText - The custom help text to display (replacing the auto-generated help)
|
|
117
|
+
* @param preCheck - Optional validation function that runs before the action
|
|
118
|
+
* @returns The command for chaining
|
|
119
|
+
*/
|
|
120
|
+
export declare function withCustomHelp<T extends unknown[]>(command: Command, actionFn: (...args: T) => Promise<void> | void, helpText: string, preCheck?: (...args: T) => boolean | undefined): Command;
|
|
121
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
import { createProject, parseVersion } from "@powerhousedao/codegen";
|
|
1
2
|
import { execSync } from "node:child_process";
|
|
2
3
|
import fs from "node:fs";
|
|
3
4
|
import { homedir } from "node:os";
|
|
4
5
|
import path, { dirname } from "node:path";
|
|
6
|
+
export * from "./help-formatting.js";
|
|
5
7
|
export const PH_BIN_PATH = process.argv[1];
|
|
6
8
|
export const PH_BIN = "ph-cli";
|
|
7
9
|
export const PH_CLI_COMMANDS = [
|
|
@@ -110,24 +112,31 @@ export function getPackageManagerFromLockfile(dir) {
|
|
|
110
112
|
}
|
|
111
113
|
return "npm";
|
|
112
114
|
}
|
|
113
|
-
export function getProjectInfo(debug) {
|
|
115
|
+
export async function getProjectInfo(debug, generateGlobalProject = true) {
|
|
114
116
|
const currentPath = process.cwd();
|
|
115
117
|
if (debug) {
|
|
116
118
|
console.log(">>> currentPath:", currentPath);
|
|
117
119
|
}
|
|
118
120
|
const projectPath = findNodeProjectRoot(currentPath, isPowerhouseProject);
|
|
119
121
|
if (!projectPath) {
|
|
122
|
+
let available = fs.existsSync(POWERHOUSE_GLOBAL_DIR);
|
|
123
|
+
if (generateGlobalProject) {
|
|
124
|
+
await createGlobalProject();
|
|
125
|
+
available = true;
|
|
126
|
+
}
|
|
120
127
|
return {
|
|
128
|
+
available,
|
|
121
129
|
isGlobal: true,
|
|
122
130
|
path: POWERHOUSE_GLOBAL_DIR,
|
|
123
131
|
};
|
|
124
132
|
}
|
|
125
133
|
return {
|
|
126
134
|
isGlobal: false,
|
|
135
|
+
available: true,
|
|
127
136
|
path: projectPath,
|
|
128
137
|
};
|
|
129
138
|
}
|
|
130
|
-
export function forwardPHCommand(packageManager, projectPath, args, debug) {
|
|
139
|
+
export function forwardPHCommand(packageManager, projectPath, args, debug, captureOutput = false) {
|
|
131
140
|
const manager = packageManagers[packageManager];
|
|
132
141
|
const command = manager.execCommand;
|
|
133
142
|
const execCommand = command.replace("{{arguments}}", args);
|
|
@@ -138,10 +147,22 @@ export function forwardPHCommand(packageManager, projectPath, args, debug) {
|
|
|
138
147
|
console.log(">>> projectPath:", projectPath);
|
|
139
148
|
console.log(">>> packageManager:", packageManager);
|
|
140
149
|
}
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
150
|
+
if (captureOutput) {
|
|
151
|
+
// Capture output and return it
|
|
152
|
+
return execSync(execCommand, {
|
|
153
|
+
stdio: "pipe",
|
|
154
|
+
encoding: "utf8",
|
|
155
|
+
...commandOptions,
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
else {
|
|
159
|
+
// Original behavior - pipe directly to stdout/stderr
|
|
160
|
+
execSync(execCommand, {
|
|
161
|
+
stdio: "inherit",
|
|
162
|
+
...commandOptions,
|
|
163
|
+
});
|
|
164
|
+
return "";
|
|
165
|
+
}
|
|
145
166
|
}
|
|
146
167
|
/**
|
|
147
168
|
* Recursively searches for a specific file by traversing up the directory tree.
|
|
@@ -186,4 +207,97 @@ export function installDependency(packageManager, dependencies, projectPath, wor
|
|
|
186
207
|
...commandOptions,
|
|
187
208
|
});
|
|
188
209
|
}
|
|
189
|
-
|
|
210
|
+
export const createGlobalProject = async (projectName, options = {}) => {
|
|
211
|
+
// check if the global project already exists
|
|
212
|
+
const globalProjectExists = fs.existsSync(POWERHOUSE_GLOBAL_DIR);
|
|
213
|
+
if (globalProjectExists) {
|
|
214
|
+
console.log(`📦 Using global project: ${POWERHOUSE_GLOBAL_DIR}`);
|
|
215
|
+
return;
|
|
216
|
+
}
|
|
217
|
+
console.log("📦 Initializing global project...");
|
|
218
|
+
process.chdir(HOME_DIR);
|
|
219
|
+
try {
|
|
220
|
+
await createProject({
|
|
221
|
+
name: PH_GLOBAL_PROJECT_NAME,
|
|
222
|
+
interactive: false,
|
|
223
|
+
version: parseVersion(options),
|
|
224
|
+
packageManager: options.packageManager ?? getPackageManagerFromPath(PH_BIN_PATH),
|
|
225
|
+
});
|
|
226
|
+
console.log(`🚀 Global project initialized successfully: ${POWERHOUSE_GLOBAL_DIR}`);
|
|
227
|
+
}
|
|
228
|
+
catch (error) {
|
|
229
|
+
console.error("❌ Failed to initialize the global project", error);
|
|
230
|
+
}
|
|
231
|
+
};
|
|
232
|
+
/**
|
|
233
|
+
* Helper to handle help flag detection for commands
|
|
234
|
+
* This centralizes the pattern of checking for help flags and showing command-specific help
|
|
235
|
+
*
|
|
236
|
+
* @param command - The Command instance
|
|
237
|
+
* @param actionFn - The original action function to call if help is not requested
|
|
238
|
+
* @returns A wrapped action function
|
|
239
|
+
*/
|
|
240
|
+
export function withHelpHandler(command, actionFn) {
|
|
241
|
+
return (...args) => {
|
|
242
|
+
// Check if help was requested
|
|
243
|
+
const rawArgs = process.argv;
|
|
244
|
+
const isHelpRequested = rawArgs.includes("--help") || rawArgs.includes("-h");
|
|
245
|
+
// If help was explicitly requested, show the help and exit
|
|
246
|
+
if (isHelpRequested) {
|
|
247
|
+
command.outputHelp();
|
|
248
|
+
process.exit(0);
|
|
249
|
+
}
|
|
250
|
+
// Otherwise, run the original action
|
|
251
|
+
return actionFn(...args);
|
|
252
|
+
};
|
|
253
|
+
}
|
|
254
|
+
/**
|
|
255
|
+
* Simplified utility to connect a command with an action function that includes help handling
|
|
256
|
+
* This reduces boilerplate in command files by automatically setting up the action with help handling
|
|
257
|
+
*
|
|
258
|
+
* @param command - The Command instance
|
|
259
|
+
* @param actionFn - The action function to call when the command is executed
|
|
260
|
+
* @param preCheck - Optional validation function that runs before the action
|
|
261
|
+
* @returns The command for chaining
|
|
262
|
+
*/
|
|
263
|
+
export function withHelpAction(command, actionFn, preCheck) {
|
|
264
|
+
command.action(withHelpHandler(command, (...args) => {
|
|
265
|
+
// If there's a pre-check function, run it before the action
|
|
266
|
+
if (preCheck) {
|
|
267
|
+
const result = preCheck(...args);
|
|
268
|
+
// If the pre-check returns false explicitly, don't run the action
|
|
269
|
+
if (result === false)
|
|
270
|
+
return;
|
|
271
|
+
}
|
|
272
|
+
return actionFn(...args);
|
|
273
|
+
}));
|
|
274
|
+
return command;
|
|
275
|
+
}
|
|
276
|
+
/**
|
|
277
|
+
* Enhanced version of withHelpAction that allows custom help text without duplication
|
|
278
|
+
*
|
|
279
|
+
* @param command - The Command instance
|
|
280
|
+
* @param actionFn - The action function to call when the command is executed
|
|
281
|
+
* @param helpText - The custom help text to display (replacing the auto-generated help)
|
|
282
|
+
* @param preCheck - Optional validation function that runs before the action
|
|
283
|
+
* @returns The command for chaining
|
|
284
|
+
*/
|
|
285
|
+
export function withCustomHelp(command, actionFn, helpText, preCheck) {
|
|
286
|
+
// Clear any existing help text
|
|
287
|
+
command.helpInformation = function () {
|
|
288
|
+
const name = command.name();
|
|
289
|
+
const args = command.usage();
|
|
290
|
+
const description = command.description();
|
|
291
|
+
// Create a minimal header
|
|
292
|
+
let header = `\nUsage: ph ${name}`;
|
|
293
|
+
if (args)
|
|
294
|
+
header += ` ${args}`;
|
|
295
|
+
if (description)
|
|
296
|
+
header += `\n\n${description}\n`;
|
|
297
|
+
// Return the custom help text
|
|
298
|
+
return header + "\n" + helpText;
|
|
299
|
+
};
|
|
300
|
+
// Add help action handler
|
|
301
|
+
return withHelpAction(command, actionFn, preCheck);
|
|
302
|
+
}
|
|
303
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAErE,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,IAAI,EAAE,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAE1C,cAAc,sBAAsB,CAAC;AACrC,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;KACpB;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;KACpC;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;KACtB;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;KACpB;CACO,CAAC;AAYX,MAAM,UAAU,qBAAqB;IACnC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,GAAW;IAC7C,MAAM,oBAAoB,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,CAAC,CAAC;IAEpE,OAAO,EAAE,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,GAAW,EACX,iBAAiC,qBAAqB;IAEtD,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;IAEvD,IAAI,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1D,OAAO,GAAG,CAAC;IACb,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAE/B,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,mBAAmB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,GAAW;IACnD,MAAM,aAAa,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;IAExC,IAAI,eAAe,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;QAC7D,OAAO,KAAK,CAAC;IACf,CAAC;SAAM,IAAI,eAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;QACrE,OAAO,MAAM,CAAC;IAChB,CAAC;SAAM,IAAI,eAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;QACrE,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,GAAW;IACvD,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;QACjE,OAAO,MAAM,CAAC;IAChB,CAAC;SAAM,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;QACxE,OAAO,MAAM,CAAC;IAChB,CAAC;SAAM,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;QACvE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,KAAe,EACf,qBAAqB,GAAG,IAAI;IAE5B,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAElC,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,WAAW,GAAG,mBAAmB,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;IAE1E,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,IAAI,SAAS,GAAG,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;QAErD,IAAI,qBAAqB,EAAE,CAAC;YAC1B,MAAM,mBAAmB,EAAE,CAAC;YAC5B,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC;QAED,OAAO;YACL,SAAS;YACT,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,qBAAqB;SAC5B,CAAC;IACJ,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,KAAK;QACf,SAAS,EAAE,IAAI;QACf,IAAI,EAAE,WAAW;KAClB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,cAA8B,EAC9B,WAAmB,EACnB,IAAY,EACZ,KAAe,EACf,aAAa,GAAG,KAAK;IAErB,MAAM,OAAO,GAAG,eAAe,CAAC,cAAc,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC;IACpC,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;IAE3D,MAAM,cAAc,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC;IAE5C,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,cAAc,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,cAAc,CAAC,CAAC;IACrD,CAAC;IAED,IAAI,aAAa,EAAE,CAAC;QAClB,+BAA+B;QAC/B,OAAO,QAAQ,CAAC,WAAW,EAAE;YAC3B,KAAK,EAAE,MAAM;YACb,QAAQ,EAAE,MAAM;YAChB,GAAG,cAAc;SAClB,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,qDAAqD;QACrD,QAAQ,CAAC,WAAW,EAAE;YACpB,KAAK,EAAE,SAAS;YAChB,GAAG,cAAc;SAClB,CAAC,CAAC;QACH,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CACpC,SAAiB,EACjB,UAAkB,EACH,EAAE;IACjB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAElD,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAE1C,uDAAuD;IACvD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,sBAAsB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;AACvD,CAAC,CAAC;AAEF,MAAM,UAAU,iBAAiB,CAC/B,cAA8B,EAC9B,YAAsB,EACtB,WAAmB,EACnB,SAAmB;IAEnB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAChC,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;AAWD,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EACtC,WAAoB,EACpB,UAAgC,EAAE,EAClC,EAAE;IACF,6CAA6C;IAC7C,MAAM,mBAAmB,GAAG,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;IAEjE,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,OAAO,CAAC,cAAc,IAAI,yBAAyB,CAAC,WAAW,CAAC;SACnE,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;AAEF;;;;;;;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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,OAAO,sBAAsB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,4CAA4C;AAC5C,MAAM,CAAC,MAAM,OAAO,GAAG,mBAAmB,CAAC"}
|