ph-cmd 0.43.14-dev.0 → 0.43.14-dev.10

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 (70) hide show
  1. package/dist/scripts/generate-commands-md.d.ts +2 -0
  2. package/dist/scripts/generate-commands-md.d.ts.map +1 -0
  3. package/dist/scripts/generate-commands-md.js +72 -0
  4. package/dist/scripts/generate-commands-md.js.map +1 -0
  5. package/dist/scripts/generate-version.d.ts +2 -0
  6. package/dist/scripts/generate-version.d.ts.map +1 -0
  7. package/dist/scripts/generate-version.js +13 -0
  8. package/dist/scripts/generate-version.js.map +1 -0
  9. package/dist/src/cli.js +65 -8
  10. package/dist/src/cli.js.map +1 -1
  11. package/dist/src/commands/__tests__/update.test.js +21 -17
  12. package/dist/src/commands/__tests__/update.test.js.map +1 -1
  13. package/dist/src/commands/__tests__/use.test.js +20 -16
  14. package/dist/src/commands/__tests__/use.test.js.map +1 -1
  15. package/dist/src/commands/forward.d.ts +2 -1
  16. package/dist/src/commands/forward.d.ts.map +1 -1
  17. package/dist/src/commands/forward.js +16 -4
  18. package/dist/src/commands/forward.js.map +1 -1
  19. package/dist/src/commands/help.d.ts +7 -0
  20. package/dist/src/commands/help.d.ts.map +1 -0
  21. package/dist/src/commands/help.js +14 -0
  22. package/dist/src/commands/help.js.map +1 -0
  23. package/dist/src/commands/index.d.ts +4 -2
  24. package/dist/src/commands/index.d.ts.map +1 -1
  25. package/dist/src/commands/index.js +6 -0
  26. package/dist/src/commands/index.js.map +1 -1
  27. package/dist/src/commands/init.d.ts +10 -9
  28. package/dist/src/commands/init.d.ts.map +1 -1
  29. package/dist/src/commands/init.js +7 -4
  30. package/dist/src/commands/init.js.map +1 -1
  31. package/dist/src/commands/setup-globals.d.ts +10 -9
  32. package/dist/src/commands/setup-globals.d.ts.map +1 -1
  33. package/dist/src/commands/setup-globals.js +7 -26
  34. package/dist/src/commands/setup-globals.js.map +1 -1
  35. package/dist/src/commands/update.d.ts +7 -8
  36. package/dist/src/commands/update.d.ts.map +1 -1
  37. package/dist/src/commands/update.js +9 -16
  38. package/dist/src/commands/update.js.map +1 -1
  39. package/dist/src/commands/use.d.ts +13 -12
  40. package/dist/src/commands/use.d.ts.map +1 -1
  41. package/dist/src/commands/use.js +21 -9
  42. package/dist/src/commands/use.js.map +1 -1
  43. package/dist/src/commands/version.d.ts +4 -0
  44. package/dist/src/commands/version.d.ts.map +1 -0
  45. package/dist/src/commands/version.js +25 -0
  46. package/dist/src/commands/version.js.map +1 -0
  47. package/dist/src/help.d.ts +21 -0
  48. package/dist/src/help.d.ts.map +1 -0
  49. package/dist/src/help.js +186 -0
  50. package/dist/src/help.js.map +1 -0
  51. package/dist/src/index.d.ts +1 -1
  52. package/dist/src/index.d.ts.map +1 -1
  53. package/dist/src/index.js +1 -1
  54. package/dist/src/index.js.map +1 -1
  55. package/dist/src/utils/help-formatting.d.ts +35 -0
  56. package/dist/src/utils/help-formatting.d.ts.map +1 -0
  57. package/dist/src/utils/help-formatting.js +176 -0
  58. package/dist/src/utils/help-formatting.js.map +1 -0
  59. package/dist/src/{utils.d.ts → utils/index.d.ts} +44 -4
  60. package/dist/src/utils/index.d.ts.map +1 -0
  61. package/dist/src/{utils.js → utils/index.js} +121 -7
  62. package/dist/src/utils/index.js.map +1 -0
  63. package/dist/src/version.d.ts +2 -0
  64. package/dist/src/version.d.ts.map +1 -0
  65. package/dist/src/version.js +3 -0
  66. package/dist/src/version.js.map +1 -0
  67. package/dist/tsconfig.tsbuildinfo +1 -1
  68. package/package.json +5 -3
  69. package/dist/src/utils.d.ts.map +0 -1
  70. package/dist/src/utils.js.map +0 -1
@@ -1,4 +1,6 @@
1
1
  import { createProject, parseVersion } from "@powerhousedao/codegen";
2
+ import { initHelp } from "../help.js";
3
+ import { getPackageManagerFromPath, PH_BIN_PATH, withCustomHelp, } from "../utils/index.js";
2
4
  export const init = async (projectName, options) => {
3
5
  console.log("Initializing a new project...");
4
6
  try {
@@ -6,7 +8,7 @@ export const init = async (projectName, options) => {
6
8
  name: options.project ?? projectName,
7
9
  interactive: options.interactive ?? false,
8
10
  version: parseVersion(options),
9
- packageManager: options.packageManager,
11
+ packageManager: options.packageManager ?? getPackageManagerFromPath(PH_BIN_PATH),
10
12
  });
11
13
  }
12
14
  catch (error) {
@@ -14,7 +16,7 @@ export const init = async (projectName, options) => {
14
16
  }
15
17
  };
16
18
  export function initCommand(program) {
17
- program
19
+ const initCmd = program
18
20
  .command("init")
19
21
  .description("Initialize a new project")
20
22
  .argument("[project-name]", "Name of the project")
@@ -23,7 +25,8 @@ export function initCommand(program) {
23
25
  .option("-v, --version", 'Specify development version to use. Defaults to "main"')
24
26
  .option("--dev", 'Use "development" version of the boilerplate')
25
27
  .option("--staging", 'Use "development" version of the boilerplate')
26
- .option("--package-manager <packageManager>", "force package manager to use")
27
- .action(init);
28
+ .option("--package-manager <packageManager>", "force package manager to use");
29
+ // Use withCustomHelp instead of withHelpAction and addHelpText
30
+ return withCustomHelp(initCmd, init, initHelp);
28
31
  }
29
32
  //# sourceMappingURL=init.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/commands/init.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAGrE,MAAM,CAAC,MAAM,IAAI,GAYb,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE;IACjC,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAE7C,IAAI,CAAC;QACH,MAAM,aAAa,CAAC;YAClB,IAAI,EAAE,OAAO,CAAC,OAAO,IAAI,WAAW;YACpC,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,KAAK;YACzC,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC;YAC9B,cAAc,EAAE,OAAO,CAAC,cAAc;SACvC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,UAAU,WAAW,CAAC,OAAgB;IAC1C,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,0BAA0B,CAAC;SACvC,QAAQ,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;SACjD,MAAM,CAAC,eAAe,EAAE,qBAAqB,CAAC;SAC9C,MAAM,CAAC,mBAAmB,EAAE,qCAAqC,CAAC;SAClE,MAAM,CACL,eAAe,EACf,wDAAwD,CACzD;SACA,MAAM,CAAC,OAAO,EAAE,8CAA8C,CAAC;SAC/D,MAAM,CAAC,WAAW,EAAE,8CAA8C,CAAC;SACnE,MAAM,CACL,oCAAoC,EACpC,8BAA8B,CAC/B;SACA,MAAM,CAAC,IAAI,CAAC,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAErE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EACL,yBAAyB,EACzB,WAAW,EACX,cAAc,GACf,MAAM,mBAAmB,CAAC;AAY3B,MAAM,CAAC,MAAM,IAAI,GAEb,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE;IACjC,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAE7C,IAAI,CAAC;QACH,MAAM,aAAa,CAAC;YAClB,IAAI,EAAE,OAAO,CAAC,OAAO,IAAI,WAAW;YACpC,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,KAAK;YACzC,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC;YAC9B,cAAc,EACZ,OAAO,CAAC,cAAc,IAAI,yBAAyB,CAAC,WAAW,CAAC;SACnE,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,UAAU,WAAW,CAAC,OAAgB;IAC1C,MAAM,OAAO,GAAG,OAAO;SACpB,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,0BAA0B,CAAC;SACvC,QAAQ,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;SACjD,MAAM,CAAC,eAAe,EAAE,qBAAqB,CAAC;SAC9C,MAAM,CAAC,mBAAmB,EAAE,qCAAqC,CAAC;SAClE,MAAM,CACL,eAAe,EACf,wDAAwD,CACzD;SACA,MAAM,CAAC,OAAO,EAAE,8CAA8C,CAAC;SAC/D,MAAM,CAAC,WAAW,EAAE,8CAA8C,CAAC;SACnE,MAAM,CACL,oCAAoC,EACpC,8BAA8B,CAC/B,CAAC;IAEJ,+DAA+D;IAC/D,OAAO,cAAc,CACnB,OAAO,EACP,IAAI,EACJ,QAAQ,CACT,CAAC;AACJ,CAAC"}
@@ -1,15 +1,16 @@
1
1
  import { type Command } from "commander";
2
2
  import { type CommandActionType } from "../types.js";
3
+ export type SetupGlobalsOptions = {
4
+ project?: string;
5
+ interactive?: boolean;
6
+ version?: string;
7
+ dev?: boolean;
8
+ staging?: boolean;
9
+ packageManager?: string;
10
+ };
3
11
  export declare const setupGlobals: CommandActionType<[
4
12
  string | undefined,
5
- {
6
- project?: string;
7
- interactive?: boolean;
8
- version?: string;
9
- dev?: boolean;
10
- staging?: boolean;
11
- packageManager?: string;
12
- }
13
+ SetupGlobalsOptions
13
14
  ]>;
14
- export declare function setupGlobalsCommand(program: Command): void;
15
+ export declare function setupGlobalsCommand(program: Command): Command;
15
16
  //# sourceMappingURL=setup-globals.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"setup-globals.d.ts","sourceRoot":"","sources":["../../../src/commands/setup-globals.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AASrD,eAAO,MAAM,YAAY,EAAE,iBAAiB,CAC1C;IACE,MAAM,GAAG,SAAS;IAClB;QACE,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,GAAG,CAAC,EAAE,OAAO,CAAC;QACd,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB;CACF,CA8BF,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,QAkBnD"}
1
+ {"version":3,"file":"setup-globals.d.ts","sourceRoot":"","sources":["../../../src/commands/setup-globals.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAIrD,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,iBAAiB,CAC1C;IAAC,MAAM,GAAG,SAAS;IAAE,mBAAmB;CAAC,CAG1C,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAwB7D"}
@@ -1,30 +1,10 @@
1
- import { createProject, parseVersion } from "@powerhousedao/codegen";
2
- import fs from "node:fs";
3
- import { getPackageManagerFromPath, HOME_DIR, PH_BIN_PATH, PH_GLOBAL_PROJECT_NAME, POWERHOUSE_GLOBAL_DIR, } from "../utils.js";
1
+ import { setupGlobalsHelp } from "../help.js";
2
+ import { createGlobalProject, withCustomHelp } from "../utils/index.js";
4
3
  export const setupGlobals = async (projectName, options) => {
5
- // check if the global project already exists
6
- const globalProjectExists = fs.existsSync(POWERHOUSE_GLOBAL_DIR);
7
- if (globalProjectExists) {
8
- console.log(`📦 Global project already exists at: ${POWERHOUSE_GLOBAL_DIR}`);
9
- return;
10
- }
11
- console.log("📦 Initializing global project...");
12
- process.chdir(HOME_DIR);
13
- try {
14
- await createProject({
15
- name: PH_GLOBAL_PROJECT_NAME,
16
- interactive: false,
17
- version: parseVersion(options),
18
- packageManager: options.packageManager ?? getPackageManagerFromPath(PH_BIN_PATH),
19
- });
20
- console.log(`🚀 Global project initialized successfully: ${POWERHOUSE_GLOBAL_DIR}`);
21
- }
22
- catch (error) {
23
- console.error("❌ Failed to initialize the global project", error);
24
- }
4
+ await createGlobalProject(projectName, options);
25
5
  };
26
6
  export function setupGlobalsCommand(program) {
27
- program
7
+ const setupGlobalsCmd = program
28
8
  .command("setup-globals")
29
9
  .description("Initialize a new project")
30
10
  .argument("[project-name]", "Name of the project")
@@ -33,7 +13,8 @@ export function setupGlobalsCommand(program) {
33
13
  .option("-v, --version", 'Specify development version to use. Defaults to "main"')
34
14
  .option("--dev", 'Use "development" version of the boilerplate')
35
15
  .option("--staging", 'Use "development" version of the boilerplate')
36
- .option("--package-manager <packageManager>", "force package manager to use")
37
- .action(setupGlobals);
16
+ .option("--package-manager <packageManager>", "force package manager to use");
17
+ // Use withCustomHelp instead of withHelpAction and addHelpText
18
+ return withCustomHelp(setupGlobalsCmd, setupGlobals, setupGlobalsHelp);
38
19
  }
39
20
  //# sourceMappingURL=setup-globals.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"setup-globals.js","sourceRoot":"","sources":["../../../src/commands/setup-globals.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAErE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB,OAAO,EACL,yBAAyB,EACzB,QAAQ,EACR,WAAW,EACX,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAErB,MAAM,CAAC,MAAM,YAAY,GAYrB,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE;IACjC,6CAA6C;IAC7C,MAAM,mBAAmB,GAAG,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;IAEjE,IAAI,mBAAmB,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CACT,wCAAwC,qBAAqB,EAAE,CAChE,CAAC;QACF,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,MAAM,UAAU,mBAAmB,CAAC,OAAgB;IAClD,OAAO;SACJ,OAAO,CAAC,eAAe,CAAC;SACxB,WAAW,CAAC,0BAA0B,CAAC;SACvC,QAAQ,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;SACjD,MAAM,CAAC,eAAe,EAAE,qBAAqB,CAAC;SAC9C,MAAM,CAAC,mBAAmB,EAAE,qCAAqC,CAAC;SAClE,MAAM,CACL,eAAe,EACf,wDAAwD,CACzD;SACA,MAAM,CAAC,OAAO,EAAE,8CAA8C,CAAC;SAC/D,MAAM,CAAC,WAAW,EAAE,8CAA8C,CAAC;SACnE,MAAM,CACL,oCAAoC,EACpC,8BAA8B,CAC/B;SACA,MAAM,CAAC,YAAY,CAAC,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"setup-globals.js","sourceRoot":"","sources":["../../../src/commands/setup-globals.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAYxE,MAAM,CAAC,MAAM,YAAY,GAErB,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE;IACjC,MAAM,mBAAmB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF,MAAM,UAAU,mBAAmB,CAAC,OAAgB;IAClD,MAAM,eAAe,GAAG,OAAO;SAC5B,OAAO,CAAC,eAAe,CAAC;SACxB,WAAW,CAAC,0BAA0B,CAAC;SACvC,QAAQ,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;SACjD,MAAM,CAAC,eAAe,EAAE,qBAAqB,CAAC;SAC9C,MAAM,CAAC,mBAAmB,EAAE,qCAAqC,CAAC;SAClE,MAAM,CACL,eAAe,EACf,wDAAwD,CACzD;SACA,MAAM,CAAC,OAAO,EAAE,8CAA8C,CAAC;SAC/D,MAAM,CAAC,WAAW,EAAE,8CAA8C,CAAC;SACnE,MAAM,CACL,oCAAoC,EACpC,8BAA8B,CAC/B,CAAC;IAEJ,+DAA+D;IAC/D,OAAO,cAAc,CACnB,eAAe,EACf,YAAY,EACZ,gBAAgB,CACjB,CAAC;AACJ,CAAC"}
@@ -1,11 +1,10 @@
1
1
  import { type Command } from "commander";
2
2
  import { type CommandActionType } from "../types.js";
3
- export declare const update: CommandActionType<[
4
- {
5
- force?: string;
6
- debug?: boolean;
7
- packageManager?: string;
8
- }
9
- ]>;
10
- export declare function updateCommand(program: Command): void;
3
+ export type UpdateOptions = {
4
+ force?: string;
5
+ debug?: boolean;
6
+ packageManager?: string;
7
+ };
8
+ export declare const update: CommandActionType<[UpdateOptions]>;
9
+ export declare function updateCommand(program: Command): Command;
11
10
  //# sourceMappingURL=update.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/commands/update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAIzC,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAsFrD,eAAO,MAAM,MAAM,EAAE,iBAAiB,CACpC;IACE;QACE,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB;CACF,CA6DF,CAAC;AAEF,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,QA6B7C"}
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/commands/update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAKzC,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAwFrD,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,iBAAiB,CAAC,CAAC,aAAa,CAAC,CA4DrD,CAAC;AAEF,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAmBvD"}
@@ -1,7 +1,8 @@
1
1
  import { execSync } from "node:child_process";
2
2
  import fs from "node:fs";
3
3
  import path from "node:path";
4
- import { findContainerDirectory, getPackageManagerFromLockfile, getProjectInfo, packageManagers, } from "../utils.js";
4
+ import { updateHelp } from "../help.js";
5
+ import { findContainerDirectory, getPackageManagerFromLockfile, getProjectInfo, packageManagers, withCustomHelp, } from "../utils/index.js";
5
6
  import { ENV_MAP, PH_PROJECT_DEPENDENCIES, updatePackageJson, } from "./use.js";
6
7
  const FILE_PROTOCOL = "file:";
7
8
  const LINK_PROTOCOL = "link:";
@@ -45,12 +46,12 @@ const getInstalledDependencies = (projectPath) => {
45
46
  .sort(); // Sort dependencies alphabetically
46
47
  return installedDeps;
47
48
  };
48
- export const update = (options) => {
49
+ export const update = async (options) => {
49
50
  const { force, packageManager, debug } = options;
50
51
  if (debug) {
51
52
  console.log(">>> options", options);
52
53
  }
53
- const projectInfo = getProjectInfo();
54
+ const projectInfo = await getProjectInfo();
54
55
  const pkgManagerName = (packageManager ||
55
56
  getPackageManagerFromLockfile(projectInfo.path));
56
57
  const localDependencyPath = getLocalDependencyPath(projectInfo.path);
@@ -68,7 +69,7 @@ export const update = (options) => {
68
69
  throw new Error(`Invalid environment: ${force}, supported envs: ${supportedEnvs.join(", ")}`);
69
70
  }
70
71
  const env = force;
71
- updatePackageJson(env, undefined, pkgManagerName, debug);
72
+ await updatePackageJson(env, undefined, pkgManagerName, debug);
72
73
  return;
73
74
  }
74
75
  const installedDeps = getInstalledDependencies(projectInfo.path);
@@ -89,22 +90,14 @@ export const update = (options) => {
89
90
  });
90
91
  };
91
92
  export function updateCommand(program) {
92
- program
93
+ const updateCmd = program
93
94
  .command("update")
94
95
  .alias("up")
95
96
  .description("Allows you to update your dependencies to the latest version based on the specified range in package.json. If you want to update to the latest available version, use the --force flag.")
96
97
  .option("--force <env>", "Force update to latest available version for the environment specified (dev, prod, latest)")
97
98
  .option("--package-manager <packageManager>", "force package manager to use")
98
- .option("--debug", "Show additional logs")
99
- .addHelpText("after", `
100
- Examples:
101
- $ ph update # Update dependencies based on package.json ranges
102
- $ ph update --force dev # Force update to latest dev version available
103
- $ ph update --force prod # Force update to latest stable version available (same as latest)
104
- $ ph update --force latest # Force update to latest stable version available (same as prod)
105
- $ ph update --package-manager pnpm # Specify package manager to use
106
- $ ph update --debug # Show debug information during update
107
- `)
108
- .action(update);
99
+ .option("--debug", "Show additional logs");
100
+ // Use withCustomHelp instead of withHelpAction and addHelpText
101
+ return withCustomHelp(updateCmd, update, updateHelp);
109
102
  }
110
103
  //# sourceMappingURL=update.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/commands/update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/commands/update.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { type Command } from "commander";
2
2
  import { type CommandActionType } from "../types.js";
3
- import { type PackageManager } from "../utils.js";
3
+ import { type PackageManager } from "../utils/index.js";
4
4
  export declare const ORG = "@powerhousedao";
5
5
  export declare const SPECIAL_PACKAGES: string[];
6
6
  export declare const PACKAGES: string[];
@@ -15,19 +15,20 @@ export declare const ENV_MAP: {
15
15
  latest: string;
16
16
  };
17
17
  export type Environment = keyof typeof ENV_MAP;
18
- export declare const updatePackageJson: (env: Environment, localPath?: string, packageManager?: PackageManager, debug?: boolean) => void;
18
+ export declare const updatePackageJson: (env: Environment, localPath?: string, packageManager?: PackageManager, debug?: boolean) => Promise<void>;
19
+ export type UseOptions = {
20
+ dev?: boolean;
21
+ prod?: boolean;
22
+ local?: string;
23
+ debug?: boolean;
24
+ latest?: boolean;
25
+ force?: boolean;
26
+ packageManager?: string;
27
+ };
19
28
  export declare const use: CommandActionType<[
20
29
  string | undefined,
21
30
  string | undefined,
22
- {
23
- dev?: boolean;
24
- prod?: boolean;
25
- local?: string;
26
- debug?: boolean;
27
- latest?: boolean;
28
- force?: boolean;
29
- packageManager?: string;
30
- }
31
+ UseOptions
31
32
  ]>;
32
- export declare function useCommand(program: Command): void;
33
+ export declare function useCommand(program: Command): Command;
33
34
  //# sourceMappingURL=use.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use.d.ts","sourceRoot":"","sources":["../../../src/commands/use.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,aAAa,CAAC;AAErB,eAAO,MAAM,GAAG,mBAAmB,CAAC;AAGpC,eAAO,MAAM,gBAAgB,UAAuC,CAAC;AAGrE,eAAO,MAAM,QAAQ,UAapB,CAAC;AAEF,eAAO,MAAM,IAAI,UAAuB,CAAC;AAEzC,eAAO,MAAM,IAAI,UAA6B,CAAC;AAE/C,eAAO,MAAM,uBAAuB,UAOnC,CAAC;AAEF,eAAO,MAAM,6BAA6B,UAIzC,CAAC;AAEF,eAAO,MAAM,OAAO;;;;;CAKnB,CAAC;AAGF,MAAM,MAAM,WAAW,GAAG,MAAM,OAAO,OAAO,CAAC;AAE/C,eAAO,MAAM,iBAAiB,GAC5B,KAAK,WAAW,EAChB,YAAY,MAAM,EAClB,iBAAiB,cAAc,EAC/B,QAAQ,OAAO,SAgEhB,CAAC;AAEF,eAAO,MAAM,GAAG,EAAE,iBAAiB,CACjC;IACE,MAAM,GAAG,SAAS;IAClB,MAAM,GAAG,SAAS;IAClB;QACE,GAAG,CAAC,EAAE,OAAO,CAAC;QACd,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB;CACF,CA4BF,CAAC;AAEF,wBAAgB,UAAU,CAAC,OAAO,EAAE,OAAO,QAqB1C"}
1
+ {"version":3,"file":"use.d.ts","sourceRoot":"","sources":["../../../src/commands/use.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAIzC,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAIL,KAAK,cAAc,EAEpB,MAAM,mBAAmB,CAAC;AAE3B,eAAO,MAAM,GAAG,mBAAmB,CAAC;AAGpC,eAAO,MAAM,gBAAgB,UAAuC,CAAC;AAGrE,eAAO,MAAM,QAAQ,UAapB,CAAC;AAEF,eAAO,MAAM,IAAI,UAAuB,CAAC;AAEzC,eAAO,MAAM,IAAI,UAA6B,CAAC;AAE/C,eAAO,MAAM,uBAAuB,UAOnC,CAAC;AAEF,eAAO,MAAM,6BAA6B,UAIzC,CAAC;AAEF,eAAO,MAAM,OAAO;;;;;CAKnB,CAAC;AAGF,MAAM,MAAM,WAAW,GAAG,MAAM,OAAO,OAAO,CAAC;AAE/C,eAAO,MAAM,iBAAiB,GAC5B,KAAK,WAAW,EAChB,YAAY,MAAM,EAClB,iBAAiB,cAAc,EAC/B,QAAQ,OAAO,kBAgEhB,CAAC;AAGF,MAAM,MAAM,UAAU,GAAG;IACvB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,GAAG,EAAE,iBAAiB,CACjC;IAAC,MAAM,GAAG,SAAS;IAAE,MAAM,GAAG,SAAS;IAAE,UAAU;CAAC,CAiCrD,CAAC;AAEF,wBAAgB,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAuCpD"}
@@ -1,6 +1,7 @@
1
1
  import { readFileSync } from "node:fs";
2
2
  import path from "node:path";
3
- import { getPackageManagerFromLockfile, getProjectInfo, installDependency, } from "../utils.js";
3
+ import { useHelp } from "../help.js";
4
+ import { getPackageManagerFromLockfile, getProjectInfo, installDependency, withCustomHelp, } from "../utils/index.js";
4
5
  export const ORG = "@powerhousedao";
5
6
  // Special packages that don't use the @powerhousedao organization
6
7
  export const SPECIAL_PACKAGES = ["document-model", "document-drive"];
@@ -38,8 +39,8 @@ export const ENV_MAP = {
38
39
  prod: "latest",
39
40
  latest: "latest",
40
41
  };
41
- export const updatePackageJson = (env, localPath, packageManager, debug) => {
42
- const projectInfo = getProjectInfo();
42
+ export const updatePackageJson = async (env, localPath, packageManager, debug) => {
43
+ const projectInfo = await getProjectInfo();
43
44
  const pkgManager = packageManager || getPackageManagerFromLockfile(projectInfo.path);
44
45
  if (debug) {
45
46
  console.log(">>> projectInfo", projectInfo);
@@ -92,7 +93,7 @@ export const updatePackageJson = (env, localPath, packageManager, debug) => {
92
93
  throw error;
93
94
  }
94
95
  };
95
- export const use = (environment, localPath, options) => {
96
+ export const use = async (environment, localPath, options) => {
96
97
  if (!environment ||
97
98
  (!options.force &&
98
99
  environment !== "local" &&
@@ -107,17 +108,28 @@ export const use = (environment, localPath, options) => {
107
108
  if (debug) {
108
109
  console.log(">>> options", options);
109
110
  }
110
- updatePackageJson(env, localPath, packageManager, debug);
111
+ await updatePackageJson(env, localPath, packageManager, debug);
111
112
  };
112
113
  export function useCommand(program) {
113
- program
114
+ const useCmd = program
114
115
  .command("use")
115
116
  .description("Allows you to change your environment (latest, development, production, local)")
116
- .argument("<environment>", "The environment to use (latest, dev, prod, local)")
117
+ .argument("[environment]", "The environment to use (latest, dev, prod, local)")
117
118
  .argument("[localPath]", "The path to the local environment (you have to specify the path to the local environment)")
118
119
  .option("--force", "force environment to use")
119
120
  .option("--package-manager <packageManager>", "force package manager to use")
120
- .option("--debug", "Show additional logs")
121
- .action(use);
121
+ .option("--debug", "Show additional logs");
122
+ // Use withCustomHelp instead of withHelpAction and addHelpText
123
+ return withCustomHelp(useCmd, use, useHelp,
124
+ // Pre-check function to validate environment before running the action
125
+ (environment) => {
126
+ if (!environment &&
127
+ !process.argv.includes("--help") &&
128
+ !process.argv.includes("-h")) {
129
+ console.error('Error: Missing required argument "environment"');
130
+ process.exit(1);
131
+ return false;
132
+ }
133
+ });
122
134
  }
123
135
  //# sourceMappingURL=use.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use.js","sourceRoot":"","sources":["../../../src/commands/use.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use.js","sourceRoot":"","sources":["../../../src/commands/use.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { type Command } from "commander";
2
+ export declare const customVersionHandler: () => Promise<void>;
3
+ export declare function versionOption(program: Command): Command;
4
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../../src/commands/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAQzC,eAAO,MAAM,oBAAoB,qBA6BhC,CAAC;AAEF,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAMvD"}
@@ -0,0 +1,25 @@
1
+ import { forwardPHCommand, getPackageManagerFromLockfile, getProjectInfo, } from "../utils/index.js";
2
+ import { version } from "../version.js";
3
+ // Custom version handler
4
+ export const customVersionHandler = async () => {
5
+ const projectInfo = await getProjectInfo(undefined, false);
6
+ console.log("PH CMD version: ", version);
7
+ if (projectInfo.available) {
8
+ const packageManager = getPackageManagerFromLockfile(projectInfo.path);
9
+ const versionOutput = forwardPHCommand(packageManager, projectInfo.path, "--version", false, true);
10
+ const cleanedOutput = versionOutput.replace(/\n/g, "");
11
+ console.log("PH CLI version: ", cleanedOutput);
12
+ console.log("-------------------------------------");
13
+ console.log("PH CLI path: ", projectInfo.path);
14
+ console.log("PH CLI isGlobalProject: ", projectInfo.isGlobal);
15
+ console.log("PH CLI packageManager: ", packageManager);
16
+ }
17
+ else {
18
+ console.log("-------------------------------------");
19
+ console.log("PH CLI is not available, please run `ph setup-globals` to generate the default global project");
20
+ }
21
+ };
22
+ export function versionOption(program) {
23
+ return program.option("-v, --version", "Display version information", customVersionHandler);
24
+ }
25
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../../src/commands/version.ts"],"names":[],"mappings":"AACA,OAAO,EACL,gBAAgB,EAChB,6BAA6B,EAC7B,cAAc,GACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,yBAAyB;AACzB,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,IAAI,EAAE;IAC7C,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAE3D,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;IAEzC,IAAI,WAAW,CAAC,SAAS,EAAE,CAAC;QAC1B,MAAM,cAAc,GAAG,6BAA6B,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAEvE,MAAM,aAAa,GAAG,gBAAgB,CACpC,cAAc,EACd,WAAW,CAAC,IAAI,EAChB,WAAW,EACX,KAAK,EACL,IAAI,CACL,CAAC;QAEF,MAAM,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAEvD,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,cAAc,CAAC,CAAC;IACzD,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;QACrD,OAAO,CAAC,GAAG,CACT,+FAA+F,CAChG,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,UAAU,aAAa,CAAC,OAAgB;IAC5C,OAAO,OAAO,CAAC,MAAM,CACnB,eAAe,EACf,6BAA6B,EAC7B,oBAAoB,CACrB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Help text for CLI commands
3
+ * This file centralizes all help text to keep command files clean
4
+ */
5
+ /**
6
+ * Help text for the update command
7
+ */
8
+ export declare const updateHelp = "\nCommand Overview:\n The update command helps you manage and update Powerhouse dependencies in your project. It provides\n an efficient way to keep your project up-to-date with the latest versions of Powerhouse packages.\n \n This command:\n 1. Updates all Powerhouse dependencies based on the semver ranges specified in your package.json\n 2. Can force update all dependencies to a specific environment version (dev, prod, latest)\n 3. Automatically builds any local dependencies before updating\n 4. Works with all dependencies with @powerhousedao/ prefix and special packages like document-model\n\nOptions:\n --force <env> Force update to the latest available version for the environment specified.\n Valid environments: dev, prod, latest.\n - dev: Uses @dev tag for all dependencies\n - prod/latest: Uses @latest tag for all dependencies\n \n --package-manager Override the auto-detected package manager with the specified one.\n \n --debug Show additional logs while executing the command.\n\nSpecial Cases:\n - Local Dependencies: If you have dependencies linked from a local monorepo (using file: or link:\n protocols), the command will detect the monorepo root, build affected packages, then update.\n \n - No Dependencies: If no Powerhouse dependencies are found in your project, the command will\n display a message and exit without making changes.\n\nExamples:\n $ ph update # Update dependencies based on package.json ranges\n $ ph update --force dev # Force update to latest dev version available\n $ ph update --force prod # Force update to latest stable version available (same as latest)\n $ ph update --force latest # Force update to latest stable version available (same as prod)\n $ ph update --package-manager pnpm # Specify package manager to use\n $ ph update --debug # Show debug information during update\n";
9
+ /**
10
+ * Help text for the use command
11
+ */
12
+ export declare const useHelp = "\nCommand Overview:\n The use command allows you to quickly switch between different environments for all Powerhouse\n dependencies in your project. It provides a convenient way to toggle between development,\n production, and local versions of the packages.\n\n This command:\n 1. Updates all installed Powerhouse dependencies to the specified environment\n 2. Can link to local dependencies from a monorepo for development\n 3. Only updates dependencies that are already present in your package.json\n 4. Supports special packages without the @powerhousedao prefix\n\nArguments:\n <environment> Required. The environment to use. Valid options:\n - dev: Use development versions (@dev tag)\n - prod/latest: Use production versions (@latest tag)\n - local: Use local filesystem versions (requires localPath)\n \n [localPath] Path to the local monorepo. Required when environment is 'local'.\n This should be the root of your Powerhouse monorepo.\n\nOptions:\n --force Force environment to use, even if not in the predefined list\n \n --package-manager Override the auto-detected package manager with the specified one.\n \n --debug Show additional logs during execution for troubleshooting.\n\nSpecial Cases:\n - Local Development: When using the 'local' environment, dependencies are linked directly\n to local filesystem paths, allowing for real-time development and testing.\n \n - Missing Dependencies: The command only updates Powerhouse dependencies that are already\n installed in your project. It won't add new ones.\n\nExamples:\n $ ph use dev # Switch all dependencies to development versions\n $ ph use prod # Switch all dependencies to production versions\n $ ph use latest # Same as 'prod', use latest production versions\n $ ph use local /path/to/monorepo # Link to local versions in the specified monorepo\n $ ph use dev --package-manager npm # Use npm instead of the auto-detected package manager\n $ ph use dev --debug # Show debug information during execution\n";
13
+ /**
14
+ * Help text for the setup-globals command
15
+ */
16
+ export declare const setupGlobalsHelp = "\nCommand Overview:\n The setup-globals command initializes a new Powerhouse project with the necessary global \n configuration. It helps you set up a project quickly with proper defaults and dependencies.\n\n This command:\n 1. Creates a new project with the specified name or in the current directory\n 2. Sets up all required Powerhouse dependencies\n 3. Configures the project with appropriate settings\n 4. Can run in interactive mode to guide you through the setup process\n\nArguments:\n [project-name] Optional. Name of the project to create. If not provided,\n the command will use the current directory.\n\nOptions:\n -p, --project Specify the name of the project to create.\n \n -i, --interactive Run the command in interactive mode, which will guide you\n through the setup process with questions and prompts.\n \n -v, --version Specify the development version to use. Defaults to \"main\".\n \n --dev Use the \"development\" version of the boilerplate.\n \n --staging Use the \"staging\" version of the boilerplate.\n \n --package-manager Override the auto-detected package manager with the specified one.\n\nProject Structure:\n The command will set up a project with the following structure:\n - Proper configuration files for TypeScript and ESLint\n - Dependencies for Powerhouse packages\n - Build and development scripts\n\nExamples:\n $ ph setup-globals my-project # Create a new project named \"my-project\"\n $ ph setup-globals # Set up a project in the current directory\n $ ph setup-globals -i # Run setup in interactive mode\n $ ph setup-globals --dev # Use development version\n $ ph setup-globals -v beta # Use specific version\n $ ph setup-globals --package-manager npm # Use npm as package manager\n";
17
+ /**
18
+ * Help text for the init command
19
+ */
20
+ export declare const initHelp = "\nCommand Overview:\n The init command creates a new Powerhouse project with optimal defaults. It sets up a fully \n configured project structure with all necessary dependencies, configurations, and boilerplate.\n\n This command:\n 1. Creates a new project with the specified name\n 2. Installs all required dependencies for Powerhouse development\n 3. Sets up a proper project structure and configuration files\n 4. Can run in interactive mode for customized setup\n\nArguments:\n [project-name] Optional. Name of the project to create. If not provided,\n you'll be prompted to provide a name, or the current directory \n will be used if in interactive mode.\n\nOptions:\n -p, --project Specify the name of the project to create.\n \n -i, --interactive Run the command in interactive mode, which will guide you\n through the project setup with customizable options.\n \n -v, --version Specify the development version to use. Defaults to \"main\".\n \n --dev Use the \"development\" version of the boilerplate.\n \n --staging Use the \"staging\" version of the boilerplate.\n \n --package-manager Override the auto-detected package manager with the specified one.\n\nProject Structure:\n The command will create a complete project with:\n - Properly configured TypeScript and build settings\n - Powerhouse document-model integration\n - All necessary package.json dependencies\n - Development scripts and tooling\n\nExamples:\n $ ph init my-awesome-project # Create a new project named \"my-awesome-project\"\n $ ph init -i # Create a project in interactive mode\n $ ph init -p my-project # Same as ph init my-project\n $ ph init --dev # Use development version of boilerplate\n $ ph init -v beta # Use specific version\n $ ph init --package-manager yarn # Use yarn as package manager\n $ ph init my-awesome-project --dev --package-manager pnpm # Create a project with Powerhouse dev packages and pnpm as package manager\n";
21
+ //# sourceMappingURL=help.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../src/help.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,eAAO,MAAM,UAAU,miEAmCtB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO,6vEA0CnB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,kgEA0C5B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,QAAQ,y3EA6CpB,CAAC"}