@powerhousedao/codegen 6.2.2-dev.20 → 6.2.2-dev.22

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.
@@ -6713,14 +6713,27 @@ function getSubgraphMetadata(project, dirName) {
6713
6713
  //#region src/utils/source-files.ts
6714
6714
  /** Gets a SourceFile by name in a ts-morph Project, or creates a new one
6715
6715
  * if none with that path exists.
6716
+ *
6717
+ * "Exists" has to mean *on disk*, not merely "already loaded in this Project".
6718
+ * Projects here are built with `skipAddingFilesFromTsConfig` (see
6719
+ * `buildTsMorphProject`), so they start empty and `getSourceFile` alone reports
6720
+ * every existing file as missing. Combined with `overwrite: true` that silently
6721
+ * discarded whatever the user had written — `alreadyExists` was always `false`,
6722
+ * so builders that scaffold-once-then-amend (tests, reducers, subgraphs,
6723
+ * editors, processors) re-scaffolded from scratch on every run and hand-written
6724
+ * code was lost on `project.save()`.
6725
+ *
6726
+ * Reading the file in when it is on disk but not yet loaded mirrors what
6727
+ * `DirectoryManager.createSourceFile` already does. Files that codegen fully
6728
+ * owns are unaffected: they call `replaceWithText` immediately afterwards.
6716
6729
  */
6717
6730
  function getOrCreateSourceFile(project, filePath) {
6718
6731
  const dirName = path.dirname(filePath);
6719
6732
  if (!project.getDirectory(dirName)) project.createDirectory(dirName);
6720
- const sourceFile = project.getSourceFile(filePath);
6733
+ const sourceFile = project.getSourceFile(filePath) ?? project.addSourceFileAtPathIfExists(filePath);
6721
6734
  if (!sourceFile) return {
6722
6735
  alreadyExists: false,
6723
- sourceFile: project.createSourceFile(filePath, "", { overwrite: true })
6736
+ sourceFile: project.createSourceFile(filePath, "", { overwrite: false })
6724
6737
  };
6725
6738
  return {
6726
6739
  alreadyExists: true,
@@ -7453,7 +7466,9 @@ const DATE_LIKE_SCALARS = new Set(["Date", "DateTime"]);
7453
7466
  const SCALAR_MOCK_OVERRIDES = {
7454
7467
  Date: `"2024-01-01T00:00:00.000Z"`,
7455
7468
  DateTime: `"2024-01-01T00:00:00.000Z"`,
7456
- URL: `"https://example.com"`
7469
+ URL: `"https://example.com"`,
7470
+ AttachmentRef: `"attachment://v1:${"a".repeat(64)}"`,
7471
+ Address: `"eip155:0x${"0".repeat(40)}"`
7457
7472
  };
7458
7473
  function unwrapNamedTypeName(type) {
7459
7474
  if (type.kind === Kind.NAMED_TYPE) return type.name.value;
@@ -7803,8 +7818,8 @@ async function makeReducerOperationHandlerForModule({ project, module, version,
7803
7818
  const operationsInterfaceTypeName = `${pascalCaseDocumentType}${pascalCaseModuleName}Operations`;
7804
7819
  const operationsInterfaceVariableName = `${camelCaseDocumentType}${pascalCaseModuleName}Operations`;
7805
7820
  const existingOperationsInterfaceTypeImport = sourceFile.getImportDeclaration((importDeclaration) => !!importDeclaration.getNamedImports().find((importSpecifier) => importSpecifier.getName() === operationsInterfaceTypeName));
7806
- if (existingOperationsInterfaceTypeImport) existingOperationsInterfaceTypeImport.remove();
7807
- sourceFile.addImportDeclaration({
7821
+ if (existingOperationsInterfaceTypeImport) existingOperationsInterfaceTypeImport.setModuleSpecifier(versionImportPath);
7822
+ else sourceFile.addImportDeclaration({
7808
7823
  namedImports: [operationsInterfaceTypeName],
7809
7824
  moduleSpecifier: versionImportPath,
7810
7825
  isTypeOnly: true
@@ -8660,4 +8675,4 @@ async function makeSubgraphsIndexFile(args) {
8660
8675
  //#endregion
8661
8676
  export { getVariableDeclarationByTypeName as $, documentModelsTemplate as $n, documentModelOperationsModuleErrorFileTemplate as $t, writeGeneratedProcessorsFiles as A, buildPowerhouseConfigTemplate as An, factoryBuildersTemplate as At, updateVersionedImports as B, reactorTsTemplate as Bn, makeTestCaseForOperation as Bt, buildBoilerplatePackageJson as C, vitestConfigTemplate as Cn, relationalDbSchemaTemplate as Ct, writeCIFiles as D, styleTemplate as Dn, relationalDbFactoryTemplate as Dt, writeAllGeneratedProjectFiles as E, subgraphsIndexTemplate as En, relationalDbIndexTemplate as Et, tsMorphGenerateApp as F, packageJsonTemplate as Fn, upgradeTransitionTemplate as Ft, getAllImportModuleSpecifiers as G, syncAndPublishWorkflowTemplate as Gn, documentModelIndexTemplate as Gt, DEFAULT_PROJECT_OPTIONS as H, legacyIndexHtmlTemplate as Hn, documentModelSrcUtilsTemplate as Ht, makeEditorModuleFile as I, npmrcTemplate as In, upgradeManifestTemplate as It, getObjectLiteral as J, oxlintConfigTemplate as Jn, documentModelGenTypesTemplate as Jt, getAllImportNames as K, geminiSettingsTemplate as Kn, documentModelHooksFileTemplate as Kt, makeEditorsFile as L, mcpTemplate as Ln, documentModelOperationsModuleTestFileTemplate as Lt, writeGeneratedSubgraphsFiles as M, packageJsonScriptsTemplate as Mn, analyticsIndexTemplate as Mt, writeModuleFiles as N, pnpmWorkspaceTemplate as Nn, analyticsFactoryTemplate as Nt, writeGeneratedDocumentModelsFiles as O, readmeTemplate as On, processorsIndexTemplate as Ot, writeProjectRootFiles as P, exportsTemplate as Pn, documentModelUtilsTemplate as Pt, getStringPropertyValue as Q, documentModelsIndexTemplate as Qn, documentModelOperationsModuleOperationsFileTemplate as Qt, makeEditorsIndexFile as R, mainTsxTemplate as Rn, makeOperationImportNames as Rt, writeCliDocsMarkdownFile as S, docsFromCliHelpTemplate as Sn, subgraphIndexFileTemplate as St, writeAiConfigFiles as T, tsconfigPathsTemplate as Tn, relationalDbMigrationsTemplate as Tt, buildTsMorphProject as U, indexHtmlTemplate as Un, documentModelSrcIndexFileTemplate as Ut, getInitialStates as V, indexTsTemplate as Vn, documentModelTestFileTemplate as Vt, getDefaultProjectOptions as W, gitIgnoreTemplate as Wn, documentModelModuleFileTemplate as Wt, getProperyAssignmentByName as X, editorsTemplate as Xn, documentModelGenReducerFileTemplate as Xt, getObjectProperty as Y, editorsIndexTemplate as Yn, documentModelSchemaIndexTemplate as Yt, getStringArrayPropertyElements as Z, upgradeManifestsTemplate as Zn, documentModelPhFactoriesFileTemplate as Zt, scalarsValidation as _, documentModelGenControllerFileTemplate as _n, parseArgs as _t, getOrCreateManifestFile as a, getDocumentModelVariableNames as an, claudeSettingsLocalTemplate as ar, getOrCreateSourceFile as at, getCommandsHelpInfo as b, documentEditorModuleFileTemplate as bn, customSubgraphSchemaTemplate as bt, operationHasEmptyInput as c, getLatestDocumentModelSpecVersionNumber as cn, appConfigFileTemplate as cr, getProcessorMetadata as ct, generateDocumentModelZodSchemas as d, getActionType as dn, appFoldersFileTemplate as dr, formatSafe as dt, documentModelOperationsModuleCreatorsFileTemplate as en, switchboardEntrypointTemplate as er, loadDocumentModelInDir as et, generateTypesAndZodSchemasFromGraphql as f, getActionTypeName as fn, appFilesFileTemplate as fr, formatSourceFileWithPrettier as ft, scalars as g, documentModelGenCreatorsFileTemplate as gn, createDocumentFileTemplate as gr, configSpec as gt, getMockOverrideFieldNames as h, documentModelDocumentSchemaFileTemplate as hn, appDriveContentsFileTemplate as hr, documentModelDocumentTypeMetadata as ht, createOrUpdateManifest as i, getDocumentModelSpecByVersionNumber as in, cursorMcpTemplate as ir, getOrCreateDirectory as it, writeGeneratedProjectRootFiles as j, packageJsonExportsTemplate as jn, analyticsProcessorTemplate as jt, writeGeneratedEditorsFiles as k, ManifestTemplate as kn, processorsFactoryTemplate as kt, operationHasInput as l, getActionInputName as ln, driveExplorerNavigationBreadcrumbsFileTemplate as lr, getAppMetadata as lt, getInputFieldNames as m, documentModelDocumentTypeTemplate as mn, driveExplorerFileTemplate as mr, getDocumentTypeMetadata as mt, tsMorphGenerateSubgraph as n, getModuleExportType as nn, dockerfileTemplate as nr, buildStringLiteral as nt, pruneManifestSection as o, getEditorVariableNames as on, agentsTemplate as or, getPreviousVersionSourceFile as ot, getDateLikeFieldNames as p, documentModelGenIndexFileTemplate as pn, emptyStateFileTemplate as pr, runOxfmt as pt, getBooleanPropertyValue as q, oxfmtConfigTemplate as qn, documentModelGenUtilsTemplate as qt, tsMorphGenerateProcessor as r, getDocumentModelDirName as rn, connectEntrypointTemplate as rr, ensureDirectoriesExist as rt, makeModulesIndexFile as s, getLatestDocumentModelSpec as sn, appEditorFileTemplate as sr, getSubgraphMetadata as st, makeSubgraphsIndexFile as t, documentModelOperationModuleActionsFileTemplate as tn, nginxConfTemplate as tr, buildObjectLiteral as tt, tsMorphGenerateDocumentModel as u, getActionInputTypeNames as un, folderTreeFileTemplate as ur, getEditorMetadata as ut, tsMorphGenerateDocumentEditor as v, documentModelGenActionsFileTemplate as vn, parseConfig as vt, applyProjectCustomizations as w, tsConfigTemplate as wn, relationalDbProcessorTemplate as wt, makeCliDocsFromHelp as x, documentEditorEditorFileTemplate as xn, subgraphLibFileTemplate as xt, getCommandHelpInfo as y, documentModelRootActionsFileTemplate as yn, customSubgraphResolversTemplate as yt, validateDocumentModelState as z, licenseTemplate as zn, makeOperationsImports as zt };
8662
8677
 
8663
- //# sourceMappingURL=file-builders-Btk4MK1I.mjs.map
8678
+ //# sourceMappingURL=file-builders-CCeZT65O.mjs.map