@powerhousedao/codegen 6.1.0-dev.1 → 6.1.0-dev.11

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.
@@ -1,4 +1,4 @@
1
- import { ANALYTICS_ENGINE_CORE_PACKAGE, BOILERPLATE_ALLOWED_BUILDS, GRAPHQL_PACKAGE, GRAPHQL_TAG_PACKAGE, PEER_EXTERNAL_DEPENDENCIES, REACTOR_API_PACKAGE, VERSIONED_DEV_DEPENDENCIES, VERSIONED_PEER_DEPENDENCIES, defaultManifest, directoryExists, externalDevDependencies, fileExists, fileExistsSync, isDirectory, makeVersionedDependenciesMap, packageJsonExports, spawnAsync, writeFileEnsuringDir } from "@powerhousedao/shared/clis";
1
+ import { ANALYTICS_ENGINE_CORE_PACKAGE, BOILERPLATE_ALLOWED_BUILDS, BOILERPLATE_PNPM_OVERRIDES, GRAPHQL_PACKAGE, GRAPHQL_TAG_PACKAGE, PEER_EXTERNAL_DEPENDENCIES, REACTOR_API_PACKAGE, VERSIONED_DEV_DEPENDENCIES, VERSIONED_PEER_DEPENDENCIES, defaultManifest, directoryExists, externalDevDependencies, fileExists, fileExistsSync, isDirectory, makeVersionedDependenciesMap, packageJsonExports, spawnAsync, writeFileEnsuringDir } from "@powerhousedao/shared/clis";
2
2
  import { readdirSync } from "fs";
3
3
  import path, { join } from "path";
4
4
  import { DocumentModelGlobalStateSchema, ManifestSchema } from "@powerhousedao/shared/document-model";
@@ -11,11 +11,11 @@ import arg from "arg";
11
11
  import { format } from "prettier";
12
12
  import { z } from "zod";
13
13
  import { loadJsonFile, loadJsonFileSync } from "load-json-file";
14
+ import { writeJsonFile } from "write-json-file";
14
15
  import { stripVTControlCharacters } from "node:util";
15
16
  import path$1, { join as join$1, relative } from "node:path";
16
17
  import { generate } from "@graphql-codegen/cli";
17
18
  import { generatorTypeDefs, validationSchema } from "@powerhousedao/document-engineering/graphql";
18
- import { writeJsonFile } from "write-json-file";
19
19
  function isEOL(c) {
20
20
  return c === 10 || c === 13;
21
21
  }
@@ -4513,7 +4513,7 @@ const packageJsonTemplate = (projectName, peerDependencies, devDependencies) =>
4513
4513
  }
4514
4514
  }
4515
4515
  `.raw;
4516
- const pnpmWorkspaceTemplate = `allowBuilds:\n${BOILERPLATE_ALLOWED_BUILDS.map((pkg) => ` ${/[@/]/.test(pkg) ? `"${pkg}"` : pkg}: true`).join("\n")}\n`;
4516
+ const pnpmWorkspaceTemplate = `allowBuilds:\n${BOILERPLATE_ALLOWED_BUILDS.map((pkg) => ` ${/[@/]/.test(pkg) ? `"${pkg}"` : pkg}: true`).join("\n")}\noverrides:\n${Object.entries(BOILERPLATE_PNPM_OVERRIDES).map(([pkg, version]) => ` ${/[@/]/.test(pkg) ? `"${pkg}"` : pkg}: "${version}"`).join("\n")}\n`;
4517
4517
  //#endregion
4518
4518
  //#region src/templates/boilerplate/package.json.legacy.ts
4519
4519
  const packageJsonScriptsTemplate = {
@@ -4580,8 +4580,9 @@ function makeVetraConfigField(vetraDriveUrl) {
4580
4580
  }
4581
4581
  `.raw;
4582
4582
  }
4583
- async function buildPowerhouseConfigTemplate(args) {
4584
- return json`
4583
+ function buildPowerhouseConfigTemplate(args) {
4584
+ const vetraConfigField = makeVetraConfigField(args.remoteDrive);
4585
+ return Promise.resolve(json`
4585
4586
  {
4586
4587
  "documentModelsDir": "./document-models",
4587
4588
  "editorsDir": "./editors",
@@ -4595,9 +4596,9 @@ async function buildPowerhouseConfigTemplate(args) {
4595
4596
  },
4596
4597
  "packages": [
4597
4598
  ],
4598
- "packageRegistryUrl": "${DEFAULT_REGISTRY_URL}"${makeVetraConfigField(args.remoteDrive)}
4599
+ "packageRegistryUrl": "${DEFAULT_REGISTRY_URL}"${vetraConfigField}
4599
4600
  }
4600
- `.raw;
4601
+ `.raw);
4601
4602
  }
4602
4603
  //#endregion
4603
4604
  //#region src/templates/boilerplate/powerhouse.manifest.json.ts
@@ -7255,13 +7256,41 @@ async function writeProjectRootFiles(args, projectDir = process.cwd()) {
7255
7256
  tag,
7256
7257
  version
7257
7258
  });
7258
- await createOrUpdateManifest({ name }, projectDir);
7259
7259
  await writeFileEnsuringDir("powerhouse.config.json", await buildPowerhouseConfigTemplate({
7260
7260
  tag,
7261
7261
  version,
7262
7262
  remoteDrive
7263
7263
  }));
7264
7264
  await writeFileEnsuringDir("package.json", packageJson);
7265
+ await applyProjectCustomizations({
7266
+ name,
7267
+ projectDir
7268
+ });
7269
+ }
7270
+ /**
7271
+ * Per-project customizations applied to a project directory — the parts
7272
+ * `ph init` derives from the project name. Shared by the fresh-scaffold path
7273
+ * ({@link writeProjectRootFiles}) and the `--template` clone path, so future
7274
+ * per-project customizations only need to be added here once.
7275
+ *
7276
+ * Assumes `package.json` already exists in `projectDir`.
7277
+ */
7278
+ async function applyProjectCustomizations(args) {
7279
+ const { name, projectDir, remoteDrive } = args;
7280
+ const pkgPath = join(projectDir, "package.json");
7281
+ const pkg = await loadJsonFile(pkgPath);
7282
+ pkg.name = name;
7283
+ await writeJsonFile(pkgPath, pkg, { indent: 2 });
7284
+ await createOrUpdateManifest({ name }, projectDir);
7285
+ if (remoteDrive) {
7286
+ const configPath = join(projectDir, "powerhouse.config.json");
7287
+ const config = await loadJsonFile(configPath);
7288
+ config.vetra = {
7289
+ driveId: remoteDrive.split("/").pop() ?? "",
7290
+ driveUrl: remoteDrive
7291
+ };
7292
+ await writeJsonFile(configPath, config, { indent: 2 });
7293
+ }
7265
7294
  }
7266
7295
  async function writeCIFiles(projectDir = process.cwd()) {
7267
7296
  await writeFileEnsuringDir(join(projectDir, ".github/workflows/sync-and-publish.yml"), syncAndPublishWorkflowTemplate);
@@ -8537,6 +8566,6 @@ async function makeSubgraphsIndexFile(args) {
8537
8566
  await formatSourceFileWithPrettier(sourceFile);
8538
8567
  }
8539
8568
  //#endregion
8540
- export { buildStringLiteral as $, cursorMcpTemplate as $n, getModuleExportType as $t, writeModuleFiles as A, pnpmWorkspaceTemplate as An, analyticsFactoryTemplate as At, buildTsMorphProject as B, gitIgnoreTemplate as Bn, documentModelSrcIndexFileTemplate as Bt, writeAllGeneratedProjectFiles as C, subgraphsIndexTemplate as Cn, relationalDbIndexTemplate as Ct, writeGeneratedProcessorsFiles as D, buildPowerhouseConfigTemplate as Dn, factoryBuildersTemplate as Dt, writeGeneratedEditorsFiles as E, ManifestTemplate as En, processorsFactoryTemplate as Et, makeEditorsIndexFile as F, mainTsxTemplate as Fn, makeOperationImportNames as Ft, getObjectLiteral as G, editorsTemplate as Gn, documentModelGenTypesTemplate as Gt, getAllImportModuleSpecifiers as H, geminiSettingsTemplate as Hn, documentModelIndexTemplate as Ht, validateDocumentModelState as I, licenseTemplate as In, makeOperationsImports as It, getStringArrayPropertyElements as J, documentModelsTemplate as Jn, documentModelPhFactoriesFileTemplate as Jt, getObjectProperty as K, upgradeManifestsTemplate as Kn, documentModelSchemaIndexTemplate as Kt, updateVersionedImports as L, indexTsTemplate as Ln, makeTestCaseForOperation as Lt, tsMorphGenerateApp as M, packageJsonTemplate as Mn, upgradeTransitionTemplate as Mt, makeEditorModuleFile as N, npmrcTemplate as Nn, upgradeManifestTemplate as Nt, writeGeneratedProjectRootFiles as O, packageJsonExportsTemplate as On, analyticsProcessorTemplate as Ot, makeEditorsFile as P, mcpTemplate as Pn, documentModelOperationsModuleTestFileTemplate as Pt, buildObjectLiteral as Q, connectEntrypointTemplate as Qn, documentModelOperationModuleActionsFileTemplate as Qt, getInitialStates as R, legacyIndexHtmlTemplate as Rn, documentModelTestFileTemplate as Rt, writeAiConfigFiles as S, tsconfigPathsTemplate as Sn, relationalDbMigrationsTemplate as St, writeGeneratedDocumentModelsFiles as T, readmeTemplate as Tn, processorsIndexTemplate as Tt, getAllImportNames as U, eslintConfigTemplate as Un, documentModelHooksFileTemplate as Ut, getDefaultProjectOptions as V, syncAndPublishWorkflowTemplate as Vn, documentModelModuleFileTemplate as Vt, getBooleanPropertyValue as W, editorsIndexTemplate as Wn, documentModelGenUtilsTemplate as Wt, getVariableDeclarationByTypeName as X, nginxConfTemplate as Xn, documentModelOperationsModuleErrorFileTemplate as Xt, getStringPropertyValue as Y, switchboardEntrypointTemplate as Yn, documentModelOperationsModuleOperationsFileTemplate as Yt, loadDocumentModelInDir as Z, dockerfileTemplate as Zn, documentModelOperationsModuleCreatorsFileTemplate as Zt, getCommandHelpInfo as _, documentEditorModuleFileTemplate as _n, customSubgraphSchemaTemplate as _t, getOrCreateManifestFile as a, getLatestDocumentModelSpecVersionNumber as an, folderTreeFileTemplate as ar, getProcessorMetadata as at, writeCliDocsMarkdownFile as b, vitestConfigTemplate as bn, relationalDbSchemaTemplate as bt, operationHasAttachment as c, getActionType as cn, emptyStateFileTemplate as cr, formatSafe as ct, tsMorphGenerateDocumentModel as d, documentModelDocumentTypeTemplate as dn, createDocumentFileTemplate as dr, getDocumentTypeMetadata as dt, getDocumentModelDirName as en, claudeSettingsLocalTemplate as er, ensureDirectoriesExist as et, generateDocumentModelZodSchemas as f, documentModelDocumentSchemaFileTemplate as fn, documentModelDocumentTypeMetadata as ft, tsMorphGenerateDocumentEditor as g, documentModelRootActionsFileTemplate as gn, customSubgraphResolversTemplate as gt, scalarsValidation as h, documentModelGenActionsFileTemplate as hn, parseConfig as ht, createOrUpdateManifest as i, getLatestDocumentModelSpec as in, driveExplorerNavigationBreadcrumbsFileTemplate as ir, getSubgraphMetadata as it, writeProjectRootFiles as j, exportsTemplate as jn, documentModelUtilsTemplate as jt, writeGeneratedSubgraphsFiles as k, packageJsonScriptsTemplate as kn, analyticsIndexTemplate as kt, operationHasEmptyInput as l, getActionTypeName as ln, driveExplorerFileTemplate as lr, formatSourceFileWithPrettier as lt, scalars as m, documentModelGenControllerFileTemplate as mn, parseArgs as mt, tsMorphGenerateSubgraph as n, getDocumentModelVariableNames as nn, appEditorFileTemplate as nr, getOrCreateSourceFile as nt, pruneManifestSection as o, getActionInputName as on, appFoldersFileTemplate as or, getAppMetadata as ot, generateTypesAndZodSchemasFromGraphql as p, documentModelGenCreatorsFileTemplate as pn, configSpec as pt, getProperyAssignmentByName as q, documentModelsIndexTemplate as qn, documentModelGenReducerFileTemplate as qt, tsMorphGenerateProcessor as r, getEditorVariableNames as rn, appConfigFileTemplate as rr, getPreviousVersionSourceFile as rt, makeModulesIndexFile as s, getActionInputTypeNames as sn, appFilesFileTemplate as sr, getEditorMetadata as st, makeSubgraphsIndexFile as t, getDocumentModelSpecByVersionNumber as tn, agentsTemplate as tr, getOrCreateDirectory as tt, operationHasInput as u, documentModelGenIndexFileTemplate as un, appDriveContentsFileTemplate as ur, runPrettier as ut, getCommandsHelpInfo as v, documentEditorEditorFileTemplate as vn, subgraphLibFileTemplate as vt, writeCIFiles as w, styleTemplate as wn, relationalDbFactoryTemplate as wt, buildBoilerplatePackageJson as x, tsConfigTemplate as xn, relationalDbProcessorTemplate as xt, makeCliDocsFromHelp as y, docsFromCliHelpTemplate as yn, subgraphIndexFileTemplate as yt, DEFAULT_PROJECT_OPTIONS as z, indexHtmlTemplate as zn, documentModelSrcUtilsTemplate as zt };
8569
+ export { buildObjectLiteral as $, connectEntrypointTemplate as $n, documentModelOperationModuleActionsFileTemplate as $t, writeGeneratedSubgraphsFiles as A, packageJsonScriptsTemplate as An, analyticsIndexTemplate as At, DEFAULT_PROJECT_OPTIONS as B, indexHtmlTemplate as Bn, documentModelSrcUtilsTemplate as Bt, writeAiConfigFiles as C, tsconfigPathsTemplate as Cn, relationalDbMigrationsTemplate as Ct, writeGeneratedEditorsFiles as D, ManifestTemplate as Dn, processorsFactoryTemplate as Dt, writeGeneratedDocumentModelsFiles as E, readmeTemplate as En, processorsIndexTemplate as Et, makeEditorsFile as F, mcpTemplate as Fn, documentModelOperationsModuleTestFileTemplate as Ft, getBooleanPropertyValue as G, editorsIndexTemplate as Gn, documentModelGenUtilsTemplate as Gt, getDefaultProjectOptions as H, syncAndPublishWorkflowTemplate as Hn, documentModelModuleFileTemplate as Ht, makeEditorsIndexFile as I, mainTsxTemplate as In, makeOperationImportNames as It, getProperyAssignmentByName as J, documentModelsIndexTemplate as Jn, documentModelGenReducerFileTemplate as Jt, getObjectLiteral as K, editorsTemplate as Kn, documentModelGenTypesTemplate as Kt, validateDocumentModelState as L, licenseTemplate as Ln, makeOperationsImports as Lt, writeProjectRootFiles as M, exportsTemplate as Mn, documentModelUtilsTemplate as Mt, tsMorphGenerateApp as N, packageJsonTemplate as Nn, upgradeTransitionTemplate as Nt, writeGeneratedProcessorsFiles as O, buildPowerhouseConfigTemplate as On, factoryBuildersTemplate as Ot, makeEditorModuleFile as P, npmrcTemplate as Pn, upgradeManifestTemplate as Pt, loadDocumentModelInDir as Q, dockerfileTemplate as Qn, documentModelOperationsModuleCreatorsFileTemplate as Qt, updateVersionedImports as R, indexTsTemplate as Rn, makeTestCaseForOperation as Rt, applyProjectCustomizations as S, tsConfigTemplate as Sn, relationalDbProcessorTemplate as St, writeCIFiles as T, styleTemplate as Tn, relationalDbFactoryTemplate as Tt, getAllImportModuleSpecifiers as U, geminiSettingsTemplate as Un, documentModelIndexTemplate as Ut, buildTsMorphProject as V, gitIgnoreTemplate as Vn, documentModelSrcIndexFileTemplate as Vt, getAllImportNames as W, eslintConfigTemplate as Wn, documentModelHooksFileTemplate as Wt, getStringPropertyValue as X, switchboardEntrypointTemplate as Xn, documentModelOperationsModuleOperationsFileTemplate as Xt, getStringArrayPropertyElements as Y, documentModelsTemplate as Yn, documentModelPhFactoriesFileTemplate as Yt, getVariableDeclarationByTypeName as Z, nginxConfTemplate as Zn, documentModelOperationsModuleErrorFileTemplate as Zt, getCommandHelpInfo as _, documentModelRootActionsFileTemplate as _n, customSubgraphResolversTemplate as _t, getOrCreateManifestFile as a, getLatestDocumentModelSpec as an, driveExplorerNavigationBreadcrumbsFileTemplate as ar, getSubgraphMetadata as at, writeCliDocsMarkdownFile as b, docsFromCliHelpTemplate as bn, subgraphIndexFileTemplate as bt, operationHasAttachment as c, getActionInputTypeNames as cn, appFilesFileTemplate as cr, getEditorMetadata as ct, tsMorphGenerateDocumentModel as d, documentModelGenIndexFileTemplate as dn, appDriveContentsFileTemplate as dr, runPrettier as dt, getModuleExportType as en, cursorMcpTemplate as er, buildStringLiteral as et, generateDocumentModelZodSchemas as f, documentModelDocumentTypeTemplate as fn, createDocumentFileTemplate as fr, getDocumentTypeMetadata as ft, tsMorphGenerateDocumentEditor as g, documentModelGenActionsFileTemplate as gn, parseConfig as gt, scalarsValidation as h, documentModelGenControllerFileTemplate as hn, parseArgs as ht, createOrUpdateManifest as i, getEditorVariableNames as in, appConfigFileTemplate as ir, getPreviousVersionSourceFile as it, writeModuleFiles as j, pnpmWorkspaceTemplate as jn, analyticsFactoryTemplate as jt, writeGeneratedProjectRootFiles as k, packageJsonExportsTemplate as kn, analyticsProcessorTemplate as kt, operationHasEmptyInput as l, getActionType as ln, emptyStateFileTemplate as lr, formatSafe as lt, scalars as m, documentModelGenCreatorsFileTemplate as mn, configSpec as mt, tsMorphGenerateSubgraph as n, getDocumentModelSpecByVersionNumber as nn, agentsTemplate as nr, getOrCreateDirectory as nt, pruneManifestSection as o, getLatestDocumentModelSpecVersionNumber as on, folderTreeFileTemplate as or, getProcessorMetadata as ot, generateTypesAndZodSchemasFromGraphql as p, documentModelDocumentSchemaFileTemplate as pn, documentModelDocumentTypeMetadata as pt, getObjectProperty as q, upgradeManifestsTemplate as qn, documentModelSchemaIndexTemplate as qt, tsMorphGenerateProcessor as r, getDocumentModelVariableNames as rn, appEditorFileTemplate as rr, getOrCreateSourceFile as rt, makeModulesIndexFile as s, getActionInputName as sn, appFoldersFileTemplate as sr, getAppMetadata as st, makeSubgraphsIndexFile as t, getDocumentModelDirName as tn, claudeSettingsLocalTemplate as tr, ensureDirectoriesExist as tt, operationHasInput as u, getActionTypeName as un, driveExplorerFileTemplate as ur, formatSourceFileWithPrettier as ut, getCommandsHelpInfo as v, documentEditorModuleFileTemplate as vn, customSubgraphSchemaTemplate as vt, writeAllGeneratedProjectFiles as w, subgraphsIndexTemplate as wn, relationalDbIndexTemplate as wt, buildBoilerplatePackageJson as x, vitestConfigTemplate as xn, relationalDbSchemaTemplate as xt, makeCliDocsFromHelp as y, documentEditorEditorFileTemplate as yn, subgraphLibFileTemplate as yt, getInitialStates as z, legacyIndexHtmlTemplate as zn, documentModelTestFileTemplate as zt };
8541
8570
 
8542
- //# sourceMappingURL=file-builders-BGuRLZmo.mjs.map
8571
+ //# sourceMappingURL=file-builders-Dr2OqpE0.mjs.map