@powerhousedao/codegen 5.1.0-dev.17 → 5.1.0-dev.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (114) hide show
  1. package/dist/src/codegen/__tests__/generate-doc-model.test.js +10 -24
  2. package/dist/src/codegen/__tests__/generate-doc-model.test.js.map +1 -1
  3. package/dist/src/codegen/__tests__/generate-manifest.test.js.map +1 -1
  4. package/dist/src/codegen/__tests__/generate-versioned-document-model.test.d.ts +2 -0
  5. package/dist/src/codegen/__tests__/generate-versioned-document-model.test.d.ts.map +1 -0
  6. package/dist/src/codegen/__tests__/generate-versioned-document-model.test.js +142 -0
  7. package/dist/src/codegen/__tests__/generate-versioned-document-model.test.js.map +1 -0
  8. package/dist/src/codegen/generate.d.ts +20 -4
  9. package/dist/src/codegen/generate.d.ts.map +1 -1
  10. package/dist/src/codegen/generate.js +57 -53
  11. package/dist/src/codegen/generate.js.map +1 -1
  12. package/dist/src/codegen/hygen.d.ts.map +1 -1
  13. package/dist/src/codegen/hygen.js +0 -1
  14. package/dist/src/codegen/hygen.js.map +1 -1
  15. package/dist/src/ts-morph-utils/file-builders/document-model/gen-dir.d.ts.map +1 -1
  16. package/dist/src/ts-morph-utils/file-builders/document-model/gen-dir.js +53 -44
  17. package/dist/src/ts-morph-utils/file-builders/document-model/gen-dir.js.map +1 -1
  18. package/dist/src/ts-morph-utils/file-builders/document-model/root-dir.js +20 -23
  19. package/dist/src/ts-morph-utils/file-builders/document-model/root-dir.js.map +1 -1
  20. package/dist/src/ts-morph-utils/file-builders/document-model/src-dir.d.ts.map +1 -1
  21. package/dist/src/ts-morph-utils/file-builders/document-model/src-dir.js +193 -21
  22. package/dist/src/ts-morph-utils/file-builders/document-model/src-dir.js.map +1 -1
  23. package/dist/src/ts-morph-utils/file-builders/document-model/types.d.ts +21 -1
  24. package/dist/src/ts-morph-utils/file-builders/document-model/types.d.ts.map +1 -1
  25. package/dist/src/ts-morph-utils/file-builders/document-model/upgrades-dir.d.ts +31 -0
  26. package/dist/src/ts-morph-utils/file-builders/document-model/upgrades-dir.d.ts.map +1 -0
  27. package/dist/src/ts-morph-utils/file-builders/document-model/upgrades-dir.js +136 -0
  28. package/dist/src/ts-morph-utils/file-builders/document-model/upgrades-dir.js.map +1 -0
  29. package/dist/src/ts-morph-utils/file-builders/document-model.d.ts +2 -2
  30. package/dist/src/ts-morph-utils/file-builders/document-model.d.ts.map +1 -1
  31. package/dist/src/ts-morph-utils/file-builders/document-model.js +209 -34
  32. package/dist/src/ts-morph-utils/file-builders/document-model.js.map +1 -1
  33. package/dist/src/ts-morph-utils/file-builders/index-files.d.ts +2 -1
  34. package/dist/src/ts-morph-utils/file-builders/index-files.d.ts.map +1 -1
  35. package/dist/src/ts-morph-utils/file-builders/index-files.js +6 -2
  36. package/dist/src/ts-morph-utils/file-builders/index-files.js.map +1 -1
  37. package/dist/src/ts-morph-utils/file-builders/module-files.d.ts.map +1 -1
  38. package/dist/src/ts-morph-utils/file-builders/module-files.js +20 -8
  39. package/dist/src/ts-morph-utils/file-builders/module-files.js.map +1 -1
  40. package/dist/src/ts-morph-utils/name-builders/get-variable-names.d.ts +5 -23
  41. package/dist/src/ts-morph-utils/name-builders/get-variable-names.d.ts.map +1 -1
  42. package/dist/src/ts-morph-utils/name-builders/get-variable-names.js +26 -34
  43. package/dist/src/ts-morph-utils/name-builders/get-variable-names.js.map +1 -1
  44. package/dist/src/ts-morph-utils/name-builders/types.d.ts +6 -2
  45. package/dist/src/ts-morph-utils/name-builders/types.d.ts.map +1 -1
  46. package/dist/src/ts-morph-utils/syntax-getters.d.ts +1 -0
  47. package/dist/src/ts-morph-utils/syntax-getters.d.ts.map +1 -1
  48. package/dist/src/ts-morph-utils/syntax-getters.js +6 -0
  49. package/dist/src/ts-morph-utils/syntax-getters.js.map +1 -1
  50. package/dist/src/ts-morph-utils/templates/document-model/actions.d.ts +2 -2
  51. package/dist/src/ts-morph-utils/templates/document-model/actions.d.ts.map +1 -1
  52. package/dist/src/ts-morph-utils/templates/document-model/actions.js.map +1 -1
  53. package/dist/src/ts-morph-utils/templates/document-model/gen/actions.d.ts +2 -2
  54. package/dist/src/ts-morph-utils/templates/document-model/gen/actions.d.ts.map +1 -1
  55. package/dist/src/ts-morph-utils/templates/document-model/gen/actions.js.map +1 -1
  56. package/dist/src/ts-morph-utils/templates/document-model/gen/creators.d.ts +2 -2
  57. package/dist/src/ts-morph-utils/templates/document-model/gen/creators.d.ts.map +1 -1
  58. package/dist/src/ts-morph-utils/templates/document-model/gen/creators.js.map +1 -1
  59. package/dist/src/ts-morph-utils/templates/document-model/gen/document-schema.d.ts +2 -2
  60. package/dist/src/ts-morph-utils/templates/document-model/gen/document-schema.d.ts.map +1 -1
  61. package/dist/src/ts-morph-utils/templates/document-model/gen/document-schema.js.map +1 -1
  62. package/dist/src/ts-morph-utils/templates/document-model/gen/document-type.d.ts +2 -2
  63. package/dist/src/ts-morph-utils/templates/document-model/gen/document-type.d.ts.map +1 -1
  64. package/dist/src/ts-morph-utils/templates/document-model/gen/document-type.js +2 -2
  65. package/dist/src/ts-morph-utils/templates/document-model/gen/document-type.js.map +1 -1
  66. package/dist/src/ts-morph-utils/templates/document-model/gen/index.d.ts +2 -2
  67. package/dist/src/ts-morph-utils/templates/document-model/gen/index.d.ts.map +1 -1
  68. package/dist/src/ts-morph-utils/templates/document-model/gen/index.js.map +1 -1
  69. package/dist/src/ts-morph-utils/templates/document-model/gen/modules/creators.d.ts +2 -2
  70. package/dist/src/ts-morph-utils/templates/document-model/gen/modules/creators.d.ts.map +1 -1
  71. package/dist/src/ts-morph-utils/templates/document-model/gen/modules/creators.js.map +1 -1
  72. package/dist/src/ts-morph-utils/templates/document-model/gen/modules/error.d.ts +2 -2
  73. package/dist/src/ts-morph-utils/templates/document-model/gen/modules/error.d.ts.map +1 -1
  74. package/dist/src/ts-morph-utils/templates/document-model/gen/modules/error.js.map +1 -1
  75. package/dist/src/ts-morph-utils/templates/document-model/gen/modules/operations.d.ts +2 -2
  76. package/dist/src/ts-morph-utils/templates/document-model/gen/modules/operations.d.ts.map +1 -1
  77. package/dist/src/ts-morph-utils/templates/document-model/gen/modules/operations.js.map +1 -1
  78. package/dist/src/ts-morph-utils/templates/document-model/gen/ph-factories.d.ts +2 -2
  79. package/dist/src/ts-morph-utils/templates/document-model/gen/ph-factories.d.ts.map +1 -1
  80. package/dist/src/ts-morph-utils/templates/document-model/gen/ph-factories.js.map +1 -1
  81. package/dist/src/ts-morph-utils/templates/document-model/gen/reducer.d.ts +2 -2
  82. package/dist/src/ts-morph-utils/templates/document-model/gen/reducer.d.ts.map +1 -1
  83. package/dist/src/ts-morph-utils/templates/document-model/gen/reducer.js +1 -1
  84. package/dist/src/ts-morph-utils/templates/document-model/gen/reducer.js.map +1 -1
  85. package/dist/src/ts-morph-utils/templates/document-model/gen/types.d.ts +2 -2
  86. package/dist/src/ts-morph-utils/templates/document-model/gen/types.d.ts.map +1 -1
  87. package/dist/src/ts-morph-utils/templates/document-model/gen/types.js +14 -14
  88. package/dist/src/ts-morph-utils/templates/document-model/gen/types.js.map +1 -1
  89. package/dist/src/ts-morph-utils/templates/document-model/gen/utils.d.ts +2 -2
  90. package/dist/src/ts-morph-utils/templates/document-model/gen/utils.d.ts.map +1 -1
  91. package/dist/src/ts-morph-utils/templates/document-model/gen/utils.js +18 -18
  92. package/dist/src/ts-morph-utils/templates/document-model/gen/utils.js.map +1 -1
  93. package/dist/src/ts-morph-utils/templates/document-model/hooks.d.ts +2 -2
  94. package/dist/src/ts-morph-utils/templates/document-model/hooks.d.ts.map +1 -1
  95. package/dist/src/ts-morph-utils/templates/document-model/hooks.js +1 -1
  96. package/dist/src/ts-morph-utils/templates/document-model/hooks.js.map +1 -1
  97. package/dist/src/ts-morph-utils/templates/document-model/module.d.ts +2 -2
  98. package/dist/src/ts-morph-utils/templates/document-model/module.d.ts.map +1 -1
  99. package/dist/src/ts-morph-utils/templates/document-model/module.js +3 -3
  100. package/dist/src/ts-morph-utils/templates/document-model/module.js.map +1 -1
  101. package/dist/src/ts-morph-utils/templates/document-model/src/tests/document-model.test.d.ts +2 -2
  102. package/dist/src/ts-morph-utils/templates/document-model/src/tests/document-model.test.d.ts.map +1 -1
  103. package/dist/src/ts-morph-utils/templates/document-model/src/tests/document-model.test.js +1 -1
  104. package/dist/src/ts-morph-utils/templates/document-model/src/tests/document-model.test.js.map +1 -1
  105. package/dist/src/ts-morph-utils/templates/document-model/src/tests/module.test.d.ts +5 -2
  106. package/dist/src/ts-morph-utils/templates/document-model/src/tests/module.test.d.ts.map +1 -1
  107. package/dist/src/ts-morph-utils/templates/document-model/src/tests/module.test.js +24 -4
  108. package/dist/src/ts-morph-utils/templates/document-model/src/tests/module.test.js.map +1 -1
  109. package/dist/src/ts-morph-utils/templates/document-model/upgrades/upgrade-transition.d.ts +7 -0
  110. package/dist/src/ts-morph-utils/templates/document-model/upgrades/upgrade-transition.d.ts.map +1 -0
  111. package/dist/src/ts-morph-utils/templates/document-model/upgrades/upgrade-transition.js +22 -0
  112. package/dist/src/ts-morph-utils/templates/document-model/upgrades/upgrade-transition.js.map +1 -0
  113. package/dist/tsconfig.tsbuildinfo +1 -1
  114. package/package.json +7 -7
@@ -1,4 +1,4 @@
1
- import { generateDocumentModel, generateSchemas, hygenGenerateProcessor, loadDocumentModel, } from "@powerhousedao/codegen";
1
+ import { generateDocumentModel, hygenGenerateProcessor, loadDocumentModel, } from "@powerhousedao/codegen";
2
2
  import { readFileSync, rmSync } from "node:fs";
3
3
  import path from "node:path";
4
4
  import { afterAll, beforeAll, beforeEach, describe, expect, it, } from "vitest";
@@ -6,6 +6,7 @@ import { DOCUMENT_MODELS_TEST_PROJECT, GENERATE_DOC_MODEL_TEST_OUTPUT_DIR, TEST_
6
6
  import { runGeneratedTests } from "./fixtures/run-generated-tests.js";
7
7
  import { compile } from "./fixtures/typecheck.js";
8
8
  import { copyAllFiles, getTestDataDir, getTestOutDirPath, getTestOutputDir, purgeDirAfterTest, resetDirForTest, } from "./utils.js";
9
+ import { USE_LEGACY } from "./config.js";
9
10
  describe("document model", () => {
10
11
  const testDir = import.meta.dirname;
11
12
  const outDirName = getTestOutputDir(testDir, GENERATE_DOC_MODEL_TEST_OUTPUT_DIR);
@@ -35,12 +36,14 @@ describe("document model", () => {
35
36
  dir: documentModelsDirName,
36
37
  specifiedPackageName: TEST_PACKAGE_NAME,
37
38
  documentModelState: billingStatementDocumentModel,
38
- legacy: true,
39
+ legacy: USE_LEGACY,
40
+ useVersioning: false,
39
41
  skipFormat: true,
40
42
  });
41
43
  const testDocDocumentModel = await loadDocumentModel(path.join(documentModelsSrcPath, "test-doc", "test-doc.json"));
42
44
  await generateDocumentModel({
43
- legacy: true,
45
+ legacy: USE_LEGACY,
46
+ useVersioning: false,
44
47
  dir: documentModelsDirName,
45
48
  specifiedPackageName: TEST_PACKAGE_NAME,
46
49
  documentModelState: testDocDocumentModel,
@@ -103,7 +106,8 @@ describe("document model", () => {
103
106
  // remove .out/document-model/test-doc/src/reducers/base-operations.ts file
104
107
  rmSync(path.join(documentModelsDirName, "test-doc", "src", "reducers", "base-operations.ts"), { force: true });
105
108
  await generateDocumentModel({
106
- legacy: true,
109
+ legacy: USE_LEGACY,
110
+ useVersioning: false,
107
111
  dir: documentModelsDirName,
108
112
  specifiedPackageName: TEST_PACKAGE_NAME,
109
113
  documentModelState: testDocDocumentModelV2,
@@ -189,30 +193,12 @@ describe("document model", () => {
189
193
  const errorCodeMatches = lineItemsErrorContent.match(/"InvalidStatusTransition"/g);
190
194
  expect(errorCodeMatches?.length).toBe(3); // Once in type definition, once in each class
191
195
  });
192
- it("should automatically import error classes in reducer files when used", { timeout: 100000 }, async () => {
193
- await generate();
194
- await compile(testOutDirPath);
195
- // Check that the general module reducer imports InvalidStatusTransition
196
- const generalReducerPath = path.join(documentModelsDirName, "billing-statement", "src", "reducers", "general.ts");
197
- const generalReducerContent = readFileSync(generalReducerPath, "utf-8");
198
- // Should have import for both InvalidStatusTransition and StatusAlreadySet errors in single import
199
- expect(generalReducerContent).toContain('import { InvalidStatusTransition, StatusAlreadySet } from "../../gen/general/error.js";');
200
- // Should contain the reducer code with both error usages
201
- expect(generalReducerContent).toContain("throw new InvalidStatusTransition");
202
- expect(generalReducerContent).toContain("throw new StatusAlreadySet");
203
- // Check that the line-items module reducer imports DuplicateLineItem
204
- const lineItemsReducerPath = path.join(documentModelsDirName, "billing-statement", "src", "reducers", "line-items.ts");
205
- const lineItemsReducerContent = readFileSync(lineItemsReducerPath, "utf-8");
206
- // Should have import for DuplicateLineItem error
207
- expect(lineItemsReducerContent).toContain('import { DuplicateLineItem } from "../../gen/line-items/error.js";');
208
- // Should contain the reducer code with error usage
209
- expect(lineItemsReducerContent).toContain("throw new DuplicateLineItem");
210
- });
211
196
  it("should generate error codes for legacy documents with empty error codes", { timeout: 100000 }, async () => {
212
197
  await generate();
213
198
  const testEmptyCodesDocumentModel = await loadDocumentModel(path.join(documentModelsSrcPath, "test-empty-error-codes", "test-empty-error-codes.json"));
214
199
  await generateDocumentModel({
215
- legacy: true,
200
+ legacy: USE_LEGACY,
201
+ useVersioning: false,
216
202
  dir: documentModelsDirName,
217
203
  specifiedPackageName: TEST_PACKAGE_NAME,
218
204
  documentModelState: testEmptyCodesDocumentModel,
@@ -1 +1 @@
1
- {"version":3,"file":"generate-doc-model.test.js","sourceRoot":"","sources":["../../../../src/codegen/__tests__/generate-doc-model.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-doc-model.test.js","sourceRoot":"","sources":["../../../../src/codegen/__tests__/generate-doc-model.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"generate-manifest.test.js","sourceRoot":"","sources":["../../../../src/codegen/__tests__/generate-manifest.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-manifest.test.js","sourceRoot":"","sources":["../../../../src/codegen/__tests__/generate-manifest.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=generate-versioned-document-model.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-versioned-document-model.test.d.ts","sourceRoot":"","sources":["../../../../src/codegen/__tests__/generate-versioned-document-model.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,142 @@
1
+ import { paramCase } from "change-case";
2
+ import { readdirSync } from "fs";
3
+ import path from "path";
4
+ import { describe, expect, it } from "vitest";
5
+ import { generateDocumentModel } from "../generate.js";
6
+ import { loadDocumentModel } from "../utils.js";
7
+ import { runGeneratedTests } from "./fixtures/run-generated-tests.js";
8
+ import { compile } from "./fixtures/typecheck.js";
9
+ import { copyAllFiles, purgeDirAfterTest, resetDirForTest } from "./utils.js";
10
+ let testCount = 1;
11
+ const parentOutDirName = "versioned-document-models";
12
+ const testsDir = import.meta.dirname;
13
+ const testOutputParentDir = path.join(testsDir, ".test-output", parentOutDirName);
14
+ const testsDataDir = path.join(testsDir, "data", "versioned-document-models");
15
+ function getDirInTestDataDir(dirName) {
16
+ return path.join(testsDataDir, dirName);
17
+ }
18
+ function getTestOutDir(context) {
19
+ const testDirName = `${testCount++}-${paramCase(context.task.name)}`;
20
+ return path.join(testOutputParentDir, testDirName);
21
+ }
22
+ function getDocumentModelJsonFilePath(basePath, dirName) {
23
+ return path.join(basePath, dirName, `${dirName}.json`);
24
+ }
25
+ async function loadDocumentModelsInDir(inDirName, testOutDir) {
26
+ const documentModelsInDir = getDirInTestDataDir(inDirName);
27
+ const documentModelsOutDir = path.join(testOutDir, "document-models");
28
+ const documentModelDirs = readdirSync(documentModelsInDir, {
29
+ withFileTypes: true,
30
+ })
31
+ .filter((value) => value.isDirectory())
32
+ .map((value) => value.name);
33
+ const documentModelStates = await Promise.all(documentModelDirs.map(async (dirName) => await loadDocumentModel(getDocumentModelJsonFilePath(documentModelsInDir, dirName))));
34
+ for (const documentModelState of documentModelStates) {
35
+ await generateDocumentModel({
36
+ documentModelState,
37
+ dir: documentModelsOutDir,
38
+ legacy: false,
39
+ useVersioning: true,
40
+ specifiedPackageName: "test",
41
+ });
42
+ }
43
+ }
44
+ async function loadBaseProjectFromDir(dirName, testOutDir) {
45
+ const projectDir = getDirInTestDataDir(dirName);
46
+ await copyAllFiles(projectDir, testOutDir);
47
+ }
48
+ describe("versioned document models", () => {
49
+ describe("spec version 1", () => {
50
+ it("should generate new document models as v1", {
51
+ timeout: 10000000,
52
+ }, async (context) => {
53
+ const testOutDir = getTestOutDir(context);
54
+ resetDirForTest(testOutDir);
55
+ await loadBaseProjectFromDir("empty-project", testOutDir);
56
+ await loadDocumentModelsInDir("spec-version-1", testOutDir);
57
+ await compile(testOutDir);
58
+ await runGeneratedTests(testOutDir);
59
+ purgeDirAfterTest(testOutDir);
60
+ });
61
+ it("should persist existing reducers, tests, utils, and custom files when generating for the same spec version", {
62
+ timeout: 10000000,
63
+ }, async (context) => {
64
+ const testOutDir = getTestOutDir(context);
65
+ resetDirForTest(testOutDir);
66
+ await loadBaseProjectFromDir("project-with-existing-document-models-at-spec-1", testOutDir);
67
+ await loadDocumentModelsInDir("spec-version-1-with-more-operations", testOutDir);
68
+ await compile(testOutDir);
69
+ await runGeneratedTests(testOutDir);
70
+ purgeDirAfterTest(testOutDir);
71
+ });
72
+ });
73
+ describe("spec version 2", () => {
74
+ it("should handle generating document models as v2", {
75
+ timeout: 10000000,
76
+ }, async (context) => {
77
+ const testOutDir = getTestOutDir(context);
78
+ resetDirForTest(testOutDir);
79
+ await loadBaseProjectFromDir("empty-project", testOutDir);
80
+ await loadDocumentModelsInDir("spec-version-2", testOutDir);
81
+ await compile(testOutDir);
82
+ await runGeneratedTests(testOutDir);
83
+ purgeDirAfterTest(testOutDir);
84
+ });
85
+ it("should persist existing reducers, tests, utils, and custom files when generating a new spec version", {
86
+ timeout: 10000000,
87
+ }, async (context) => {
88
+ const testOutDir = getTestOutDir(context);
89
+ resetDirForTest(testOutDir);
90
+ await loadBaseProjectFromDir("project-with-existing-document-models-at-spec-1", testOutDir);
91
+ await loadDocumentModelsInDir("spec-version-2", testOutDir);
92
+ await compile(testOutDir);
93
+ await runGeneratedTests(testOutDir);
94
+ purgeDirAfterTest(testOutDir);
95
+ });
96
+ it("should throw a typescript error in upgrades when new state does not match old state", {
97
+ timeout: 10000000,
98
+ }, async (context) => {
99
+ const testOutDir = getTestOutDir(context);
100
+ resetDirForTest(testOutDir);
101
+ await loadBaseProjectFromDir("project-with-existing-document-models-at-spec-1", testOutDir);
102
+ await loadDocumentModelsInDir("spec-version-2-with-state-changes", testOutDir);
103
+ await expect(() => compile(testOutDir)).rejects.toThrow();
104
+ purgeDirAfterTest(testOutDir);
105
+ });
106
+ });
107
+ describe("spec version 3", () => {
108
+ it("should handle generating document models as v3", {
109
+ timeout: 10000000,
110
+ }, async (context) => {
111
+ const testOutDir = getTestOutDir(context);
112
+ resetDirForTest(testOutDir);
113
+ await loadBaseProjectFromDir("empty-project", testOutDir);
114
+ await loadDocumentModelsInDir("spec-version-3", testOutDir);
115
+ await compile(testOutDir);
116
+ await runGeneratedTests(testOutDir);
117
+ purgeDirAfterTest(testOutDir);
118
+ });
119
+ it("should persist existing reducers, tests, utils, and custom files when generating a new spec version", {
120
+ timeout: 10000000,
121
+ }, async (context) => {
122
+ const testOutDir = getTestOutDir(context);
123
+ resetDirForTest(testOutDir);
124
+ await loadBaseProjectFromDir("project-with-existing-document-models-at-spec-2", testOutDir);
125
+ await loadDocumentModelsInDir("spec-version-3", testOutDir);
126
+ await compile(testOutDir);
127
+ await runGeneratedTests(testOutDir);
128
+ purgeDirAfterTest(testOutDir);
129
+ });
130
+ it("should throw a typescript error in upgrades when new state does not match old state", {
131
+ timeout: 10000000,
132
+ }, async (context) => {
133
+ const testOutDir = getTestOutDir(context);
134
+ resetDirForTest(testOutDir);
135
+ await loadBaseProjectFromDir("project-with-existing-document-models-at-spec-2", testOutDir);
136
+ await loadDocumentModelsInDir("spec-version-3-with-state-changes", testOutDir);
137
+ await expect(() => compile(testOutDir)).rejects.toThrow();
138
+ purgeDirAfterTest(testOutDir);
139
+ });
140
+ });
141
+ });
142
+ //# sourceMappingURL=generate-versioned-document-model.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-versioned-document-model.test.js","sourceRoot":"","sources":["../../../../src/codegen/__tests__/generate-versioned-document-model.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,IAAI,CAAC;AACjC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAoB,MAAM,QAAQ,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE9E,IAAI,SAAS,GAAG,CAAC,CAAC;AAElB,MAAM,gBAAgB,GAAG,2BAA2B,CAAC;AACrD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;AACrC,MAAM,mBAAmB,GAAG,IAAI,CAAC,IAAI,CACnC,QAAQ,EACR,cAAc,EACd,gBAAgB,CACjB,CAAC;AACF,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,2BAA2B,CAAC,CAAC;AAC9E,SAAS,mBAAmB,CAAC,OAAe;IAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,aAAa,CAAC,OAAoB;IACzC,MAAM,WAAW,GAAG,GAAG,SAAS,EAAE,IAAI,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IACrE,OAAO,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,4BAA4B,CAAC,QAAgB,EAAE,OAAe;IACrE,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,OAAO,CAAC,CAAC;AACzD,CAAC;AAED,KAAK,UAAU,uBAAuB,CAAC,SAAiB,EAAE,UAAkB;IAC1E,MAAM,mBAAmB,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAC3D,MAAM,oBAAoB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;IACtE,MAAM,iBAAiB,GAAG,WAAW,CAAC,mBAAmB,EAAE;QACzD,aAAa,EAAE,IAAI;KACpB,CAAC;SACC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;SACtC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAE9B,MAAM,mBAAmB,GAAG,MAAM,OAAO,CAAC,GAAG,CAC3C,iBAAiB,CAAC,GAAG,CACnB,KAAK,EAAE,OAAO,EAAE,EAAE,CAChB,MAAM,iBAAiB,CACrB,4BAA4B,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAC3D,CACJ,CACF,CAAC;IAEF,KAAK,MAAM,kBAAkB,IAAI,mBAAmB,EAAE,CAAC;QACrD,MAAM,qBAAqB,CAAC;YAC1B,kBAAkB;YAClB,GAAG,EAAE,oBAAoB;YACzB,MAAM,EAAE,KAAK;YACb,aAAa,EAAE,IAAI;YACnB,oBAAoB,EAAE,MAAM;SAC7B,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,OAAe,EAAE,UAAkB;IACvE,MAAM,UAAU,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAChD,MAAM,YAAY,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;AAC7C,CAAC;AAED,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACzC,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CACA,2CAA2C,EAC3C;YACE,OAAO,EAAE,QAAQ;SAClB,EACD,KAAK,EAAE,OAAO,EAAE,EAAE;YAChB,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;YAC1C,eAAe,CAAC,UAAU,CAAC,CAAC;YAC5B,MAAM,sBAAsB,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;YAC1D,MAAM,uBAAuB,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;YAC5D,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;YAC1B,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAC;YACpC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAChC,CAAC,CACF,CAAC;QAEF,EAAE,CACA,4GAA4G,EAC5G;YACE,OAAO,EAAE,QAAQ;SAClB,EACD,KAAK,EAAE,OAAO,EAAE,EAAE;YAChB,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;YAC1C,eAAe,CAAC,UAAU,CAAC,CAAC;YAC5B,MAAM,sBAAsB,CAC1B,iDAAiD,EACjD,UAAU,CACX,CAAC;YACF,MAAM,uBAAuB,CAC3B,qCAAqC,EACrC,UAAU,CACX,CAAC;YACF,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;YAC1B,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAC;YACpC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAChC,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CACA,gDAAgD,EAChD;YACE,OAAO,EAAE,QAAQ;SAClB,EACD,KAAK,EAAE,OAAO,EAAE,EAAE;YAChB,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;YAC1C,eAAe,CAAC,UAAU,CAAC,CAAC;YAC5B,MAAM,sBAAsB,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;YAC1D,MAAM,uBAAuB,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;YAC5D,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;YAC1B,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAC;YACpC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAChC,CAAC,CACF,CAAC;QAEF,EAAE,CACA,qGAAqG,EACrG;YACE,OAAO,EAAE,QAAQ;SAClB,EACD,KAAK,EAAE,OAAO,EAAE,EAAE;YAChB,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;YAC1C,eAAe,CAAC,UAAU,CAAC,CAAC;YAC5B,MAAM,sBAAsB,CAC1B,iDAAiD,EACjD,UAAU,CACX,CAAC;YACF,MAAM,uBAAuB,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;YAC5D,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;YAC1B,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAC;YACpC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAChC,CAAC,CACF,CAAC;QAEF,EAAE,CACA,qFAAqF,EACrF;YACE,OAAO,EAAE,QAAQ;SAClB,EACD,KAAK,EAAE,OAAO,EAAE,EAAE;YAChB,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;YAC1C,eAAe,CAAC,UAAU,CAAC,CAAC;YAC5B,MAAM,sBAAsB,CAC1B,iDAAiD,EACjD,UAAU,CACX,CAAC;YACF,MAAM,uBAAuB,CAC3B,mCAAmC,EACnC,UAAU,CACX,CAAC;YACF,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YAC1D,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAChC,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CACA,gDAAgD,EAChD;YACE,OAAO,EAAE,QAAQ;SAClB,EACD,KAAK,EAAE,OAAO,EAAE,EAAE;YAChB,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;YAC1C,eAAe,CAAC,UAAU,CAAC,CAAC;YAC5B,MAAM,sBAAsB,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;YAC1D,MAAM,uBAAuB,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;YAC5D,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;YAC1B,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAC;YACpC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAChC,CAAC,CACF,CAAC;QAEF,EAAE,CACA,qGAAqG,EACrG;YACE,OAAO,EAAE,QAAQ;SAClB,EACD,KAAK,EAAE,OAAO,EAAE,EAAE;YAChB,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;YAC1C,eAAe,CAAC,UAAU,CAAC,CAAC;YAC5B,MAAM,sBAAsB,CAC1B,iDAAiD,EACjD,UAAU,CACX,CAAC;YACF,MAAM,uBAAuB,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;YAC5D,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;YAC1B,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAC;YACpC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAChC,CAAC,CACF,CAAC;QAEF,EAAE,CACA,qFAAqF,EACrF;YACE,OAAO,EAAE,QAAQ;SAClB,EACD,KAAK,EAAE,OAAO,EAAE,EAAE;YAChB,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;YAC1C,eAAe,CAAC,UAAU,CAAC,CAAC;YAC5B,MAAM,sBAAsB,CAC1B,iDAAiD,EACjD,UAAU,CACX,CAAC;YACF,MAAM,uBAAuB,CAC3B,mCAAmC,EACnC,UAAU,CACX,CAAC;YACF,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YAC1D,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAChC,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,14 +1,23 @@
1
1
  import type { PartialPowerhouseManifest, PowerhouseConfig } from "@powerhousedao/config";
2
2
  import type { DocumentModelGlobalState } from "document-model";
3
3
  import type { CodegenOptions } from "./types.js";
4
- export declare function generateAll(dir: string, legacy: boolean, args?: {
4
+ export declare function generateAll(args: {
5
+ dir: string;
6
+ legacy: boolean;
7
+ useVersioning: boolean;
5
8
  watch?: boolean;
6
9
  skipFormat?: boolean;
7
10
  verbose?: boolean;
8
11
  force?: boolean;
9
12
  }): Promise<void>;
10
- export declare function generate(config: PowerhouseConfig, legacy: boolean): Promise<void>;
11
- export declare function generateFromFile(path: string, config: PowerhouseConfig, legacy: boolean, options?: CodegenOptions): Promise<void>;
13
+ export declare function generate(config: PowerhouseConfig, legacy: boolean, useVersioning: boolean): Promise<void>;
14
+ export declare function generateFromFile(args: {
15
+ path: string;
16
+ config: PowerhouseConfig;
17
+ legacy: boolean;
18
+ useVersioning: boolean;
19
+ options?: CodegenOptions;
20
+ }): Promise<void>;
12
21
  /**
13
22
  * Generates code from a DocumentModelGlobalState object directly.
14
23
  *
@@ -22,11 +31,18 @@ export declare function generateFromFile(path: string, config: PowerhouseConfig,
22
31
  * @param options - Optional configuration for generation behavior (verbose logging, etc.)
23
32
  * @returns A promise that resolves when code generation is complete
24
33
  */
25
- export declare function generateFromDocument(documentModelState: DocumentModelGlobalState, config: PowerhouseConfig, legacy: boolean, options?: CodegenOptions): Promise<void>;
34
+ export declare function generateFromDocument(args: {
35
+ documentModelState: DocumentModelGlobalState;
36
+ config: PowerhouseConfig;
37
+ legacy: boolean;
38
+ useVersioning: boolean;
39
+ options?: CodegenOptions;
40
+ }): Promise<void>;
26
41
  type GenerateDocumentModelArgs = {
27
42
  dir: string;
28
43
  documentModelState: DocumentModelGlobalState;
29
44
  legacy: boolean;
45
+ useVersioning: boolean;
30
46
  specifiedPackageName?: string;
31
47
  watch?: boolean;
32
48
  skipFormat?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../../src/codegen/generate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../../src/codegen/generate.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- import { typeDefs } from "@powerhousedao/document-engineering/graphql";
2
1
  import { paramCase } from "change-case";
3
2
  import fs from "node:fs";
4
3
  import path, { join } from "node:path";
@@ -8,12 +7,13 @@ import { TSMorphCodeGenerator } from "../ts-morph-generator/index.js";
8
7
  import { tsMorphGenerateEditor } from "../ts-morph-utils/file-builders/document-editor.js";
9
8
  import { makeDocumentModelModulesFile, tsMorphGenerateDocumentModel, } from "../ts-morph-utils/file-builders/document-model.js";
10
9
  import { tsMorphGenerateDriveEditor } from "../ts-morph-utils/file-builders/drive-editor.js";
10
+ import { makeSubgraphsIndexFile } from "../ts-morph-utils/file-builders/subgraphs.js";
11
11
  import { buildTsMorphProject } from "../ts-morph-utils/ts-morph-project.js";
12
12
  import { generateDocumentModelZodSchemas, generateSchemas } from "./graphql.js";
13
13
  import { hygenGenerateDocumentModel, hygenGenerateDriveEditor, hygenGenerateEditor, hygenGenerateImportScript, hygenGenerateProcessor, hygenGenerateSubgraph, } from "./hygen.js";
14
14
  import { getDocumentTypesMap, loadDocumentModel } from "./utils.js";
15
- export async function generateAll(dir, legacy, args = {}) {
16
- const { watch = false, skipFormat = false, verbose = true, force = true, } = args;
15
+ export async function generateAll(args) {
16
+ const { dir, legacy, useVersioning, watch = false, skipFormat = false, verbose = true, force = true, } = args;
17
17
  const files = fs.readdirSync(dir, { withFileTypes: true });
18
18
  const documentModelStates = [];
19
19
  for (const directory of files.filter((f) => f.isDirectory())) {
@@ -22,16 +22,17 @@ export async function generateAll(dir, legacy, args = {}) {
22
22
  continue;
23
23
  }
24
24
  try {
25
- const documentModel = await loadDocumentModel(documentModelPath);
26
- documentModelStates.push(documentModel);
25
+ const documentModelState = await loadDocumentModel(documentModelPath);
26
+ documentModelStates.push(documentModelState);
27
27
  await generateDocumentModel({
28
28
  dir,
29
- documentModelState: documentModel,
29
+ documentModelState,
30
30
  watch,
31
31
  skipFormat,
32
32
  verbose,
33
33
  force,
34
34
  legacy,
35
+ useVersioning,
35
36
  });
36
37
  }
37
38
  catch (error) {
@@ -41,16 +42,29 @@ export async function generateAll(dir, legacy, args = {}) {
41
42
  }
42
43
  }
43
44
  }
44
- export async function generate(config, legacy) {
45
+ export async function generate(config, legacy, useVersioning) {
45
46
  const { skipFormat, watch } = config;
46
47
  await generateSchemas(config.documentModelsDir, { skipFormat, watch });
47
- await generateAll(config.documentModelsDir, legacy, { skipFormat, watch });
48
+ await generateAll({
49
+ dir: config.documentModelsDir,
50
+ legacy,
51
+ useVersioning,
52
+ skipFormat,
53
+ watch,
54
+ });
48
55
  }
49
- export async function generateFromFile(path, config, legacy, options = {}) {
56
+ export async function generateFromFile(args) {
57
+ const { path, config, legacy, useVersioning, options } = args;
50
58
  // load document model spec from file
51
- const documentModel = await loadDocumentModel(path);
59
+ const documentModelState = await loadDocumentModel(path);
52
60
  // delegate to shared generation function
53
- await generateFromDocumentModel(documentModel, config, legacy, path, options);
61
+ await generateFromDocumentModel({
62
+ documentModelState,
63
+ config,
64
+ legacy,
65
+ useVersioning,
66
+ options,
67
+ });
54
68
  }
55
69
  /**
56
70
  * Generates code from a DocumentModelGlobalState object directly.
@@ -65,12 +79,12 @@ export async function generateFromFile(path, config, legacy, options = {}) {
65
79
  * @param options - Optional configuration for generation behavior (verbose logging, etc.)
66
80
  * @returns A promise that resolves when code generation is complete
67
81
  */
68
- export async function generateFromDocument(documentModelState, config, legacy, options = {}) {
82
+ export async function generateFromDocument(args) {
69
83
  // delegate to shared generation function
70
- await generateFromDocumentModel(documentModelState, config, legacy, null, options);
84
+ await generateFromDocumentModel({ ...args, filePath: null });
71
85
  }
72
86
  export async function generateDocumentModel(args) {
73
- const { dir, documentModelState, specifiedPackageName, legacy, ...hygenArgs } = args;
87
+ const { dir, documentModelState, specifiedPackageName, legacy, useVersioning, ...hygenArgs } = args;
74
88
  const packageJson = await readPackage();
75
89
  const packageNameFromPackageJson = packageJson.name;
76
90
  const packageName = specifiedPackageName || packageNameFromPackageJson;
@@ -102,6 +116,7 @@ export async function generateDocumentModel(args) {
102
116
  projectDir,
103
117
  packageName,
104
118
  documentModelState,
119
+ useVersioning,
105
120
  });
106
121
  }
107
122
  }
@@ -195,10 +210,16 @@ export async function generateDriveEditor(options) {
195
210
  });
196
211
  }
197
212
  export async function generateSubgraphFromDocumentModel(name, documentModel, config, options = {}) {
198
- return hygenGenerateSubgraph(name, documentModel, { ...config, ...options });
213
+ await hygenGenerateSubgraph(name, documentModel, { ...config, ...options });
214
+ makeSubgraphsIndexFile({ projectDir: path.dirname(config.subgraphsDir) });
199
215
  }
200
216
  export async function generateSubgraph(name, file, config, options = {}) {
201
- return hygenGenerateSubgraph(name, file !== null ? await loadDocumentModel(file) : null, { ...config, ...options });
217
+ const documentModelState = file !== null ? await loadDocumentModel(file) : null;
218
+ await hygenGenerateSubgraph(name, documentModelState, {
219
+ ...config,
220
+ ...options,
221
+ });
222
+ makeSubgraphsIndexFile({ projectDir: path.dirname(config.subgraphsDir) });
202
223
  }
203
224
  export async function generateProcessor(name, type, documentTypes, config) {
204
225
  const { skipFormat } = config;
@@ -209,24 +230,24 @@ export async function generateImportScript(name, config) {
209
230
  skipFormat: config.skipFormat,
210
231
  });
211
232
  }
233
+ const defaultManifest = {
234
+ name: "",
235
+ description: "",
236
+ category: "",
237
+ publisher: {
238
+ name: "",
239
+ url: "",
240
+ },
241
+ documentModels: [],
242
+ editors: [],
243
+ apps: [],
244
+ subgraphs: [],
245
+ importScripts: [],
246
+ };
212
247
  export function generateManifest(manifestData, projectRoot) {
213
248
  const rootDir = projectRoot || process.cwd();
214
249
  const manifestPath = join(rootDir, "powerhouse.manifest.json");
215
250
  // Create default manifest structure
216
- const defaultManifest = {
217
- name: "",
218
- description: "",
219
- category: "",
220
- publisher: {
221
- name: "",
222
- url: "",
223
- },
224
- documentModels: [],
225
- editors: [],
226
- apps: [],
227
- subgraphs: [],
228
- importScripts: [],
229
- };
230
251
  // Read existing manifest if it exists
231
252
  let existingManifest = defaultManifest;
232
253
  if (fs.existsSync(manifestPath)) {
@@ -275,25 +296,6 @@ export function generateManifest(manifestData, projectRoot) {
275
296
  fs.writeFileSync(manifestPath, JSON.stringify(updatedManifest, null, 4));
276
297
  return manifestPath;
277
298
  }
278
- function generateGraphqlSchema(documentModel) {
279
- const spec = documentModel.specifications[documentModel.specifications.length - 1];
280
- if (!spec) {
281
- throw new Error(`No spec found for ${documentModel.id}`);
282
- }
283
- const { modules, state: { global, local }, } = spec;
284
- const schemas = [
285
- global.schema,
286
- local.schema,
287
- ...modules
288
- .map((module) => [
289
- `# ${module.name}`,
290
- ...module.operations.map((op) => op.schema),
291
- ])
292
- .flat()
293
- .filter((schema) => schema && schema.length > 0),
294
- ];
295
- return schemas.join("\n\n");
296
- }
297
299
  /**
298
300
  * Generates code from a DocumentModelGlobalState.
299
301
  *
@@ -307,25 +309,27 @@ function generateGraphqlSchema(documentModel) {
307
309
  * @param options - Optional configuration for generation behavior
308
310
  * @returns A promise that resolves when code generation is complete
309
311
  */
310
- async function generateFromDocumentModel(documentModel, config, legacy, filePath, options = {}) {
312
+ async function generateFromDocumentModel(args) {
313
+ const { documentModelState, config, legacy, useVersioning, filePath, options = {}, } = args;
311
314
  // Derive verbose from config.logLevel if not explicitly provided
312
315
  // Show hygen logs for verbose, debug, and info levels (default behavior before ts-morph)
313
316
  const { verbose = config.logLevel === "verbose" ||
314
317
  config.logLevel === "debug" ||
315
318
  config.logLevel === "info", force = false, } = options;
316
- const name = paramCase(documentModel.name);
319
+ const name = paramCase(documentModelState.name);
317
320
  const documentModelDir = join(config.documentModelsDir, name);
318
321
  // create document model folder and spec as json
319
322
  fs.mkdirSync(documentModelDir, { recursive: true });
320
- fs.writeFileSync(join(documentModelDir, `${name}.json`), JSON.stringify(documentModel, null, 2));
323
+ fs.writeFileSync(join(documentModelDir, `${name}.json`), JSON.stringify(documentModelState, null, 2));
321
324
  await generateDocumentModel({
322
325
  dir: config.documentModelsDir,
323
- documentModelState: documentModel,
326
+ documentModelState,
324
327
  watch: config.watch,
325
328
  skipFormat: config.skipFormat,
326
329
  verbose,
327
330
  force,
328
331
  legacy,
332
+ useVersioning,
329
333
  });
330
334
  await generateSubgraph(name, filePath || null, config, { verbose });
331
335
  }