@powerhousedao/ph-cli 6.0.0-dev.53 → 6.0.0-dev.55

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 (31) hide show
  1. package/dist/src/commands/connect.d.ts +12 -12
  2. package/dist/src/commands/connect.d.ts.map +1 -1
  3. package/dist/src/commands/connect.js.map +1 -1
  4. package/dist/src/commands/legacy/connect.old.d.ts.map +1 -1
  5. package/dist/src/commands/legacy/connect.old.js.map +1 -1
  6. package/dist/src/commands/legacy/login.old.d.ts.map +1 -1
  7. package/dist/src/commands/legacy/login.old.js.map +1 -1
  8. package/dist/src/commands/legacy/switchboard.old.d.ts.map +1 -1
  9. package/dist/src/commands/legacy/switchboard.old.js.map +1 -1
  10. package/dist/src/commands/login.d.ts.map +1 -1
  11. package/dist/src/commands/login.js.map +1 -1
  12. package/dist/src/commands/ph-cli-commands.d.ts +8 -8
  13. package/dist/src/commands/ph-cli.d.ts +8 -8
  14. package/dist/src/commands/switchboard.d.ts.map +1 -1
  15. package/dist/src/commands/switchboard.js.map +1 -1
  16. package/dist/src/commands/vetra.d.ts +2 -2
  17. package/dist/src/services/connect-studio.d.ts +2 -1
  18. package/dist/src/services/connect-studio.d.ts.map +1 -1
  19. package/dist/src/services/connect-studio.js +2 -1
  20. package/dist/src/services/connect-studio.js.map +1 -1
  21. package/dist/src/services/legacy/vetra.old.js +1 -1
  22. package/dist/src/services/legacy/vetra.old.js.map +1 -1
  23. package/dist/src/services/switchboard.d.ts +2 -1
  24. package/dist/src/services/switchboard.d.ts.map +1 -1
  25. package/dist/src/services/switchboard.js +3 -1
  26. package/dist/src/services/switchboard.js.map +1 -1
  27. package/dist/src/services/vetra.d.ts.map +1 -1
  28. package/dist/src/services/vetra.js +63 -35
  29. package/dist/src/services/vetra.js.map +1 -1
  30. package/dist/tsconfig.tsbuildinfo +1 -1
  31. package/package.json +27 -26
@@ -1,6 +1,8 @@
1
1
  import { VETRA_PROCESSOR_CONFIG_KEY } from "@powerhousedao/config";
2
- import { blue, red } from "colorette";
3
- import { setLogLevel } from "document-drive";
2
+ import { addDefaultDrive } from "@powerhousedao/switchboard/utils";
3
+ import { blue, green, red, yellow } from "colorette";
4
+ import { childLogger, setLogLevel, } from "document-drive";
5
+ import { createLogger } from "vite";
4
6
  import { generateProjectDriveId } from "../utils.js";
5
7
  import { configureVetraGithubUrl, sleep, } from "../utils/configure-vetra-github-url.js";
6
8
  import { runConnectStudio } from "./connect-studio.js";
@@ -8,7 +10,27 @@ import { startSwitchboard } from "./switchboard.js";
8
10
  const VETRA_DRIVE_NAME = "vetra";
9
11
  const getDefaultVetraUrl = (port) => `http://localhost:${port}/d/${generateProjectDriveId(VETRA_DRIVE_NAME)}`;
10
12
  const getDriveId = (driveUrl) => driveUrl?.split("/").pop() ?? generateProjectDriveId(VETRA_DRIVE_NAME);
11
- async function startVetraPreviewDrive(reactor, port, verbose) {
13
+ function createViteLogger(color) {
14
+ const customLogger = createLogger("info");
15
+ const loggerInfo = customLogger.info.bind(customLogger);
16
+ customLogger.info = (msg, options) => {
17
+ loggerInfo(color(msg), options);
18
+ };
19
+ const loggerWarn = customLogger.warn.bind(customLogger);
20
+ customLogger.warn = (msg, options) => {
21
+ loggerWarn(yellow(msg), options);
22
+ };
23
+ const loggerError = customLogger.error.bind(customLogger);
24
+ customLogger.error = (msg, options) => {
25
+ loggerError(red(msg), options);
26
+ };
27
+ const loggerWarnOnce = customLogger.warnOnce.bind(customLogger);
28
+ customLogger.warnOnce = (msg, options) => {
29
+ loggerWarnOnce(yellow(msg), options);
30
+ };
31
+ return customLogger;
32
+ }
33
+ async function startVetraPreviewDrive(reactor, reactorLegacy, port, verbose) {
12
34
  const previewDriveId = generateProjectDriveId("preview");
13
35
  const previewDrive = {
14
36
  id: previewDriveId,
@@ -16,6 +38,7 @@ async function startVetraPreviewDrive(reactor, port, verbose) {
16
38
  global: {
17
39
  name: "Vetra Preview",
18
40
  icon: "https://azure-elderly-tortoise-212.mypinata.cloud/ipfs/bafkreifddkbopiyvcirf7vaqar74th424r5phlxkdxniirdyg3qgu2ajha",
41
+ nodes: [],
19
42
  },
20
43
  local: {
21
44
  availableOffline: true,
@@ -24,21 +47,13 @@ async function startVetraPreviewDrive(reactor, port, verbose) {
24
47
  triggers: [],
25
48
  },
26
49
  };
27
- try {
28
- await reactor.addDrive(previewDrive);
29
- if (verbose) {
30
- console.log(blue(`[Vetra Switchboard]: Preview drive created: ${previewDriveId}`));
31
- }
32
- }
33
- catch {
34
- // Drive might already exist, which is fine
35
- if (verbose) {
36
- console.log(blue(`[Vetra Switchboard]: Preview drive already exists: ${previewDriveId}`));
37
- }
50
+ const driveUrl = await addDefaultDrive(reactorLegacy, reactor, previewDrive, port);
51
+ if (verbose) {
52
+ console.log(blue(`Vetra Switchboard: Preview drive: ${driveUrl}`));
38
53
  }
39
- return `http://localhost:${port}/d/${previewDriveId}`;
54
+ return driveUrl;
40
55
  }
41
- async function startLocalVetraSwitchboard(args) {
56
+ async function startLocalVetraSwitchboard(args, logger) {
42
57
  const { connectPort, switchboardPort, dev, packages, disableLocalPackages, debug, httpsKeyFile, httpsCertFile, remoteDrive, interactive, watch, verbose, } = args;
43
58
  // Convert single remote drive to array if provided
44
59
  const remoteDrives = remoteDrive ? [remoteDrive] : [];
@@ -71,21 +86,30 @@ async function startLocalVetraSwitchboard(args) {
71
86
  migrate: undefined,
72
87
  migrateStatus: undefined,
73
88
  requireIdentity: undefined,
74
- });
89
+ }, logger);
75
90
  // Add preview drive (only in watch mode)
76
91
  let previewDriveUrl = null;
77
92
  if (watch) {
78
- previewDriveUrl = await startVetraPreviewDrive(switchboard.reactor, switchboardPort, verbose);
93
+ try {
94
+ previewDriveUrl = await startVetraPreviewDrive(switchboard.reactor, switchboard.legacyReactor, switchboardPort, verbose);
95
+ }
96
+ catch (error) {
97
+ console.error(error);
98
+ }
79
99
  }
80
100
  if (verbose) {
81
- console.log(blue(`[Vetra Switchboard]: Started successfully`));
101
+ console.log(blue(`Vetra Switchboard: Started successfully`));
82
102
  if (remoteDrive) {
83
- console.log(blue(`[Vetra Switchboard]: Syncing with remote drive: ${remoteDrive}`));
103
+ console.log(blue(`Vetra Switchboard: Syncing with remote drive: ${remoteDrive}`));
84
104
  }
85
105
  }
86
106
  else {
87
- console.log(`Switchboard initialized`);
88
- console.log(` Drive URL: ${switchboard.defaultDriveUrl}`);
107
+ console.log();
108
+ console.log(blue(`Vetra Switchboard: http://localhost:${switchboardPort}/graphql`));
109
+ console.log(blue(` ➜ Drive URL: ${switchboard.defaultDriveUrl}`));
110
+ if (previewDriveUrl) {
111
+ console.log(blue(` ➜ Preview Drive URL: ${previewDriveUrl}`));
112
+ }
89
113
  }
90
114
  return {
91
115
  driveUrl: switchboard.defaultDriveUrl || "",
@@ -93,24 +117,25 @@ async function startLocalVetraSwitchboard(args) {
93
117
  };
94
118
  }
95
119
  catch (error) {
96
- console.error(red(`[Vetra Switchboard]: ${error instanceof Error ? error.message : String(error)}`));
120
+ console.error(red(`Vetra Switchboard: ${error instanceof Error ? error.message : String(error)}`));
97
121
  throw error instanceof Error ? error : new Error(String(error));
98
122
  }
99
123
  }
100
124
  export async function startVetra(args) {
101
- const { switchboardPort, connectPort, verbose, remoteDrive, disableConnect, debug, httpsCertFile, httpsKeyFile, disableLocalPackages, } = args;
125
+ const { switchboardPort, connectPort, verbose, remoteDrive, disableConnect, debug, httpsCertFile, httpsKeyFile, disableLocalPackages, host, open, cors, strictPort, printUrls, bindCLIShortcuts, watchTimeout, } = args;
126
+ const switchboardLogger = childLogger(["vetra", "switchboard"]);
102
127
  try {
103
128
  // Set default log level to info if not already specified
104
129
  if (!process.env.LOG_LEVEL) {
105
130
  setLogLevel("info");
106
131
  }
107
132
  if (verbose) {
108
- console.log("Starting Vetra Switchboard...");
133
+ switchboardLogger.info("Starting Vetra Switchboard...");
109
134
  if (remoteDrive) {
110
135
  const source = remoteDrive
111
136
  ? "command line argument"
112
137
  : "powerhouse.config.json";
113
- console.log(`Using vetraUrl from ${source}: ${remoteDrive}`);
138
+ switchboardLogger.info(`Using vetraUrl from ${source}: ${remoteDrive}`);
114
139
  }
115
140
  }
116
141
  const switchboardResult = await startLocalVetraSwitchboard({
@@ -120,7 +145,7 @@ export async function startVetra(args) {
120
145
  httpsCertFile,
121
146
  disableLocalPackages,
122
147
  debug,
123
- });
148
+ }, switchboardLogger);
124
149
  const driveUrl = switchboardResult.driveUrl || remoteDrive || "";
125
150
  const previewDriveUrl = switchboardResult.previewDriveUrl;
126
151
  // Configure GitHub URL if remote drive is set
@@ -143,6 +168,9 @@ export async function startVetra(args) {
143
168
  : driveUrl;
144
169
  console.log(` ➜ Connect will use drives: ${drives}`);
145
170
  }
171
+ console.log();
172
+ console.log(green(`Vetra Connect: http://localhost:${connectPort}`));
173
+ const customViteLogger = createViteLogger(green);
146
174
  await runConnectStudio({
147
175
  ...args,
148
176
  defaultDrivesUrl: previewDriveUrl
@@ -152,14 +180,14 @@ export async function startVetra(args) {
152
180
  port: connectPort,
153
181
  disableLocalPackages,
154
182
  debug,
155
- host: false,
156
- open: false,
157
- cors: false,
158
- strictPort: false,
159
- printUrls: false,
160
- bindCLIShortcuts: false,
161
- watchTimeout: 300,
162
- });
183
+ host: host,
184
+ open: open,
185
+ cors: cors,
186
+ strictPort: strictPort,
187
+ printUrls: printUrls,
188
+ bindCLIShortcuts: bindCLIShortcuts,
189
+ watchTimeout: watchTimeout,
190
+ }, customViteLogger);
163
191
  }
164
192
  }
165
193
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"vetra.js","sourceRoot":"","sources":["../../../src/services/vetra.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vetra.js","sourceRoot":"","sources":["../../../src/services/vetra.ts"],"names":[],"mappings":"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"}