@powerhousedao/shared 6.2.0-dev.2 → 6.2.0-dev.21
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/clis/args/{common-DxMY8vx1.d.mts → common-Dmf4BGPa.d.mts} +3 -3
- package/dist/clis/args/{common-DxMY8vx1.d.mts.map → common-Dmf4BGPa.d.mts.map} +1 -1
- package/dist/clis/args/common-fPNESurz.mjs.map +1 -1
- package/dist/clis/args/common.d.mts +1 -1
- package/dist/clis/args/connect.d.mts +11 -5
- package/dist/clis/args/connect.d.mts.map +1 -1
- package/dist/clis/args/connect.mjs +6 -1
- package/dist/clis/args/connect.mjs.map +1 -1
- package/dist/clis/args/index.d.mts +2 -2
- package/dist/clis/args/service-C88bN_g_.d.mts +22 -0
- package/dist/clis/args/service-C88bN_g_.d.mts.map +1 -0
- package/dist/clis/args/service.d.mts +1 -1
- package/dist/clis/args/vetra.d.mts +4 -1
- package/dist/clis/args/vetra.d.mts.map +1 -1
- package/dist/clis/args/vetra.mjs +5 -0
- package/dist/clis/args/vetra.mjs.map +1 -1
- package/dist/clis/constants.d.mts +1 -86
- package/dist/clis/constants.d.mts.map +1 -1
- package/dist/clis/constants.mjs +1 -1
- package/dist/clis/constants.mjs.map +1 -1
- package/dist/clis/index.d.mts +18 -98
- package/dist/clis/index.d.mts.map +1 -1
- package/dist/clis/index.mjs +11 -5
- package/dist/clis/index.mjs.map +1 -1
- package/dist/connect/config-loader.d.ts +1 -1
- package/dist/connect/index.d.ts +1 -1
- package/dist/document-drive/index.d.ts +2 -2
- package/dist/document-model/index.d.ts +3 -3
- package/dist/document-model/index.js +319 -19
- package/dist/document-model/index.js.map +1 -1
- package/dist/{index-DalC_-i7.d.ts → index-DLx4nU83.d.ts} +41 -3
- package/dist/index-DLx4nU83.d.ts.map +1 -0
- package/dist/index.d.ts +4 -4
- package/dist/processors/index.d.ts +1 -1
- package/dist/registry/index.d.ts +4 -3
- package/dist/registry/index.d.ts.map +1 -1
- package/dist/registry/index.js +2 -1
- package/dist/registry/index.js.map +1 -1
- package/dist/registry/manifest-slim.d.ts +17 -0
- package/dist/registry/manifest-slim.d.ts.map +1 -0
- package/dist/registry/manifest-slim.js +57 -0
- package/dist/registry/manifest-slim.js.map +1 -0
- package/dist/types-Bo4Rb8Yf.d.ts +2492 -0
- package/dist/types-Bo4Rb8Yf.d.ts.map +1 -0
- package/dist/{types-CVqmv94G.d.ts → types-CgGSyOl6.d.ts} +2 -2
- package/dist/{types-CVqmv94G.d.ts.map → types-CgGSyOl6.d.ts.map} +1 -1
- package/dist/{types-Daq_zHP_.d.ts → types-Lj1TT2LW.d.ts} +1 -2
- package/dist/{types-Daq_zHP_.d.ts.map → types-Lj1TT2LW.d.ts.map} +1 -1
- package/package.json +2 -2
- package/dist/clis/args/service-DbbCQSks.d.mts +0 -106
- package/dist/clis/args/service-DbbCQSks.d.mts.map +0 -1
- package/dist/index-DalC_-i7.d.ts.map +0 -1
- package/dist/types-CC6ib3_2.d.ts +0 -21068
- package/dist/types-CC6ib3_2.d.ts.map +0 -1
|
@@ -109,7 +109,7 @@ declare const defaultDrivesUrl: Partial<cmd_ts_dist_cjs_argparser_js0.Register>
|
|
|
109
109
|
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<string | undefined>>;
|
|
110
110
|
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
111
111
|
declare const logLevel: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
112
|
-
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<"debug" | "
|
|
112
|
+
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<"debug" | "error" | "info" | "warn" | "verbose">>;
|
|
113
113
|
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
114
114
|
declare const connectBasePath: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
115
115
|
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<string>>;
|
|
@@ -128,7 +128,7 @@ declare const commonArgs: {
|
|
|
128
128
|
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<string>>;
|
|
129
129
|
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
130
130
|
logLevel: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
131
|
-
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<"debug" | "
|
|
131
|
+
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<"debug" | "error" | "info" | "warn" | "verbose">>;
|
|
132
132
|
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
133
133
|
packages: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
134
134
|
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<string | undefined>>;
|
|
@@ -174,4 +174,4 @@ declare const commonServerArgs: {
|
|
|
174
174
|
};
|
|
175
175
|
//#endregion
|
|
176
176
|
export { packageManagerArgs as _, connectBasePath as a, disableLocalPackages as c, getPackageManagerCommand as d, https as f, logLevel as g, localPackage as h, commonServerArgs as i, drivesPreserveStrategy as l, httpsKeyFile as m, buildArgs as n, debugArgs as o, httpsCertFile as p, commonArgs as r, defaultDrivesUrl as s, AGENTS as t, force as u, packages as v, vetraSwitchboardArgs as y };
|
|
177
|
-
//# sourceMappingURL=common-
|
|
177
|
+
//# sourceMappingURL=common-Dmf4BGPa.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common-
|
|
1
|
+
{"version":3,"file":"common-Dmf4BGPa.d.mts","names":[],"sources":["../../../clis/args/common.ts"],"mappings":";;;;;;cAuBa,MAAA,EAAQ,KAAA;AAAA,cAER,SAAA;iBAMZ,6BAAA,CAAA,QAAA;;;;cAEY,SAAA;iBASZ,6BAAA,CAAA,QAAA;;;;;;;cAEY,kBAAA;0BA4BZ,6BAAA,CAAA,QAAA;;;;;;;;;;;;;;;;cACY,wBAAA,EAAwB,OAAA,CAInC,6BAAA,CAJmC,QAAA;iBAAA,6BAAA,CAAA,YAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAKxB,QAAA,EAAQ,OAAA,CAKnB,6BAAA,CALmB,QAAA;iBAAA,6BAAA,CAAA,YAAA;;cAOR,YAAA,EAAY,OAAA,CAKvB,6BAAA,CALuB,QAAA;iBAAA,6BAAA,CAAA,YAAA;;cAOZ,oBAAA,EAAoB,OAAA,CAK/B,6BAAA,CAL+B,QAAA;iBAAA,6BAAA,CAAA,YAAA;;cAOpB,YAAA,EAAY,OAAA,CAWvB,6BAAA,CAXuB,QAAA;iBAAA,6BAAA,CAAA,YAAA;;cAaZ,aAAA,EAAa,OAAA,CAWxB,6BAAA,CAXwB,QAAA;iBAAA,6BAAA,CAAA,YAAA;;cAab,KAAA,EAAK,OAAA,CAUhB,6BAAA,CAVgB,QAAA;iBAAA,6BAAA,CAAA,YAAA;;cAYL,oBAAA;iBAiBZ,6BAAA,CAAA,QAAA;;;;;;;;;;;;;;;;;;;;;;cAEY,gBAAA,EAAgB,OAAA,CAK3B,6BAAA,CAL2B,QAAA;iBAAA,6BAAA,CAAA,YAAA;;cAOhB,QAAA,EAAQ,OAAA,CAOnB,6BAAA,CAPmB,QAAA;iBAAA,6BAAA,CAAA,YAAA;;cASR,eAAA,EAAe,OAAA,CAK1B,6BAAA,CAL0B,QAAA;iBAAA,6BAAA,CAAA,YAAA;;cAOf,sBAAA,EAAsB,OAAA,CAMjC,6BAAA,CANiC,QAAA;iBAAA,6BAAA,CAAA,YAAA;;cAQtB,KAAA,EAAK,OAAA,CAKhB,6BAAA,CALgB,QAAA;iBAAA,6BAAA,CAAA,YAAA;;cAOL,UAAA;iBAUZ,6BAAA,CAAA,QAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAEY,gBAAA;gBA2CZ,6BAAA,CAAA,QAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common-fPNESurz.mjs","names":["AGENTS","_AGENTS"],"sources":["../../../clis/constants.ts","../../../clis/file-system/get-config.ts","../../../clis/args/common.ts"],"sourcesContent":["import { homedir } from \"node:os\";\nimport { join } from \"node:path\";\nimport type { Manifest } from \"../document-model/types.js\";\nimport type { PowerhouseConfig } from \"./types.js\";\n\nexport const SERVICE_ACTIONS = [\n \"start\",\n \"stop\",\n \"status\",\n \"setup\",\n \"restart\",\n] as const;\n\nexport const SECONDS_IN_DAY = 24 * 60 * 60;\nexport const DEFAULT_EXPIRY_DAYS = 7;\nexport const DEFAULT_EXPIRY_SECONDS = DEFAULT_EXPIRY_DAYS * SECONDS_IN_DAY;\n\nexport const DRIVES_PRESERVE_STRATEGIES = [\n \"preserve-all\",\n \"preserve-by-url-and-detach\",\n] as const;\n\nexport const LOG_LEVELS = [\n \"debug\",\n \"info\",\n \"warn\",\n \"error\",\n \"verbose\",\n] as const;\n\nexport const DEFAULT_TIMEOUT = 300 as const;\n\nexport const DEFAULT_CONNECT_STUDIO_PORT = 3000 as const;\n\nexport const DEFAULT_VETRA_CONNECT_PORT = 3001 as const;\n\nexport const DEFAULT_CONNECT_PREVIEW_PORT = 4173 as const;\n\nexport const DEFAULT_CONNECT_OUTDIR = \".ph/connect-build/dist/\" as const;\n\nexport const DEFAULT_RENOWN_URL = \"https://www.renown.id\" as const;\n\nexport const DEFAULT_REGISTRY_URL = \"https://registry.dev.vetra.io\" as const;\n\nexport const DEFAULT_SWITCHBOARD_PORT = 4001 as const;\n\nexport const DEFAULT_VETRA_DRIVE_ID = \"vetra\" as const;\n\nexport const MINIMUM_NODE_VERSION = \"24.0.0\" as const;\nexport const PH_BIN = \"ph-cli-legacy\" as const;\nexport const POWERHOUSE_CONFIG_FILE = \"powerhouse.config.json\" as const;\nexport const PH_GLOBAL_DIR_NAME = \".ph\" as const;\n// Keep PH_GLOBAL_PROJECT_NAME for backwards compatibility\nexport const PH_GLOBAL_PROJECT_NAME = PH_GLOBAL_DIR_NAME;\n\nexport const HOME_DIR = homedir();\n\nexport const POWERHOUSE_GLOBAL_DIR = join(HOME_DIR, PH_GLOBAL_DIR_NAME);\n\n// Workspace packages that go in peerDependencies of every generated project.\nexport const VERSIONED_PEER_DEPENDENCIES = [\n \"document-model\",\n \"@powerhousedao/reactor-browser\",\n];\n\ntype PeerSpec = { peer: string; dev: string };\n\nexport const REACTOR_API_PACKAGE = \"@powerhousedao/reactor-api\";\nexport const ANALYTICS_ENGINE_CORE_PACKAGE =\n \"@powerhousedao/analytics-engine-core\";\nexport const GRAPHQL_PACKAGE = \"graphql\";\nexport const GRAPHQL_TAG_PACKAGE = \"graphql-tag\";\n\n// External peerDependencies of every generated project.\n// `peer` is the consumer-facing range; `dev` is the exact build-tested pin.\n// graphql / graphql-tag are always-on because the workspace packages pulled\n// in by every `ph init` project (codegen, reactor-api, reactor-browser,\n// vetra-packages) declare them as peers — even projects without subgraphs\n// need them in scope so pnpm hoists a single graphql instance.\nexport const PEER_EXTERNAL_DEPENDENCIES = {\n [GRAPHQL_PACKAGE]: { peer: \"^16\", dev: \"16.12.0\" },\n [GRAPHQL_TAG_PACKAGE]: { peer: \"^2\", dev: \"2.12.6\" },\n react: { peer: \"^19\", dev: \"19.2.6\" },\n \"react-dom\": { peer: \"^19\", dev: \"19.2.6\" },\n zod: { peer: \"^4\", dev: \"4.3.6\" },\n} as const satisfies Record<string, PeerSpec>;\n\n// Per-feature deps added dynamically by codegen when required.\nexport const FEATURE_DEPENDENCIES = {\n analyticsProcessor: {\n peerVersioned: [ANALYTICS_ENGINE_CORE_PACKAGE],\n peerExternal: {},\n },\n} as const satisfies Record<\n string,\n { peerVersioned: readonly string[]; peerExternal: Record<string, PeerSpec> }\n>;\n\nexport const VERSIONED_DEPENDENCIES = [\n ...VERSIONED_PEER_DEPENDENCIES,\n ...FEATURE_DEPENDENCIES.analyticsProcessor.peerVersioned,\n];\n\n// Transitive dependencies whose postinstall scripts the generated project\n// trusts. Mirrors the `allowBuilds` map in the boilerplate's\n// pnpm-workspace.yaml and is also passed as `--allow-build` flags to\n// `pnpm dlx @powerhousedao/ph-cli init` so pnpm 11's strict-dep-builds\n// default doesn't prompt during the outer dlx download.\nexport const BOILERPLATE_ALLOWED_BUILDS = [\n \"@apollo/protobufjs\",\n \"@datadog/pprof\",\n \"@parcel/watcher\",\n \"esbuild\",\n \"protobufjs\",\n] as const;\n\n// pnpm `overrides` written into the generated project's pnpm-workspace.yaml to\n// force a single chosen version of each, avoiding duplicates from coexisting\n// version ranges. Generated-project only — never change the monorepo catalog\n// for this (a re-resolution there pulls a tsc-crashing TS6 beta).\nexport const BOILERPLATE_PNPM_OVERRIDES = {\n \"date-fns\": \"4.3.0\",\n vite: \"8.0.14\",\n rolldown: \"1.0.2\",\n} as const satisfies Record<string, string>;\n\nexport const VERSIONED_DEV_DEPENDENCIES = [\n \"@powerhousedao/ph-cli\",\n \"@powerhousedao/reactor\",\n \"@powerhousedao/shared\",\n \"@powerhousedao/connect\",\n \"@powerhousedao/design-system\",\n];\n\nexport const packageJsonExports = {\n \".\": {\n types: \"./dist/types/index.d.ts\",\n browser: \"./dist/browser/index.js\",\n node: \"./dist/node/index.mjs\",\n },\n \"./document-models\": {\n types: \"./dist/types/document-models/index.d.ts\",\n browser: \"./dist/browser/document-models/index.js\",\n node: \"./dist/node/document-models/index.mjs\",\n },\n \"./document-models/*\": {\n types: \"./dist/types/document-models/*/index.d.ts\",\n browser: \"./dist/browser/document-models/*/index.js\",\n node: \"./dist/node/document-models/*/index.mjs\",\n },\n \"./editors\": {\n types: \"./dist/types/editors/index.d.ts\",\n browser: \"./dist/browser/editors/index.js\",\n node: \"./dist/node/editors/index.mjs\",\n },\n \"./editors/*\": {\n types: \"./dist/types/editors/*/editor.d.ts\",\n browser: \"./dist/browser/editors/*/editor.js\",\n node: \"./dist/node/editors/*/editor.mjs\",\n },\n \"./subgraphs\": {\n types: \"./dist/types/subgraphs/index.d.ts\",\n browser: \"./dist/browser/subgraphs/index.js\",\n node: \"./dist/node/subgraphs/index.mjs\",\n },\n \"./processors\": {\n types: \"./dist/types/processors/index.d.ts\",\n browser: \"./dist/browser/processors/index.js\",\n node: \"./dist/node/processors/index.mjs\",\n },\n \"./manifest\": \"./dist/powerhouse.manifest.json\",\n \"./style.css\": \"./dist/style.css\",\n} as const;\n\nexport const packageScripts = {\n \"test:watch\": \"vitest\",\n lint: \"eslint --config eslint.config.js --cache\",\n \"lint:fix\": \"npm run lint -- --fix\",\n tsc: \"tsc\",\n \"tsc:watch\": \"tsc --watch\",\n generate: \"ph-cli generate\",\n connect: \"ph-cli connect\",\n build: \"ph-cli build\",\n reactor: \"ph-cli reactor\",\n service: \"ph-cli service\",\n vetra: \"ph-cli vetra\",\n \"service-startup\":\n \"bash ./node_modules/@powerhousedao/ph-cli/dist/scripts/service-startup.sh\",\n \"service-unstartup\":\n \"bash ./node_modules/@powerhousedao/ph-cli/dist/scripts/service-unstartup.sh\",\n} as const;\n\nexport const externalDependencies = {} as const;\n\nexport const externalDevDependencies = {\n \"@electric-sql/pglite\": \"0.3.15\",\n \"@electric-sql/pglite-tools\": \"0.2.20\",\n \"@eslint/js\": \"^9.38.0\",\n \"@powerhousedao/document-engineering\": \"1.40.5\",\n \"@tailwindcss/cli\": \"^4.1.18\",\n \"@tailwindcss/vite\": \"^4.1.18\",\n \"@types/node\": \"^24.9.2\",\n \"@types/react\": \"^19.2.3\",\n \"@types/react-dom\": \"^19.2.3\",\n \"@vitejs/plugin-react\": \"^6.0.1\",\n \"@vitest/coverage-v8\": \"4.1.1\",\n eslint: \"^9.38.0\",\n \"eslint-config-prettier\": \"^10.1.8\",\n \"eslint-plugin-prettier\": \"^5.5.4\",\n \"eslint-plugin-react\": \"^7.37.5\",\n \"eslint-plugin-react-hooks\": \"^7.0.1\",\n globals: \"^16.4.0\",\n tailwindcss: \"^4.1.16\",\n typescript: \"^5.9.3\",\n \"typescript-eslint\": \"^8.46.2\",\n vite: \"^8.0.8\",\n \"vite-tsconfig-paths\": \"6.1.1\",\n vitest: \"4.1.1\",\n} as const;\n\nexport const defaultManifest: Manifest = {\n name: \"\",\n description: \"\",\n category: \"\",\n publisher: {\n name: \"\",\n url: \"\",\n },\n documentModels: [],\n editors: [],\n apps: [],\n subgraphs: [],\n processors: [],\n};\n\nconst DEFAULT_DOCUMENT_MODELS_DIR = \"./document-models\";\nconst DEFAULT_EDITORS_DIR = \"./editors\";\nconst DEFAULT_PROCESSORS_DIR = \"./processors\";\nconst DEFAULT_SUBGRAPHS_DIR = \"./subgraphs\";\nconst DEFAULT_IMPORT_SCRIPTS_DIR = \"./scripts\";\nconst DEFAULT_SKIP_FORMAT = false;\nconst DEFAULT_LOG_LEVEL = \"info\";\n\nexport const DEFAULT_CONFIG: PowerhouseConfig = {\n documentModelsDir: DEFAULT_DOCUMENT_MODELS_DIR,\n editorsDir: DEFAULT_EDITORS_DIR,\n processorsDir: DEFAULT_PROCESSORS_DIR,\n subgraphsDir: DEFAULT_SUBGRAPHS_DIR,\n importScriptsDir: DEFAULT_IMPORT_SCRIPTS_DIR,\n skipFormat: DEFAULT_SKIP_FORMAT,\n logLevel: DEFAULT_LOG_LEVEL,\n auth: {\n enabled: false,\n admins: [],\n },\n};\n","import { readFileSync } from \"node:fs\";\nimport { DEFAULT_CONFIG } from \"../constants.js\";\nimport type { PowerhouseConfig } from \"../types.js\";\n\nexport function getConfig(path = \"./powerhouse.config.json\") {\n let config: PowerhouseConfig = { ...DEFAULT_CONFIG };\n try {\n const configStr = readFileSync(path, \"utf-8\");\n const userConfig = JSON.parse(configStr) as PowerhouseConfig;\n config = { ...config, ...userConfig };\n } catch {\n // console.warn(\"No powerhouse.config.json found, using defaults\");\n }\n\n return config;\n}\n","import {\n array,\n boolean,\n command,\n flag,\n multioption,\n number,\n oneOf,\n option,\n optional,\n string,\n} from \"cmd-ts\";\n// Sub-path: avoids pulling the package-manager-detector runtime here,\n// which `oneOf(AGENTS)` below would force at module load.\nimport type { Agent } from \"package-manager-detector\";\nimport { AGENTS as _AGENTS } from \"package-manager-detector/constants\";\nimport {\n DEFAULT_TIMEOUT,\n DRIVES_PRESERVE_STRATEGIES,\n LOG_LEVELS,\n} from \"../constants.js\";\nimport { getConfig } from \"../file-system/get-config.js\";\n\nexport const AGENTS: Agent[] = _AGENTS;\n\nexport const debugArgs = {\n debug: flag({\n type: optional(boolean),\n long: \"debug\",\n description: \"Log arguments passed to this command\",\n }),\n};\n\nexport const buildArgs = {\n outDir: option({\n type: string,\n long: \"out-dir\",\n description: \"Where to output the bundled code\",\n defaultValue: () => \"dist\" as const,\n defaultValueIsSerializable: true,\n }),\n ...debugArgs,\n};\n\nexport const packageManagerArgs = {\n packageManager: option({\n type: optional(oneOf(AGENTS)),\n long: \"package-manager\",\n short: \"p\",\n description:\n \"Specify the package manager to use for your project. Can be one of: `npm`, `pnpm`, `yarn`, or `bun`. Defaults to your environment package manager.\",\n }),\n npm: flag({\n type: optional(boolean),\n long: \"npm\",\n description: \"Use 'npm' as package manager\",\n }),\n pnpm: flag({\n type: optional(boolean),\n long: \"pnpm\",\n description: \"Use 'pnpm' as package manager\",\n }),\n yarn: flag({\n type: optional(boolean),\n long: \"yarn\",\n description: \"Use 'yarn' as package manager\",\n }),\n bun: flag({\n type: optional(boolean),\n long: \"bun\",\n description: \"Use 'bun' as package manager\",\n }),\n};\nexport const getPackageManagerCommand = command({\n name: \"get-package-manager\",\n args: packageManagerArgs,\n handler: (args) => args,\n});\nexport const packages = option({\n type: optional(string),\n long: \"packages\",\n description: \"Comma-separated list of package names to load\",\n env: \"PH_PACKAGES\" as const,\n});\n\nexport const localPackage = option({\n type: optional(string),\n long: \"local-package\",\n description: \"Path to local package to load during development\",\n env: \"PH_LOCAL_PACKAGE\" as const,\n});\n\nexport const disableLocalPackages = flag({\n type: boolean,\n long: \"ignore-local\",\n description: \"Do not load local packages from this project\",\n defaultValue: () => false,\n});\n\nexport const httpsKeyFile = option({\n type: optional(string),\n long: \"https-key-file\",\n description: \"path to the ssl key file\",\n defaultValue: () => {\n const baseConfig = getConfig();\n const https = baseConfig.reactor?.https;\n if (https === undefined) return undefined;\n if (typeof https === \"boolean\") return undefined;\n return https.keyPath;\n },\n});\n\nexport const httpsCertFile = option({\n type: optional(string),\n long: \"https-cert-file\",\n description: \"path to the ssl cert file\",\n defaultValue: () => {\n const baseConfig = getConfig();\n const https = baseConfig.reactor?.https;\n if (https === undefined) return undefined;\n if (typeof https === \"boolean\") return undefined;\n return https.certPath;\n },\n});\n\nexport const https = flag({\n type: optional(boolean),\n long: \"https\",\n description: \"Use https\",\n defaultValue: () => {\n const baseConfig = getConfig();\n const https = baseConfig.reactor?.https;\n if (typeof https === \"boolean\") return https;\n return undefined;\n },\n});\n\nexport const vetraSwitchboardArgs = {\n https,\n httpsKeyFile,\n httpsCertFile,\n dev: flag({\n type: optional(boolean),\n long: \"dev\",\n description: \"enable development mode to load local packages\",\n }),\n remoteDrives: multioption({\n type: array(string),\n long: \"remote-drives\",\n description: \"Specify remote drive URLs to use\",\n defaultValue: () => [],\n }),\n disableLocalPackages,\n ...debugArgs,\n};\n\nexport const defaultDrivesUrl = option({\n type: optional(string),\n long: \"default-drives-url\",\n description: \"The default drives url to use in connect\",\n defaultValue: () => \"\",\n});\n\nexport const logLevel = option({\n type: oneOf(LOG_LEVELS),\n long: \"log-level\",\n description: \"Log level for the application\",\n defaultValue: () => \"info\" as const,\n defaultValueIsSerializable: true,\n env: \"PH_CONNECT_LOG_LEVEL\" as const,\n});\n\nexport const connectBasePath = option({\n long: \"base\",\n type: string,\n description: \"Base path for the app\",\n defaultValue: () => \"/\",\n});\n\nexport const drivesPreserveStrategy = option({\n type: oneOf(DRIVES_PRESERVE_STRATEGIES),\n long: \"drive-preserve-strategy\",\n description: \"The preservation strategy to use on default drives\",\n defaultValue: () => \"preserve-by-url-and-detach\" as const,\n defaultValueIsSerializable: true,\n});\n\nexport const force = flag({\n type: optional(boolean),\n long: \"force\",\n description:\n \"Force dep pre-optimization regardless of whether deps have changed.\",\n});\n\nexport const commonArgs = {\n connectBasePath,\n logLevel,\n packages,\n localPackage,\n disableLocalPackages,\n defaultDrivesUrl,\n drivesPreserveStrategy,\n force,\n ...debugArgs,\n};\n\nexport const commonServerArgs = {\n host: option({\n type: optional(string),\n long: \"host\",\n description:\n \"Expose the server to the network. Pass an IP (e.g. 0.0.0.0) to bind to a specific address.\",\n }),\n open: flag({\n type: optional(boolean),\n long: \"open\",\n description: \"Open browser on startup\",\n }),\n cors: flag({\n type: optional(boolean),\n long: \"cors\",\n description: \"Enable CORS\",\n }),\n strictPort: flag({\n type: optional(boolean),\n long: \"strictPort\",\n description: \"Exit if specified port is already in use\",\n }),\n printUrls: flag({\n type: boolean,\n long: \"print-urls\",\n description: \"Print server urls\",\n defaultValue: () => true,\n defaultValueIsSerializable: true,\n }),\n bindCLIShortcuts: flag({\n type: boolean,\n long: \"bind-cli-shortcuts\",\n description: \"Bind CLI shortcuts\",\n defaultValue: () => true,\n defaultValueIsSerializable: true,\n }),\n watchTimeout: option({\n type: number,\n long: \"watch-timeout\",\n description: \"Amount of time to wait before a file is considered changed\",\n defaultValue: () => DEFAULT_TIMEOUT,\n defaultValueIsSerializable: true,\n }),\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"common-fPNESurz.mjs","names":["AGENTS","_AGENTS"],"sources":["../../../clis/constants.ts","../../../clis/file-system/get-config.ts","../../../clis/args/common.ts"],"sourcesContent":["import { homedir } from \"node:os\";\nimport { join } from \"node:path\";\nimport type { Manifest } from \"../document-model/types.js\";\nimport type { PowerhouseConfig } from \"./types.js\";\n\nexport const SERVICE_ACTIONS = [\n \"start\",\n \"stop\",\n \"status\",\n \"setup\",\n \"restart\",\n] as const;\n\nexport const SECONDS_IN_DAY = 24 * 60 * 60;\nexport const DEFAULT_EXPIRY_DAYS = 7;\nexport const DEFAULT_EXPIRY_SECONDS = DEFAULT_EXPIRY_DAYS * SECONDS_IN_DAY;\n\nexport const DRIVES_PRESERVE_STRATEGIES = [\n \"preserve-all\",\n \"preserve-by-url-and-detach\",\n] as const;\n\nexport const LOG_LEVELS = [\n \"debug\",\n \"info\",\n \"warn\",\n \"error\",\n \"verbose\",\n] as const;\n\nexport const DEFAULT_TIMEOUT = 300 as const;\n\nexport const DEFAULT_CONNECT_STUDIO_PORT = 3000 as const;\n\nexport const DEFAULT_VETRA_CONNECT_PORT = 3001 as const;\n\nexport const DEFAULT_CONNECT_PREVIEW_PORT = 4173 as const;\n\nexport const DEFAULT_CONNECT_OUTDIR = \".ph/connect-build/dist/\" as const;\n\nexport const DEFAULT_RENOWN_URL = \"https://www.renown.id\" as const;\n\nexport const DEFAULT_REGISTRY_URL = \"https://registry.dev.vetra.io\" as const;\n\nexport const DEFAULT_SWITCHBOARD_PORT = 4001 as const;\n\nexport const DEFAULT_VETRA_DRIVE_ID = \"vetra\" as const;\n\nexport const MINIMUM_NODE_VERSION = \"24.0.0\" as const;\nexport const PH_BIN = \"ph-cli-legacy\" as const;\nexport const POWERHOUSE_CONFIG_FILE = \"powerhouse.config.json\" as const;\nexport const PH_GLOBAL_DIR_NAME = \".ph\" as const;\n// Keep PH_GLOBAL_PROJECT_NAME for backwards compatibility\nexport const PH_GLOBAL_PROJECT_NAME = PH_GLOBAL_DIR_NAME;\n\nexport const HOME_DIR = homedir();\n\nexport const POWERHOUSE_GLOBAL_DIR = join(HOME_DIR, PH_GLOBAL_DIR_NAME);\n\n// Workspace packages that go in peerDependencies of every generated project.\nexport const VERSIONED_PEER_DEPENDENCIES = [\n \"document-model\",\n \"@powerhousedao/reactor-browser\",\n];\n\ntype PeerSpec = { peer: string; dev: string };\n\nexport const REACTOR_API_PACKAGE = \"@powerhousedao/reactor-api\";\nexport const ANALYTICS_ENGINE_CORE_PACKAGE =\n \"@powerhousedao/analytics-engine-core\";\nexport const GRAPHQL_PACKAGE = \"graphql\";\nexport const GRAPHQL_TAG_PACKAGE = \"graphql-tag\";\n\n// External peerDependencies of every generated project.\n// `peer` is the consumer-facing range; `dev` is the exact build-tested pin.\n// graphql / graphql-tag are always-on because the workspace packages pulled\n// in by every `ph init` project (codegen, reactor-api, reactor-browser,\n// vetra-packages) declare them as peers — even projects without subgraphs\n// need them in scope so pnpm hoists a single graphql instance.\nexport const PEER_EXTERNAL_DEPENDENCIES = {\n [GRAPHQL_PACKAGE]: { peer: \"^16\", dev: \"16.12.0\" },\n [GRAPHQL_TAG_PACKAGE]: { peer: \"^2\", dev: \"2.12.6\" },\n react: { peer: \"^19\", dev: \"19.2.6\" },\n \"react-dom\": { peer: \"^19\", dev: \"19.2.6\" },\n zod: { peer: \"^4\", dev: \"4.3.6\" },\n} as const satisfies Record<string, PeerSpec>;\n\n// Per-feature deps added dynamically by codegen when required.\nexport const FEATURE_DEPENDENCIES = {\n analyticsProcessor: {\n peerVersioned: [ANALYTICS_ENGINE_CORE_PACKAGE],\n peerExternal: {},\n },\n} as const satisfies Record<\n string,\n { peerVersioned: readonly string[]; peerExternal: Record<string, PeerSpec> }\n>;\n\nexport const VERSIONED_DEPENDENCIES = [\n ...VERSIONED_PEER_DEPENDENCIES,\n ...FEATURE_DEPENDENCIES.analyticsProcessor.peerVersioned,\n];\n\n// Transitive dependencies whose postinstall scripts the generated project\n// trusts. Mirrors the `allowBuilds` map in the boilerplate's\n// pnpm-workspace.yaml and is also passed as `--allow-build` flags to\n// `pnpm dlx @powerhousedao/ph-cli init` so pnpm 11's strict-dep-builds\n// default doesn't prompt during the outer dlx download.\nexport const BOILERPLATE_ALLOWED_BUILDS = [\n \"@apollo/protobufjs\",\n \"@datadog/pprof\",\n \"@parcel/watcher\",\n \"esbuild\",\n \"protobufjs\",\n] as const;\n\n// pnpm `overrides` written into the generated project's pnpm-workspace.yaml to\n// force a single chosen version of each, avoiding duplicates from coexisting\n// version ranges. Generated-project only — never change the monorepo catalog\n// for this (a re-resolution there pulls a tsc-crashing TS6 beta).\nexport const BOILERPLATE_PNPM_OVERRIDES = {\n \"date-fns\": \"4.3.0\",\n vite: \"8.0.14\",\n rolldown: \"1.0.2\",\n} as const satisfies Record<string, string>;\n\nexport const VERSIONED_DEV_DEPENDENCIES = [\n \"@powerhousedao/ph-cli\",\n \"@powerhousedao/reactor\",\n \"@powerhousedao/shared\",\n \"@powerhousedao/connect\",\n \"@powerhousedao/design-system\",\n];\n\nexport const packageJsonExports = {\n \".\": {\n types: \"./dist/types/index.d.ts\",\n browser: \"./dist/browser/index.js\",\n node: \"./dist/node/index.mjs\",\n },\n \"./document-models\": {\n types: \"./dist/types/document-models/index.d.ts\",\n browser: \"./dist/browser/document-models/index.js\",\n node: \"./dist/node/document-models/index.mjs\",\n },\n \"./document-models/*\": {\n types: \"./dist/types/document-models/*/index.d.ts\",\n browser: \"./dist/browser/document-models/*/index.js\",\n node: \"./dist/node/document-models/*/index.mjs\",\n },\n \"./editors\": {\n types: \"./dist/types/editors/index.d.ts\",\n browser: \"./dist/browser/editors/index.js\",\n node: \"./dist/node/editors/index.mjs\",\n },\n \"./editors/*\": {\n types: \"./dist/types/editors/*/editor.d.ts\",\n browser: \"./dist/browser/editors/*/editor.js\",\n node: \"./dist/node/editors/*/editor.mjs\",\n },\n \"./subgraphs\": {\n types: \"./dist/types/subgraphs/index.d.ts\",\n browser: \"./dist/browser/subgraphs/index.js\",\n node: \"./dist/node/subgraphs/index.mjs\",\n },\n \"./processors\": {\n types: \"./dist/types/processors/index.d.ts\",\n browser: \"./dist/browser/processors/index.js\",\n node: \"./dist/node/processors/index.mjs\",\n },\n \"./manifest\": \"./dist/powerhouse.manifest.json\",\n \"./style.css\": \"./dist/style.css\",\n} as const;\n\nexport const packageScripts = {\n \"test:watch\": \"vitest\",\n lint: \"eslint --config eslint.config.js --cache\",\n \"lint:fix\": \"npm run lint -- --fix\",\n tsc: \"tsc\",\n \"tsc:watch\": \"tsc --watch\",\n generate: \"ph-cli generate\",\n connect: \"ph-cli connect\",\n build: \"ph-cli build\",\n reactor: \"ph-cli reactor\",\n service: \"ph-cli service\",\n vetra: \"ph-cli vetra\",\n \"service-startup\":\n \"bash ./node_modules/@powerhousedao/ph-cli/dist/scripts/service-startup.sh\",\n \"service-unstartup\":\n \"bash ./node_modules/@powerhousedao/ph-cli/dist/scripts/service-unstartup.sh\",\n} as const;\n\nexport const externalDependencies = {} as const;\n\nexport const externalDevDependencies = {\n \"@electric-sql/pglite\": \"0.3.15\",\n \"@electric-sql/pglite-tools\": \"0.2.20\",\n \"@eslint/js\": \"^9.38.0\",\n \"@powerhousedao/document-engineering\": \"1.40.5\",\n \"@tailwindcss/cli\": \"^4.1.18\",\n \"@tailwindcss/vite\": \"^4.1.18\",\n \"@types/node\": \"^24.9.2\",\n \"@types/react\": \"^19.2.3\",\n \"@types/react-dom\": \"^19.2.3\",\n \"@vitejs/plugin-react\": \"^6.0.1\",\n \"@vitest/coverage-v8\": \"4.1.1\",\n eslint: \"^9.38.0\",\n \"eslint-config-prettier\": \"^10.1.8\",\n \"eslint-plugin-prettier\": \"^5.5.4\",\n \"eslint-plugin-react\": \"^7.37.5\",\n \"eslint-plugin-react-hooks\": \"^7.0.1\",\n globals: \"^16.4.0\",\n tailwindcss: \"^4.1.16\",\n typescript: \"^5.9.3\",\n \"typescript-eslint\": \"^8.46.2\",\n vite: \"^8.0.10\",\n \"vite-tsconfig-paths\": \"6.1.1\",\n vitest: \"4.1.1\",\n} as const;\n\nexport const defaultManifest: Manifest = {\n name: \"\",\n description: \"\",\n category: \"\",\n publisher: {\n name: \"\",\n url: \"\",\n },\n documentModels: [],\n editors: [],\n apps: [],\n subgraphs: [],\n processors: [],\n};\n\nconst DEFAULT_DOCUMENT_MODELS_DIR = \"./document-models\";\nconst DEFAULT_EDITORS_DIR = \"./editors\";\nconst DEFAULT_PROCESSORS_DIR = \"./processors\";\nconst DEFAULT_SUBGRAPHS_DIR = \"./subgraphs\";\nconst DEFAULT_IMPORT_SCRIPTS_DIR = \"./scripts\";\nconst DEFAULT_SKIP_FORMAT = false;\nconst DEFAULT_LOG_LEVEL = \"info\";\n\nexport const DEFAULT_CONFIG: PowerhouseConfig = {\n documentModelsDir: DEFAULT_DOCUMENT_MODELS_DIR,\n editorsDir: DEFAULT_EDITORS_DIR,\n processorsDir: DEFAULT_PROCESSORS_DIR,\n subgraphsDir: DEFAULT_SUBGRAPHS_DIR,\n importScriptsDir: DEFAULT_IMPORT_SCRIPTS_DIR,\n skipFormat: DEFAULT_SKIP_FORMAT,\n logLevel: DEFAULT_LOG_LEVEL,\n auth: {\n enabled: false,\n admins: [],\n },\n};\n","import { readFileSync } from \"node:fs\";\nimport { DEFAULT_CONFIG } from \"../constants.js\";\nimport type { PowerhouseConfig } from \"../types.js\";\n\nexport function getConfig(path = \"./powerhouse.config.json\") {\n let config: PowerhouseConfig = { ...DEFAULT_CONFIG };\n try {\n const configStr = readFileSync(path, \"utf-8\");\n const userConfig = JSON.parse(configStr) as PowerhouseConfig;\n config = { ...config, ...userConfig };\n } catch {\n // console.warn(\"No powerhouse.config.json found, using defaults\");\n }\n\n return config;\n}\n","import {\n array,\n boolean,\n command,\n flag,\n multioption,\n number,\n oneOf,\n option,\n optional,\n string,\n} from \"cmd-ts\";\n// Sub-path: avoids pulling the package-manager-detector runtime here,\n// which `oneOf(AGENTS)` below would force at module load.\nimport type { Agent } from \"package-manager-detector\";\nimport { AGENTS as _AGENTS } from \"package-manager-detector/constants\";\nimport {\n DEFAULT_TIMEOUT,\n DRIVES_PRESERVE_STRATEGIES,\n LOG_LEVELS,\n} from \"../constants.js\";\nimport { getConfig } from \"../file-system/get-config.js\";\n\nexport const AGENTS: Agent[] = _AGENTS;\n\nexport const debugArgs = {\n debug: flag({\n type: optional(boolean),\n long: \"debug\",\n description: \"Log arguments passed to this command\",\n }),\n};\n\nexport const buildArgs = {\n outDir: option({\n type: string,\n long: \"out-dir\",\n description: \"Where to output the bundled code\",\n defaultValue: () => \"dist\" as const,\n defaultValueIsSerializable: true,\n }),\n ...debugArgs,\n};\n\nexport const packageManagerArgs = {\n packageManager: option({\n type: optional(oneOf(AGENTS)),\n long: \"package-manager\",\n short: \"p\",\n description:\n \"Specify the package manager to use for your project. Can be one of: `npm`, `pnpm`, `yarn`, or `bun`. Defaults to your environment package manager.\",\n }),\n npm: flag({\n type: optional(boolean),\n long: \"npm\",\n description: \"Use 'npm' as package manager\",\n }),\n pnpm: flag({\n type: optional(boolean),\n long: \"pnpm\",\n description: \"Use 'pnpm' as package manager\",\n }),\n yarn: flag({\n type: optional(boolean),\n long: \"yarn\",\n description: \"Use 'yarn' as package manager\",\n }),\n bun: flag({\n type: optional(boolean),\n long: \"bun\",\n description: \"Use 'bun' as package manager\",\n }),\n};\nexport const getPackageManagerCommand = command({\n name: \"get-package-manager\",\n args: packageManagerArgs,\n handler: (args) => args,\n});\nexport const packages = option({\n type: optional(string),\n long: \"packages\",\n description: \"Comma-separated list of package names to load\",\n env: \"PH_PACKAGES\" as const,\n});\n\nexport const localPackage = option({\n type: optional(string),\n long: \"local-package\",\n description: \"Path to local package to load during development\",\n env: \"PH_LOCAL_PACKAGE\" as const,\n});\n\nexport const disableLocalPackages = flag({\n type: boolean,\n long: \"ignore-local\",\n description: \"Do not load local packages from this project\",\n defaultValue: () => false,\n});\n\nexport const httpsKeyFile = option({\n type: optional(string),\n long: \"https-key-file\",\n description: \"path to the ssl key file\",\n defaultValue: () => {\n const baseConfig = getConfig();\n const https = baseConfig.reactor?.https;\n if (https === undefined) return undefined;\n if (typeof https === \"boolean\") return undefined;\n return https.keyPath;\n },\n});\n\nexport const httpsCertFile = option({\n type: optional(string),\n long: \"https-cert-file\",\n description: \"path to the ssl cert file\",\n defaultValue: () => {\n const baseConfig = getConfig();\n const https = baseConfig.reactor?.https;\n if (https === undefined) return undefined;\n if (typeof https === \"boolean\") return undefined;\n return https.certPath;\n },\n});\n\nexport const https = flag({\n type: optional(boolean),\n long: \"https\",\n description: \"Use https\",\n defaultValue: () => {\n const baseConfig = getConfig();\n const https = baseConfig.reactor?.https;\n if (typeof https === \"boolean\") return https;\n return undefined;\n },\n});\n\nexport const vetraSwitchboardArgs = {\n https,\n httpsKeyFile,\n httpsCertFile,\n dev: flag({\n type: optional(boolean),\n long: \"dev\",\n description: \"enable development mode to load local packages\",\n }),\n remoteDrives: multioption({\n type: array(string),\n long: \"remote-drives\",\n description: \"Specify remote drive URLs to use\",\n defaultValue: () => [],\n }),\n disableLocalPackages,\n ...debugArgs,\n};\n\nexport const defaultDrivesUrl = option({\n type: optional(string),\n long: \"default-drives-url\",\n description: \"The default drives url to use in connect\",\n defaultValue: () => \"\",\n});\n\nexport const logLevel = option({\n type: oneOf(LOG_LEVELS),\n long: \"log-level\",\n description: \"Log level for the application\",\n defaultValue: () => \"info\" as const,\n defaultValueIsSerializable: true,\n env: \"PH_CONNECT_LOG_LEVEL\" as const,\n});\n\nexport const connectBasePath = option({\n long: \"base\",\n type: string,\n description: \"Base path for the app\",\n defaultValue: () => \"/\",\n});\n\nexport const drivesPreserveStrategy = option({\n type: oneOf(DRIVES_PRESERVE_STRATEGIES),\n long: \"drive-preserve-strategy\",\n description: \"The preservation strategy to use on default drives\",\n defaultValue: () => \"preserve-by-url-and-detach\" as const,\n defaultValueIsSerializable: true,\n});\n\nexport const force = flag({\n type: optional(boolean),\n long: \"force\",\n description:\n \"Force dep pre-optimization regardless of whether deps have changed.\",\n});\n\nexport const commonArgs = {\n connectBasePath,\n logLevel,\n packages,\n localPackage,\n disableLocalPackages,\n defaultDrivesUrl,\n drivesPreserveStrategy,\n force,\n ...debugArgs,\n};\n\nexport const commonServerArgs = {\n host: option({\n type: optional(string),\n long: \"host\",\n description:\n \"Expose the server to the network. Pass an IP (e.g. 0.0.0.0) to bind to a specific address.\",\n }),\n open: flag({\n type: optional(boolean),\n long: \"open\",\n description: \"Open browser on startup\",\n }),\n cors: flag({\n type: optional(boolean),\n long: \"cors\",\n description: \"Enable CORS\",\n }),\n strictPort: flag({\n type: optional(boolean),\n long: \"strictPort\",\n description: \"Exit if specified port is already in use\",\n }),\n printUrls: flag({\n type: boolean,\n long: \"print-urls\",\n description: \"Print server urls\",\n defaultValue: () => true,\n defaultValueIsSerializable: true,\n }),\n bindCLIShortcuts: flag({\n type: boolean,\n long: \"bind-cli-shortcuts\",\n description: \"Bind CLI shortcuts\",\n defaultValue: () => true,\n defaultValueIsSerializable: true,\n }),\n watchTimeout: option({\n type: number,\n long: \"watch-timeout\",\n description: \"Amount of time to wait before a file is considered changed\",\n defaultValue: () => DEFAULT_TIMEOUT,\n defaultValueIsSerializable: true,\n }),\n};\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { _ as packageManagerArgs, a as connectBasePath, c as disableLocalPackages, d as getPackageManagerCommand, f as https, g as logLevel, h as localPackage, i as commonServerArgs, l as drivesPreserveStrategy, m as httpsKeyFile, n as buildArgs, o as debugArgs, p as httpsCertFile, r as commonArgs, s as defaultDrivesUrl, t as AGENTS, u as force, v as packages, y as vetraSwitchboardArgs } from "./common-
|
|
1
|
+
import { _ as packageManagerArgs, a as connectBasePath, c as disableLocalPackages, d as getPackageManagerCommand, f as https, g as logLevel, h as localPackage, i as commonServerArgs, l as drivesPreserveStrategy, m as httpsKeyFile, n as buildArgs, o as debugArgs, p as httpsCertFile, r as commonArgs, s as defaultDrivesUrl, t as AGENTS, u as force, v as packages, y as vetraSwitchboardArgs } from "./common-Dmf4BGPa.mjs";
|
|
2
2
|
export { AGENTS, buildArgs, commonArgs, commonServerArgs, connectBasePath, debugArgs, defaultDrivesUrl, disableLocalPackages, drivesPreserveStrategy, force, getPackageManagerCommand, https, httpsCertFile, httpsKeyFile, localPackage, logLevel, packageManagerArgs, packages, vetraSwitchboardArgs };
|
|
@@ -31,7 +31,7 @@ declare const connectStudioArgs: {
|
|
|
31
31
|
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<string>>;
|
|
32
32
|
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
33
33
|
logLevel: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
34
|
-
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<"debug" | "
|
|
34
|
+
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<"debug" | "error" | "info" | "warn" | "verbose">>;
|
|
35
35
|
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
36
36
|
packages: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
37
37
|
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<string | undefined>>;
|
|
@@ -63,7 +63,7 @@ declare const connectBuildArgs: {
|
|
|
63
63
|
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<string>>;
|
|
64
64
|
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
65
65
|
logLevel: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
66
|
-
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<"debug" | "
|
|
66
|
+
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<"debug" | "error" | "info" | "warn" | "verbose">>;
|
|
67
67
|
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
68
68
|
packages: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
69
69
|
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<string | undefined>>;
|
|
@@ -83,6 +83,9 @@ declare const connectBuildArgs: {
|
|
|
83
83
|
force: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
84
84
|
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<boolean | undefined>>;
|
|
85
85
|
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & cmd_ts_dist_cjs_argparser_js0.Register & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
86
|
+
dynamicBase: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
87
|
+
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<boolean | undefined>>;
|
|
88
|
+
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & cmd_ts_dist_cjs_argparser_js0.Register & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
86
89
|
keyPositional: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
87
90
|
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<string | undefined>>;
|
|
88
91
|
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
@@ -176,7 +179,7 @@ declare const connectPreviewArgs: {
|
|
|
176
179
|
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<string>>;
|
|
177
180
|
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
178
181
|
logLevel: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
179
|
-
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<"debug" | "
|
|
182
|
+
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<"debug" | "error" | "info" | "warn" | "verbose">>;
|
|
180
183
|
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
181
184
|
packages: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
182
185
|
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<string | undefined>>;
|
|
@@ -208,7 +211,7 @@ declare const connectConfigArgs: {
|
|
|
208
211
|
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<string>>;
|
|
209
212
|
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
210
213
|
logLevel: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
211
|
-
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<"debug" | "
|
|
214
|
+
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<"debug" | "error" | "info" | "warn" | "verbose">>;
|
|
212
215
|
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
213
216
|
defaultDrivesUrl: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
214
217
|
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<string | undefined>>;
|
|
@@ -288,7 +291,7 @@ declare const connectArgs: {
|
|
|
288
291
|
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<string>>;
|
|
289
292
|
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
290
293
|
logLevel: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
291
|
-
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<"debug" | "
|
|
294
|
+
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<"debug" | "error" | "info" | "warn" | "verbose">>;
|
|
292
295
|
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
293
296
|
defaultDrivesUrl: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
294
297
|
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<string | undefined>>;
|
|
@@ -404,6 +407,9 @@ declare const connectArgs: {
|
|
|
404
407
|
outDir: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
405
408
|
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<string>>;
|
|
406
409
|
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
410
|
+
dynamicBase: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
411
|
+
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<boolean | undefined>>;
|
|
412
|
+
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & cmd_ts_dist_cjs_argparser_js0.Register & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
407
413
|
};
|
|
408
414
|
//#endregion
|
|
409
415
|
export { connectArgs, connectBuildArgs, connectConfigArgs, connectPreviewArgs, connectStudioArgs };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connect.d.mts","names":[],"sources":["../../../clis/args/connect.ts"],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"connect.d.mts","names":[],"sources":["../../../clis/args/connect.ts"],"mappings":";;;;cAyCa,iBAAA;gBAUZ,6BAAA,CAAA,QAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAyIY,gBAAA;iBAiBZ,6BAAA,CAAA,QAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAEY,kBAAA;gBAiBZ,6BAAA,CAAA,QAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA6BY,iBAAA;2BAmBZ,6BAAA,CAAA,QAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAEY,WAAA;2BAKZ,6BAAA,CAAA,QAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { C as DEFAULT_CONNECT_STUDIO_PORT, S as DEFAULT_CONNECT_PREVIEW_PORT, a as connectBasePath, g as logLevel, i as commonServerArgs, l as drivesPreserveStrategy, r as commonArgs, s as defaultDrivesUrl, x as DEFAULT_CONNECT_OUTDIR } from "./common-fPNESurz.mjs";
|
|
2
|
-
import { number, option, optional, positional, string } from "cmd-ts";
|
|
2
|
+
import { boolean, flag, number, option, optional, positional, string } from "cmd-ts";
|
|
3
3
|
//#region clis/args/connect.ts
|
|
4
4
|
const cliBoolean = {
|
|
5
5
|
from: (input) => {
|
|
@@ -135,6 +135,11 @@ const connectBuildArgs = {
|
|
|
135
135
|
}),
|
|
136
136
|
...connectRuntimeOverrideArgs,
|
|
137
137
|
...connectPositionalArgs,
|
|
138
|
+
dynamicBase: flag({
|
|
139
|
+
type: optional(boolean),
|
|
140
|
+
long: "dynamic-base",
|
|
141
|
+
description: "Build one bundle that serves under any subpath; base resolved at serve time from a runtime global. Overrides --base."
|
|
142
|
+
}),
|
|
138
143
|
...commonArgs
|
|
139
144
|
};
|
|
140
145
|
const connectPreviewArgs = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connect.mjs","names":[],"sources":["../../../clis/args/connect.ts"],"sourcesContent":["import type { Type } from \"cmd-ts\";\nimport { number, option, optional, positional, string } from \"cmd-ts\";\nimport {\n DEFAULT_CONNECT_OUTDIR,\n DEFAULT_CONNECT_PREVIEW_PORT,\n DEFAULT_CONNECT_STUDIO_PORT,\n} from \"../constants.js\";\nimport {\n commonArgs,\n commonServerArgs,\n connectBasePath,\n defaultDrivesUrl,\n drivesPreserveStrategy,\n logLevel,\n} from \"./common.js\";\n\n// cmd-ts's built-in `boolean` is intended for `flag()` (presence/absence). With\n// `option()` we need to parse the next argv as a value, but cmd-ts's `boolean`\n// does not coerce the string. This custom Type does.\nconst cliBoolean: Type<string, boolean> = {\n from: (input) => {\n const v = input.toLowerCase();\n if (v === \"true\") return Promise.resolve(true);\n if (v === \"false\") return Promise.resolve(false);\n return Promise.reject(\n new Error(\n `Expected 'true' or 'false' (case-insensitive), got '${input}'.`,\n ),\n );\n },\n description: \"true | false\",\n};\n\nexport const connectStudioArgs = {\n port: option({\n type: number,\n long: \"port\",\n description: \"Port to run the dev server on.\",\n defaultValue: () => DEFAULT_CONNECT_STUDIO_PORT,\n defaultValueIsSerializable: true,\n }),\n ...commonArgs,\n ...commonServerArgs,\n};\n\n// Runtime-config override flags. Each is optional with no default — undefined\n// means \"user did not pass this flag\", so runConnectBuild can include only\n// explicitly-set values in `cliConnectOverride` and avoid clobbering source\n// `powerhouse.config.json` values when no override was intended.\n//\n// These flags occupy the top of the precedence ladder for the runtime config\n// emitted into `dist/powerhouse.config.json`:\n//\n// DEFAULT_CONNECT_CONFIG < source connect.* < --json < individual --flag\n//\n// `--json` accepts a partial `connect.*` blob (e.g. `{\"renown\":{\"url\":\"...\"}}`).\n// Individual flags merge on top of `--json` inside the same CLI layer, so they\n// win on collision. Env vars are NOT part of this build-time merge; they only\n// seed the dist file at container start (set-if-absent) via the Docker\n// entrypoint.\nconst connectRuntimeOverrideArgs = {\n json: option({\n type: optional(string),\n long: \"json\",\n description:\n 'Inline JSON override for the runtime connect.* block, e.g. \\'{\"renown\":{\"url\":\"...\"}}\\'. Validated against the runtime schema; deep-merged on top of env seeds and source powerhouse.config.json. Individual --flag values beat --json on collision.',\n }),\n renownUrl: option({\n type: optional(string),\n long: \"renown-url\",\n description: \"Override connect.renown.url.\",\n }),\n renownNetworkId: option({\n type: optional(string),\n long: \"renown-network-id\",\n description: \"Override connect.renown.networkId.\",\n }),\n renownChainId: option({\n type: optional(number),\n long: \"renown-chain-id\",\n description: \"Override connect.renown.chainId.\",\n }),\n allowAddDrive: option({\n type: optional(cliBoolean),\n long: \"allow-add-drive\",\n description:\n \"Override connect.drives.allowAddDrive (top-level add-drive toggle).\",\n }),\n externalPackages: option({\n type: optional(cliBoolean),\n long: \"external-packages\",\n description: \"Override connect.packages.externalEnabled.\",\n }),\n remoteDrivesEnabled: option({\n type: optional(cliBoolean),\n long: \"remote-drives-enabled\",\n description:\n \"Override connect.drives.sections.remote.enabled (the unified cloud+public section).\",\n }),\n remoteDrivesAllowAdd: option({\n type: optional(cliBoolean),\n long: \"remote-drives-allow-add\",\n description: \"Override connect.drives.sections.remote.allowAdd.\",\n }),\n remoteDrivesAllowDelete: option({\n type: optional(cliBoolean),\n long: \"remote-drives-allow-delete\",\n description: \"Override connect.drives.sections.remote.allowDelete.\",\n }),\n localDrivesEnabled: option({\n type: optional(cliBoolean),\n long: \"local-drives-enabled\",\n description: \"Override connect.drives.sections.local.enabled.\",\n }),\n localDrivesAllowAdd: option({\n type: optional(cliBoolean),\n long: \"local-drives-allow-add\",\n description: \"Override connect.drives.sections.local.allowAdd.\",\n }),\n localDrivesAllowDelete: option({\n type: optional(cliBoolean),\n long: \"local-drives-allow-delete\",\n description: \"Override connect.drives.sections.local.allowDelete.\",\n }),\n packagesRegistry: option({\n type: optional(string),\n long: \"packages-registry\",\n description: \"Override the top-level packageRegistryUrl.\",\n }),\n appName: option({\n type: optional(string),\n long: \"app-name\",\n description: \"Override connect.branding.appName.\",\n }),\n homeBackground: option({\n type: optional(string),\n long: \"home-background\",\n description:\n 'Override connect.branding.homeBackground. URL or path to an image; pass an empty string (\"\") to reset to the bundled default.',\n }),\n sentryDsn: option({\n type: optional(string),\n long: \"sentry-dsn\",\n description:\n 'Override connect.sentry.dsn (Sentry DSN URL). Pass an empty string (\"\") to set null and disable Sentry.',\n }),\n sentryEnv: option({\n type: optional(string),\n long: \"sentry-env\",\n description: \"Override connect.sentry.env (Sentry environment label).\",\n }),\n sentryTracingEnabled: option({\n type: optional(cliBoolean),\n long: \"sentry-tracing-enabled\",\n description:\n \"Override connect.sentry.tracing (Sentry performance tracing).\",\n }),\n};\n\n// Positional pair shared by `ph connect build` and `ph connect config`. Both\n// commands accept `<key> <value>` to set a single runtime-config field; `config`\n// additionally accepts `<key>` alone for read-mode (`build` rejects the\n// 1-positional case because it has no read semantics). Both are optional in the\n// parser; the handler enforces the per-command shape.\nconst connectPositionalArgs = {\n keyPositional: positional({\n type: optional(string),\n displayName: \"key\",\n description:\n \"Dotted path inside the runtime config (e.g. connect.renown.url). Pair with <value> to set; pass alone to `ph connect config` to read.\",\n }),\n valuePositional: positional({\n type: optional(string),\n displayName: \"value\",\n description:\n \"Value to set at <key>. Coerced against the runtime schema (string, bool, number, enum). Arrays and objects require --json instead.\",\n }),\n};\n\nexport const connectBuildArgs = {\n outDir: option({\n type: string,\n long: \"outDir\",\n description: \"Output directory\",\n defaultValue: () => DEFAULT_CONNECT_OUTDIR,\n defaultValueIsSerializable: true,\n }),\n ...connectRuntimeOverrideArgs,\n ...connectPositionalArgs,\n ...commonArgs,\n};\n\nexport const connectPreviewArgs = {\n port: option({\n type: number,\n long: \"port\",\n description: \"Port to run the preview server on.\",\n defaultValue: () => DEFAULT_CONNECT_PREVIEW_PORT,\n defaultValueIsSerializable: true,\n }),\n outDir: option({\n type: string,\n long: \"outDir\",\n description: \"Output directory\",\n defaultValue: () => DEFAULT_CONNECT_OUTDIR,\n defaultValueIsSerializable: true,\n }),\n ...commonArgs,\n ...commonServerArgs,\n};\n\n// `ph connect config` — read, set, or list the runtime config under the\n// `connect.*` block of the dist `powerhouse.config.json`.\n//\n// Mode matrix (exactly one mode per invocation; mutex enforced in\n// `runConnectConfig`):\n//\n// ph connect config → list (print effective merged config)\n// ph connect config <key> → get one value at the dotted key (positional)\n// ph connect config --get <dotted.path> → same as positional <key> (kept for backward compat)\n// ph connect config <key> <value> → set + dual-write to source + dist (positional)\n// ph connect config --<field> <value> → set + dual-write via per-field flag\n// ph connect config --json '{\"…\":\"…\"}' → bulk set + dual-write\n//\n// The 15 field flags below come from `connectRuntimeOverrideArgs`, so\n// `config` and `build` share an identical surface for runtime fields. The 4\n// flags imported individually from `common.ts` (`connectBasePath` /\n// `logLevel` / `defaultDrivesUrl` / `drivesPreserveStrategy`) extend that to\n// 19-flag coverage. The positional `<key>`/`<value>` pair is also shared with\n// `ph connect build` so both commands accept the same set-mode grammar.\n// `--dist-dir` lets Docker / non-default deployments point at a custom dist\n// location; falls back to PH_CONNECT_OUTDIR env, then to the standard\n// `.ph/connect-build/dist/` path.\n//\n// NOTE: the 4 commonArgs flags have built-in cmd-ts defaults\n// (e.g. logLevel=\"info\"), so always parse as defined. The service detects\n// \"user explicitly passed this flag\" via process.argv inspection — see\n// `clis/ph-cli/src/utils/cli-connect-override.ts:wasFlagExplicitlyPassed`.\nexport const connectConfigArgs = {\n get: option({\n type: optional(string),\n long: \"get\",\n description:\n 'Dotted path inside connect.* (e.g. \"connect.renown.url\") to read the effective value. Mutually exclusive with the set modes. Equivalent to `ph connect config <key>` (positional).',\n }),\n distDir: option({\n type: optional(string),\n long: \"dist-dir\",\n description:\n \"Path to the directory containing the dist powerhouse.config.json. Defaults to the PH_CONNECT_OUTDIR env or `.ph/connect-build/dist/`.\",\n }),\n ...connectRuntimeOverrideArgs,\n ...connectPositionalArgs,\n connectBasePath,\n logLevel,\n defaultDrivesUrl,\n drivesPreserveStrategy,\n};\n\nexport const connectArgs = {\n ...connectStudioArgs,\n ...connectBuildArgs,\n ...connectPreviewArgs,\n ...connectConfigArgs,\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"connect.mjs","names":[],"sources":["../../../clis/args/connect.ts"],"sourcesContent":["import type { Type } from \"cmd-ts\";\nimport {\n boolean,\n flag,\n number,\n option,\n optional,\n positional,\n string,\n} from \"cmd-ts\";\nimport {\n DEFAULT_CONNECT_OUTDIR,\n DEFAULT_CONNECT_PREVIEW_PORT,\n DEFAULT_CONNECT_STUDIO_PORT,\n} from \"../constants.js\";\nimport {\n commonArgs,\n commonServerArgs,\n connectBasePath,\n defaultDrivesUrl,\n drivesPreserveStrategy,\n logLevel,\n} from \"./common.js\";\n\n// cmd-ts's built-in `boolean` is intended for `flag()` (presence/absence). With\n// `option()` we need to parse the next argv as a value, but cmd-ts's `boolean`\n// does not coerce the string. This custom Type does.\nconst cliBoolean: Type<string, boolean> = {\n from: (input) => {\n const v = input.toLowerCase();\n if (v === \"true\") return Promise.resolve(true);\n if (v === \"false\") return Promise.resolve(false);\n return Promise.reject(\n new Error(\n `Expected 'true' or 'false' (case-insensitive), got '${input}'.`,\n ),\n );\n },\n description: \"true | false\",\n};\n\nexport const connectStudioArgs = {\n port: option({\n type: number,\n long: \"port\",\n description: \"Port to run the dev server on.\",\n defaultValue: () => DEFAULT_CONNECT_STUDIO_PORT,\n defaultValueIsSerializable: true,\n }),\n ...commonArgs,\n ...commonServerArgs,\n};\n\n// Runtime-config override flags. Each is optional with no default — undefined\n// means \"user did not pass this flag\", so runConnectBuild can include only\n// explicitly-set values in `cliConnectOverride` and avoid clobbering source\n// `powerhouse.config.json` values when no override was intended.\n//\n// These flags occupy the top of the precedence ladder for the runtime config\n// emitted into `dist/powerhouse.config.json`:\n//\n// DEFAULT_CONNECT_CONFIG < source connect.* < --json < individual --flag\n//\n// `--json` accepts a partial `connect.*` blob (e.g. `{\"renown\":{\"url\":\"...\"}}`).\n// Individual flags merge on top of `--json` inside the same CLI layer, so they\n// win on collision. Env vars are NOT part of this build-time merge;\n// PH_CONNECT_CONFIG_JSON is applied to the dist file at container start by\n// the Docker entrypoint (operator-wins: concrete values override the baked\n// file, null/omitted keep it; connect.app.basePath excluded).\nconst connectRuntimeOverrideArgs = {\n json: option({\n type: optional(string),\n long: \"json\",\n description:\n 'Inline JSON override for the runtime connect.* block, e.g. \\'{\"renown\":{\"url\":\"...\"}}\\'. Validated against the runtime schema; deep-merged on top of env seeds and source powerhouse.config.json. Individual --flag values beat --json on collision.',\n }),\n renownUrl: option({\n type: optional(string),\n long: \"renown-url\",\n description: \"Override connect.renown.url.\",\n }),\n renownNetworkId: option({\n type: optional(string),\n long: \"renown-network-id\",\n description: \"Override connect.renown.networkId.\",\n }),\n renownChainId: option({\n type: optional(number),\n long: \"renown-chain-id\",\n description: \"Override connect.renown.chainId.\",\n }),\n allowAddDrive: option({\n type: optional(cliBoolean),\n long: \"allow-add-drive\",\n description:\n \"Override connect.drives.allowAddDrive (top-level add-drive toggle).\",\n }),\n externalPackages: option({\n type: optional(cliBoolean),\n long: \"external-packages\",\n description: \"Override connect.packages.externalEnabled.\",\n }),\n remoteDrivesEnabled: option({\n type: optional(cliBoolean),\n long: \"remote-drives-enabled\",\n description:\n \"Override connect.drives.sections.remote.enabled (the unified cloud+public section).\",\n }),\n remoteDrivesAllowAdd: option({\n type: optional(cliBoolean),\n long: \"remote-drives-allow-add\",\n description: \"Override connect.drives.sections.remote.allowAdd.\",\n }),\n remoteDrivesAllowDelete: option({\n type: optional(cliBoolean),\n long: \"remote-drives-allow-delete\",\n description: \"Override connect.drives.sections.remote.allowDelete.\",\n }),\n localDrivesEnabled: option({\n type: optional(cliBoolean),\n long: \"local-drives-enabled\",\n description: \"Override connect.drives.sections.local.enabled.\",\n }),\n localDrivesAllowAdd: option({\n type: optional(cliBoolean),\n long: \"local-drives-allow-add\",\n description: \"Override connect.drives.sections.local.allowAdd.\",\n }),\n localDrivesAllowDelete: option({\n type: optional(cliBoolean),\n long: \"local-drives-allow-delete\",\n description: \"Override connect.drives.sections.local.allowDelete.\",\n }),\n packagesRegistry: option({\n type: optional(string),\n long: \"packages-registry\",\n description: \"Override the top-level packageRegistryUrl.\",\n }),\n appName: option({\n type: optional(string),\n long: \"app-name\",\n description: \"Override connect.branding.appName.\",\n }),\n homeBackground: option({\n type: optional(string),\n long: \"home-background\",\n description:\n 'Override connect.branding.homeBackground. URL or path to an image; pass an empty string (\"\") to reset to the bundled default.',\n }),\n sentryDsn: option({\n type: optional(string),\n long: \"sentry-dsn\",\n description:\n 'Override connect.sentry.dsn (Sentry DSN URL). Pass an empty string (\"\") to set null and disable Sentry.',\n }),\n sentryEnv: option({\n type: optional(string),\n long: \"sentry-env\",\n description: \"Override connect.sentry.env (Sentry environment label).\",\n }),\n sentryTracingEnabled: option({\n type: optional(cliBoolean),\n long: \"sentry-tracing-enabled\",\n description:\n \"Override connect.sentry.tracing (Sentry performance tracing).\",\n }),\n};\n\n// Positional pair shared by `ph connect build` and `ph connect config`. Both\n// commands accept `<key> <value>` to set a single runtime-config field; `config`\n// additionally accepts `<key>` alone for read-mode (`build` rejects the\n// 1-positional case because it has no read semantics). Both are optional in the\n// parser; the handler enforces the per-command shape.\nconst connectPositionalArgs = {\n keyPositional: positional({\n type: optional(string),\n displayName: \"key\",\n description:\n \"Dotted path inside the runtime config (e.g. connect.renown.url). Pair with <value> to set; pass alone to `ph connect config` to read.\",\n }),\n valuePositional: positional({\n type: optional(string),\n displayName: \"value\",\n description:\n \"Value to set at <key>. Coerced against the runtime schema (string, bool, number, enum). Arrays and objects require --json instead.\",\n }),\n};\n\nexport const connectBuildArgs = {\n outDir: option({\n type: string,\n long: \"outDir\",\n description: \"Output directory\",\n defaultValue: () => DEFAULT_CONNECT_OUTDIR,\n defaultValueIsSerializable: true,\n }),\n ...connectRuntimeOverrideArgs,\n ...connectPositionalArgs,\n dynamicBase: flag({\n type: optional(boolean),\n long: \"dynamic-base\",\n description:\n \"Build one bundle that serves under any subpath; base resolved at serve time from a runtime global. Overrides --base.\",\n }),\n ...commonArgs,\n};\n\nexport const connectPreviewArgs = {\n port: option({\n type: number,\n long: \"port\",\n description: \"Port to run the preview server on.\",\n defaultValue: () => DEFAULT_CONNECT_PREVIEW_PORT,\n defaultValueIsSerializable: true,\n }),\n outDir: option({\n type: string,\n long: \"outDir\",\n description: \"Output directory\",\n defaultValue: () => DEFAULT_CONNECT_OUTDIR,\n defaultValueIsSerializable: true,\n }),\n ...commonArgs,\n ...commonServerArgs,\n};\n\n// `ph connect config` — read, set, or list the runtime config under the\n// `connect.*` block of the dist `powerhouse.config.json`.\n//\n// Mode matrix (exactly one mode per invocation; mutex enforced in\n// `runConnectConfig`):\n//\n// ph connect config → list (print effective merged config)\n// ph connect config <key> → get one value at the dotted key (positional)\n// ph connect config --get <dotted.path> → same as positional <key> (kept for backward compat)\n// ph connect config <key> <value> → set + dual-write to source + dist (positional)\n// ph connect config --<field> <value> → set + dual-write via per-field flag\n// ph connect config --json '{\"…\":\"…\"}' → bulk set + dual-write\n//\n// The 15 field flags below come from `connectRuntimeOverrideArgs`, so\n// `config` and `build` share an identical surface for runtime fields. The 4\n// flags imported individually from `common.ts` (`connectBasePath` /\n// `logLevel` / `defaultDrivesUrl` / `drivesPreserveStrategy`) extend that to\n// 19-flag coverage. The positional `<key>`/`<value>` pair is also shared with\n// `ph connect build` so both commands accept the same set-mode grammar.\n// `--dist-dir` lets Docker / non-default deployments point at a custom dist\n// location; falls back to PH_CONNECT_OUTDIR env, then to the standard\n// `.ph/connect-build/dist/` path.\n//\n// NOTE: the 4 commonArgs flags have built-in cmd-ts defaults\n// (e.g. logLevel=\"info\"), so always parse as defined. The service detects\n// \"user explicitly passed this flag\" via process.argv inspection — see\n// `clis/ph-cli/src/utils/cli-connect-override.ts:wasFlagExplicitlyPassed`.\nexport const connectConfigArgs = {\n get: option({\n type: optional(string),\n long: \"get\",\n description:\n 'Dotted path inside connect.* (e.g. \"connect.renown.url\") to read the effective value. Mutually exclusive with the set modes. Equivalent to `ph connect config <key>` (positional).',\n }),\n distDir: option({\n type: optional(string),\n long: \"dist-dir\",\n description:\n \"Path to the directory containing the dist powerhouse.config.json. Defaults to the PH_CONNECT_OUTDIR env or `.ph/connect-build/dist/`.\",\n }),\n ...connectRuntimeOverrideArgs,\n ...connectPositionalArgs,\n connectBasePath,\n logLevel,\n defaultDrivesUrl,\n drivesPreserveStrategy,\n};\n\nexport const connectArgs = {\n ...connectStudioArgs,\n ...connectBuildArgs,\n ...connectPreviewArgs,\n ...connectConfigArgs,\n};\n"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { accessTokenArgs } from "./access-token.mjs";
|
|
2
|
-
import { _ as packageManagerArgs, a as connectBasePath, c as disableLocalPackages, d as getPackageManagerCommand, f as https, g as logLevel, h as localPackage, i as commonServerArgs, l as drivesPreserveStrategy, m as httpsKeyFile, n as buildArgs, o as debugArgs, p as httpsCertFile, r as commonArgs, s as defaultDrivesUrl, t as AGENTS, u as force, v as packages, y as vetraSwitchboardArgs } from "./common-
|
|
2
|
+
import { _ as packageManagerArgs, a as connectBasePath, c as disableLocalPackages, d as getPackageManagerCommand, f as https, g as logLevel, h as localPackage, i as commonServerArgs, l as drivesPreserveStrategy, m as httpsKeyFile, n as buildArgs, o as debugArgs, p as httpsCertFile, r as commonArgs, s as defaultDrivesUrl, t as AGENTS, u as force, v as packages, y as vetraSwitchboardArgs } from "./common-Dmf4BGPa.mjs";
|
|
3
3
|
import { connectArgs, connectBuildArgs, connectConfigArgs, connectPreviewArgs, connectStudioArgs } from "./connect.mjs";
|
|
4
4
|
import { generateArgs } from "./generate.mjs";
|
|
5
5
|
import { n as phCliCommandNames, t as phCliHelpCommands } from "./help-CYjFrzIJ.mjs";
|
|
@@ -11,7 +11,7 @@ import { loginArgs } from "./login.mjs";
|
|
|
11
11
|
import { migrateArgs } from "./migrate.mjs";
|
|
12
12
|
import { publishArgs } from "./publish.mjs";
|
|
13
13
|
import { DEFAULT_REGISTRY_LOGIN_EXPIRY, registryLoginArgs } from "./registry.mjs";
|
|
14
|
-
import { n as ServiceAction, t as serviceArgs } from "./service-
|
|
14
|
+
import { n as ServiceAction, t as serviceArgs } from "./service-C88bN_g_.mjs";
|
|
15
15
|
import { switchboardArgs } from "./switchboard.mjs";
|
|
16
16
|
import { uninstallArgs } from "./uninstall.mjs";
|
|
17
17
|
import { unpublishArgs } from "./unpublish.mjs";
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import * as cmd_ts_dist_cjs_argparser_js0 from "cmd-ts/dist/cjs/argparser.js";
|
|
2
|
+
import * as cmd_ts_dist_cjs_helpdoc_js0 from "cmd-ts/dist/cjs/helpdoc.js";
|
|
3
|
+
|
|
4
|
+
//#region clis/constants.d.ts
|
|
5
|
+
declare const SERVICE_ACTIONS: readonly ["start", "stop", "status", "setup", "restart"];
|
|
6
|
+
//#endregion
|
|
7
|
+
//#region clis/types.d.ts
|
|
8
|
+
type ServiceActions = typeof SERVICE_ACTIONS;
|
|
9
|
+
type ServiceAction = ServiceActions[number];
|
|
10
|
+
//#endregion
|
|
11
|
+
//#region clis/args/service.d.ts
|
|
12
|
+
declare const serviceArgs: {
|
|
13
|
+
debug: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
14
|
+
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<boolean | undefined>>;
|
|
15
|
+
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & cmd_ts_dist_cjs_argparser_js0.Register & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
16
|
+
action: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
17
|
+
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<"status" | "start" | "stop" | "setup" | "restart" | undefined>>;
|
|
18
|
+
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
19
|
+
};
|
|
20
|
+
//#endregion
|
|
21
|
+
export { ServiceAction as n, serviceArgs as t };
|
|
22
|
+
//# sourceMappingURL=service-C88bN_g_.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service-C88bN_g_.d.mts","names":[],"sources":["../../../clis/constants.ts","../../../clis/types.ts","../../../clis/args/service.ts"],"mappings":";;;;cAKa,eAAA;;;KCGD,cAAA,UAAwB,eAAA;AAAA,KACxB,aAAA,GAAgB,cAAA;;;cCHf,WAAA;iBAKZ,6BAAA,CAAA,QAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as ServiceAction, t as serviceArgs } from "./service-
|
|
1
|
+
import { n as ServiceAction, t as serviceArgs } from "./service-C88bN_g_.mjs";
|
|
2
2
|
export { ServiceAction, serviceArgs };
|
|
@@ -49,7 +49,7 @@ declare const vetraArgs: {
|
|
|
49
49
|
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<string>>;
|
|
50
50
|
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
51
51
|
logLevel: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
52
|
-
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<"debug" | "
|
|
52
|
+
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<"debug" | "error" | "info" | "warn" | "verbose">>;
|
|
53
53
|
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
54
54
|
packages: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
55
55
|
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<string | undefined>>;
|
|
@@ -87,6 +87,9 @@ declare const vetraArgs: {
|
|
|
87
87
|
interactive: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
88
88
|
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<boolean>>;
|
|
89
89
|
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & cmd_ts_dist_cjs_argparser_js0.Register & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
90
|
+
drivesPublicBase: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
91
|
+
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<string | undefined>>;
|
|
92
|
+
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
90
93
|
dbPath: Partial<cmd_ts_dist_cjs_argparser_js0.Register> & {
|
|
91
94
|
parse(context: cmd_ts_dist_cjs_argparser_js0.ParseContext): Promise<cmd_ts_dist_cjs_argparser_js0.ParsingResult<string | undefined>>;
|
|
92
95
|
} & cmd_ts_dist_cjs_helpdoc_js0.ProvidesHelp & Partial<cmd_ts_dist_cjs_helpdoc_js0.Descriptive>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vetra.d.mts","names":[],"sources":["../../../clis/args/vetra.ts"],"mappings":";;;;cAYa,SAAA;
|
|
1
|
+
{"version":3,"file":"vetra.d.mts","names":[],"sources":["../../../clis/args/vetra.ts"],"mappings":";;;;cAYa,SAAA;iBA0EZ,6BAAA,CAAA,QAAA"}
|
package/dist/clis/args/vetra.mjs
CHANGED
|
@@ -54,6 +54,11 @@ const vetraArgs = {
|
|
|
54
54
|
defaultValue: () => false,
|
|
55
55
|
defaultValueIsSerializable: true
|
|
56
56
|
}),
|
|
57
|
+
drivesPublicBase: option({
|
|
58
|
+
type: optional(string),
|
|
59
|
+
long: "drives-public-base",
|
|
60
|
+
description: "public base URL for the drive URLs advertised to Connect; each drive is exposed as <base>/d/<slug> instead of http://localhost:<switchboard-port>/d/<slug>. Use when the switchboard is reachable through a reverse proxy."
|
|
61
|
+
}),
|
|
57
62
|
dbPath: option({
|
|
58
63
|
type: optional(string),
|
|
59
64
|
long: "db-path",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vetra.mjs","names":[],"sources":["../../../clis/args/vetra.ts"],"sourcesContent":["import { boolean, flag, number, option, optional, string } from \"cmd-ts\";\nimport {\n DEFAULT_SWITCHBOARD_PORT,\n DEFAULT_VETRA_CONNECT_PORT,\n} from \"../constants.js\";\nimport { getConfig } from \"../file-system/get-config.js\";\nimport {\n commonArgs,\n commonServerArgs,\n vetraSwitchboardArgs,\n} from \"./common.js\";\n\nexport const vetraArgs = {\n switchboardPort: option({\n type: number,\n long: \"switchboard-port\",\n description: \"port to use for the Vetra Switchboard\",\n defaultValue: () => {\n const baseConfig = getConfig();\n return baseConfig.reactor?.port ?? DEFAULT_SWITCHBOARD_PORT;\n },\n }),\n connectPort: option({\n type: number,\n long: \"connect-port\",\n description: \"port to use for the Vetra Connect\",\n defaultValue: () => DEFAULT_VETRA_CONNECT_PORT,\n defaultValueIsSerializable: true,\n }),\n remoteDrive: option({\n type: optional(string),\n long: \"remote-drive\",\n description:\n \"URL of remote drive to connect to (skips switchboard initialization)\",\n defaultValue: () => {\n const baseConfig = getConfig();\n return baseConfig.vetra?.driveUrl;\n },\n }),\n watch: flag({\n type: boolean,\n long: \"watch\",\n short: \"w\",\n description:\n \"Enable dynamic loading for document-models and editors in connect-studio and switchboard\",\n defaultValue: () => false,\n defaultValueIsSerializable: true,\n }),\n verbose: flag({\n type: boolean,\n long: \"logs\",\n description: \"Show additional logs\",\n defaultValue: () => false,\n defaultValueIsSerializable: true,\n }),\n disableConnect: flag({\n type: boolean,\n long: \"disable-connect\",\n description:\n \"Skip Connect initialization (only start switchboard and reactor)\",\n defaultValue: () => false,\n defaultValueIsSerializable: true,\n }),\n interactive: flag({\n type: boolean,\n long: \"interactive\",\n description:\n \"Enable interactive mode for code generation (requires user confirmation before generating code)\",\n defaultValue: () => false,\n defaultValueIsSerializable: true,\n }),\n dbPath: option({\n type: optional(string),\n long: \"db-path\",\n description:\n \"Database path or connection string. Use a `postgres://` URL for Postgres; otherwise treated as a PGlite filesystem path. Leave unset for in-memory PGlite.\",\n }),\n ...commonArgs,\n ...commonServerArgs,\n ...vetraSwitchboardArgs,\n};\n"],"mappings":";;;AAYA,MAAa,YAAY;CACvB,iBAAiB,OAAO;EACtB,MAAM;EACN,MAAM;EACN,aAAa;EACb,oBAAoB;AAElB,UADmB,WAAW,CACZ,SAAS,QAAA;;EAE9B,CAAC;CACF,aAAa,OAAO;EAClB,MAAM;EACN,MAAM;EACN,aAAa;EACb,oBAAoB;EACpB,4BAA4B;EAC7B,CAAC;CACF,aAAa,OAAO;EAClB,MAAM,SAAS,OAAO;EACtB,MAAM;EACN,aACE;EACF,oBAAoB;AAElB,UADmB,WAAW,CACZ,OAAO;;EAE5B,CAAC;CACF,OAAO,KAAK;EACV,MAAM;EACN,MAAM;EACN,OAAO;EACP,aACE;EACF,oBAAoB;EACpB,4BAA4B;EAC7B,CAAC;CACF,SAAS,KAAK;EACZ,MAAM;EACN,MAAM;EACN,aAAa;EACb,oBAAoB;EACpB,4BAA4B;EAC7B,CAAC;CACF,gBAAgB,KAAK;EACnB,MAAM;EACN,MAAM;EACN,aACE;EACF,oBAAoB;EACpB,4BAA4B;EAC7B,CAAC;CACF,aAAa,KAAK;EAChB,MAAM;EACN,MAAM;EACN,aACE;EACF,oBAAoB;EACpB,4BAA4B;EAC7B,CAAC;CACF,QAAQ,OAAO;EACb,MAAM,SAAS,OAAO;EACtB,MAAM;EACN,aACE;EACH,CAAC;CACF,GAAG;CACH,GAAG;CACH,GAAG;CACJ"}
|
|
1
|
+
{"version":3,"file":"vetra.mjs","names":[],"sources":["../../../clis/args/vetra.ts"],"sourcesContent":["import { boolean, flag, number, option, optional, string } from \"cmd-ts\";\nimport {\n DEFAULT_SWITCHBOARD_PORT,\n DEFAULT_VETRA_CONNECT_PORT,\n} from \"../constants.js\";\nimport { getConfig } from \"../file-system/get-config.js\";\nimport {\n commonArgs,\n commonServerArgs,\n vetraSwitchboardArgs,\n} from \"./common.js\";\n\nexport const vetraArgs = {\n switchboardPort: option({\n type: number,\n long: \"switchboard-port\",\n description: \"port to use for the Vetra Switchboard\",\n defaultValue: () => {\n const baseConfig = getConfig();\n return baseConfig.reactor?.port ?? DEFAULT_SWITCHBOARD_PORT;\n },\n }),\n connectPort: option({\n type: number,\n long: \"connect-port\",\n description: \"port to use for the Vetra Connect\",\n defaultValue: () => DEFAULT_VETRA_CONNECT_PORT,\n defaultValueIsSerializable: true,\n }),\n remoteDrive: option({\n type: optional(string),\n long: \"remote-drive\",\n description:\n \"URL of remote drive to connect to (skips switchboard initialization)\",\n defaultValue: () => {\n const baseConfig = getConfig();\n return baseConfig.vetra?.driveUrl;\n },\n }),\n watch: flag({\n type: boolean,\n long: \"watch\",\n short: \"w\",\n description:\n \"Enable dynamic loading for document-models and editors in connect-studio and switchboard\",\n defaultValue: () => false,\n defaultValueIsSerializable: true,\n }),\n verbose: flag({\n type: boolean,\n long: \"logs\",\n description: \"Show additional logs\",\n defaultValue: () => false,\n defaultValueIsSerializable: true,\n }),\n disableConnect: flag({\n type: boolean,\n long: \"disable-connect\",\n description:\n \"Skip Connect initialization (only start switchboard and reactor)\",\n defaultValue: () => false,\n defaultValueIsSerializable: true,\n }),\n interactive: flag({\n type: boolean,\n long: \"interactive\",\n description:\n \"Enable interactive mode for code generation (requires user confirmation before generating code)\",\n defaultValue: () => false,\n defaultValueIsSerializable: true,\n }),\n drivesPublicBase: option({\n type: optional(string),\n long: \"drives-public-base\",\n description:\n \"public base URL for the drive URLs advertised to Connect; each drive is exposed as <base>/d/<slug> instead of http://localhost:<switchboard-port>/d/<slug>. Use when the switchboard is reachable through a reverse proxy.\",\n }),\n dbPath: option({\n type: optional(string),\n long: \"db-path\",\n description:\n \"Database path or connection string. Use a `postgres://` URL for Postgres; otherwise treated as a PGlite filesystem path. Leave unset for in-memory PGlite.\",\n }),\n ...commonArgs,\n ...commonServerArgs,\n ...vetraSwitchboardArgs,\n};\n"],"mappings":";;;AAYA,MAAa,YAAY;CACvB,iBAAiB,OAAO;EACtB,MAAM;EACN,MAAM;EACN,aAAa;EACb,oBAAoB;AAElB,UADmB,WAAW,CACZ,SAAS,QAAA;;EAE9B,CAAC;CACF,aAAa,OAAO;EAClB,MAAM;EACN,MAAM;EACN,aAAa;EACb,oBAAoB;EACpB,4BAA4B;EAC7B,CAAC;CACF,aAAa,OAAO;EAClB,MAAM,SAAS,OAAO;EACtB,MAAM;EACN,aACE;EACF,oBAAoB;AAElB,UADmB,WAAW,CACZ,OAAO;;EAE5B,CAAC;CACF,OAAO,KAAK;EACV,MAAM;EACN,MAAM;EACN,OAAO;EACP,aACE;EACF,oBAAoB;EACpB,4BAA4B;EAC7B,CAAC;CACF,SAAS,KAAK;EACZ,MAAM;EACN,MAAM;EACN,aAAa;EACb,oBAAoB;EACpB,4BAA4B;EAC7B,CAAC;CACF,gBAAgB,KAAK;EACnB,MAAM;EACN,MAAM;EACN,aACE;EACF,oBAAoB;EACpB,4BAA4B;EAC7B,CAAC;CACF,aAAa,KAAK;EAChB,MAAM;EACN,MAAM;EACN,aACE;EACF,oBAAoB;EACpB,4BAA4B;EAC7B,CAAC;CACF,kBAAkB,OAAO;EACvB,MAAM,SAAS,OAAO;EACtB,MAAM;EACN,aACE;EACH,CAAC;CACF,QAAQ,OAAO;EACb,MAAM,SAAS,OAAO;EACtB,MAAM;EACN,aACE;EACH,CAAC;CACF,GAAG;CACH,GAAG;CACH,GAAG;CACJ"}
|
|
@@ -1,89 +1,5 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
|
|
3
|
-
//#region dist/types-CC6ib3_2.d.ts
|
|
4
|
-
//#endregion
|
|
5
|
-
//#region ../../node_modules/.pnpm/kysely@0.28.16/node_modules/kysely/dist/esm/kysely.d.ts
|
|
6
|
-
declare global {
|
|
7
|
-
interface AsyncDisposable {}
|
|
8
|
-
interface SymbolConstructor {
|
|
9
|
-
readonly asyncDispose: unique symbol;
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* The main Kysely class.
|
|
14
|
-
*
|
|
15
|
-
* You should create one instance of `Kysely` per database using the {@link Kysely}
|
|
16
|
-
* constructor. Each `Kysely` instance maintains its own connection pool.
|
|
17
|
-
*
|
|
18
|
-
* ### Examples
|
|
19
|
-
*
|
|
20
|
-
* This example assumes your database has a "person" table:
|
|
21
|
-
*
|
|
22
|
-
* ```ts
|
|
23
|
-
* import * as Sqlite from 'better-sqlite3'
|
|
24
|
-
* import { type Generated, Kysely, SqliteDialect } from 'kysely'
|
|
25
|
-
*
|
|
26
|
-
* interface Database {
|
|
27
|
-
* person: {
|
|
28
|
-
* id: Generated<number>
|
|
29
|
-
* first_name: string
|
|
30
|
-
* last_name: string | null
|
|
31
|
-
* }
|
|
32
|
-
* }
|
|
33
|
-
*
|
|
34
|
-
* const db = new Kysely<Database>({
|
|
35
|
-
* dialect: new SqliteDialect({
|
|
36
|
-
* database: new Sqlite(':memory:'),
|
|
37
|
-
* })
|
|
38
|
-
* })
|
|
39
|
-
* ```
|
|
40
|
-
*
|
|
41
|
-
* @typeParam DB - The database interface type. Keys of this type must be table names
|
|
42
|
-
* in the database and values must be interfaces that describe the rows in those
|
|
43
|
-
* tables. See the examples above.
|
|
44
|
-
*/
|
|
45
|
-
//#endregion
|
|
46
|
-
//#region ../../node_modules/.pnpm/kysely@0.28.16/node_modules/kysely/dist/esm/kysely.d.ts
|
|
47
|
-
declare global {
|
|
48
|
-
interface AsyncDisposable {}
|
|
49
|
-
interface SymbolConstructor {
|
|
50
|
-
readonly asyncDispose: unique symbol;
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* The main Kysely class.
|
|
55
|
-
*
|
|
56
|
-
* You should create one instance of `Kysely` per database using the {@link Kysely}
|
|
57
|
-
* constructor. Each `Kysely` instance maintains its own connection pool.
|
|
58
|
-
*
|
|
59
|
-
* ### Examples
|
|
60
|
-
*
|
|
61
|
-
* This example assumes your database has a "person" table:
|
|
62
|
-
*
|
|
63
|
-
* ```ts
|
|
64
|
-
* import * as Sqlite from 'better-sqlite3'
|
|
65
|
-
* import { type Generated, Kysely, SqliteDialect } from 'kysely'
|
|
66
|
-
*
|
|
67
|
-
* interface Database {
|
|
68
|
-
* person: {
|
|
69
|
-
* id: Generated<number>
|
|
70
|
-
* first_name: string
|
|
71
|
-
* last_name: string | null
|
|
72
|
-
* }
|
|
73
|
-
* }
|
|
74
|
-
*
|
|
75
|
-
* const db = new Kysely<Database>({
|
|
76
|
-
* dialect: new SqliteDialect({
|
|
77
|
-
* database: new Sqlite(':memory:'),
|
|
78
|
-
* })
|
|
79
|
-
* })
|
|
80
|
-
* ```
|
|
81
|
-
*
|
|
82
|
-
* @typeParam DB - The database interface type. Keys of this type must be table names
|
|
83
|
-
* in the database and values must be interfaces that describe the rows in those
|
|
84
|
-
* tables. See the examples above.
|
|
85
|
-
*/
|
|
86
|
-
//#endregion
|
|
87
3
|
//#region document-model/schemas.d.ts
|
|
88
4
|
declare const ManifestSchema: z.ZodObject<{
|
|
89
5
|
name: z.ZodString;
|
|
@@ -217,7 +133,6 @@ type PowerhouseConfig = {
|
|
|
217
133
|
auth?: {
|
|
218
134
|
enabled?: boolean;
|
|
219
135
|
admins: string[];
|
|
220
|
-
defaultProtection?: boolean;
|
|
221
136
|
};
|
|
222
137
|
switchboard?: {
|
|
223
138
|
database?: {
|
|
@@ -380,7 +295,7 @@ declare const externalDevDependencies: {
|
|
|
380
295
|
readonly tailwindcss: "^4.1.16";
|
|
381
296
|
readonly typescript: "^5.9.3";
|
|
382
297
|
readonly "typescript-eslint": "^8.46.2";
|
|
383
|
-
readonly vite: "^8.0.
|
|
298
|
+
readonly vite: "^8.0.10";
|
|
384
299
|
readonly "vite-tsconfig-paths": "6.1.1";
|
|
385
300
|
readonly vitest: "4.1.1";
|
|
386
301
|
};
|