@powerhousedao/ph-cli 5.0.2 → 5.0.4
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/src/commands/generate.d.ts.map +1 -1
- package/dist/src/commands/generate.js +1 -0
- package/dist/src/commands/generate.js.map +1 -1
- package/dist/src/commands/index.d.ts +0 -2
- package/dist/src/commands/index.d.ts.map +1 -1
- package/dist/src/commands/index.js +0 -2
- package/dist/src/commands/index.js.map +1 -1
- package/dist/src/commands/install.d.ts +1 -1
- package/dist/src/commands/install.d.ts.map +1 -1
- package/dist/src/commands/install.js +2 -1
- package/dist/src/commands/install.js.map +1 -1
- package/dist/src/commands/migrate.d.ts +3 -0
- package/dist/src/commands/migrate.d.ts.map +1 -0
- package/dist/src/commands/migrate.js +8 -0
- package/dist/src/commands/migrate.js.map +1 -0
- package/dist/src/commands/register-commands.d.ts.map +1 -1
- package/dist/src/commands/register-commands.js +2 -4
- package/dist/src/commands/register-commands.js.map +1 -1
- package/dist/src/commands/switchboard.d.ts +2 -2
- package/dist/src/commands/switchboard.d.ts.map +1 -1
- package/dist/src/commands/switchboard.js +4 -1
- package/dist/src/commands/switchboard.js.map +1 -1
- package/dist/src/services/generate.d.ts +4 -0
- package/dist/src/services/generate.d.ts.map +1 -1
- package/dist/src/services/generate.js +13 -1
- package/dist/src/services/generate.js.map +1 -1
- package/dist/src/services/migrate/migrate.d.ts +3 -0
- package/dist/src/services/migrate/migrate.d.ts.map +1 -0
- package/dist/src/services/migrate/migrate.js +282 -0
- package/dist/src/services/migrate/migrate.js.map +1 -0
- package/dist/src/services/migrate/migrations/templates/document-models.d.ts +2 -0
- package/dist/src/services/migrate/migrations/templates/document-models.d.ts.map +1 -0
- package/dist/src/services/migrate/migrations/templates/document-models.js +6 -0
- package/dist/src/services/migrate/migrations/templates/document-models.js.map +1 -0
- package/dist/src/services/migrate/migrations/templates/editors.d.ts +2 -0
- package/dist/src/services/migrate/migrations/templates/editors.d.ts.map +1 -0
- package/dist/src/services/migrate/migrations/templates/editors.js +6 -0
- package/dist/src/services/migrate/migrations/templates/editors.js.map +1 -0
- package/dist/src/services/migrate/migrations/templates/index.d.ts +2 -0
- package/dist/src/services/migrate/migrations/templates/index.d.ts.map +1 -0
- package/dist/src/services/migrate/migrations/templates/index.js +7 -0
- package/dist/src/services/migrate/migrations/templates/index.js.map +1 -0
- package/dist/src/services/migrate/migrations/templates/packageJson.d.ts +55 -0
- package/dist/src/services/migrate/migrations/templates/packageJson.d.ts.map +1 -0
- package/dist/src/services/migrate/migrations/templates/packageJson.js +55 -0
- package/dist/src/services/migrate/migrations/templates/packageJson.js.map +1 -0
- package/dist/src/services/migrate/migrations/templates/tsConfig.d.ts +2 -0
- package/dist/src/services/migrate/migrations/templates/tsConfig.d.ts.map +1 -0
- package/dist/src/services/migrate/migrations/templates/tsConfig.js +45 -0
- package/dist/src/services/migrate/migrations/templates/tsConfig.js.map +1 -0
- package/dist/src/services/switchboard.d.ts +29 -0
- package/dist/src/services/switchboard.d.ts.map +1 -1
- package/dist/src/services/switchboard.js +2 -1
- package/dist/src/services/switchboard.js.map +1 -1
- package/dist/src/services/vetra.d.ts.map +1 -1
- package/dist/src/services/vetra.js +27 -8
- package/dist/src/services/vetra.js.map +1 -1
- package/dist/src/utils/configure-vetra-github-url.d.ts +12 -0
- package/dist/src/utils/configure-vetra-github-url.d.ts.map +1 -0
- package/dist/src/utils/configure-vetra-github-url.js +230 -0
- package/dist/src/utils/configure-vetra-github-url.js.map +1 -0
- package/dist/src/version.d.ts +1 -1
- package/dist/src/version.js +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +12 -10
- package/dist/src/commands/dev.d.ts +0 -6
- package/dist/src/commands/dev.d.ts.map +0 -1
- package/dist/src/commands/dev.js +0 -25
- package/dist/src/commands/dev.js.map +0 -1
- package/dist/src/commands/reactor.d.ts +0 -9
- package/dist/src/commands/reactor.d.ts.map +0 -1
- package/dist/src/commands/reactor.js +0 -43
- package/dist/src/commands/reactor.js.map +0 -1
- package/dist/src/services/dev.d.ts +0 -10
- package/dist/src/services/dev.d.ts.map +0 -1
- package/dist/src/services/dev.js +0 -77
- package/dist/src/services/dev.js.map +0 -1
- package/dist/src/services/reactor.d.ts +0 -36
- package/dist/src/services/reactor.d.ts.map +0 -1
- package/dist/src/services/reactor.js +0 -92
- package/dist/src/services/reactor.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../../src/commands/generate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAcrD,eAAO,MAAM,QAAQ,EAAE,iBAAiB,CACtC;IAAC,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS;IAAE,eAAe;CAAC,CAGjD,CAAC;AAEF,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../../src/commands/generate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAcrD,eAAO,MAAM,QAAQ,EAAE,iBAAiB,CACtC;IAAC,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS;IAAE,eAAe;CAAC,CAGjD,CAAC;AAEF,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,QAwC/C"}
|
|
@@ -29,6 +29,7 @@ export function generateCommand(program) {
|
|
|
29
29
|
.option("-f, --force", "Overwrite operation reducers")
|
|
30
30
|
.option("-w, --watch", "Watch the generated code")
|
|
31
31
|
.option("-d, --drive-editor <name>", "Generate a drive editor with the specified name")
|
|
32
|
+
.option("--allowed-document-types <types>", "Supported document types for a drive editor")
|
|
32
33
|
.option("--migration-file <path>", "Path to the migration file")
|
|
33
34
|
.option("--schema-file <path>", "Path to the output file. Defaults to './schema.ts'");
|
|
34
35
|
// Use the setCustomHelp utility to apply custom help formatting
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/commands/generate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,KAAK,UAAU,aAAa,CAC1B,QAAuC,EACvC,OAAwB;IAExB,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;IACzD,MAAM,EAAE,aAAa,EAAE,GAAG,QAAQ,CAAC;IAEnC,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC7E,OAAO,aAAa,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAEjB,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE;IAC9B,OAAO,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC1C,CAAC,CAAC;AAEF,MAAM,UAAU,eAAe,CAAC,OAAgB;IAC9C,MAAM,GAAG,GAAG,OAAO;SAChB,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CAAC,wCAAwC,CAAC;SACrD,QAAQ,CAAC,0BAA0B,EAAE,iCAAiC,CAAC;SACvE,MAAM,CAAC,mBAAmB,EAAE,qCAAqC,CAAC;SAClE,MAAM,CAAC,kBAAkB,EAAE,+BAA+B,CAAC;SAC3D,MAAM,CAAC,qBAAqB,EAAE,aAAa,CAAC;SAC5C,MAAM,CAAC,eAAe,EAAE,6BAA6B,CAAC;SACtD,MAAM,CAAC,qBAAqB,EAAE,kCAAkC,CAAC;SACjE,MAAM,CAAC,wBAAwB,EAAE,gBAAgB,CAAC;SAClD,MAAM,CACL,yBAAyB,EACzB,+CAA+C,CAChD;SACA,MAAM,CAAC,uBAAuB,EAAE,eAAe,CAAC;SAChD,MAAM,CAAC,0BAA0B,EAAE,uCAAuC,CAAC;SAC3E,MAAM,CAAC,yBAAyB,EAAE,wCAAwC,CAAC;SAC3E,MAAM,CAAC,6BAA6B,EAAE,oBAAoB,CAAC;SAC3D,MAAM,CAAC,oBAAoB,EAAE,oCAAoC,CAAC;SAClE,MAAM,CAAC,aAAa,EAAE,8BAA8B,CAAC;SACrD,MAAM,CAAC,aAAa,EAAE,0BAA0B,CAAC;SACjD,MAAM,CACL,2BAA2B,EAC3B,iDAAiD,CAClD;SACA,MAAM,CAAC,yBAAyB,EAAE,4BAA4B,CAAC;SAC/D,MAAM,CACL,sBAAsB,EACtB,oDAAoD,CACrD,CAAC;IAEJ,gEAAgE;IAChE,aAAa,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;IAEjC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AACvB,CAAC"}
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/commands/generate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,KAAK,UAAU,aAAa,CAC1B,QAAuC,EACvC,OAAwB;IAExB,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;IACzD,MAAM,EAAE,aAAa,EAAE,GAAG,QAAQ,CAAC;IAEnC,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC7E,OAAO,aAAa,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAEjB,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE;IAC9B,OAAO,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC1C,CAAC,CAAC;AAEF,MAAM,UAAU,eAAe,CAAC,OAAgB;IAC9C,MAAM,GAAG,GAAG,OAAO;SAChB,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CAAC,wCAAwC,CAAC;SACrD,QAAQ,CAAC,0BAA0B,EAAE,iCAAiC,CAAC;SACvE,MAAM,CAAC,mBAAmB,EAAE,qCAAqC,CAAC;SAClE,MAAM,CAAC,kBAAkB,EAAE,+BAA+B,CAAC;SAC3D,MAAM,CAAC,qBAAqB,EAAE,aAAa,CAAC;SAC5C,MAAM,CAAC,eAAe,EAAE,6BAA6B,CAAC;SACtD,MAAM,CAAC,qBAAqB,EAAE,kCAAkC,CAAC;SACjE,MAAM,CAAC,wBAAwB,EAAE,gBAAgB,CAAC;SAClD,MAAM,CACL,yBAAyB,EACzB,+CAA+C,CAChD;SACA,MAAM,CAAC,uBAAuB,EAAE,eAAe,CAAC;SAChD,MAAM,CAAC,0BAA0B,EAAE,uCAAuC,CAAC;SAC3E,MAAM,CAAC,yBAAyB,EAAE,wCAAwC,CAAC;SAC3E,MAAM,CAAC,6BAA6B,EAAE,oBAAoB,CAAC;SAC3D,MAAM,CAAC,oBAAoB,EAAE,oCAAoC,CAAC;SAClE,MAAM,CAAC,aAAa,EAAE,8BAA8B,CAAC;SACrD,MAAM,CAAC,aAAa,EAAE,0BAA0B,CAAC;SACjD,MAAM,CACL,2BAA2B,EAC3B,iDAAiD,CAClD;SACA,MAAM,CACL,kCAAkC,EAClC,6CAA6C,CAC9C;SACA,MAAM,CAAC,yBAAyB,EAAE,4BAA4B,CAAC;SAC/D,MAAM,CACL,sBAAsB,EACtB,oDAAoD,CACrD,CAAC;IAEJ,gEAAgE;IAChE,aAAa,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;IAEjC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AACvB,CAAC"}
|
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
export * from "./connect.js";
|
|
2
|
-
export * from "./dev.js";
|
|
3
2
|
export * from "./generate.js";
|
|
4
3
|
export * from "./help.js";
|
|
5
4
|
export * from "./inspect.js";
|
|
6
5
|
export * from "./install.js";
|
|
7
6
|
export * from "./list.js";
|
|
8
|
-
export * from "./reactor.js";
|
|
9
7
|
export * from "./register-commands.js";
|
|
10
8
|
export * from "./service.js";
|
|
11
9
|
export * from "./switchboard.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,wBAAwB,CAAC;AACvC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC"}
|
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
export * from "./connect.js";
|
|
2
|
-
export * from "./dev.js";
|
|
3
2
|
export * from "./generate.js";
|
|
4
3
|
export * from "./help.js";
|
|
5
4
|
export * from "./inspect.js";
|
|
6
5
|
export * from "./install.js";
|
|
7
6
|
export * from "./list.js";
|
|
8
|
-
export * from "./reactor.js";
|
|
9
7
|
export * from "./register-commands.js";
|
|
10
8
|
export * from "./service.js";
|
|
11
9
|
export * from "./switchboard.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,wBAAwB,CAAC;AACvC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { Command } from "commander";
|
|
2
1
|
import type { CommandActionType, PackageManager } from "@powerhousedao/ph-cli";
|
|
2
|
+
import type { Command } from "commander";
|
|
3
3
|
export declare function installDependency(packageManager: PackageManager, dependencies: string[], projectPath: string, workspace?: boolean): string;
|
|
4
4
|
export declare function buildInstallCommand(packageManager: PackageManager, dependencies: string[], workspace?: boolean): string;
|
|
5
5
|
export declare const install: CommandActionType<[
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../src/commands/install.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../src/commands/install.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAczC,wBAAgB,iBAAiB,CAC/B,cAAc,EAAE,cAAc,EAC9B,YAAY,EAAE,MAAM,EAAE,EACtB,WAAW,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,OAAO,UAGpB;AAED,wBAAgB,mBAAmB,CACjC,cAAc,EAAE,cAAc,EAC9B,YAAY,EAAE,MAAM,EAAE,EACtB,SAAS,CAAC,EAAE,OAAO,GAClB,MAAM,CAaR;AAED,eAAO,MAAM,OAAO,EAAE,iBAAiB,CACrC;IACE,MAAM,EAAE,GAAG,SAAS;IACpB;QACE,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB;CACF,CAsHF,CAAC;AAEF,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,QAoB9C"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { execSync } from "node:child_process";
|
|
2
2
|
import fs from "node:fs";
|
|
3
|
-
import {
|
|
3
|
+
import { installHelp } from "../help.js";
|
|
4
|
+
import { getPackageManagerFromLockfile, getProjectInfo, packageManagers, setCustomHelp, SUPPORTED_PACKAGE_MANAGERS, updateConfigFile, updateStylesFile, } from "../utils.js";
|
|
4
5
|
export function installDependency(packageManager, dependencies, projectPath, workspace) {
|
|
5
6
|
return buildInstallCommand(packageManager, dependencies, workspace);
|
|
6
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/commands/install.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/commands/install.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../../src/commands/migrate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOzC,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,QAE9C"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
async function migrate() {
|
|
2
|
+
const { migrate } = await import("../services/migrate/migrate.js");
|
|
3
|
+
return await migrate();
|
|
4
|
+
}
|
|
5
|
+
export function migrateCommand(program) {
|
|
6
|
+
program.command("migrate").description("Run migrations").action(migrate);
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=migrate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../../src/commands/migrate.ts"],"names":[],"mappings":"AAEA,KAAK,UAAU,OAAO;IACpB,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,gCAAgC,CAAC,CAAC;IACnE,OAAO,MAAM,OAAO,EAAE,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,OAAgB;IAC7C,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AAC3E,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
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;
|
|
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;AAEzC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAWhD,eAAO,MAAM,QAAQ,4BAYpB,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,QAEhD"}
|
|
@@ -1,20 +1,17 @@
|
|
|
1
1
|
import { connectCommand } from "./connect.js";
|
|
2
|
-
// import { devCommand } from "./dev.js";
|
|
3
2
|
import { generateCommand } from "./generate.js";
|
|
4
3
|
import { helpCommand } from "./help.js";
|
|
5
4
|
import { inspectCommand } from "./inspect.js";
|
|
6
5
|
import { installCommand } from "./install.js";
|
|
7
6
|
import { listCommand } from "./list.js";
|
|
8
|
-
import {
|
|
7
|
+
import { migrateCommand } from "./migrate.js";
|
|
9
8
|
import { serviceCommand } from "./service.js";
|
|
10
9
|
import { switchboardCommand } from "./switchboard.js";
|
|
11
10
|
import { uninstallCommand } from "./uninstall.js";
|
|
12
11
|
import { vetraCommand } from "./vetra.js";
|
|
13
12
|
export const commands = [
|
|
14
|
-
// devCommand,
|
|
15
13
|
connectCommand,
|
|
16
14
|
generateCommand,
|
|
17
|
-
reactorCommand,
|
|
18
15
|
helpCommand,
|
|
19
16
|
installCommand,
|
|
20
17
|
uninstallCommand,
|
|
@@ -23,6 +20,7 @@ export const commands = [
|
|
|
23
20
|
inspectCommand,
|
|
24
21
|
switchboardCommand,
|
|
25
22
|
vetraCommand,
|
|
23
|
+
migrateCommand,
|
|
26
24
|
];
|
|
27
25
|
export function registerCommands(program) {
|
|
28
26
|
commands.forEach((command) => command(program));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-commands.js","sourceRoot":"","sources":["../../../src/commands/register-commands.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,
|
|
1
|
+
{"version":3,"file":"register-commands.js","sourceRoot":"","sources":["../../../src/commands/register-commands.ts"],"names":[],"mappings":"AACA,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,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,cAAc;IACd,eAAe;IACf,WAAW;IACX,cAAc;IACd,gBAAgB;IAChB,cAAc;IACd,WAAW;IACX,cAAc;IACd,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,9 +1,9 @@
|
|
|
1
1
|
import type { SwitchboardReactor } from "@powerhousedao/switchboard/server";
|
|
2
2
|
import type { Command } from "commander";
|
|
3
|
-
import type {
|
|
3
|
+
import type { LocalSwitchboardOptions } from "../services/switchboard.js";
|
|
4
4
|
import type { CommandActionType } from "../types.js";
|
|
5
5
|
export declare const runStartLocalSwitchboard: CommandActionType<[
|
|
6
|
-
|
|
6
|
+
LocalSwitchboardOptions
|
|
7
7
|
], Promise<SwitchboardReactor>>;
|
|
8
8
|
export declare function switchboardCommand(program: Command): void;
|
|
9
9
|
//# sourceMappingURL=switchboard.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switchboard.d.ts","sourceRoot":"","sources":["../../../src/commands/switchboard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"switchboard.d.ts","sourceRoot":"","sources":["../../../src/commands/switchboard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAyBrD,eAAO,MAAM,wBAAwB,EAAE,iBAAiB,CACtD;IAAC,uBAAuB;CAAC,EACzB,OAAO,CAAC,kBAAkB,CAAC,CAG5B,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,QA+BlD"}
|
|
@@ -23,6 +23,7 @@ export const runStartLocalSwitchboard = async (options) => {
|
|
|
23
23
|
export function switchboardCommand(program) {
|
|
24
24
|
const command = program
|
|
25
25
|
.command("switchboard")
|
|
26
|
+
.alias("reactor")
|
|
26
27
|
.description("Starts local switchboard")
|
|
27
28
|
.option("--port <PORT>", "port to host the api", "4001")
|
|
28
29
|
.option("--config-file <configFile>", "Path to the powerhouse.config.js file", "./powerhouse.config.json")
|
|
@@ -42,7 +43,9 @@ export function switchboardCommand(program) {
|
|
|
42
43
|
}
|
|
43
44
|
if (process.argv.at(2) === "spawn") {
|
|
44
45
|
const optionsArg = process.argv.at(3);
|
|
45
|
-
const options = optionsArg
|
|
46
|
+
const options = optionsArg
|
|
47
|
+
? JSON.parse(optionsArg)
|
|
48
|
+
: {};
|
|
46
49
|
startLocalSwitchboard(options)
|
|
47
50
|
.then((reactor) => {
|
|
48
51
|
process.send?.(`driveUrl:${reactor.defaultDriveUrl}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switchboard.js","sourceRoot":"","sources":["../../../src/commands/switchboard.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAG7C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"switchboard.js","sourceRoot":"","sources":["../../../src/commands/switchboard.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAG7C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,KAAK,UAAU,qBAAqB,CAAC,OAAgC;IACnE,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;IAC3C,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,4BAA4B,CAAC,CAAC;IAC/D,MAAM,EAAE,gBAAgB,EAAE,GAAG,WAAW,CAAC;IAEzC,kDAAkD;IAClD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAErE,MAAM,IAAI,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAEvE,OAAO,gBAAgB,CAAC;QACtB,IAAI;QACJ,UAAU;QACV,GAAG;QACH,MAAM;QACN,QAAQ;KACT,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,wBAAwB,GAGjC,KAAK,EAAE,OAAO,EAAE,EAAE;IACpB,OAAO,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC;AAC9C,CAAC,CAAC;AAEF,MAAM,UAAU,kBAAkB,CAAC,OAAgB;IACjD,MAAM,OAAO,GAAG,OAAO;SACpB,OAAO,CAAC,aAAa,CAAC;SACtB,KAAK,CAAC,SAAS,CAAC;SAChB,WAAW,CAAC,0BAA0B,CAAC;SACvC,MAAM,CAAC,eAAe,EAAE,sBAAsB,EAAE,MAAM,CAAC;SACvD,MAAM,CACL,4BAA4B,EAC5B,uCAAuC,EACvC,0BAA0B,CAC3B;SACA,MAAM,CAAC,YAAY,EAAE,8CAA8C,CAAC;SACpE,MAAM,CAAC,OAAO,EAAE,gDAAgD,CAAC;SACjE,MAAM,CAAC,qBAAqB,EAAE,sBAAsB,CAAC;SACrD,MAAM,CAAC,mCAAmC,EAAE,0BAA0B,CAAC;SACvE,MAAM,CAAC,qCAAqC,EAAE,2BAA2B,CAAC;SAC1E,MAAM,CACL,0BAA0B,EAC1B,oFAAoF,CACrF;SACA,MAAM,CACL,wBAAwB,EACxB,2EAA2E,CAC5E;SACA,MAAM,CAAC,OAAO,EAAE,yCAAyC,CAAC;SAC1D,MAAM,CAAC,KAAK,EAAE,GAAG,IAA+B,EAAE,EAAE;QACnD,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,wBAAwB,CAAC,GAAG,IAAI,CAAC,CAAC;QACpE,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,eAAe,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IAEL,aAAa,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;AAC1C,CAAC;AAED,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;IACnC,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACtC,MAAM,OAAO,GAAG,UAAU;QACxB,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAA6B;QACrD,CAAC,CAAC,EAAE,CAAC;IACP,qBAAqB,CAAC,OAAO,CAAC;SAC3B,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;QAChB,OAAO,CAAC,IAAI,EAAE,CAAC,YAAY,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IACxD,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,CAAU,EAAE,EAAE;QACpB,MAAM,CAAC,CAAC;IACV,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -6,7 +6,10 @@ export type GenerateOptions = {
|
|
|
6
6
|
skipFormat?: boolean;
|
|
7
7
|
force?: boolean;
|
|
8
8
|
watch?: boolean;
|
|
9
|
+
specifiedPackageName?: string;
|
|
9
10
|
editor?: string;
|
|
11
|
+
editorId?: string;
|
|
12
|
+
editorDirName?: string;
|
|
10
13
|
processor?: string;
|
|
11
14
|
documentTypes?: string;
|
|
12
15
|
allowedDocumentTypes?: string;
|
|
@@ -17,6 +20,7 @@ export type GenerateOptions = {
|
|
|
17
20
|
file?: string;
|
|
18
21
|
driveEditor?: string;
|
|
19
22
|
driveEditorAppId?: string;
|
|
23
|
+
driveEditorDirName?: string;
|
|
20
24
|
migrationFile?: string;
|
|
21
25
|
schemaFile?: string;
|
|
22
26
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../../src/services/generate.ts"],"names":[],"mappings":"AAaA,MAAM,MAAM,eAAe,GAAG;IAC5B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,aAAa,CAAC,EAAE,WAAW,GAAG,cAAc,CAAC;IAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,OAAO,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../../src/services/generate.ts"],"names":[],"mappings":"AAaA,MAAM,MAAM,eAAe,GAAG;IAC5B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,aAAa,CAAC,EAAE,WAAW,GAAG,cAAc,CAAC;IAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,OAAO,EAAE,eAAe,iBA0FzB"}
|
|
@@ -17,8 +17,11 @@ export async function startGenerate(filePath, options) {
|
|
|
17
17
|
},
|
|
18
18
|
};
|
|
19
19
|
const command = {
|
|
20
|
+
specifiedPackageName: options.specifiedPackageName,
|
|
20
21
|
editor: !!options.editor,
|
|
21
22
|
editorName: options.editor,
|
|
23
|
+
editorId: options.editorId,
|
|
24
|
+
editorDirName: options.editorDirName,
|
|
22
25
|
documentTypes: options.documentTypes,
|
|
23
26
|
allowedDocumentTypes: options.allowedDocumentTypes,
|
|
24
27
|
processor: !!options.processor,
|
|
@@ -31,6 +34,7 @@ export async function startGenerate(filePath, options) {
|
|
|
31
34
|
driveEditor: !!options.driveEditor,
|
|
32
35
|
driveEditorName: options.driveEditor,
|
|
33
36
|
driveEditorAppId: options.driveEditorAppId,
|
|
37
|
+
driveEditorDirName: options.driveEditorDirName,
|
|
34
38
|
isDragAndDropEnabled: options.isDragAndDropEnabled,
|
|
35
39
|
migrationFile: options.migrationFile,
|
|
36
40
|
schemaFile: options.schemaFile,
|
|
@@ -45,13 +49,21 @@ export async function startGenerate(filePath, options) {
|
|
|
45
49
|
appId: command.driveEditorAppId,
|
|
46
50
|
allowedDocumentTypes: command.allowedDocumentTypes,
|
|
47
51
|
isDragAndDropEnabled: command.isDragAndDropEnabled,
|
|
52
|
+
driveEditorDirName: command.driveEditorDirName,
|
|
48
53
|
});
|
|
49
54
|
}
|
|
50
55
|
else if (command.editor) {
|
|
51
56
|
if (!command.editorName) {
|
|
52
57
|
throw new Error("Editor name is required (--editor or -e)");
|
|
53
58
|
}
|
|
54
|
-
await generateEditor(
|
|
59
|
+
await generateEditor({
|
|
60
|
+
name: command.editorName,
|
|
61
|
+
documentTypes: command.documentTypes?.split(/[|,;]/g) ?? [],
|
|
62
|
+
config: config,
|
|
63
|
+
editorId: command.editorId,
|
|
64
|
+
specifiedPackageName: command.specifiedPackageName,
|
|
65
|
+
editorDirName: command.editorDirName,
|
|
66
|
+
});
|
|
55
67
|
}
|
|
56
68
|
else if (command.processor && options.processor) {
|
|
57
69
|
const processorType = options.processorType === "relationalDb" ? "relationalDb" : "analytics";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/services/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,IAAI,YAAY,EACxB,gBAAgB,EAChB,mBAAmB,EACnB,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,IAAI,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/services/generate.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../../../src/services/migrate/migrate.ts"],"names":[],"mappings":"AAqBA,yBAAyB;AACzB,wBAAsB,OAAO,kBAkB5B"}
|
|
@@ -0,0 +1,282 @@
|
|
|
1
|
+
import { existsSync, readdirSync } from "node:fs";
|
|
2
|
+
import { readdir, writeFile } from "node:fs/promises";
|
|
3
|
+
import path from "path";
|
|
4
|
+
import { readPackage } from "read-pkg";
|
|
5
|
+
import { Project, SyntaxKind } from "ts-morph";
|
|
6
|
+
import { writePackage } from "write-pkg";
|
|
7
|
+
import { generate } from "../../commands/generate.js";
|
|
8
|
+
import { indexTsTemplate } from "./migrations/templates/index.js";
|
|
9
|
+
import { packageJsonExportsTemplate, packageJsonScriptsTemplate, } from "./migrations/templates/packageJson.js";
|
|
10
|
+
import { tsConfigTemplate } from "./migrations/templates/tsConfig.js";
|
|
11
|
+
/** Run all migrations */
|
|
12
|
+
export async function migrate() {
|
|
13
|
+
await migratePackageJson();
|
|
14
|
+
await migrateTsConfig();
|
|
15
|
+
await runGenerateOnAllDocumentModels();
|
|
16
|
+
await runGenerateOnAllEditors();
|
|
17
|
+
const project = new Project({
|
|
18
|
+
tsConfigFilePath: path.resolve("tsconfig.json"),
|
|
19
|
+
compilerOptions: {
|
|
20
|
+
verbatimModuleSyntax: false,
|
|
21
|
+
},
|
|
22
|
+
});
|
|
23
|
+
deleteLegacyEditorDirIndexFiles(project);
|
|
24
|
+
migrateEditorFiles(project);
|
|
25
|
+
migrateRootIndex(project);
|
|
26
|
+
removeZDotSchemaUsage(project);
|
|
27
|
+
removeCreatorsUsage(project);
|
|
28
|
+
removeUtilsDefaultExportUsage(project);
|
|
29
|
+
fixImports(project);
|
|
30
|
+
}
|
|
31
|
+
/** Ensure that the project package.json has the correct scripts and exports. */
|
|
32
|
+
async function migratePackageJson() {
|
|
33
|
+
const packageJson = await readPackage();
|
|
34
|
+
const existingScripts = packageJson.scripts;
|
|
35
|
+
const existingExports = !!packageJson.exports &&
|
|
36
|
+
!Array.isArray(packageJson.exports) &&
|
|
37
|
+
typeof packageJson.exports !== "string"
|
|
38
|
+
? packageJson.exports
|
|
39
|
+
: {};
|
|
40
|
+
const newScripts = {
|
|
41
|
+
...existingScripts,
|
|
42
|
+
...packageJsonScriptsTemplate,
|
|
43
|
+
};
|
|
44
|
+
const newExports = {
|
|
45
|
+
...existingExports,
|
|
46
|
+
...packageJsonExportsTemplate,
|
|
47
|
+
};
|
|
48
|
+
packageJson.scripts = newScripts;
|
|
49
|
+
packageJson.exports = newExports;
|
|
50
|
+
await writePackage(packageJson);
|
|
51
|
+
}
|
|
52
|
+
/** Ensure that the project tsconfig.json matches the boilerplate tsconfig.json. */
|
|
53
|
+
async function migrateTsConfig() {
|
|
54
|
+
const tsConfigPath = path.join(process.cwd(), "tsconfig.json");
|
|
55
|
+
await writeFile(tsConfigPath, tsConfigTemplate);
|
|
56
|
+
}
|
|
57
|
+
/** Ensure that the project index.ts file uses the new exports for editors and document models */
|
|
58
|
+
function migrateRootIndex(project) {
|
|
59
|
+
const indexPath = path.join(process.cwd(), "index.ts");
|
|
60
|
+
let source = project.getSourceFile(indexPath);
|
|
61
|
+
if (!source) {
|
|
62
|
+
source = project.createSourceFile(indexPath);
|
|
63
|
+
}
|
|
64
|
+
source.replaceWithText(indexTsTemplate);
|
|
65
|
+
project.saveSync();
|
|
66
|
+
}
|
|
67
|
+
/** Ensure that the project's editor.tsx files use default exports for lazy loading */
|
|
68
|
+
function migrateEditorFiles(project) {
|
|
69
|
+
const editorsPath = path.join(process.cwd(), "editors");
|
|
70
|
+
const dirs = readdirSync(editorsPath, { withFileTypes: true })
|
|
71
|
+
.filter((entry) => entry.isDirectory())
|
|
72
|
+
.map((entry) => entry.name);
|
|
73
|
+
for (const dir of dirs) {
|
|
74
|
+
const editorFilePath = path.join(editorsPath, dir, "editor.tsx");
|
|
75
|
+
const source = project.getSourceFile(editorFilePath);
|
|
76
|
+
if (!source)
|
|
77
|
+
continue;
|
|
78
|
+
const text = source.getFullText();
|
|
79
|
+
const replaceNamedExportWithDefaultExport = text.replace("export function Editor", "export default function Editor");
|
|
80
|
+
source.replaceWithText(replaceNamedExportWithDefaultExport);
|
|
81
|
+
project.saveSync();
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
/** Delete the legacy index files in editor directories which are now replaced by module.ts files */
|
|
85
|
+
function deleteLegacyEditorDirIndexFiles(project) {
|
|
86
|
+
const editorsPath = path.join(process.cwd(), "editors");
|
|
87
|
+
const dirs = readdirSync(editorsPath, { withFileTypes: true })
|
|
88
|
+
.filter((entry) => entry.isDirectory())
|
|
89
|
+
.map((entry) => entry.name);
|
|
90
|
+
for (const dir of dirs) {
|
|
91
|
+
const indexFilePath = path.join(editorsPath, dir, "index.ts");
|
|
92
|
+
const source = project.getSourceFile(indexFilePath);
|
|
93
|
+
if (!source)
|
|
94
|
+
continue;
|
|
95
|
+
source.delete();
|
|
96
|
+
project.saveSync();
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
/** Remove usage of the `z` re-export of document model schemas which caused naming conflicts */
|
|
100
|
+
function removeZDotSchemaUsage(project) {
|
|
101
|
+
const sourceFiles = project.getSourceFiles();
|
|
102
|
+
for (const sourceFile of sourceFiles) {
|
|
103
|
+
const path = sourceFile.getFilePath();
|
|
104
|
+
if (!path.includes(process.cwd()))
|
|
105
|
+
continue;
|
|
106
|
+
if (path.includes("zod.ts"))
|
|
107
|
+
continue;
|
|
108
|
+
const text = sourceFile.getFullText();
|
|
109
|
+
if (/import\s+(?:\{\s*z\s*\}|z)\s+from\s+['"]zod['"]/.test(text))
|
|
110
|
+
continue;
|
|
111
|
+
const withoutZDot = text.replace(/z\./g, "");
|
|
112
|
+
sourceFile.replaceWithText(withoutZDot);
|
|
113
|
+
project.saveSync();
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
/** Remove usage of the `creators` as an aliased full module export which is no longer needed */
|
|
117
|
+
function removeCreatorsUsage(project) {
|
|
118
|
+
const sourceFiles = project.getSourceFiles();
|
|
119
|
+
for (const sourceFile of sourceFiles) {
|
|
120
|
+
const path = sourceFile.getFilePath();
|
|
121
|
+
if (!path.includes(process.cwd()))
|
|
122
|
+
continue;
|
|
123
|
+
const creatorsInvocations = sourceFile
|
|
124
|
+
.getStatements()
|
|
125
|
+
.filter((statement) => statement.getKind() === SyntaxKind.PropertyAccessExpression)
|
|
126
|
+
.filter((statement) => statement.getText().includes("creators."));
|
|
127
|
+
for (const creatorInvocation of creatorsInvocations) {
|
|
128
|
+
const withoutCreators = creatorInvocation
|
|
129
|
+
.getText()
|
|
130
|
+
.replace(/creators\./g, "");
|
|
131
|
+
creatorInvocation.replaceWithText(withoutCreators);
|
|
132
|
+
project.saveSync();
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
/** Remove usage of the `utils` import which is no longer exported as a default import */
|
|
137
|
+
function removeUtilsDefaultExportUsage(project) {
|
|
138
|
+
const sourceFiles = project.getSourceFiles();
|
|
139
|
+
for (const sourceFile of sourceFiles) {
|
|
140
|
+
const path = sourceFile.getFilePath();
|
|
141
|
+
if (!path.includes(process.cwd()))
|
|
142
|
+
continue;
|
|
143
|
+
const statement = sourceFile
|
|
144
|
+
.getImportDeclarations()
|
|
145
|
+
.find((importDeclaration) => importDeclaration.getText().includes("import utils"));
|
|
146
|
+
if (statement) {
|
|
147
|
+
statement.remove();
|
|
148
|
+
project.saveSync();
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
/** Fix missing imports in the project */
|
|
153
|
+
function fixImports(project) {
|
|
154
|
+
const sourceFiles = project.getSourceFiles();
|
|
155
|
+
for (const sourceFile of sourceFiles) {
|
|
156
|
+
const path = sourceFile.getFilePath();
|
|
157
|
+
if (!path.includes(process.cwd()))
|
|
158
|
+
continue;
|
|
159
|
+
sourceFile.fixMissingImports(undefined, {
|
|
160
|
+
importModuleSpecifierPreference: "project-relative",
|
|
161
|
+
autoImportSpecifierExcludeRegexes: ["document-model", "document-drive"],
|
|
162
|
+
importModuleSpecifierEnding: "js",
|
|
163
|
+
preferTypeOnlyAutoImports: false,
|
|
164
|
+
});
|
|
165
|
+
sourceFile.fixUnusedIdentifiers();
|
|
166
|
+
project.saveSync();
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
/** Run the generate command on all document models */
|
|
170
|
+
async function runGenerateOnAllDocumentModels() {
|
|
171
|
+
await generate(undefined, {});
|
|
172
|
+
}
|
|
173
|
+
/** Run the generate command on all editors */
|
|
174
|
+
async function runGenerateOnAllEditors() {
|
|
175
|
+
const editorsPath = path.join(process.cwd(), "editors");
|
|
176
|
+
const dirs = (await readdir(editorsPath, { withFileTypes: true }))
|
|
177
|
+
.filter((entry) => entry.isDirectory())
|
|
178
|
+
.map((entry) => entry.name);
|
|
179
|
+
for (const dir of dirs) {
|
|
180
|
+
const moduleFilePath = path.join(editorsPath, dir, "module.ts");
|
|
181
|
+
const indexFilePath = path.join(editorsPath, dir, "index.ts");
|
|
182
|
+
const hasModuleFile = existsSync(moduleFilePath);
|
|
183
|
+
const hasIndexFile = existsSync(indexFilePath);
|
|
184
|
+
if (!hasModuleFile && !hasIndexFile) {
|
|
185
|
+
continue;
|
|
186
|
+
}
|
|
187
|
+
const filePathToUse = hasModuleFile ? moduleFilePath : indexFilePath;
|
|
188
|
+
const { id, name, documentTypes, isDriveEditor } = extractEditorModuleInfo(filePathToUse);
|
|
189
|
+
if (!name) {
|
|
190
|
+
throw new Error(`Editor ${dir} is missing name`);
|
|
191
|
+
}
|
|
192
|
+
if (!id) {
|
|
193
|
+
throw new Error(`Editor ${dir} is missing id`);
|
|
194
|
+
}
|
|
195
|
+
if (isDriveEditor) {
|
|
196
|
+
const configFilePath = path.join(editorsPath, dir, "config.ts");
|
|
197
|
+
const hasConfigFile = existsSync(configFilePath);
|
|
198
|
+
const allowedDocumentTypes = hasConfigFile
|
|
199
|
+
? extractAllowedDocumentTypes(configFilePath)
|
|
200
|
+
: undefined;
|
|
201
|
+
const args = {
|
|
202
|
+
driveEditor: name,
|
|
203
|
+
driveEditorAppId: id,
|
|
204
|
+
driveEditorDirName: dir,
|
|
205
|
+
};
|
|
206
|
+
if (allowedDocumentTypes) {
|
|
207
|
+
args.allowedDocumentTypes = allowedDocumentTypes.join(",");
|
|
208
|
+
}
|
|
209
|
+
await generate(undefined, args);
|
|
210
|
+
}
|
|
211
|
+
else {
|
|
212
|
+
const args = {
|
|
213
|
+
editor: name,
|
|
214
|
+
editorId: id,
|
|
215
|
+
editorDirName: dir,
|
|
216
|
+
documentTypes: documentTypes?.join(","),
|
|
217
|
+
};
|
|
218
|
+
await generate(undefined, args);
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
/** Extract the name, id, document types, and whether the editor is a drive editor from the editor module */
|
|
223
|
+
function extractEditorModuleInfo(filePath) {
|
|
224
|
+
const project = new Project({
|
|
225
|
+
tsConfigFilePath: path.resolve("tsconfig.json"),
|
|
226
|
+
compilerOptions: {
|
|
227
|
+
verbatimModuleSyntax: false,
|
|
228
|
+
},
|
|
229
|
+
});
|
|
230
|
+
const sourceFile = project.getSourceFileOrThrow(filePath);
|
|
231
|
+
const moduleDeclaration = getVariableDeclarationByTypeName(sourceFile, "EditorModule");
|
|
232
|
+
const variable = moduleDeclaration?.getInitializerIfKind(SyntaxKind.ObjectLiteralExpression);
|
|
233
|
+
const documentTypes = getObjectProperty(variable, "documentTypes", SyntaxKind.ArrayLiteralExpression)
|
|
234
|
+
?.getElements()
|
|
235
|
+
.map((element) => element.getText())
|
|
236
|
+
.map((text) => text.replace(/["']/g, ""));
|
|
237
|
+
const configProperty = getObjectProperty(variable, "config", SyntaxKind.ObjectLiteralExpression);
|
|
238
|
+
const id = getStringLiteralValue(getObjectProperty(configProperty, "id", SyntaxKind.StringLiteral));
|
|
239
|
+
const name = getStringLiteralValue(getObjectProperty(configProperty, "name", SyntaxKind.StringLiteral));
|
|
240
|
+
const isDriveEditor = documentTypes?.includes("powerhouse/document-drive");
|
|
241
|
+
return { id, name, documentTypes, isDriveEditor };
|
|
242
|
+
}
|
|
243
|
+
/** Extract the allowed document types from the drive editor config */
|
|
244
|
+
function extractAllowedDocumentTypes(filePath) {
|
|
245
|
+
const project = new Project({
|
|
246
|
+
tsConfigFilePath: path.resolve("tsconfig.json"),
|
|
247
|
+
compilerOptions: {
|
|
248
|
+
verbatimModuleSyntax: false,
|
|
249
|
+
},
|
|
250
|
+
});
|
|
251
|
+
const sourceFile = project.getSourceFile(filePath);
|
|
252
|
+
if (!sourceFile)
|
|
253
|
+
return;
|
|
254
|
+
const configVariableDeclaration = getVariableDeclarationByTypeName(sourceFile, "PHDriveEditorConfig");
|
|
255
|
+
const configVariable = configVariableDeclaration?.getInitializerIfKind(SyntaxKind.ObjectLiteralExpression);
|
|
256
|
+
if (!configVariable)
|
|
257
|
+
return;
|
|
258
|
+
const allowedDocumentTypes = getArrayLiteralExpressionElementsText(getObjectProperty(configVariable, "allowedDocumentTypes", SyntaxKind.ArrayLiteralExpression));
|
|
259
|
+
return allowedDocumentTypes;
|
|
260
|
+
}
|
|
261
|
+
function getVariableDeclarationByTypeName(sourceFile, typeName) {
|
|
262
|
+
const variableDeclarations = sourceFile.getVariableDeclarations();
|
|
263
|
+
return variableDeclarations.find((declaration) => declaration.getType().getText().includes(typeName));
|
|
264
|
+
}
|
|
265
|
+
function getStringLiteralValue(stringLiteral) {
|
|
266
|
+
return stringLiteral?.getText().replace(/["']/g, "");
|
|
267
|
+
}
|
|
268
|
+
function getObjectProperty(object, propertyName, propertyType) {
|
|
269
|
+
return object
|
|
270
|
+
?.getProperty(propertyName)
|
|
271
|
+
?.asKind(SyntaxKind.PropertyAssignment)
|
|
272
|
+
?.getChildren()
|
|
273
|
+
.find((child) => child.getKind() === propertyType)
|
|
274
|
+
?.asKind(propertyType);
|
|
275
|
+
}
|
|
276
|
+
function getArrayLiteralExpressionElementsText(arrayLiteralExpression) {
|
|
277
|
+
return arrayLiteralExpression
|
|
278
|
+
?.getElements()
|
|
279
|
+
.map((element) => element.getText())
|
|
280
|
+
.map((text) => text.replace(/["']/g, ""));
|
|
281
|
+
}
|
|
282
|
+
//# sourceMappingURL=migrate.js.map
|