@powerhousedao/ph-cli 6.0.0-dev.6 → 6.0.0-dev.60

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 (166) hide show
  1. package/dist/scripts/generate-commands-docs.d.ts +2 -0
  2. package/dist/scripts/generate-commands-docs.d.ts.map +1 -0
  3. package/dist/scripts/generate-commands-docs.js +41 -0
  4. package/dist/scripts/generate-commands-docs.js.map +1 -0
  5. package/dist/scripts/generate-commands-docs.ts +45 -0
  6. package/dist/src/cli.js +21 -37
  7. package/dist/src/cli.js.map +1 -1
  8. package/dist/src/commands/access-token.d.ts +13 -8
  9. package/dist/src/commands/access-token.d.ts.map +1 -1
  10. package/dist/src/commands/access-token.js +100 -79
  11. package/dist/src/commands/access-token.js.map +1 -1
  12. package/dist/src/commands/connect.d.ts +248 -18
  13. package/dist/src/commands/connect.d.ts.map +1 -1
  14. package/dist/src/commands/connect.js +61 -84
  15. package/dist/src/commands/connect.js.map +1 -1
  16. package/dist/src/commands/generate.d.ts +59 -8
  17. package/dist/src/commands/generate.d.ts.map +1 -1
  18. package/dist/src/commands/generate.js +24 -40
  19. package/dist/src/commands/generate.js.map +1 -1
  20. package/dist/src/commands/index.d.ts +1 -2
  21. package/dist/src/commands/index.d.ts.map +1 -1
  22. package/dist/src/commands/index.js +13 -2
  23. package/dist/src/commands/index.js.map +1 -1
  24. package/dist/src/commands/inspect.d.ts +11 -5
  25. package/dist/src/commands/inspect.d.ts.map +1 -1
  26. package/dist/src/commands/inspect.js +25 -20
  27. package/dist/src/commands/inspect.js.map +1 -1
  28. package/dist/src/commands/install.d.ts +21 -14
  29. package/dist/src/commands/install.d.ts.map +1 -1
  30. package/dist/src/commands/install.js +74 -123
  31. package/dist/src/commands/install.js.map +1 -1
  32. package/dist/src/commands/list.d.ts +9 -8
  33. package/dist/src/commands/list.d.ts.map +1 -1
  34. package/dist/src/commands/list.js +37 -32
  35. package/dist/src/commands/list.js.map +1 -1
  36. package/dist/src/commands/login.d.ts +23 -11
  37. package/dist/src/commands/login.d.ts.map +1 -1
  38. package/dist/src/commands/login.js +105 -118
  39. package/dist/src/commands/login.js.map +1 -1
  40. package/dist/src/commands/logout.d.ts +6 -0
  41. package/dist/src/commands/logout.d.ts.map +1 -0
  42. package/dist/src/commands/logout.js +13 -0
  43. package/dist/src/commands/logout.js.map +1 -0
  44. package/dist/src/commands/migrate.d.ts +11 -9
  45. package/dist/src/commands/migrate.d.ts.map +1 -1
  46. package/dist/src/commands/migrate.js +15 -11
  47. package/dist/src/commands/migrate.js.map +1 -1
  48. package/dist/src/commands/ph-cli-commands.d.ts +417 -0
  49. package/dist/src/commands/ph-cli-commands.d.ts.map +1 -0
  50. package/dist/src/commands/ph-cli-commands.js +27 -0
  51. package/dist/src/commands/ph-cli-commands.js.map +1 -0
  52. package/dist/src/commands/ph-cli-help.d.ts +398 -0
  53. package/dist/src/commands/ph-cli-help.d.ts.map +1 -0
  54. package/dist/src/commands/ph-cli-help.js +12 -0
  55. package/dist/src/commands/ph-cli-help.js.map +1 -0
  56. package/dist/src/commands/ph-cli.d.ts +504 -0
  57. package/dist/src/commands/ph-cli.d.ts.map +1 -0
  58. package/dist/src/commands/ph-cli.js +12 -0
  59. package/dist/src/commands/ph-cli.js.map +1 -0
  60. package/dist/src/commands/service.d.ts +11 -4
  61. package/dist/src/commands/service.d.ts.map +1 -1
  62. package/dist/src/commands/service.js +27 -16
  63. package/dist/src/commands/service.js.map +1 -1
  64. package/dist/src/commands/switchboard.d.ts +45 -8
  65. package/dist/src/commands/switchboard.d.ts.map +1 -1
  66. package/dist/src/commands/switchboard.js +35 -71
  67. package/dist/src/commands/switchboard.js.map +1 -1
  68. package/dist/src/commands/uninstall.d.ts +21 -14
  69. package/dist/src/commands/uninstall.d.ts.map +1 -1
  70. package/dist/src/commands/uninstall.js +71 -117
  71. package/dist/src/commands/uninstall.js.map +1 -1
  72. package/dist/src/commands/vetra.d.ts +63 -10
  73. package/dist/src/commands/vetra.d.ts.map +1 -1
  74. package/dist/src/commands/vetra.js +23 -34
  75. package/dist/src/commands/vetra.js.map +1 -1
  76. package/dist/src/get-version.d.ts +2 -0
  77. package/dist/src/get-version.d.ts.map +1 -0
  78. package/dist/src/get-version.js +6 -0
  79. package/dist/src/get-version.js.map +1 -0
  80. package/dist/src/help.d.ts +3 -3
  81. package/dist/src/help.d.ts.map +1 -1
  82. package/dist/src/help.js +7 -7
  83. package/dist/src/services/auth.d.ts +5 -53
  84. package/dist/src/services/auth.d.ts.map +1 -1
  85. package/dist/src/services/auth.js +11 -159
  86. package/dist/src/services/auth.js.map +1 -1
  87. package/dist/src/services/connect-build.d.ts +3 -0
  88. package/dist/src/services/connect-build.d.ts.map +1 -0
  89. package/dist/src/services/connect-build.js +24 -0
  90. package/dist/src/services/connect-build.js.map +1 -0
  91. package/dist/src/services/connect-preview.d.ts +3 -0
  92. package/dist/src/services/connect-preview.d.ts.map +1 -0
  93. package/dist/src/services/connect-preview.js +35 -0
  94. package/dist/src/services/connect-preview.js.map +1 -0
  95. package/dist/src/services/connect-studio.d.ts +4 -0
  96. package/dist/src/services/connect-studio.d.ts.map +1 -0
  97. package/dist/src/services/connect-studio.js +30 -0
  98. package/dist/src/services/connect-studio.js.map +1 -0
  99. package/dist/src/services/generate.d.ts +2 -29
  100. package/dist/src/services/generate.d.ts.map +1 -1
  101. package/dist/src/services/generate.js +55 -75
  102. package/dist/src/services/generate.js.map +1 -1
  103. package/dist/src/services/inspect.d.ts +2 -4
  104. package/dist/src/services/inspect.d.ts.map +1 -1
  105. package/dist/src/services/inspect.js +7 -6
  106. package/dist/src/services/inspect.js.map +1 -1
  107. package/dist/src/services/migrate.d.ts +2 -6
  108. package/dist/src/services/migrate.d.ts.map +1 -1
  109. package/dist/src/services/migrate.js +52 -14
  110. package/dist/src/services/migrate.js.map +1 -1
  111. package/dist/src/services/switchboard.d.ts +3 -34
  112. package/dist/src/services/switchboard.d.ts.map +1 -1
  113. package/dist/src/services/switchboard.js +7 -7
  114. package/dist/src/services/switchboard.js.map +1 -1
  115. package/dist/src/services/vetra.d.ts +2 -14
  116. package/dist/src/services/vetra.d.ts.map +1 -1
  117. package/dist/src/services/vetra.js +109 -88
  118. package/dist/src/services/vetra.js.map +1 -1
  119. package/dist/src/types.d.ts +26 -0
  120. package/dist/src/types.d.ts.map +1 -1
  121. package/dist/src/utils/assign-env-vars.d.ts +3 -0
  122. package/dist/src/utils/assign-env-vars.d.ts.map +1 -0
  123. package/dist/src/utils/assign-env-vars.js +11 -0
  124. package/dist/src/utils/assign-env-vars.js.map +1 -0
  125. package/dist/src/utils/constants.d.ts +2 -0
  126. package/dist/src/utils/constants.d.ts.map +1 -0
  127. package/dist/src/utils/constants.js +2 -0
  128. package/dist/src/utils/constants.js.map +1 -0
  129. package/dist/src/utils/resolve-connect-dirs.d.ts +7 -0
  130. package/dist/src/utils/resolve-connect-dirs.d.ts.map +1 -0
  131. package/dist/src/utils/resolve-connect-dirs.js +16 -0
  132. package/dist/src/utils/resolve-connect-dirs.js.map +1 -0
  133. package/dist/src/utils.d.ts +0 -4
  134. package/dist/src/utils.d.ts.map +1 -1
  135. package/dist/src/utils.js.map +1 -1
  136. package/dist/tsconfig.tsbuildinfo +1 -1
  137. package/package.json +39 -29
  138. package/dist/scripts/generate-commands-md.d.ts +0 -2
  139. package/dist/scripts/generate-commands-md.d.ts.map +0 -1
  140. package/dist/scripts/generate-commands-md.js +0 -72
  141. package/dist/scripts/generate-commands-md.js.map +0 -1
  142. package/dist/scripts/generate-commands-md.ts +0 -84
  143. package/dist/src/commands/help.d.ts +0 -3
  144. package/dist/src/commands/help.d.ts.map +0 -1
  145. package/dist/src/commands/help.js +0 -9
  146. package/dist/src/commands/help.js.map +0 -1
  147. package/dist/src/commands/register-commands.d.ts +0 -5
  148. package/dist/src/commands/register-commands.d.ts.map +0 -1
  149. package/dist/src/commands/register-commands.js +0 -32
  150. package/dist/src/commands/register-commands.js.map +0 -1
  151. package/dist/src/index.d.ts +0 -5
  152. package/dist/src/index.d.ts.map +0 -1
  153. package/dist/src/index.js +0 -5
  154. package/dist/src/index.js.map +0 -1
  155. package/dist/src/services/connect.d.ts +0 -2
  156. package/dist/src/services/connect.d.ts.map +0 -1
  157. package/dist/src/services/connect.js +0 -2
  158. package/dist/src/services/connect.js.map +0 -1
  159. package/dist/src/version.d.ts +0 -2
  160. package/dist/src/version.d.ts.map +0 -1
  161. package/dist/src/version.js +0 -3
  162. package/dist/src/version.js.map +0 -1
  163. package/dist/test/utils.test.d.ts +0 -2
  164. package/dist/test/utils.test.d.ts.map +0 -1
  165. package/dist/test/utils.test.js +0 -132
  166. package/dist/test/utils.test.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@powerhousedao/ph-cli",
3
- "version": "6.0.0-dev.6",
3
+ "version": "6.0.0-dev.60",
4
4
  "description": "",
5
5
  "license": "AGPL-3.0-only",
6
6
  "type": "module",
@@ -11,50 +11,60 @@
11
11
  "publishConfig": {
12
12
  "access": "public"
13
13
  },
14
+ "engines": {
15
+ "node": ">=24.0.0"
16
+ },
14
17
  "bin": {
15
18
  "ph-cli": "dist/src/cli.js"
16
19
  },
17
20
  "files": [
18
21
  "dist"
19
22
  ],
20
- "exports": "./dist/src/index.js",
21
- "types": "./dist/src/index.d.ts",
23
+ "exports": {
24
+ ".": {
25
+ "types": "./dist/src/index.d.ts",
26
+ "default": "./dist/src/index.js"
27
+ }
28
+ },
22
29
  "keywords": [],
23
30
  "author": "",
24
31
  "devDependencies": {
25
- "@types/node": "^24.6.1",
26
- "@types/pg": "^8.11.10",
27
- "concurrently": "^9.1.2",
28
- "copyfiles": "^2.4.1",
29
- "nodemon": "^3.1.9",
30
- "vitest": "^3.2.4",
31
- "document-drive": "6.0.0-dev.6",
32
- "document-model": "6.0.0-dev.6"
32
+ "@types/node": "25.2.3",
33
+ "@types/pg": "8.16.0",
34
+ "concurrently": "9.2.1",
35
+ "copyfiles": "2.4.1",
36
+ "nodemon": "3.1.11",
37
+ "vitest": "3.2.4",
38
+ "@types/bun": "1.3.9",
39
+ "document-model": "6.0.0-dev.60",
40
+ "document-drive": "6.0.0-dev.60"
33
41
  },
34
42
  "dependencies": {
35
- "colorette": "^2.0.20",
36
- "commander": "^12.1.0",
37
- "kysely": "0.28.8",
38
- "pg": "^8.13.0",
39
- "read-pkg": "^9.0.1",
40
- "ts-morph": "^26.0.0",
41
- "write-pkg": "^7.0.0",
42
- "@powerhousedao/codegen": "6.0.0-dev.6",
43
- "@powerhousedao/common": "6.0.0-dev.6",
44
- "@powerhousedao/reactor": "6.0.0-dev.6",
45
- "@powerhousedao/config": "6.0.0-dev.6",
46
- "@powerhousedao/builder-tools": "6.0.0-dev.6",
47
- "@renown/sdk": "6.0.0-dev.6",
48
- "@powerhousedao/switchboard": "6.0.0-dev.6"
43
+ "cmd-ts": "0.15.0",
44
+ "colorette": "2.0.20",
45
+ "commander": "12.1.0",
46
+ "kysely": "0.28.11",
47
+ "pg": "8.18.0",
48
+ "package-manager-detector": "1.6.0",
49
+ "read-pkg": "10.1.0",
50
+ "ts-morph": "27.0.2",
51
+ "vite": "7.3.1",
52
+ "write-package": "7.2.0",
53
+ "@powerhousedao/codegen": "6.0.0-dev.60",
54
+ "@powerhousedao/common": "6.0.0-dev.60",
55
+ "@powerhousedao/config": "6.0.0-dev.60",
56
+ "@powerhousedao/reactor": "6.0.0-dev.60",
57
+ "@powerhousedao/switchboard": "6.0.0-dev.60",
58
+ "@powerhousedao/shared": "6.0.0-dev.60",
59
+ "@renown/sdk": "6.0.0-dev.60"
49
60
  },
50
61
  "scripts": {
51
62
  "tsc": "tsc",
52
63
  "lint": "eslint",
53
- "generate-commands-md": "tsx scripts/generate-commands-md.ts",
54
- "generate-version": "tsx scripts/generate-version.ts",
55
- "build": "npm run generate-commands-md && npm run generate-version && tsc && npm run copy-scripts",
64
+ "generate-docs": "bun run scripts/generate-commands-docs.ts",
65
+ "build:cli": "bun generate-docs && bun copy-scripts",
56
66
  "copy-scripts": "copyfiles scripts/* dist/",
57
67
  "dev": "concurrently -P 'pnpm -w run tsc --watch' 'nodemon --watch \"../..\" -e ts,tsx,js,json dist/src/cli.js -- {@}' --",
58
- "test": "vitest --run"
68
+ "cli": "node ./dist/src/cli.js"
59
69
  }
60
70
  }
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=generate-commands-md.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-commands-md.d.ts","sourceRoot":"","sources":["../../scripts/generate-commands-md.ts"],"names":[],"mappings":""}
@@ -1,72 +0,0 @@
1
- import * as fs from "fs";
2
- import * as path from "path";
3
- import { fileURLToPath } from "url";
4
- /**
5
- * Generate COMMANDS.md file from the help texts in help.ts
6
- */
7
- async function generateCommandsMd() {
8
- try {
9
- // Define paths for ES modules
10
- const __filename = fileURLToPath(import.meta.url);
11
- const __dirname = path.dirname(__filename);
12
- const rootDir = path.resolve(__dirname, "..");
13
- const helpFilePath = path.join(rootDir, "src", "help.ts");
14
- const outputPath = path.join(rootDir, "COMMANDS.md");
15
- // Read the help.ts file
16
- const helpFileContent = fs.readFileSync(helpFilePath, "utf8");
17
- // Extract all help text constants using regex
18
- const helpTextRegex = /export const (\w+)Help = `([\s\S]+?)`;/g;
19
- const commands = [];
20
- let match;
21
- while ((match = helpTextRegex.exec(helpFileContent)) !== null) {
22
- const commandName = match[1];
23
- const helpContent = match[2];
24
- commands.push({ name: commandName, content: helpContent });
25
- }
26
- // Sort commands alphabetically
27
- commands.sort((a, b) => a.name.localeCompare(b.name));
28
- // Generate the markdown content
29
- let markdown = "# Powerhouse CLI Commands\n\n";
30
- markdown +=
31
- "This document provides detailed information about the available commands in the Powerhouse CLI.\n\n";
32
- markdown += "## Table of Contents\n\n";
33
- // Add table of contents
34
- commands.forEach((command) => {
35
- const displayName = formatCommandName(command.name);
36
- const anchor = displayName.toLowerCase().replace(/\s+/g, "-");
37
- markdown += `- [${displayName}](#${anchor})\n`;
38
- });
39
- markdown += "\n";
40
- // Add command details
41
- commands.forEach((command) => {
42
- const displayName = formatCommandName(command.name);
43
- markdown += `## ${displayName}\n\n`;
44
- markdown += "```\n";
45
- markdown += command.content.trim();
46
- markdown += "\n```\n\n";
47
- });
48
- // Add footer
49
- markdown += "---\n\n";
50
- markdown +=
51
- "*This document was automatically generated from the help text in the codebase.*\n";
52
- // Write to COMMANDS.md
53
- fs.writeFileSync(outputPath, markdown);
54
- console.log(`✅ COMMANDS.md has been generated at ${outputPath}`);
55
- }
56
- catch (error) {
57
- console.error("Failed to generate COMMANDS.md:", error);
58
- process.exit(1);
59
- }
60
- }
61
- /**
62
- * Format command name for display (e.g., "setupGlobals" -> "Setup Globals")
63
- */
64
- function formatCommandName(commandName) {
65
- // Convert camelCase to separate words with spaces
66
- const name = commandName.replace(/([A-Z])/g, " $1").trim();
67
- // Capitalize first letter and convert the rest to lowercase
68
- return name.charAt(0).toUpperCase() + name.slice(1);
69
- }
70
- // Run the script
71
- generateCommandsMd();
72
- //# sourceMappingURL=generate-commands-md.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-commands-md.js","sourceRoot":"","sources":["../../scripts/generate-commands-md.ts"],"names":[],"mappings":"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"}
@@ -1,84 +0,0 @@
1
- import * as fs from "fs";
2
- import * as path from "path";
3
- import { fileURLToPath } from "url";
4
-
5
- /**
6
- * Generate COMMANDS.md file from the help texts in help.ts
7
- */
8
- async function generateCommandsMd() {
9
- try {
10
- // Define paths for ES modules
11
- const __filename = fileURLToPath(import.meta.url);
12
- const __dirname = path.dirname(__filename);
13
- const rootDir = path.resolve(__dirname, "..");
14
- const helpFilePath = path.join(rootDir, "src", "help.ts");
15
- const outputPath = path.join(rootDir, "COMMANDS.md");
16
-
17
- // Read the help.ts file
18
- const helpFileContent = fs.readFileSync(helpFilePath, "utf8");
19
-
20
- // Extract all help text constants using regex
21
- const helpTextRegex = /export const (\w+)Help = `([\s\S]+?)`;/g;
22
- const commands: { name: string; content: string }[] = [];
23
-
24
- let match;
25
- while ((match = helpTextRegex.exec(helpFileContent)) !== null) {
26
- const commandName = match[1];
27
- const helpContent = match[2];
28
- commands.push({ name: commandName, content: helpContent });
29
- }
30
-
31
- // Sort commands alphabetically
32
- commands.sort((a, b) => a.name.localeCompare(b.name));
33
-
34
- // Generate the markdown content
35
- let markdown = "# Powerhouse CLI Commands\n\n";
36
- markdown +=
37
- "This document provides detailed information about the available commands in the Powerhouse CLI.\n\n";
38
- markdown += "## Table of Contents\n\n";
39
-
40
- // Add table of contents
41
- commands.forEach((command) => {
42
- const displayName = formatCommandName(command.name);
43
- const anchor = displayName.toLowerCase().replace(/\s+/g, "-");
44
- markdown += `- [${displayName}](#${anchor})\n`;
45
- });
46
-
47
- markdown += "\n";
48
-
49
- // Add command details
50
- commands.forEach((command) => {
51
- const displayName = formatCommandName(command.name);
52
- markdown += `## ${displayName}\n\n`;
53
- markdown += "```\n";
54
- markdown += command.content.trim();
55
- markdown += "\n```\n\n";
56
- });
57
-
58
- // Add footer
59
- markdown += "---\n\n";
60
- markdown +=
61
- "*This document was automatically generated from the help text in the codebase.*\n";
62
-
63
- // Write to COMMANDS.md
64
- fs.writeFileSync(outputPath, markdown);
65
-
66
- console.log(`✅ COMMANDS.md has been generated at ${outputPath}`);
67
- } catch (error) {
68
- console.error("Failed to generate COMMANDS.md:", error);
69
- process.exit(1);
70
- }
71
- }
72
-
73
- /**
74
- * Format command name for display (e.g., "setupGlobals" -> "Setup Globals")
75
- */
76
- function formatCommandName(commandName: string): string {
77
- // Convert camelCase to separate words with spaces
78
- const name = commandName.replace(/([A-Z])/g, " $1").trim();
79
- // Capitalize first letter and convert the rest to lowercase
80
- return name.charAt(0).toUpperCase() + name.slice(1);
81
- }
82
-
83
- // Run the script
84
- generateCommandsMd();
@@ -1,3 +0,0 @@
1
- import type { Command } from "commander";
2
- export declare function helpCommand(program: Command): void;
3
- //# sourceMappingURL=help.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../../src/commands/help.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,QAO3C"}
@@ -1,9 +0,0 @@
1
- export function helpCommand(program) {
2
- program
3
- .command("help")
4
- .description("Display help information")
5
- .action(() => {
6
- program.help();
7
- });
8
- }
9
- //# sourceMappingURL=help.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"help.js","sourceRoot":"","sources":["../../../src/commands/help.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,WAAW,CAAC,OAAgB;IAC1C,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,0BAA0B,CAAC;SACvC,MAAM,CAAC,GAAG,EAAE;QACX,OAAO,CAAC,IAAI,EAAE,CAAC;IACjB,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -1,5 +0,0 @@
1
- import type { Command } from "commander";
2
- import { generateCommand } from "./generate.js";
3
- export declare const commands: (typeof generateCommand)[];
4
- export declare function registerCommands(program: Command): void;
5
- //# sourceMappingURL=register-commands.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"register-commands.d.ts","sourceRoot":"","sources":["../../../src/commands/register-commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAYhD,eAAO,MAAM,QAAQ,4BAcpB,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,QAEhD"}
@@ -1,32 +0,0 @@
1
- import { accessTokenCommand } from "./access-token.js";
2
- import { connectCommand } from "./connect.js";
3
- import { generateCommand } from "./generate.js";
4
- import { helpCommand } from "./help.js";
5
- import { inspectCommand } from "./inspect.js";
6
- import { installCommand } from "./install.js";
7
- import { listCommand } from "./list.js";
8
- import { loginCommand } from "./login.js";
9
- import { migrateCommand } from "./migrate.js";
10
- import { serviceCommand } from "./service.js";
11
- import { switchboardCommand } from "./switchboard.js";
12
- import { uninstallCommand } from "./uninstall.js";
13
- import { vetraCommand } from "./vetra.js";
14
- export const commands = [
15
- accessTokenCommand,
16
- connectCommand,
17
- generateCommand,
18
- helpCommand,
19
- installCommand,
20
- uninstallCommand,
21
- serviceCommand,
22
- listCommand,
23
- inspectCommand,
24
- loginCommand,
25
- switchboardCommand,
26
- vetraCommand,
27
- migrateCommand,
28
- ];
29
- export function registerCommands(program) {
30
- commands.forEach((command) => command(program));
31
- }
32
- //# sourceMappingURL=register-commands.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"register-commands.js","sourceRoot":"","sources":["../../../src/commands/register-commands.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,kBAAkB;IAClB,cAAc;IACd,eAAe;IACf,WAAW;IACX,cAAc;IACd,gBAAgB;IAChB,cAAc;IACd,WAAW;IACX,cAAc;IACd,YAAY;IACZ,kBAAkB;IAClB,YAAY;IACZ,cAAc;CACf,CAAC;AAEF,MAAM,UAAU,gBAAgB,CAAC,OAAgB;IAC/C,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;AAClD,CAAC"}
@@ -1,5 +0,0 @@
1
- export * from "./commands/index.js";
2
- export * from "./help.js";
3
- export * from "./types.js";
4
- export * from "./utils.js";
5
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
package/dist/src/index.js DELETED
@@ -1,5 +0,0 @@
1
- export * from "./commands/index.js";
2
- export * from "./help.js";
3
- export * from "./types.js";
4
- export * from "./utils.js";
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
@@ -1,2 +0,0 @@
1
- export { buildConnect, previewConnect, startConnectStudio, } from "@powerhousedao/builder-tools";
2
- //# sourceMappingURL=connect.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"connect.d.ts","sourceRoot":"","sources":["../../../src/services/connect.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,cAAc,EACd,kBAAkB,GACnB,MAAM,8BAA8B,CAAC"}
@@ -1,2 +0,0 @@
1
- export { buildConnect, previewConnect, startConnectStudio, } from "@powerhousedao/builder-tools";
2
- //# sourceMappingURL=connect.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"connect.js","sourceRoot":"","sources":["../../../src/services/connect.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,cAAc,EACd,kBAAkB,GACnB,MAAM,8BAA8B,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare const version = "6.0.0-dev.5";
2
- //# sourceMappingURL=version.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,OAAO,gBAAgB,CAAC"}
@@ -1,3 +0,0 @@
1
- // This file is auto-generated. DO NOT EDIT.
2
- export const version = "6.0.0-dev.5";
3
- //# sourceMappingURL=version.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,4CAA4C;AAC5C,MAAM,CAAC,MAAM,OAAO,GAAG,aAAa,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=utils.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.test.d.ts","sourceRoot":"","sources":["../../test/utils.test.ts"],"names":[],"mappings":""}
@@ -1,132 +0,0 @@
1
- import { buildInstallCommand, updatePackagesArray, } from "@powerhousedao/ph-cli";
2
- import { describe, expect, it } from "vitest";
3
- describe("updatePackagesArray", () => {
4
- it("should add new packages when installing", () => {
5
- const currentPackages = [{ packageName: "existing-package" }];
6
- const dependencies = [
7
- { name: "new-package", version: undefined, full: "new-package" },
8
- ];
9
- const result = updatePackagesArray(currentPackages, dependencies, "install");
10
- expect(result).toEqual([
11
- { packageName: "existing-package" },
12
- { packageName: "new-package", version: undefined, provider: "npm" },
13
- ]);
14
- });
15
- it("should not duplicate packages when installing package that is already installed", () => {
16
- const currentPackages = [{ packageName: "package-a" }];
17
- const dependencies = [
18
- { name: "package-a", version: undefined, full: "package-a" },
19
- ];
20
- const result = updatePackagesArray(currentPackages, dependencies, "install");
21
- expect(result).toEqual([
22
- { packageName: "package-a", version: undefined, provider: "npm" },
23
- ]);
24
- });
25
- it("should remove packages when uninstalling", () => {
26
- const currentPackages = [
27
- { packageName: "package-a", version: undefined, provider: "npm" },
28
- { packageName: "package-b", version: undefined, provider: "npm" },
29
- ];
30
- const dependencies = [
31
- { name: "package-a", version: undefined, full: "package-a" },
32
- ];
33
- const result = updatePackagesArray(currentPackages, dependencies, "uninstall");
34
- expect(result).toEqual([
35
- { packageName: "package-b", version: undefined, provider: "npm" },
36
- ]);
37
- });
38
- it("should handle empty current packages array", () => {
39
- const dependencies = [
40
- { name: "new-package", version: undefined, full: "new-package" },
41
- ];
42
- const result = updatePackagesArray(undefined, dependencies, "install");
43
- expect(result).toEqual([
44
- { packageName: "new-package", version: undefined, provider: "npm" },
45
- ]);
46
- });
47
- it("should handle empty dependencies array", () => {
48
- const currentPackages = [{ packageName: "existing-package" }];
49
- const result = updatePackagesArray(currentPackages, [], "install");
50
- expect(result).toEqual(currentPackages);
51
- });
52
- it("should add new packages with version and provider when installing", () => {
53
- const currentPackages = [
54
- { packageName: "existing-package" },
55
- ];
56
- const dependencies = [
57
- { name: "new-package", version: "1.2.3", full: "new-package@1.2.3" },
58
- ];
59
- const result = updatePackagesArray(currentPackages, dependencies, "install");
60
- expect(result).toEqual([
61
- { packageName: "existing-package" },
62
- { packageName: "new-package", version: "1.2.3", provider: "npm" },
63
- ]);
64
- });
65
- it("should not duplicate packages when installing package that is already installed with version", () => {
66
- const currentPackages = [
67
- { packageName: "package-a", version: "1.0.0", provider: "npm" },
68
- ];
69
- const dependencies = [
70
- { name: "package-a", version: "1.0.0", full: "package-a@1.0.0" },
71
- ];
72
- const result = updatePackagesArray(currentPackages, dependencies, "install");
73
- expect(result).toEqual([
74
- { packageName: "package-a", version: "1.0.0", provider: "npm" },
75
- ]);
76
- });
77
- it("should overwrite existing package if version is different", () => {
78
- const currentPackages = [
79
- { packageName: "package-a", version: "1.0.0", provider: "npm" },
80
- ];
81
- const dependencies = [
82
- { name: "package-a", version: "2.0.0", full: "package-a@2.0.0" },
83
- ];
84
- const result = updatePackagesArray(currentPackages, dependencies, "install");
85
- expect(result).toEqual([
86
- { packageName: "package-a", version: "2.0.0", provider: "npm" },
87
- ]);
88
- });
89
- it("should overwrite existing package if version is lower", () => {
90
- const currentPackages = [
91
- { packageName: "package-a", version: "1.0.0", provider: "npm" },
92
- ];
93
- const dependencies = [
94
- { name: "package-a", version: "0.5.0", full: "package-a@0.5.0" },
95
- ];
96
- const result = updatePackagesArray(currentPackages, dependencies, "install");
97
- expect(result).toEqual([
98
- { packageName: "package-a", version: "0.5.0", provider: "npm" },
99
- ]);
100
- });
101
- });
102
- describe("buildInstallCommand", () => {
103
- it("should return the correct install command", () => {
104
- const packageManager = "npm";
105
- const dependencies = ["test-package@1.2.3"];
106
- const workspace = false;
107
- const result = buildInstallCommand(packageManager, dependencies, workspace);
108
- expect(result).toBe("npm install test-package@1.2.3");
109
- });
110
- it("should return the correct install command with workspace", () => {
111
- const packageManager = "yarn";
112
- const dependencies = ["test-package@1.2.3"];
113
- const workspace = true;
114
- const result = buildInstallCommand(packageManager, dependencies, workspace);
115
- expect(result).toBe("yarn add test-package@1.2.3 -W");
116
- });
117
- it("should return the correct install command when no version is specified", () => {
118
- const packageManager = "npm";
119
- const dependencies = ["test-package"];
120
- const workspace = false;
121
- const result = buildInstallCommand(packageManager, dependencies, workspace);
122
- expect(result).toBe("npm install test-package");
123
- });
124
- it("should return the correct install command when package name includes @ character", () => {
125
- const packageManager = "yarn";
126
- const dependencies = ["@sky-ph/atlas@1.2.3"];
127
- const workspace = true;
128
- const result = buildInstallCommand(packageManager, dependencies, workspace);
129
- expect(result).toBe("yarn add @sky-ph/atlas@1.2.3 -W");
130
- });
131
- });
132
- //# sourceMappingURL=utils.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.test.js","sourceRoot":"","sources":["../../test/utils.test.ts"],"names":[],"mappings":"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"}