@powerhousedao/codegen 5.1.0-staging.0 → 5.2.0-staging.1

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 (134) hide show
  1. package/dist/src/codegen/__tests__/config.d.ts +1 -1
  2. package/dist/src/codegen/__tests__/config.d.ts.map +1 -1
  3. package/dist/src/codegen/__tests__/config.js +1 -1
  4. package/dist/src/codegen/__tests__/config.js.map +1 -1
  5. package/dist/src/codegen/__tests__/generate-doc-model.test.js +81 -81
  6. package/dist/src/codegen/__tests__/generate-doc-model.test.js.map +1 -1
  7. package/dist/src/codegen/__tests__/generate-drive-editor.test.js +5 -5
  8. package/dist/src/codegen/__tests__/generate-drive-editor.test.js.map +1 -1
  9. package/dist/src/codegen/__tests__/generate-editor.test.js +4 -4
  10. package/dist/src/codegen/__tests__/generate-editor.test.js.map +1 -1
  11. package/dist/src/codegen/__tests__/generate-manifest.test.js.map +1 -1
  12. package/dist/src/codegen/__tests__/generate-versioned-document-model.test.d.ts +2 -0
  13. package/dist/src/codegen/__tests__/generate-versioned-document-model.test.d.ts.map +1 -0
  14. package/dist/src/codegen/__tests__/generate-versioned-document-model.test.js +142 -0
  15. package/dist/src/codegen/__tests__/generate-versioned-document-model.test.js.map +1 -0
  16. package/dist/src/codegen/generate.d.ts +23 -7
  17. package/dist/src/codegen/generate.d.ts.map +1 -1
  18. package/dist/src/codegen/generate.js +105 -87
  19. package/dist/src/codegen/generate.js.map +1 -1
  20. package/dist/src/codegen/graphql.d.ts +20 -17
  21. package/dist/src/codegen/graphql.d.ts.map +1 -1
  22. package/dist/src/codegen/graphql.js +105 -78
  23. package/dist/src/codegen/graphql.js.map +1 -1
  24. package/dist/src/codegen/hygen.d.ts.map +1 -1
  25. package/dist/src/codegen/hygen.js +0 -1
  26. package/dist/src/codegen/hygen.js.map +1 -1
  27. package/dist/src/ts-morph-utils/file-builders/document-model/gen-dir.d.ts.map +1 -1
  28. package/dist/src/ts-morph-utils/file-builders/document-model/gen-dir.js +53 -44
  29. package/dist/src/ts-morph-utils/file-builders/document-model/gen-dir.js.map +1 -1
  30. package/dist/src/ts-morph-utils/file-builders/document-model/root-dir.js +20 -23
  31. package/dist/src/ts-morph-utils/file-builders/document-model/root-dir.js.map +1 -1
  32. package/dist/src/ts-morph-utils/file-builders/document-model/src-dir.d.ts.map +1 -1
  33. package/dist/src/ts-morph-utils/file-builders/document-model/src-dir.js +209 -21
  34. package/dist/src/ts-morph-utils/file-builders/document-model/src-dir.js.map +1 -1
  35. package/dist/src/ts-morph-utils/file-builders/document-model/types.d.ts +21 -1
  36. package/dist/src/ts-morph-utils/file-builders/document-model/types.d.ts.map +1 -1
  37. package/dist/src/ts-morph-utils/file-builders/document-model/upgrades-dir.d.ts +31 -0
  38. package/dist/src/ts-morph-utils/file-builders/document-model/upgrades-dir.d.ts.map +1 -0
  39. package/dist/src/ts-morph-utils/file-builders/document-model/upgrades-dir.js +136 -0
  40. package/dist/src/ts-morph-utils/file-builders/document-model/upgrades-dir.js.map +1 -0
  41. package/dist/src/ts-morph-utils/file-builders/document-model.d.ts +2 -2
  42. package/dist/src/ts-morph-utils/file-builders/document-model.d.ts.map +1 -1
  43. package/dist/src/ts-morph-utils/file-builders/document-model.js +210 -28
  44. package/dist/src/ts-morph-utils/file-builders/document-model.js.map +1 -1
  45. package/dist/src/ts-morph-utils/file-builders/index-files.d.ts +2 -1
  46. package/dist/src/ts-morph-utils/file-builders/index-files.d.ts.map +1 -1
  47. package/dist/src/ts-morph-utils/file-builders/index-files.js +6 -2
  48. package/dist/src/ts-morph-utils/file-builders/index-files.js.map +1 -1
  49. package/dist/src/ts-morph-utils/file-builders/module-files.d.ts.map +1 -1
  50. package/dist/src/ts-morph-utils/file-builders/module-files.js +20 -8
  51. package/dist/src/ts-morph-utils/file-builders/module-files.js.map +1 -1
  52. package/dist/src/ts-morph-utils/name-builders/get-variable-names.d.ts +5 -23
  53. package/dist/src/ts-morph-utils/name-builders/get-variable-names.d.ts.map +1 -1
  54. package/dist/src/ts-morph-utils/name-builders/get-variable-names.js +26 -34
  55. package/dist/src/ts-morph-utils/name-builders/get-variable-names.js.map +1 -1
  56. package/dist/src/ts-morph-utils/name-builders/types.d.ts +6 -2
  57. package/dist/src/ts-morph-utils/name-builders/types.d.ts.map +1 -1
  58. package/dist/src/ts-morph-utils/syntax-getters.d.ts +1 -0
  59. package/dist/src/ts-morph-utils/syntax-getters.d.ts.map +1 -1
  60. package/dist/src/ts-morph-utils/syntax-getters.js +6 -0
  61. package/dist/src/ts-morph-utils/syntax-getters.js.map +1 -1
  62. package/dist/src/ts-morph-utils/templates/document-model/actions.d.ts +2 -2
  63. package/dist/src/ts-morph-utils/templates/document-model/actions.d.ts.map +1 -1
  64. package/dist/src/ts-morph-utils/templates/document-model/actions.js.map +1 -1
  65. package/dist/src/ts-morph-utils/templates/document-model/gen/actions.d.ts +2 -2
  66. package/dist/src/ts-morph-utils/templates/document-model/gen/actions.d.ts.map +1 -1
  67. package/dist/src/ts-morph-utils/templates/document-model/gen/actions.js.map +1 -1
  68. package/dist/src/ts-morph-utils/templates/document-model/gen/creators.d.ts +2 -2
  69. package/dist/src/ts-morph-utils/templates/document-model/gen/creators.d.ts.map +1 -1
  70. package/dist/src/ts-morph-utils/templates/document-model/gen/creators.js.map +1 -1
  71. package/dist/src/ts-morph-utils/templates/document-model/gen/document-schema.d.ts +2 -2
  72. package/dist/src/ts-morph-utils/templates/document-model/gen/document-schema.d.ts.map +1 -1
  73. package/dist/src/ts-morph-utils/templates/document-model/gen/document-schema.js.map +1 -1
  74. package/dist/src/ts-morph-utils/templates/document-model/gen/document-type.d.ts +2 -2
  75. package/dist/src/ts-morph-utils/templates/document-model/gen/document-type.d.ts.map +1 -1
  76. package/dist/src/ts-morph-utils/templates/document-model/gen/document-type.js +2 -2
  77. package/dist/src/ts-morph-utils/templates/document-model/gen/document-type.js.map +1 -1
  78. package/dist/src/ts-morph-utils/templates/document-model/gen/index.d.ts +2 -2
  79. package/dist/src/ts-morph-utils/templates/document-model/gen/index.d.ts.map +1 -1
  80. package/dist/src/ts-morph-utils/templates/document-model/gen/index.js.map +1 -1
  81. package/dist/src/ts-morph-utils/templates/document-model/gen/modules/creators.d.ts +2 -2
  82. package/dist/src/ts-morph-utils/templates/document-model/gen/modules/creators.d.ts.map +1 -1
  83. package/dist/src/ts-morph-utils/templates/document-model/gen/modules/creators.js.map +1 -1
  84. package/dist/src/ts-morph-utils/templates/document-model/gen/modules/error.d.ts +2 -2
  85. package/dist/src/ts-morph-utils/templates/document-model/gen/modules/error.d.ts.map +1 -1
  86. package/dist/src/ts-morph-utils/templates/document-model/gen/modules/error.js.map +1 -1
  87. package/dist/src/ts-morph-utils/templates/document-model/gen/modules/operations.d.ts +2 -2
  88. package/dist/src/ts-morph-utils/templates/document-model/gen/modules/operations.d.ts.map +1 -1
  89. package/dist/src/ts-morph-utils/templates/document-model/gen/modules/operations.js.map +1 -1
  90. package/dist/src/ts-morph-utils/templates/document-model/gen/ph-factories.d.ts +2 -2
  91. package/dist/src/ts-morph-utils/templates/document-model/gen/ph-factories.d.ts.map +1 -1
  92. package/dist/src/ts-morph-utils/templates/document-model/gen/ph-factories.js.map +1 -1
  93. package/dist/src/ts-morph-utils/templates/document-model/gen/reducer.d.ts +2 -2
  94. package/dist/src/ts-morph-utils/templates/document-model/gen/reducer.d.ts.map +1 -1
  95. package/dist/src/ts-morph-utils/templates/document-model/gen/reducer.js +1 -1
  96. package/dist/src/ts-morph-utils/templates/document-model/gen/reducer.js.map +1 -1
  97. package/dist/src/ts-morph-utils/templates/document-model/gen/types.d.ts +2 -2
  98. package/dist/src/ts-morph-utils/templates/document-model/gen/types.d.ts.map +1 -1
  99. package/dist/src/ts-morph-utils/templates/document-model/gen/types.js +14 -14
  100. package/dist/src/ts-morph-utils/templates/document-model/gen/types.js.map +1 -1
  101. package/dist/src/ts-morph-utils/templates/document-model/gen/utils.d.ts +2 -2
  102. package/dist/src/ts-morph-utils/templates/document-model/gen/utils.d.ts.map +1 -1
  103. package/dist/src/ts-morph-utils/templates/document-model/gen/utils.js +18 -18
  104. package/dist/src/ts-morph-utils/templates/document-model/gen/utils.js.map +1 -1
  105. package/dist/src/ts-morph-utils/templates/document-model/hooks.d.ts +2 -2
  106. package/dist/src/ts-morph-utils/templates/document-model/hooks.d.ts.map +1 -1
  107. package/dist/src/ts-morph-utils/templates/document-model/hooks.js +1 -1
  108. package/dist/src/ts-morph-utils/templates/document-model/hooks.js.map +1 -1
  109. package/dist/src/ts-morph-utils/templates/document-model/module.d.ts +2 -2
  110. package/dist/src/ts-morph-utils/templates/document-model/module.d.ts.map +1 -1
  111. package/dist/src/ts-morph-utils/templates/document-model/module.js +3 -3
  112. package/dist/src/ts-morph-utils/templates/document-model/module.js.map +1 -1
  113. package/dist/src/ts-morph-utils/templates/document-model/src/tests/document-model.test.d.ts +2 -2
  114. package/dist/src/ts-morph-utils/templates/document-model/src/tests/document-model.test.d.ts.map +1 -1
  115. package/dist/src/ts-morph-utils/templates/document-model/src/tests/document-model.test.js +1 -1
  116. package/dist/src/ts-morph-utils/templates/document-model/src/tests/document-model.test.js.map +1 -1
  117. package/dist/src/ts-morph-utils/templates/document-model/src/tests/module.test.d.ts +5 -2
  118. package/dist/src/ts-morph-utils/templates/document-model/src/tests/module.test.d.ts.map +1 -1
  119. package/dist/src/ts-morph-utils/templates/document-model/src/tests/module.test.js +24 -4
  120. package/dist/src/ts-morph-utils/templates/document-model/src/tests/module.test.js.map +1 -1
  121. package/dist/src/ts-morph-utils/templates/document-model/upgrades/upgrade-transition.d.ts +7 -0
  122. package/dist/src/ts-morph-utils/templates/document-model/upgrades/upgrade-transition.d.ts.map +1 -0
  123. package/dist/src/ts-morph-utils/templates/document-model/upgrades/upgrade-transition.js +22 -0
  124. package/dist/src/ts-morph-utils/templates/document-model/upgrades/upgrade-transition.js.map +1 -0
  125. package/dist/src/utils/mock.d.ts +2 -3
  126. package/dist/src/utils/mock.d.ts.map +1 -1
  127. package/dist/src/utils/mock.js +4 -4
  128. package/dist/src/utils/mock.js.map +1 -1
  129. package/dist/tsconfig.tsbuildinfo +1 -1
  130. package/package.json +18 -15
  131. package/dist/src/codegen/__tests__/generate-schemas.test.d.ts +0 -2
  132. package/dist/src/codegen/__tests__/generate-schemas.test.d.ts.map +0 -1
  133. package/dist/src/codegen/__tests__/generate-schemas.test.js +0 -143
  134. package/dist/src/codegen/__tests__/generate-schemas.test.js.map +0 -1
@@ -1,23 +1,20 @@
1
- import { TSMorphCodeGenerator } from "../../ts-morph-generator/index.js";
1
+ import { paramCase } from "change-case";
2
+ import { writeFileSync } from "fs";
3
+ import path from "path";
4
+ import {} from "ts-morph";
5
+ import { generateDocumentModelZodSchemas } from "../../codegen/graphql.js";
2
6
  import { documentModelModulesOutputFileName, documentModelModulesVariableName, documentModelModulesVariableType, documentModelModuleTypeName, } from "../constants.js";
7
+ import { formatSourceFileWithPrettier, getOrCreateSourceFile, } from "../file-utils.js";
3
8
  import { getDocumentModelFilePaths } from "../name-builders/get-file-paths.js";
4
- import { getDocumentModelVariableNames } from "../name-builders/get-variable-names.js";
9
+ import { getDocumentModelDirName, getDocumentModelVariableNames, } from "../name-builders/get-variable-names.js";
10
+ import { getInitialStates } from "../templates/unsafe-utils.js";
5
11
  import { buildTsMorphProject } from "../ts-morph-project.js";
6
12
  import { makeGenDirFiles } from "./document-model/gen-dir.js";
7
13
  import { makeRootDirFiles } from "./document-model/root-dir.js";
8
14
  import { makeSrcDirFiles } from "./document-model/src-dir.js";
15
+ import { createOrUpdateUpgradeManifestFile, createOrUpdateVersionConstantsFile, makeUpgradeFile, makeUpgradesIndexFile, } from "./document-model/upgrades-dir.js";
9
16
  import { makeModulesFile } from "./module-files.js";
10
- function ensureDirectoriesExist(project, variables) {
11
- const { documentModelsDirPath, documentModelDirPath, srcDirPath, genDirPath, testsDirPath, schemaDirPath, moduleDirPaths, } = variables;
12
- const pathsToEnsure = [
13
- documentModelsDirPath,
14
- documentModelDirPath,
15
- srcDirPath,
16
- genDirPath,
17
- testsDirPath,
18
- schemaDirPath,
19
- ...moduleDirPaths,
20
- ];
17
+ function ensureDirectoriesExist(project, ...pathsToEnsure) {
21
18
  for (const dirPath of pathsToEnsure) {
22
19
  const dir = project.getDirectory(dirPath);
23
20
  if (!dir) {
@@ -26,32 +23,180 @@ function ensureDirectoriesExist(project, variables) {
26
23
  }
27
24
  }
28
25
  }
29
- export async function tsMorphGenerateDocumentModel({ projectDir, packageName, documentModelState, }) {
30
- const project = buildTsMorphProject(projectDir);
31
- const documentModelVariableNames = getDocumentModelVariableNames({
32
- packageName,
33
- projectDir,
34
- documentModelState,
35
- });
36
- ensureDirectoriesExist(project, documentModelVariableNames);
37
- const { documentModelsSourceFilesPath } = getDocumentModelFilePaths(projectDir);
38
- project.addSourceFilesAtPaths(documentModelsSourceFilesPath);
26
+ function makeDocumentModelIndexFile(args) {
27
+ const { project, documentModelDirPath, latestVersion } = args;
28
+ const filePath = path.join(documentModelDirPath, "index.ts");
29
+ const { sourceFile } = getOrCreateSourceFile(project, filePath);
30
+ sourceFile.replaceWithText("");
31
+ sourceFile.addExportDeclarations([
32
+ { moduleSpecifier: `./v${latestVersion}/index.js` },
33
+ { moduleSpecifier: `./upgrades/index.js` },
34
+ ]);
35
+ formatSourceFileWithPrettier(sourceFile);
36
+ }
37
+ function writeDocumentModelStateJsonFile({ documentModelState, documentModelDirName, documentModelDirPath, }) {
38
+ const filePath = path.join(documentModelDirPath, `${documentModelDirName}.json`);
39
+ const documentModelStateJson = JSON.stringify(documentModelState, null, 2);
40
+ writeFileSync(filePath, documentModelStateJson);
41
+ }
42
+ async function generateDocumentModelForSpec({ project, projectDir, packageName, documentModelState, documentModelPackageImportPath, documentModelsDirPath, documentModelDirName, documentModelDirPath, useVersioning, version, ...documentModelVariableNames }) {
43
+ const specification = documentModelState.specifications.find((spec) => spec.version === version);
44
+ if (!specification) {
45
+ throw new Error(`Document model specifications array is misconfigured, no specification found for version: ${version}`);
46
+ }
47
+ const versionDirName = useVersioning ? `v${version}` : "";
48
+ const documentModelVersionDirName = path.join(documentModelDirName, versionDirName);
49
+ const documentModelVersionDirPath = path.join(documentModelDirPath, versionDirName);
50
+ const versionedDocumentModelPackageImportPath = path.join(documentModelPackageImportPath, versionDirName);
51
+ const fileExtension = documentModelState.extension;
52
+ const documentTypeId = documentModelState.id;
53
+ const srcDirPath = path.join(documentModelVersionDirPath, "src");
54
+ const reducersDirPath = path.join(srcDirPath, "reducers");
55
+ const testsDirPath = path.join(srcDirPath, "tests");
56
+ const genDirPath = path.join(documentModelVersionDirPath, "gen");
57
+ const schemaDirPath = path.join(genDirPath, "schema");
58
+ const { initialGlobalState, initialLocalState } = getInitialStates(specification.state);
59
+ const hasLocalSchema = specification.state.local.schema !== "";
60
+ const modules = specification.modules;
61
+ const moduleDirPaths = modules.map((module) => path.join(genDirPath, paramCase(module.name)));
62
+ ensureDirectoriesExist(project, documentModelVersionDirPath, reducersDirPath, testsDirPath, schemaDirPath, ...moduleDirPaths);
39
63
  const fileMakerArgs = {
40
64
  project,
41
65
  projectDir,
42
66
  packageName,
67
+ version,
68
+ useVersioning,
69
+ documentTypeId,
70
+ documentModelState,
71
+ initialGlobalState,
72
+ initialLocalState,
73
+ modules,
74
+ hasLocalSchema,
75
+ documentModelsDirPath,
76
+ documentModelDirPath,
77
+ documentModelDirName,
78
+ documentModelVersionDirName,
79
+ documentModelVersionDirPath,
80
+ documentModelPackageImportPath,
81
+ versionedDocumentModelPackageImportPath,
82
+ srcDirPath,
83
+ genDirPath,
84
+ testsDirPath,
85
+ schemaDirPath,
86
+ reducersDirPath,
87
+ fileExtension,
43
88
  ...documentModelVariableNames,
44
89
  };
90
+ await generateDocumentModelZodSchemas({
91
+ documentModelDirPath: documentModelVersionDirPath,
92
+ specification,
93
+ });
45
94
  makeRootDirFiles(fileMakerArgs);
46
95
  makeGenDirFiles(fileMakerArgs);
47
96
  makeSrcDirFiles(fileMakerArgs);
48
97
  makeDocumentModelModulesFile(fileMakerArgs);
49
- project.saveSync();
50
- const generator = new TSMorphCodeGenerator(projectDir, [documentModelState], packageName, {
51
- directories: { documentModelDir: "document-models" },
52
- forceUpdate: true,
98
+ if (!useVersioning)
99
+ return;
100
+ const previousVersionDirPath = getPreviousVersionDirPath(documentModelDirPath, version);
101
+ if (!previousVersionDirPath)
102
+ return;
103
+ persistCustomFilesFromPreviousVersion({
104
+ project,
105
+ currentVersionDirPath: documentModelVersionDirPath,
106
+ previousVersionDirPath,
107
+ });
108
+ }
109
+ export async function tsMorphGenerateDocumentModel({ projectDir, packageName, documentModelState, useVersioning, }) {
110
+ const project = buildTsMorphProject(projectDir);
111
+ const { documentModelsSourceFilesPath } = getDocumentModelFilePaths(projectDir);
112
+ project.addSourceFilesAtPaths(documentModelsSourceFilesPath);
113
+ const documentModelsDirPath = path.join(projectDir, "document-models");
114
+ const documentModelDirName = getDocumentModelDirName(documentModelState);
115
+ const documentModelDirPath = path.join(documentModelsDirPath, documentModelDirName);
116
+ const documentModelVariableNames = getDocumentModelVariableNames(documentModelState.name);
117
+ ensureDirectoriesExist(project, documentModelsDirPath, documentModelDirPath);
118
+ const upgradesDirPath = path.join(documentModelDirPath, "upgrades");
119
+ if (useVersioning) {
120
+ ensureDirectoriesExist(project, upgradesDirPath);
121
+ }
122
+ const documentModelPackageImportPath = path.join(packageName, "document-models", documentModelDirName);
123
+ const specVersions = [
124
+ ...new Set([
125
+ ...documentModelState.specifications.map((spec) => spec.version),
126
+ ]),
127
+ ].toSorted();
128
+ if (specVersions.length !== documentModelState.specifications.length) {
129
+ throw new Error("Document model specifications array is misconfigured. Length is not match with spec versions.");
130
+ }
131
+ const latestVersion = specVersions[specVersions.length - 1];
132
+ if (documentModelState.specifications[documentModelState.specifications.length - 1].version !== latestVersion) {
133
+ throw new Error("Document model has incorrect version at the latest version index");
134
+ }
135
+ writeDocumentModelStateJsonFile({
136
+ documentModelState,
137
+ documentModelDirName,
138
+ documentModelDirPath,
53
139
  });
54
- await generator.generateReducers();
140
+ if (useVersioning) {
141
+ await Promise.all(specVersions.map(async (version) => await generateDocumentModelForSpec({
142
+ project,
143
+ version,
144
+ useVersioning: true,
145
+ packageName,
146
+ documentModelState,
147
+ projectDir,
148
+ documentModelsDirPath,
149
+ documentModelDirName,
150
+ documentModelDirPath,
151
+ documentModelPackageImportPath,
152
+ ...documentModelVariableNames,
153
+ })));
154
+ for (const version of specVersions) {
155
+ makeUpgradeFile({
156
+ version,
157
+ upgradesDirPath,
158
+ project,
159
+ documentModelPackageImportPath,
160
+ ...documentModelVariableNames,
161
+ });
162
+ }
163
+ makeDocumentModelIndexFile({
164
+ project,
165
+ documentModelDirPath,
166
+ latestVersion,
167
+ });
168
+ createOrUpdateVersionConstantsFile({
169
+ project,
170
+ specVersions,
171
+ latestVersion,
172
+ upgradesDirPath,
173
+ });
174
+ createOrUpdateUpgradeManifestFile({
175
+ project,
176
+ specVersions,
177
+ latestVersion,
178
+ upgradesDirPath,
179
+ documentModelId: documentModelState.id,
180
+ ...documentModelVariableNames,
181
+ });
182
+ makeUpgradesIndexFile({ project, upgradesDirPath, specVersions });
183
+ }
184
+ else {
185
+ await generateDocumentModelForSpec({
186
+ project,
187
+ useVersioning: false,
188
+ version: latestVersion,
189
+ packageName,
190
+ documentModelState,
191
+ projectDir,
192
+ documentModelsDirPath,
193
+ documentModelDirName,
194
+ documentModelDirPath,
195
+ documentModelPackageImportPath,
196
+ ...documentModelVariableNames,
197
+ });
198
+ }
199
+ project.saveSync();
55
200
  }
56
201
  export function makeDocumentModelModulesFile({ project, projectDir, }) {
57
202
  const { documentModelsDirPath, documentModelsSourceFilesPath } = getDocumentModelFilePaths(projectDir);
@@ -65,4 +210,41 @@ export function makeDocumentModelModulesFile({ project, projectDir, }) {
65
210
  variableType: documentModelModulesVariableType,
66
211
  });
67
212
  }
213
+ function getPreviousVersionDirPath(documentModelDirPath, version) {
214
+ const previousVersion = version - 1;
215
+ if (previousVersion < 1)
216
+ return;
217
+ const previousVersionDirName = `v${previousVersion}`;
218
+ return path.join(documentModelDirPath, previousVersionDirName);
219
+ }
220
+ function persistCustomFilesFromPreviousVersion(args) {
221
+ const { project, currentVersionDirPath, previousVersionDirPath } = args;
222
+ const currentVersionDir = project.getDirectoryOrThrow(currentVersionDirPath);
223
+ const previousVersionDir = project.getDirectory(previousVersionDirPath);
224
+ if (!previousVersionDir)
225
+ return;
226
+ const currentVersionSourceFiles = currentVersionDir.getDescendantSourceFiles();
227
+ const previousVersionSourceFiles = previousVersionDir.getDescendantSourceFiles();
228
+ const currentVersionDirs = currentVersionDir.getDescendantDirectories();
229
+ const previousVersionDirs = previousVersionDir.getDescendantDirectories();
230
+ const previousVersionRelativeDirPaths = previousVersionDirs.map((d) => previousVersionDir.getRelativePathTo(d));
231
+ const currentVersionRelativeDirPaths = currentVersionDirs.map((d) => currentVersionDir.getRelativePathTo(d));
232
+ const missingDirPaths = previousVersionRelativeDirPaths.filter((p) => !currentVersionRelativeDirPaths.includes(p));
233
+ const missingDirs = previousVersionDirs.filter((f) => missingDirPaths.includes(previousVersionDir.getRelativePathTo(f)));
234
+ for (const dir of missingDirs) {
235
+ const relativePath = previousVersionDir.getRelativePathTo(dir);
236
+ const newDir = currentVersionDir.createDirectory(relativePath);
237
+ newDir.saveSync();
238
+ }
239
+ const previousVersionRelativeFilePaths = previousVersionSourceFiles.map((f) => previousVersionDir.getRelativePathTo(f));
240
+ const currentVersionRelativeFilePaths = currentVersionSourceFiles.map((f) => currentVersionDir.getRelativePathTo(f));
241
+ const missingFilePaths = previousVersionRelativeFilePaths.filter((p) => !currentVersionRelativeFilePaths.includes(p));
242
+ const missingFiles = previousVersionSourceFiles.filter((f) => missingFilePaths.includes(previousVersionDir.getRelativePathTo(f)));
243
+ for (const file of missingFiles) {
244
+ const relativePath = previousVersionDir.getRelativePathTo(file);
245
+ const fileText = file.getText();
246
+ const newFile = currentVersionDir.createSourceFile(relativePath, fileText);
247
+ newFile.saveSync();
248
+ }
249
+ }
68
250
  //# sourceMappingURL=document-model.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"document-model.js","sourceRoot":"","sources":["../../../../src/ts-morph-utils/file-builders/document-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"document-model.js","sourceRoot":"","sources":["../../../../src/ts-morph-utils/file-builders/document-model.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,8 @@ type MakeLegacyIndexFileArgs = {
5
5
  /** The directory containing the module.ts files to generate from */
6
6
  modulesDirPath: string;
7
7
  modules: {
8
- name: string;
8
+ unversionedName: string;
9
+ versionedName: string | undefined;
9
10
  moduleSpecifier: string;
10
11
  }[];
11
12
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index-files.d.ts","sourceRoot":"","sources":["../../../../src/ts-morph-utils/file-builders/index-files.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGxC,KAAK,uBAAuB,GAAG;IAC7B,oDAAoD;IACpD,OAAO,EAAE,OAAO,CAAC;IACjB,oEAAoE;IACpE,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,eAAe,EAAE,MAAM,CAAC;KACzB,EAAE,CAAC;CACL,CAAC;AAEF;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,OAAO,EACP,cAAc,EACd,OAAO,GACR,EAAE,uBAAuB,QAqBzB"}
1
+ {"version":3,"file":"index-files.d.ts","sourceRoot":"","sources":["../../../../src/ts-morph-utils/file-builders/index-files.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGxC,KAAK,uBAAuB,GAAG;IAC7B,oDAAoD;IACpD,OAAO,EAAE,OAAO,CAAC;IACjB,oEAAoE;IACpE,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE;QACP,eAAe,EAAE,MAAM,CAAC;QACxB,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;QAClC,eAAe,EAAE,MAAM,CAAC;KACzB,EAAE,CAAC;CACL,CAAC;AAEF;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,OAAO,EACP,cAAc,EACd,OAAO,GACR,EAAE,uBAAuB,QAyBzB"}
@@ -13,8 +13,12 @@ export function makeLegacyIndexFile({ project, modulesDirPath, modules, }) {
13
13
  else {
14
14
  indexSourceFile.replaceWithText("");
15
15
  }
16
- indexSourceFile.addExportDeclarations(modules.map(({ name, moduleSpecifier }) => ({
17
- namedExports: [name],
16
+ indexSourceFile.addExportDeclarations(modules.map(({ versionedName, unversionedName, moduleSpecifier }) => ({
17
+ namedExports: [
18
+ versionedName
19
+ ? `${unversionedName} as ${versionedName}`
20
+ : unversionedName,
21
+ ],
18
22
  moduleSpecifier,
19
23
  })));
20
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index-files.js","sourceRoot":"","sources":["../../../../src/ts-morph-utils/file-builders/index-files.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAa9E;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAClC,OAAO,EACP,cAAc,EACd,OAAO,GACiB;IACxB,MAAM,mBAAmB,GAAG,0BAA0B,CACpD,cAAc,EACd,UAAU,CACX,CAAC;IAEF,yDAAyD;IACzD,IAAI,eAAe,GAAG,OAAO,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;IACjE,gDAAgD;IAChD,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC;IACtE,CAAC;SAAM,CAAC;QACN,eAAe,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,eAAe,CAAC,qBAAqB,CACnC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC,CAAC;QAC1C,YAAY,EAAE,CAAC,IAAI,CAAC;QACpB,eAAe;KAChB,CAAC,CAAC,CACJ,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index-files.js","sourceRoot":"","sources":["../../../../src/ts-morph-utils/file-builders/index-files.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAc9E;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAClC,OAAO,EACP,cAAc,EACd,OAAO,GACiB;IACxB,MAAM,mBAAmB,GAAG,0BAA0B,CACpD,cAAc,EACd,UAAU,CACX,CAAC;IAEF,yDAAyD;IACzD,IAAI,eAAe,GAAG,OAAO,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;IACjE,gDAAgD;IAChD,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC;IACtE,CAAC;SAAM,CAAC;QACN,eAAe,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,eAAe,CAAC,qBAAqB,CACnC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,EAAE,eAAe,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC,CAAC;QACpE,YAAY,EAAE;YACZ,aAAa;gBACX,CAAC,CAAC,GAAG,eAAe,OAAO,aAAa,EAAE;gBAC1C,CAAC,CAAC,eAAe;SACpB;QACD,eAAe;KAChB,CAAC,CAAC,CACJ,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"module-files.d.ts","sourceRoot":"","sources":["../../../../src/ts-morph-utils/file-builders/module-files.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAMxC,KAAK,kBAAkB,GAAG;IACxB,+CAA+C;IAC/C,OAAO,EAAE,OAAO,CAAC;IACjB,oEAAoE;IACpE,cAAc,EAAE,MAAM,CAAC;IACvB,uDAAuD;IACvD,sBAAsB,EAAE,MAAM,CAAC;IAC/B,uGAAuG;IACvG,cAAc,EAAE,MAAM,CAAC;IACvB,iHAAiH;IACjH,QAAQ,EAAE,MAAM,CAAC;IACjB,4FAA4F;IAC5F,YAAY,EAAE,MAAM,CAAC;IACrB,+GAA+G;IAC/G,YAAY,EAAE,MAAM,CAAC;IACrB,0FAA0F;IAC1F,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACrC,CAAC;AAEF;;GAEG;AACH,wBAAgB,eAAe,CAAC,EAC9B,OAAO,EACP,cAAc,EACd,sBAAsB,EACtB,cAAc,EACd,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,yBAAgC,GACjC,EAAE,kBAAkB,QAyGpB"}
1
+ {"version":3,"file":"module-files.d.ts","sourceRoot":"","sources":["../../../../src/ts-morph-utils/file-builders/module-files.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAMxC,KAAK,kBAAkB,GAAG;IACxB,+CAA+C;IAC/C,OAAO,EAAE,OAAO,CAAC;IACjB,oEAAoE;IACpE,cAAc,EAAE,MAAM,CAAC;IACvB,uDAAuD;IACvD,sBAAsB,EAAE,MAAM,CAAC;IAC/B,uGAAuG;IACvG,cAAc,EAAE,MAAM,CAAC;IACvB,iHAAiH;IACjH,QAAQ,EAAE,MAAM,CAAC;IACjB,4FAA4F;IAC5F,YAAY,EAAE,MAAM,CAAC;IACrB,+GAA+G;IAC/G,YAAY,EAAE,MAAM,CAAC;IACrB,0FAA0F;IAC1F,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACrC,CAAC;AACF;;GAEG;AACH,wBAAgB,eAAe,CAAC,EAC9B,OAAO,EACP,cAAc,EACd,sBAAsB,EACtB,cAAc,EACd,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,yBAAgC,GACjC,EAAE,kBAAkB,QAoHpB"}
@@ -1,3 +1,4 @@
1
+ import { pascalCase } from "change-case";
1
2
  import { SyntaxKind, VariableDeclarationKind } from "ts-morph";
2
3
  import { buildModulesOutputFilePath } from "../name-builders/common-files.js";
3
4
  import { getVariableDeclarationByTypeName } from "../syntax-getters.js";
@@ -20,12 +21,14 @@ export function makeModulesFile({ project, modulesDirPath, modulesSourceFilesPat
20
21
  const modules = moduleDeclarations
21
22
  .filter((module) => module !== undefined)
22
23
  .map((module) => {
23
- const name = module.getName();
24
24
  const sourceFile = module.getSourceFile();
25
- const parentDir = sourceFile.getDirectory();
26
- const parentDirName = parentDir.getBaseName();
27
- const moduleSpecifier = `./${parentDirName}/module.js`;
28
- return { name, moduleSpecifier };
25
+ const moduleSpecifier = modulesDir.getRelativePathAsModuleSpecifierTo(sourceFile.getFilePath()) + ".js";
26
+ const versionDir = getVersionDirFromModuleSpecifier(moduleSpecifier);
27
+ const unversionedName = module.getName();
28
+ const versionedName = versionDir
29
+ ? `${unversionedName}${pascalCase(versionDir)}`
30
+ : undefined;
31
+ return { versionedName, unversionedName, moduleSpecifier };
29
32
  });
30
33
  const moduleExportsFilePath = buildModulesOutputFilePath(modulesDirPath, outputFileName);
31
34
  // get the source file for the modules file if it exists
@@ -42,8 +45,12 @@ export function makeModulesFile({ project, modulesDirPath, modulesSourceFilesPat
42
45
  moduleSpecifier: "document-model",
43
46
  isTypeOnly: true,
44
47
  };
45
- const moduleImports = modules.map(({ name, moduleSpecifier }) => ({
46
- namedImports: [name],
48
+ const moduleImports = modules.map(({ versionedName, unversionedName, moduleSpecifier }) => ({
49
+ namedImports: [
50
+ versionedName
51
+ ? `${unversionedName} as ${versionedName}`
52
+ : unversionedName,
53
+ ],
47
54
  moduleSpecifier,
48
55
  }));
49
56
  const imports = [typeImport, ...moduleImports];
@@ -78,7 +85,7 @@ export function makeModulesFile({ project, modulesDirPath, modulesSourceFilesPat
78
85
  .at(0)
79
86
  ?.getInitializerIfKind(SyntaxKind.ArrayLiteralExpression);
80
87
  // add the module declaration names to the array literal expression
81
- arrayLiteral?.addElements(modules.map((module) => module.name), { useNewLines: true });
88
+ arrayLiteral?.addElements(modules.map((module) => module.versionedName ?? module.unversionedName), { useNewLines: true });
82
89
  // we also need to export each module from the index.ts file for backwards compatibility
83
90
  if (shouldMakeLegacyIndexFile) {
84
91
  makeLegacyIndexFile({
@@ -89,4 +96,9 @@ export function makeModulesFile({ project, modulesDirPath, modulesSourceFilesPat
89
96
  }
90
97
  project.saveSync();
91
98
  }
99
+ function getVersionDirFromModuleSpecifier(moduleSpecifier) {
100
+ const match = moduleSpecifier.match(/\/(v\d+)(?=\/)/);
101
+ const version = match?.[1];
102
+ return version;
103
+ }
92
104
  //# sourceMappingURL=module-files.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"module-files.js","sourceRoot":"","sources":["../../../../src/ts-morph-utils/file-builders/module-files.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"module-files.js","sourceRoot":"","sources":["../../../../src/ts-morph-utils/file-builders/module-files.ts"],"names":[],"mappings":"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"}
@@ -2,14 +2,11 @@ import { type DocumentModelGlobalState, type ModuleSpecification, type Operation
2
2
  import type { DocumentModelDocumentTypeMetadata, EditorVariableNames } from "../types.js";
3
3
  import type { ActionFromOperation } from "./types.js";
4
4
  export declare function getEditorVariableNames({ documentModelDocumentTypeName, }: DocumentModelDocumentTypeMetadata): EditorVariableNames;
5
- type GetDocumentModelVariableNamesArgs = {
6
- packageName: string;
7
- projectDir: string;
8
- documentModelState: DocumentModelGlobalState;
9
- };
10
- export declare function getDocumentModelVariableNames({ packageName, projectDir, documentModelState, }: GetDocumentModelVariableNamesArgs): {
11
- documentModelState: DocumentModelGlobalState;
12
- documentTypeId: string;
5
+ export declare function getDocumentModelDirName(documentModelState: DocumentModelGlobalState, existingDirName?: string): string;
6
+ export declare function getLatestDocumentModelSpec({ specifications, }: DocumentModelGlobalState): import("document-model").DocumentSpecification;
7
+ export declare function getDocumentModelSpecByVersionNumber({ specifications }: DocumentModelGlobalState, version: number): import("document-model").DocumentSpecification;
8
+ export declare function getLatestDocumentModelSpecVersionNumber(documentModelState: DocumentModelGlobalState): number;
9
+ export declare function getDocumentModelVariableNames(documentType: string): {
13
10
  paramCaseDocumentType: string;
14
11
  pascalCaseDocumentType: string;
15
12
  camelCaseDocumentType: string;
@@ -22,14 +19,6 @@ export declare function getDocumentModelVariableNames({ packageName, projectDir,
22
19
  actionTypeName: string;
23
20
  actionsTypeName: string;
24
21
  actionsName: string;
25
- documentModelDir: string;
26
- documentModelsDirPath: string;
27
- documentModelDirPath: string;
28
- srcDirPath: string;
29
- genDirPath: string;
30
- testsDirPath: string;
31
- schemaDirPath: string;
32
- moduleDirPaths: string[];
33
22
  stateSchemaName: string;
34
23
  phDocumentSchemaName: string;
35
24
  isPhStateOfTypeFunctionName: string;
@@ -40,16 +29,9 @@ export declare function getDocumentModelVariableNames({ packageName, projectDir,
40
29
  useSelectedHookName: string;
41
30
  useInSelectedDriveHookName: string;
42
31
  useInSelectedFolderHookName: string;
43
- fileExtension: string;
44
- initialGlobalState: string;
45
- initialLocalState: string;
46
- hasLocalSchema: boolean;
47
- modules: ModuleSpecification[];
48
32
  };
49
33
  export declare function getDocumentModelOperationsModuleVariableNames(module: ModuleSpecification): {
50
34
  actions: ActionFromOperation[];
51
35
  errors: OperationErrorSpecification[];
52
- module: ModuleSpecification;
53
36
  };
54
- export {};
55
37
  //# sourceMappingURL=get-variable-names.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-variable-names.d.ts","sourceRoot":"","sources":["../../../../src/ts-morph-utils/name-builders/get-variable-names.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,EACxB,KAAK,2BAA2B,EAEjC,MAAM,gBAAgB,CAAC;AAGxB,OAAO,KAAK,EACV,iCAAiC,EACjC,mBAAmB,EACpB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAetD,wBAAgB,sBAAsB,CAAC,EACrC,6BAA6B,GAC9B,EAAE,iCAAiC,GAAG,mBAAmB,CAkCzD;AAED,KAAK,iCAAiC,GAAG;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,EAAE,wBAAwB,CAAC;CAC9C,CAAC;AACF,wBAAgB,6BAA6B,CAAC,EAC5C,WAAW,EACX,UAAU,EACV,kBAAkB,GACnB,EAAE,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuFnC;AAED,wBAAgB,6CAA6C,CAC3D,MAAM,EAAE,mBAAmB;;;;EAK5B"}
1
+ {"version":3,"file":"get-variable-names.d.ts","sourceRoot":"","sources":["../../../../src/ts-morph-utils/name-builders/get-variable-names.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,EACxB,KAAK,2BAA2B,EAEjC,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EACV,iCAAiC,EACjC,mBAAmB,EACpB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAetD,wBAAgB,sBAAsB,CAAC,EACrC,6BAA6B,GAC9B,EAAE,iCAAiC,GAAG,mBAAmB,CAkCzD;AAED,wBAAgB,uBAAuB,CACrC,kBAAkB,EAAE,wBAAwB,EAC5C,eAAe,CAAC,EAAE,MAAM,UAIzB;AAED,wBAAgB,0BAA0B,CAAC,EACzC,cAAc,GACf,EAAE,wBAAwB,kDAE1B;AAED,wBAAgB,mCAAmC,CACjD,EAAE,cAAc,EAAE,EAAE,wBAAwB,EAC5C,OAAO,EAAE,MAAM,kDAoBhB;AAED,wBAAgB,uCAAuC,CACrD,kBAAkB,EAAE,wBAAwB,UAG7C;AAED,wBAAgB,6BAA6B,CAAC,YAAY,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;EAiDjE;AAED,wBAAgB,6CAA6C,CAC3D,MAAM,EAAE,mBAAmB;;;EAK5B"}
@@ -1,7 +1,5 @@
1
1
  import { camelCase, paramCase, pascalCase } from "change-case";
2
2
  import {} from "document-model";
3
- import path from "node:path";
4
- import { getInitialStates } from "../templates/unsafe-utils.js";
5
3
  import { buildDispatchFunctionName, buildDocumentNameVariableName, buildDocumentVariableName, buildEditDocumentNameComponentName, buildIsEditingVariableName, buildOnCancelEditHandlerName, buildOnClickHandlerName, buildOnSubmitSetNameFunctionName, buildSetIsEditingFunctionName, buildSetNameActionName, buildUseSelectedDocumentHookName, } from "./variables.js";
6
4
  export function getEditorVariableNames({ documentModelDocumentTypeName, }) {
7
5
  return {
@@ -18,10 +16,31 @@ export function getEditorVariableNames({ documentModelDocumentTypeName, }) {
18
16
  onSubmitSetNameFunctionName: buildOnSubmitSetNameFunctionName(documentModelDocumentTypeName),
19
17
  };
20
18
  }
21
- export function getDocumentModelVariableNames({ packageName, projectDir, documentModelState, }) {
22
- const documentType = documentModelState.name;
23
- const documentTypeId = documentModelState.id;
24
- const latestSpec = documentModelState.specifications[documentModelState.specifications.length - 1];
19
+ export function getDocumentModelDirName(documentModelState, existingDirName) {
20
+ if (existingDirName)
21
+ return existingDirName;
22
+ return paramCase(documentModelState.name);
23
+ }
24
+ export function getLatestDocumentModelSpec({ specifications, }) {
25
+ return specifications[specifications.length - 1];
26
+ }
27
+ export function getDocumentModelSpecByVersionNumber({ specifications }, version) {
28
+ const specificationByIndex = specifications[version];
29
+ const specificationByNumber = specifications.find((spec) => spec.version === version);
30
+ if (!specificationByNumber) {
31
+ console.error(`Specification with version number ${version} does not exist in the document model specifications array`);
32
+ return specificationByIndex;
33
+ }
34
+ if (specificationByIndex.version !== specificationByNumber.version) {
35
+ console.error(`Specification with version ${version} does not match specifications array at index ${version}`);
36
+ return specificationByIndex;
37
+ }
38
+ return specificationByNumber;
39
+ }
40
+ export function getLatestDocumentModelSpecVersionNumber(documentModelState) {
41
+ return getLatestDocumentModelSpec(documentModelState).version;
42
+ }
43
+ export function getDocumentModelVariableNames(documentType) {
25
44
  const paramCaseDocumentType = paramCase(documentType);
26
45
  const pascalCaseDocumentType = pascalCase(documentType);
27
46
  const camelCaseDocumentType = camelCase(documentType);
@@ -34,13 +53,6 @@ export function getDocumentModelVariableNames({ packageName, projectDir, documen
34
53
  const actionTypeName = `${pascalCaseDocumentType}Action`;
35
54
  const actionsTypeName = `${actionTypeName}s`;
36
55
  const actionsName = camelCase(actionsTypeName);
37
- const documentModelDir = `${packageName}/document-models/${paramCaseDocumentType}`;
38
- const documentModelsDirPath = path.join(projectDir, "document-models");
39
- const documentModelDirPath = path.join(documentModelsDirPath, paramCaseDocumentType);
40
- const srcDirPath = path.join(documentModelDirPath, "src");
41
- const testsDirPath = path.join(srcDirPath, "tests");
42
- const genDirPath = path.join(documentModelDirPath, "gen");
43
- const schemaDirPath = path.join(genDirPath, "schema");
44
56
  const stateSchemaName = `${stateName}Schema`;
45
57
  const phDocumentSchemaName = `${phDocumentTypeName}Schema`;
46
58
  const isPhStateOfTypeFunctionName = `is${stateName}`;
@@ -51,14 +63,7 @@ export function getDocumentModelVariableNames({ packageName, projectDir, documen
51
63
  const useSelectedHookName = `useSelected${phDocumentTypeName}`;
52
64
  const useInSelectedDriveHookName = `use${phDocumentTypeName}sInSelectedDrive`;
53
65
  const useInSelectedFolderHookName = `use${phDocumentTypeName}sInSelectedFolder`;
54
- const fileExtension = documentModelState.extension;
55
- const { initialGlobalState, initialLocalState } = getInitialStates(latestSpec.state);
56
- const hasLocalSchema = latestSpec.state.local.schema !== "";
57
- const modules = latestSpec.modules;
58
- const moduleDirPaths = modules.map((module) => path.join(genDirPath, paramCase(module.name)));
59
66
  return {
60
- documentModelState,
61
- documentTypeId,
62
67
  paramCaseDocumentType,
63
68
  pascalCaseDocumentType,
64
69
  camelCaseDocumentType,
@@ -71,14 +76,6 @@ export function getDocumentModelVariableNames({ packageName, projectDir, documen
71
76
  actionTypeName,
72
77
  actionsTypeName,
73
78
  actionsName,
74
- documentModelDir,
75
- documentModelsDirPath,
76
- documentModelDirPath,
77
- srcDirPath,
78
- genDirPath,
79
- testsDirPath,
80
- schemaDirPath,
81
- moduleDirPaths,
82
79
  stateSchemaName,
83
80
  phDocumentSchemaName,
84
81
  isPhStateOfTypeFunctionName,
@@ -89,17 +86,12 @@ export function getDocumentModelVariableNames({ packageName, projectDir, documen
89
86
  useSelectedHookName,
90
87
  useInSelectedDriveHookName,
91
88
  useInSelectedFolderHookName,
92
- fileExtension,
93
- initialGlobalState,
94
- initialLocalState,
95
- hasLocalSchema,
96
- modules,
97
89
  };
98
90
  }
99
91
  export function getDocumentModelOperationsModuleVariableNames(module) {
100
92
  const actions = getActionsFromModule(module);
101
93
  const errors = getErrorsFromActions(actions);
102
- return { actions, errors, module };
94
+ return { actions, errors };
103
95
  }
104
96
  function getActionFromOperation(operation) {
105
97
  const { name, schema, scope = "global", errors } = operation;
@@ -1 +1 @@
1
- {"version":3,"file":"get-variable-names.js","sourceRoot":"","sources":["../../../../src/ts-morph-utils/name-builders/get-variable-names.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-variable-names.js","sourceRoot":"","sources":["../../../../src/ts-morph-utils/name-builders/get-variable-names.ts"],"names":[],"mappings":"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"}