@powerhousedao/codegen 4.1.0-dev.4 → 4.1.0-dev.41
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-custom-subgraph/index.d.ts +14 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-custom-subgraph/index.d.ts.map +1 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-custom-subgraph/index.js +12 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-custom-subgraph/index.js.map +1 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-custom-subgraph/resolvers.esm.t +17 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-custom-subgraph/schema.esm.t +16 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/index.esm.t +9 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/object.esm.t +6 -6
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/ph-factories.esm.t +96 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/reducer.esm.t +7 -3
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/rootIndex.esm.t +2 -4
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/types.esm.t +8 -6
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/utils.esm.t +45 -38
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/customTest.esm.t +2 -2
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/error.esm.t +6 -10
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/index.d.ts +4 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/index.d.ts.map +1 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/index.js +13 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/index.js.map +1 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/object.esm.t +2 -7
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-subgraph/resolvers.esm.t +59 -50
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-subgraph/schema.esm.t +3 -3
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/components/CreateDocument.esm.t +38 -24
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/components/DriveExplorer.esm.t +244 -181
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/components/EditorContainer.esm.t +53 -74
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/components/FolderTree.esm.t +44 -26
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/editor.esm.t +22 -58
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/index.d.ts +16 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/index.d.ts.map +1 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/index.esm.t +2 -3
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/index.js +12 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/index.js.map +1 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/editor.esm.t +1 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/index.d.ts +2 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/index.d.ts.map +1 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/index.esm.t +2 -5
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/index.js +1 -0
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/index.js.map +1 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/factory.esm.t +3 -2
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/index.esm.t +2 -7
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/lib.esm.t +7 -5
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/lib.inject_call.esm.t +1 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/lib.inject_import.esm.t +1 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/factory.esm.t +3 -2
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/index.esm.t +2 -8
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/lib.esm.t +8 -9
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/lib.inject_call.esm.t +2 -2
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/lib.inject_import.esm.t +1 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/schema.esm.t +9 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-subgraph/index.esm.t +2 -33
- package/dist/src/codegen/graphql.d.ts +5 -1
- package/dist/src/codegen/graphql.d.ts.map +1 -1
- package/dist/src/codegen/graphql.js +28 -5
- package/dist/src/codegen/graphql.js.map +1 -1
- package/dist/src/codegen/hygen.d.ts +7 -4
- package/dist/src/codegen/hygen.d.ts.map +1 -1
- package/dist/src/codegen/hygen.js +46 -8
- package/dist/src/codegen/hygen.js.map +1 -1
- package/dist/src/codegen/index.d.ts +7 -6
- package/dist/src/codegen/index.d.ts.map +1 -1
- package/dist/src/codegen/index.js +84 -7
- package/dist/src/codegen/index.js.map +1 -1
- package/dist/src/ts-morph-generator/core/GenerationContext.d.ts +8 -6
- package/dist/src/ts-morph-generator/core/GenerationContext.d.ts.map +1 -1
- package/dist/src/ts-morph-generator/core/TSMorphCodeGenerator.d.ts +1 -0
- package/dist/src/ts-morph-generator/core/TSMorphCodeGenerator.d.ts.map +1 -1
- package/dist/src/ts-morph-generator/core/TSMorphCodeGenerator.js +36 -10
- package/dist/src/ts-morph-generator/core/TSMorphCodeGenerator.js.map +1 -1
- package/dist/src/ts-morph-generator/file-generators/ReducerGenerator.d.ts +3 -0
- package/dist/src/ts-morph-generator/file-generators/ReducerGenerator.d.ts.map +1 -1
- package/dist/src/ts-morph-generator/file-generators/ReducerGenerator.js +85 -14
- package/dist/src/ts-morph-generator/file-generators/ReducerGenerator.js.map +1 -1
- package/dist/tsconfig.hygen.tsbuildinfo +1 -1
- package/dist/tsconfig.lib.tsbuildinfo +1 -1
- package/package.json +13 -6
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/components/FileItemsGrid.esm.t +0 -44
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/components/FolderItemsGrid.esm.t +0 -96
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/hooks/useSelectedFolderChildren.esm.t +0 -35
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/hooks/useTransformedNodes.esm.t +0 -35
|
@@ -64,18 +64,41 @@ export function schemaConfig(name, inDir, outDir) {
|
|
|
64
64
|
},
|
|
65
65
|
};
|
|
66
66
|
}
|
|
67
|
-
export const generateSchema = (model, inDir, { watch = false, skipFormat = false, outDir = inDir, verbose = true } = {}) => {
|
|
67
|
+
export const generateSchema = async (model, inDir, { watch = false, skipFormat = false, outDir = inDir, verbose = true } = {}) => {
|
|
68
68
|
const documentModelConfig = schemaConfig(model, inDir, outDir);
|
|
69
69
|
const config = {
|
|
70
70
|
overwrite: true,
|
|
71
71
|
generates: documentModelConfig,
|
|
72
72
|
watch,
|
|
73
73
|
silent: !verbose,
|
|
74
|
-
hooks: {
|
|
75
|
-
beforeOneFileWrite: skipFormat ? [] : [formatWithPrettierBeforeWrite],
|
|
76
|
-
},
|
|
77
74
|
};
|
|
78
|
-
|
|
75
|
+
// GraphQL Codegen hooks are not working reliably - write files manually
|
|
76
|
+
const fs = await import("node:fs");
|
|
77
|
+
const path = await import("node:path");
|
|
78
|
+
const result = (await generate(config, !verbose));
|
|
79
|
+
for (const fileResult of result) {
|
|
80
|
+
const { filename, content } = fileResult;
|
|
81
|
+
const fullPath = path.resolve(filename);
|
|
82
|
+
const dir = path.dirname(fullPath);
|
|
83
|
+
// Ensure directory exists
|
|
84
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
85
|
+
// Write content (content is already typed as string)
|
|
86
|
+
let finalContent = content;
|
|
87
|
+
// Format if not skipped
|
|
88
|
+
if (!skipFormat) {
|
|
89
|
+
try {
|
|
90
|
+
const { format } = await import("prettier");
|
|
91
|
+
finalContent = await format(content, { parser: "typescript" });
|
|
92
|
+
}
|
|
93
|
+
catch (error) {
|
|
94
|
+
if (verbose) {
|
|
95
|
+
console.warn(`Failed to format ${filename}:`, error);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
fs.writeFileSync(fullPath, finalContent);
|
|
100
|
+
}
|
|
101
|
+
return result;
|
|
79
102
|
};
|
|
80
103
|
export const generateSchemas = (inDir, { watch = false, skipFormat = false, outDir = inDir } = {}) => {
|
|
81
104
|
const documentModels = getDirectories(inDir);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graphql.js","sourceRoot":"","sources":["../../../src/codegen/graphql.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEpE,OAAO,EACL,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAE,6BAA6B,EAAE,MAAM,YAAY,CAAC;AAE3D,MAAM,cAAc,GAAG,CAAC,MAAc,EAAE,EAAE,CACxC,WAAW,CAAC,MAAM,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;KACzC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;KACxC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAElC,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,QAAQ;IAClB,UAAU,EAAE,QAAQ;IACpB,OAAO,EAAE,yBAAyB;IAClC,GAAI,iBAA4C;CACjD,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,OAAO,EAAE,aAAa;IACtB,QAAQ,EAAE,uBAAuB;IACjC,UAAU,EAAE,YAAY;IACxB,OAAO,EACL,oGAAoG;IACtG,GAAI,gBAA2C;CAChD,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAA2B;IAC9C,aAAa,EAAE,IAAI;IACnB,OAAO;IACP,YAAY,EAAE,IAAI;IAClB,oBAAoB,EAAE,IAAI;IAC1B,cAAc,EAAE;QACd,KAAK,EAAE,IAAI;KACZ;IACD,YAAY,EAAE,IAAI;IAClB,sCAAsC;IACtC,eAAe,EAAE,sBAAsB;CACxC,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAA4B;IAChD,GAAG,QAAQ;IACX,UAAU,EAAE,YAAY;IACxB,MAAM,EAAE,KAAK;IACb,cAAc,EAAE,IAAI;IACpB,aAAa,EAAE,iBAAiB;IAChC,UAAU,EAAE;QACV,MAAM,EAAE;YACN,KAAK,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;SAC3B;KACF;IACD,cAAc,EAAE,IAAI;CACZ,CAAC;AAEX,MAAM,UAAU,YAAY,CAC1B,IAAY,EACZ,KAAa,EACb,MAAc;IAEd,OAAO;QACL,CAAC,GAAG,MAAM,IAAI,IAAI,sBAAsB,CAAC,EAAE;YACzC,MAAM,EAAE;gBACN;oBACE,CAAC,GAAG,KAAK,IAAI,IAAI,iBAAiB,CAAC,EAAE;wBACnC,iBAAiB,EAAE,KAAK;qBACzB;iBACF;aACF;YACD,OAAO,EAAE,CAAC,YAAY,CAAC;YACvB,MAAM,EAAE,QAAQ;SACjB;QACD,CAAC,GAAG,MAAM,IAAI,IAAI,oBAAoB,CAAC,EAAE;YACvC,MAAM,EAAE,GAAG,KAAK,IAAI,IAAI,iBAAiB;YACzC,OAAO,EAAE,CAAC,uDAAuD,CAAC;YAClE,MAAM,EAAE,SAAS;SAClB;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,
|
|
1
|
+
{"version":3,"file":"graphql.js","sourceRoot":"","sources":["../../../src/codegen/graphql.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,20 +5,23 @@ export declare function run(args: string[], { watch, skipFormat, verbose }?: {
|
|
|
5
5
|
skipFormat?: boolean | undefined;
|
|
6
6
|
verbose?: boolean | undefined;
|
|
7
7
|
}): Promise<import("hygen/dist/types.js").RunnerResult>;
|
|
8
|
-
export declare function generateAll(dir: string, { watch, skipFormat, verbose }?: {
|
|
8
|
+
export declare function generateAll(dir: string, { watch, skipFormat, verbose, force }?: {
|
|
9
9
|
watch?: boolean | undefined;
|
|
10
10
|
skipFormat?: boolean | undefined;
|
|
11
11
|
verbose?: boolean | undefined;
|
|
12
|
+
force?: boolean | undefined;
|
|
12
13
|
}): Promise<void>;
|
|
13
|
-
export declare function generateDocumentModel(documentModelState: DocumentModelState, dir: string, { watch, skipFormat, verbose }?: {
|
|
14
|
+
export declare function generateDocumentModel(documentModelState: DocumentModelState, dir: string, { watch, skipFormat, verbose, generateReducers, force, }?: {
|
|
14
15
|
watch?: boolean | undefined;
|
|
15
16
|
skipFormat?: boolean | undefined;
|
|
16
17
|
verbose?: boolean | undefined;
|
|
18
|
+
generateReducers?: boolean | undefined;
|
|
19
|
+
force?: boolean | undefined;
|
|
17
20
|
}): Promise<void>;
|
|
18
21
|
export declare function generateEditor(name: string, documentTypes: string[], documentTypesMap: DocumentTypesMap, dir: string, documentModelsDir: string, { skipFormat, verbose }?: {
|
|
19
22
|
skipFormat?: boolean | undefined;
|
|
20
23
|
verbose?: boolean | undefined;
|
|
21
|
-
}): Promise<void>;
|
|
24
|
+
}, editorId?: string): Promise<void>;
|
|
22
25
|
export declare function generateProcessor(name: string, documentTypes: string[], documentTypesMap: DocumentTypesMap, outDir: string, documentModelsDir: string, type: "analytics" | "relationalDb", { skipFormat, verbose }?: {
|
|
23
26
|
skipFormat?: boolean | undefined;
|
|
24
27
|
verbose?: boolean | undefined;
|
|
@@ -33,5 +36,5 @@ export declare function generateImportScript(name: string, dir: string, { skipFo
|
|
|
33
36
|
}): Promise<void>;
|
|
34
37
|
export declare function generateDriveEditor(name: string, dir: string, { skipFormat }?: {
|
|
35
38
|
skipFormat?: boolean | undefined;
|
|
36
|
-
}): Promise<void>;
|
|
39
|
+
}, appId?: string): Promise<void>;
|
|
37
40
|
//# sourceMappingURL=hygen.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hygen.d.ts","sourceRoot":"","sources":["../../../src/codegen/hygen.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAOzD,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,YAAY,CAAC;AASnD,wBAAsB,GAAG,CACvB,IAAI,EAAE,MAAM,EAAE,EACd,EAAE,KAAa,EAAE,UAAkB,EAAE,OAAc,EAAE;;;;CAAK,uDAuC3D;AAED,wBAAsB,WAAW,CAC/B,GAAG,EAAE,MAAM,EACX,EAAE,KAAa,EAAE,UAAkB,EAAE,OAAc,EAAE
|
|
1
|
+
{"version":3,"file":"hygen.d.ts","sourceRoot":"","sources":["../../../src/codegen/hygen.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAOzD,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,YAAY,CAAC;AASnD,wBAAsB,GAAG,CACvB,IAAI,EAAE,MAAM,EAAE,EACd,EAAE,KAAa,EAAE,UAAkB,EAAE,OAAc,EAAE;;;;CAAK,uDAuC3D;AAED,wBAAsB,WAAW,CAC/B,GAAG,EAAE,MAAM,EACX,EAAE,KAAa,EAAE,UAAkB,EAAE,OAAc,EAAE,KAAY,EAAE;;;;;CAAK,iBAyCzE;AAED,wBAAsB,qBAAqB,CACzC,kBAAkB,EAAE,kBAAkB,EACtC,GAAG,EAAE,MAAM,EACX,EACE,KAAa,EACb,UAAkB,EAClB,OAAc,EACd,gBAAuB,EACvB,KAAY,GACb;;;;;;CAAK,iBAiDP;AAED,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,MAAM,EAAE,EACvB,gBAAgB,EAAE,gBAAgB,EAClC,GAAG,EAAE,MAAM,EACX,iBAAiB,EAAE,MAAM,EACzB,EAAE,UAAkB,EAAE,OAAc,EAAE;;;CAAK,EAC3C,QAAQ,CAAC,EAAE,MAAM,iBAuBlB;AAED,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,MAAM,EAAE,EACvB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,MAAM,EACd,iBAAiB,EAAE,MAAM,EACzB,IAAI,EAAE,WAAW,GAAG,cAAc,EAClC,EAAE,UAAkB,EAAE,OAAc,EAAE;;;CAAK,iBAuB5C;AAED,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,kBAAkB,GAAG,IAAI,EACxC,GAAG,EAAE,MAAM,EACX,EAAE,UAAkB,EAAE,OAAc,EAAE;;;CAAK,iBAgD5C;AAED,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,EAAE,UAAkB,EAAE,OAAc,EAAE;;;CAAK,iBAgB5C;AAED,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,EAAE,UAAkB,EAAE;;CAAK,EAC3B,KAAK,CAAC,EAAE,MAAM,iBAiBf"}
|
|
@@ -43,8 +43,9 @@ export async function run(args, { watch = false, skipFormat = false, verbose = t
|
|
|
43
43
|
}
|
|
44
44
|
return result;
|
|
45
45
|
}
|
|
46
|
-
export async function generateAll(dir, { watch = false, skipFormat = false, verbose = true } = {}) {
|
|
46
|
+
export async function generateAll(dir, { watch = false, skipFormat = false, verbose = true, force = true } = {}) {
|
|
47
47
|
const files = fs.readdirSync(dir, { withFileTypes: true });
|
|
48
|
+
const documentModelStates = [];
|
|
48
49
|
for (const directory of files.filter((f) => f.isDirectory())) {
|
|
49
50
|
const documentModelPath = path.join(dir, directory.name, `${directory.name}.json`);
|
|
50
51
|
if (!fs.existsSync(documentModelPath)) {
|
|
@@ -52,10 +53,13 @@ export async function generateAll(dir, { watch = false, skipFormat = false, verb
|
|
|
52
53
|
}
|
|
53
54
|
try {
|
|
54
55
|
const documentModel = await loadDocumentModel(documentModelPath);
|
|
56
|
+
documentModelStates.push(documentModel);
|
|
55
57
|
await generateDocumentModel(documentModel, dir, {
|
|
56
58
|
watch,
|
|
57
59
|
skipFormat,
|
|
58
60
|
verbose,
|
|
61
|
+
generateReducers: false,
|
|
62
|
+
force,
|
|
59
63
|
});
|
|
60
64
|
}
|
|
61
65
|
catch (error) {
|
|
@@ -64,8 +68,15 @@ export async function generateAll(dir, { watch = false, skipFormat = false, verb
|
|
|
64
68
|
}
|
|
65
69
|
}
|
|
66
70
|
}
|
|
71
|
+
const projectDir = path.dirname(dir);
|
|
72
|
+
const documentModelDir = path.basename(dir);
|
|
73
|
+
const generator = new TSMorphCodeGenerator(projectDir, documentModelStates, {
|
|
74
|
+
directories: { documentModelDir },
|
|
75
|
+
forceUpdate: force,
|
|
76
|
+
});
|
|
77
|
+
await generator.generateReducers();
|
|
67
78
|
}
|
|
68
|
-
export async function generateDocumentModel(documentModelState, dir, { watch = false, skipFormat = false, verbose = true } = {}) {
|
|
79
|
+
export async function generateDocumentModel(documentModelState, dir, { watch = false, skipFormat = false, verbose = true, generateReducers = true, force = true, } = {}) {
|
|
69
80
|
const projectDir = path.dirname(dir);
|
|
70
81
|
const documentModelDir = path.basename(dir);
|
|
71
82
|
// Generate the singular files for the document model logic
|
|
@@ -80,7 +91,6 @@ export async function generateDocumentModel(documentModelState, dir, { watch = f
|
|
|
80
91
|
const latestSpec = documentModelState.specifications[documentModelState.specifications.length - 1];
|
|
81
92
|
// Generate the module-specific files for the document model logic
|
|
82
93
|
for (const module of latestSpec.modules) {
|
|
83
|
-
const generator = new TSMorphCodeGenerator(projectDir, [documentModelState], { directories: { documentModelDir } });
|
|
84
94
|
await run([
|
|
85
95
|
"powerhouse",
|
|
86
96
|
"generate-document-model-module",
|
|
@@ -91,12 +101,15 @@ export async function generateDocumentModel(documentModelState, dir, { watch = f
|
|
|
91
101
|
"--module",
|
|
92
102
|
module.name,
|
|
93
103
|
], { watch, skipFormat, verbose });
|
|
104
|
+
}
|
|
105
|
+
if (generateReducers) {
|
|
106
|
+
const generator = new TSMorphCodeGenerator(projectDir, [documentModelState], { directories: { documentModelDir }, forceUpdate: force });
|
|
94
107
|
await generator.generateReducers();
|
|
95
108
|
}
|
|
96
109
|
}
|
|
97
|
-
export async function generateEditor(name, documentTypes, documentTypesMap, dir, documentModelsDir, { skipFormat = false, verbose = true } = {}) {
|
|
110
|
+
export async function generateEditor(name, documentTypes, documentTypesMap, dir, documentModelsDir, { skipFormat = false, verbose = true } = {}, editorId) {
|
|
98
111
|
// Generate the singular files for the document model logic
|
|
99
|
-
|
|
112
|
+
const args = [
|
|
100
113
|
"powerhouse",
|
|
101
114
|
"generate-editor",
|
|
102
115
|
"--name",
|
|
@@ -109,7 +122,11 @@ export async function generateEditor(name, documentTypes, documentTypesMap, dir,
|
|
|
109
122
|
JSON.stringify(documentTypesMap),
|
|
110
123
|
"--document-models-dir",
|
|
111
124
|
documentModelsDir,
|
|
112
|
-
]
|
|
125
|
+
];
|
|
126
|
+
if (editorId) {
|
|
127
|
+
args.push("--editor-id", editorId);
|
|
128
|
+
}
|
|
129
|
+
await run(args, { skipFormat, verbose });
|
|
113
130
|
}
|
|
114
131
|
export async function generateProcessor(name, documentTypes, documentTypesMap, outDir, documentModelsDir, type, { skipFormat = false, verbose = true } = {}) {
|
|
115
132
|
// Generate the singular files for the document model logic
|
|
@@ -160,6 +177,16 @@ export async function generateSubgraph(name, documentModel, dir, { skipFormat =
|
|
|
160
177
|
dir,
|
|
161
178
|
], { skipFormat, verbose });
|
|
162
179
|
}
|
|
180
|
+
else {
|
|
181
|
+
await run([
|
|
182
|
+
"powerhouse",
|
|
183
|
+
"generate-custom-subgraph",
|
|
184
|
+
"--subgraph",
|
|
185
|
+
name,
|
|
186
|
+
"--root-dir",
|
|
187
|
+
dir,
|
|
188
|
+
], { skipFormat, verbose });
|
|
189
|
+
}
|
|
163
190
|
}
|
|
164
191
|
export async function generateImportScript(name, dir, { skipFormat = false, verbose = true } = {}) {
|
|
165
192
|
// Generate the singular files for the document model logic
|
|
@@ -174,8 +201,19 @@ export async function generateImportScript(name, dir, { skipFormat = false, verb
|
|
|
174
201
|
dir,
|
|
175
202
|
], { skipFormat, verbose });
|
|
176
203
|
}
|
|
177
|
-
export async function generateDriveEditor(name, dir, { skipFormat = false } = {}) {
|
|
204
|
+
export async function generateDriveEditor(name, dir, { skipFormat = false } = {}, appId) {
|
|
178
205
|
// Generate the drive editor files
|
|
179
|
-
|
|
206
|
+
const args = [
|
|
207
|
+
"powerhouse",
|
|
208
|
+
"generate-drive-editor",
|
|
209
|
+
"--name",
|
|
210
|
+
name,
|
|
211
|
+
"--root-dir",
|
|
212
|
+
dir,
|
|
213
|
+
];
|
|
214
|
+
if (appId) {
|
|
215
|
+
args.push("--app-id", appId);
|
|
216
|
+
}
|
|
217
|
+
await run(args, { skipFormat });
|
|
180
218
|
}
|
|
181
219
|
//# sourceMappingURL=hygen.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hygen.js","sourceRoot":"","sources":["../../../src/codegen/hygen.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"hygen.js","sourceRoot":"","sources":["../../../src/codegen/hygen.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { type PowerhouseConfig } from "@powerhousedao/config/powerhouse";
|
|
1
|
+
import { type PartialPowerhouseManifest, type PowerhouseConfig } from "@powerhousedao/config/powerhouse";
|
|
2
2
|
import { type DocumentModelState } from "document-model";
|
|
3
3
|
export { generateDBSchema } from "./kysely.js";
|
|
4
4
|
export type CodegenOptions = {
|
|
5
5
|
verbose?: boolean;
|
|
6
|
+
force?: boolean;
|
|
6
7
|
};
|
|
7
8
|
export declare function generate(config: PowerhouseConfig): Promise<void>;
|
|
8
9
|
export declare function generateFromFile(path: string, config: PowerhouseConfig, options?: CodegenOptions): Promise<void>;
|
|
@@ -20,15 +21,15 @@ export declare function generateFromFile(path: string, config: PowerhouseConfig,
|
|
|
20
21
|
* @returns A promise that resolves when code generation is complete
|
|
21
22
|
*/
|
|
22
23
|
export declare function generateFromDocument(documentModelState: DocumentModelState, config: PowerhouseConfig, options?: CodegenOptions): Promise<void>;
|
|
23
|
-
export declare function generateEditor(name: string, documentTypes: string[], config: PowerhouseConfig): Promise<void>;
|
|
24
|
-
export declare function
|
|
25
|
-
|
|
26
|
-
}): Promise<void>;
|
|
24
|
+
export declare function generateEditor(name: string, documentTypes: string[], config: PowerhouseConfig, editorId?: string): Promise<void>;
|
|
25
|
+
export declare function generateSubgraphFromDocumentModel(name: string, documentModel: DocumentModelState, config: PowerhouseConfig, options?: CodegenOptions): Promise<void>;
|
|
26
|
+
export declare function generateSubgraph(name: string, file: string | null, config: PowerhouseConfig, options?: CodegenOptions): Promise<void>;
|
|
27
27
|
export declare function generateProcessor(name: string, type: "analytics" | "relationalDb", documentTypes: string[], config: PowerhouseConfig): Promise<void>;
|
|
28
28
|
export type DocumentTypesMap = Record<string, {
|
|
29
29
|
name: string;
|
|
30
30
|
importPath: string;
|
|
31
31
|
}>;
|
|
32
|
-
export declare function generateDriveEditor(name: string, config: PowerhouseConfig): Promise<void>;
|
|
32
|
+
export declare function generateDriveEditor(name: string, config: PowerhouseConfig, appId?: string): Promise<void>;
|
|
33
33
|
export declare function generateImportScript(name: string, config: PowerhouseConfig): Promise<void>;
|
|
34
|
+
export declare function generateManifest(manifestData: PartialPowerhouseManifest, projectRoot?: string): string;
|
|
34
35
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/codegen/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/codegen/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,gBAAgB,EAEtB,MAAM,kCAAkC,CAAC;AAG1C,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,gBAAgB,CAAC;AAexB,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAoFF,wBAAsB,QAAQ,CAAC,MAAM,EAAE,gBAAgB,iBAItD;AA+DD,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,gBAAgB,EACxB,OAAO,GAAE,cAAmB,iBAO7B;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,oBAAoB,CACxC,kBAAkB,EAAE,kBAAkB,EACtC,MAAM,EAAE,gBAAgB,EACxB,OAAO,GAAE,cAAmB,iBAI7B;AAED,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,MAAM,EAAE,EACvB,MAAM,EAAE,gBAAgB,EACxB,QAAQ,CAAC,EAAE,MAAM,iBA2BlB;AAED,wBAAsB,iCAAiC,CACrD,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,kBAAkB,EACjC,MAAM,EAAE,gBAAgB,EACxB,OAAO,GAAE,cAAmB,iBAM7B;AAED,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GAAG,IAAI,EACnB,MAAM,EAAE,gBAAgB,EACxB,OAAO,GAAE,cAAmB,iBAQ7B;AAED,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,WAAW,GAAG,cAAc,EAClC,aAAa,EAAE,MAAM,EAAE,EACvB,MAAM,EAAE,gBAAgB,iBAuBzB;AAED,MAAM,MAAM,gBAAgB,GAAG,MAAM,CACnC,MAAM,EACN;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CACrC,CAAC;AAEF,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,gBAAgB,EACxB,KAAK,CAAC,EAAE,MAAM,iBAUf;AAED,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,gBAAgB,iBAKzB;AAED,wBAAgB,gBAAgB,CAC9B,YAAY,EAAE,yBAAyB,EACvC,WAAW,CAAC,EAAE,MAAM,UAoFrB"}
|
|
@@ -92,7 +92,11 @@ export async function generate(config) {
|
|
|
92
92
|
* @returns A promise that resolves when code generation is complete
|
|
93
93
|
*/
|
|
94
94
|
async function generateFromDocumentModel(documentModel, config, filePath, options = {}) {
|
|
95
|
-
|
|
95
|
+
// Derive verbose from config.logLevel if not explicitly provided
|
|
96
|
+
// Show hygen logs for verbose, debug, and info levels (default behavior before ts-morph)
|
|
97
|
+
const { verbose = config.logLevel === "verbose" ||
|
|
98
|
+
config.logLevel === "debug" ||
|
|
99
|
+
config.logLevel === "info", force = false, } = options;
|
|
96
100
|
const name = paramCase(documentModel.name);
|
|
97
101
|
// create document model folder and spec as json
|
|
98
102
|
fs.mkdirSync(join(config.documentModelsDir, name), { recursive: true });
|
|
@@ -112,6 +116,7 @@ async function generateFromDocumentModel(documentModel, config, filePath, option
|
|
|
112
116
|
await generateDocumentModel(documentModel, config.documentModelsDir, {
|
|
113
117
|
skipFormat: config.skipFormat,
|
|
114
118
|
verbose,
|
|
119
|
+
force,
|
|
115
120
|
});
|
|
116
121
|
await generateSubgraph(name, filePath || null, config, { verbose });
|
|
117
122
|
}
|
|
@@ -138,15 +143,21 @@ export async function generateFromDocument(documentModelState, config, options =
|
|
|
138
143
|
// delegate to shared generation function
|
|
139
144
|
await generateFromDocumentModel(documentModelState, config, null, options);
|
|
140
145
|
}
|
|
141
|
-
export async function generateEditor(name, documentTypes, config) {
|
|
146
|
+
export async function generateEditor(name, documentTypes, config, editorId) {
|
|
142
147
|
const pathOrigin = "../../";
|
|
143
148
|
const { documentModelsDir, skipFormat } = config;
|
|
144
149
|
const documentTypesMap = await getDocumentTypesMap(documentModelsDir, pathOrigin);
|
|
145
150
|
const invalidType = documentTypes.find((type) => !Object.keys(documentTypesMap).includes(type));
|
|
146
151
|
if (invalidType) {
|
|
147
|
-
throw new Error(`Document model for ${invalidType} not found
|
|
152
|
+
throw new Error(`Document model for ${invalidType} not found. Make sure the document model is available in the document-models directory (${documentModelsDir}) and has been properly generated.`);
|
|
148
153
|
}
|
|
149
|
-
return _generateEditor(name, documentTypes, documentTypesMap, config.editorsDir, config.documentModelsDir, { skipFormat });
|
|
154
|
+
return _generateEditor(name, documentTypes, documentTypesMap, config.editorsDir, config.documentModelsDir, { skipFormat }, editorId);
|
|
155
|
+
}
|
|
156
|
+
export async function generateSubgraphFromDocumentModel(name, documentModel, config, options = {}) {
|
|
157
|
+
return _generateSubgraph(name, documentModel, config.subgraphsDir, {
|
|
158
|
+
skipFormat: config.skipFormat,
|
|
159
|
+
verbose: options.verbose,
|
|
160
|
+
});
|
|
150
161
|
}
|
|
151
162
|
export async function generateSubgraph(name, file, config, options = {}) {
|
|
152
163
|
return _generateSubgraph(name, file !== null ? await loadDocumentModel(file) : null, config.subgraphsDir, { skipFormat: config.skipFormat, verbose: options.verbose });
|
|
@@ -156,18 +167,84 @@ export async function generateProcessor(name, type, documentTypes, config) {
|
|
|
156
167
|
const documentTypesMap = await getDocumentTypesMap(documentModelsDir);
|
|
157
168
|
const invalidType = documentTypes.find((type) => !Object.keys(documentTypesMap).includes(type));
|
|
158
169
|
if (invalidType) {
|
|
159
|
-
throw new Error(`Document model for ${invalidType} not found
|
|
170
|
+
throw new Error(`Document model for ${invalidType} not found. Make sure the document model is available in the document-models directory (${documentModelsDir}) and has been properly generated.`);
|
|
160
171
|
}
|
|
161
172
|
return _generateProcessor(name, documentTypes, documentTypesMap, config.processorsDir, config.documentModelsDir, type, { skipFormat });
|
|
162
173
|
}
|
|
163
|
-
export async function generateDriveEditor(name, config) {
|
|
174
|
+
export async function generateDriveEditor(name, config, appId) {
|
|
164
175
|
return _generateDriveEditor(name, config.editorsDir, {
|
|
165
176
|
skipFormat: config.skipFormat,
|
|
166
|
-
});
|
|
177
|
+
}, appId);
|
|
167
178
|
}
|
|
168
179
|
export async function generateImportScript(name, config) {
|
|
169
180
|
return _generateImportScript(name, config.importScriptsDir, {
|
|
170
181
|
skipFormat: config.skipFormat,
|
|
171
182
|
});
|
|
172
183
|
}
|
|
184
|
+
export function generateManifest(manifestData, projectRoot) {
|
|
185
|
+
const rootDir = projectRoot || process.cwd();
|
|
186
|
+
const manifestPath = join(rootDir, "powerhouse.manifest.json");
|
|
187
|
+
// Create default manifest structure
|
|
188
|
+
const defaultManifest = {
|
|
189
|
+
name: "",
|
|
190
|
+
description: "",
|
|
191
|
+
category: "",
|
|
192
|
+
publisher: {
|
|
193
|
+
name: "",
|
|
194
|
+
url: "",
|
|
195
|
+
},
|
|
196
|
+
documentModels: [],
|
|
197
|
+
editors: [],
|
|
198
|
+
apps: [],
|
|
199
|
+
subgraphs: [],
|
|
200
|
+
importScripts: [],
|
|
201
|
+
};
|
|
202
|
+
// Read existing manifest if it exists
|
|
203
|
+
let existingManifest = defaultManifest;
|
|
204
|
+
if (fs.existsSync(manifestPath)) {
|
|
205
|
+
try {
|
|
206
|
+
const existingData = fs.readFileSync(manifestPath, "utf-8");
|
|
207
|
+
existingManifest = JSON.parse(existingData);
|
|
208
|
+
}
|
|
209
|
+
catch (error) {
|
|
210
|
+
console.warn(`Failed to parse existing manifest: ${String(error)}`);
|
|
211
|
+
existingManifest = defaultManifest;
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
// Helper function to merge arrays by ID
|
|
215
|
+
const mergeArrayById = (existingArray, newArray) => {
|
|
216
|
+
if (!newArray)
|
|
217
|
+
return existingArray;
|
|
218
|
+
const result = [...existingArray];
|
|
219
|
+
newArray.forEach((newItem) => {
|
|
220
|
+
const existingIndex = result.findIndex((item) => item.id === newItem.id);
|
|
221
|
+
if (existingIndex !== -1) {
|
|
222
|
+
// Replace existing item
|
|
223
|
+
result[existingIndex] = newItem;
|
|
224
|
+
}
|
|
225
|
+
else {
|
|
226
|
+
// Add new item
|
|
227
|
+
result.push(newItem);
|
|
228
|
+
}
|
|
229
|
+
});
|
|
230
|
+
return result;
|
|
231
|
+
};
|
|
232
|
+
// Merge partial data with existing manifest
|
|
233
|
+
const updatedManifest = {
|
|
234
|
+
...existingManifest,
|
|
235
|
+
...manifestData,
|
|
236
|
+
publisher: {
|
|
237
|
+
...existingManifest.publisher,
|
|
238
|
+
...(manifestData.publisher || {}),
|
|
239
|
+
},
|
|
240
|
+
documentModels: mergeArrayById(existingManifest.documentModels, manifestData.documentModels),
|
|
241
|
+
editors: mergeArrayById(existingManifest.editors, manifestData.editors),
|
|
242
|
+
apps: mergeArrayById(existingManifest.apps, manifestData.apps),
|
|
243
|
+
subgraphs: mergeArrayById(existingManifest.subgraphs, manifestData.subgraphs),
|
|
244
|
+
importScripts: mergeArrayById(existingManifest.importScripts, manifestData.importScripts),
|
|
245
|
+
};
|
|
246
|
+
// Write updated manifest to file
|
|
247
|
+
fs.writeFileSync(manifestPath, JSON.stringify(updatedManifest, null, 4));
|
|
248
|
+
return manifestPath;
|
|
249
|
+
}
|
|
173
250
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/codegen/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/codegen/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +1,21 @@
|
|
|
1
|
-
import { type DocumentModelState } from "document-model";
|
|
1
|
+
import { type DocumentModelState, type Operation as ModuleOperation } from "document-model/document-model/gen/schema/types";
|
|
2
2
|
import { type Project } from "ts-morph";
|
|
3
|
-
export type
|
|
4
|
-
|
|
3
|
+
export type ModuleSpec = DocumentModelState["specifications"][0]["modules"][0];
|
|
4
|
+
export type OperationError = ModuleOperation["errors"][number];
|
|
5
|
+
export type Operation = ModuleOperation & {
|
|
5
6
|
hasInput: boolean;
|
|
6
7
|
hasAttachment: boolean | undefined;
|
|
7
8
|
scope: string;
|
|
8
9
|
state: string;
|
|
9
|
-
errors?:
|
|
10
|
+
errors?: OperationError[];
|
|
10
11
|
};
|
|
11
|
-
export type ModuleSpec = DocumentModelState["specifications"][0]["modules"][0];
|
|
12
12
|
export interface GenerationContext {
|
|
13
13
|
rootDir: string;
|
|
14
14
|
docModel: DocumentModelState;
|
|
15
15
|
module: ModuleSpec;
|
|
16
16
|
project: Project;
|
|
17
|
-
|
|
17
|
+
operations: Operation[];
|
|
18
|
+
forceUpdate: boolean;
|
|
18
19
|
}
|
|
19
20
|
export type PHProjectDirectories = {
|
|
20
21
|
documentModelDir?: string;
|
|
@@ -24,5 +25,6 @@ export type PHProjectDirectories = {
|
|
|
24
25
|
};
|
|
25
26
|
export type CodeGeneratorOptions = {
|
|
26
27
|
directories?: PHProjectDirectories;
|
|
28
|
+
forceUpdate?: boolean;
|
|
27
29
|
};
|
|
28
30
|
//# sourceMappingURL=GenerationContext.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GenerationContext.d.ts","sourceRoot":"","sources":["../../../../src/ts-morph-generator/core/GenerationContext.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"GenerationContext.d.ts","sourceRoot":"","sources":["../../../../src/ts-morph-generator/core/GenerationContext.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,SAAS,IAAI,eAAe,EAClC,MAAM,gDAAgD,CAAC;AACxD,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,UAAU,CAAC;AAGxC,MAAM,MAAM,UAAU,GAAG,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/E,MAAM,MAAM,cAAc,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/D,MAAM,MAAM,SAAS,GAAG,eAAe,GAAG;IACxC,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;CAC3B,CAAC;AAEF,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,MAAM,EAAE,UAAU,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,WAAW,CAAC,EAAE,oBAAoB,CAAC;IACnC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC"}
|
|
@@ -6,6 +6,7 @@ export declare class TSMorphCodeGenerator {
|
|
|
6
6
|
private project;
|
|
7
7
|
private generators;
|
|
8
8
|
private directories;
|
|
9
|
+
private forceUpdate;
|
|
9
10
|
constructor(rootDir: string, docModels: DocumentModelState[], options?: CodeGeneratorOptions);
|
|
10
11
|
private setupGenerators;
|
|
11
12
|
generateReducers(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TSMorphCodeGenerator.d.ts","sourceRoot":"","sources":["../../../../src/ts-morph-generator/core/TSMorphCodeGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAOzD,OAAO,
|
|
1
|
+
{"version":3,"file":"TSMorphCodeGenerator.d.ts","sourceRoot":"","sources":["../../../../src/ts-morph-generator/core/TSMorphCodeGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAOzD,OAAO,EACL,KAAK,oBAAoB,EAK1B,MAAM,wBAAwB,CAAC;AAEhC,qBAAa,oBAAoB;IAY7B,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,SAAS;IAZnB,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,UAAU,CAAoC;IACtD,OAAO,CAAC,WAAW,CAKjB;IACF,OAAO,CAAC,WAAW,CAAS;gBAGlB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,kBAAkB,EAAE,EACvC,OAAO,GAAE,oBAA8D;IAYzE,OAAO,CAAC,eAAe;IAYjB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAKjC,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;YAMpB,gBAAgB;YAwBhB,YAAY;IAiC1B,OAAO,CAAC,uBAAuB;YAuBjB,qBAAqB;CAQpC"}
|
|
@@ -14,13 +14,15 @@ export class TSMorphCodeGenerator {
|
|
|
14
14
|
processorsDir: "processors",
|
|
15
15
|
subgraphsDir: "subgraphs",
|
|
16
16
|
};
|
|
17
|
-
|
|
17
|
+
forceUpdate = false;
|
|
18
|
+
constructor(rootDir, docModels, options = { directories: {}, forceUpdate: false }) {
|
|
18
19
|
this.rootDir = rootDir;
|
|
19
20
|
this.docModels = docModels;
|
|
20
21
|
this.directories = {
|
|
21
22
|
...this.directories,
|
|
22
23
|
...options.directories,
|
|
23
24
|
};
|
|
25
|
+
this.forceUpdate = options.forceUpdate ?? false;
|
|
24
26
|
this.setupGenerators();
|
|
25
27
|
}
|
|
26
28
|
setupGenerators() {
|
|
@@ -48,31 +50,55 @@ export class TSMorphCodeGenerator {
|
|
|
48
50
|
for (const docModel of this.docModels) {
|
|
49
51
|
const latestSpec = docModel.specifications[docModel.specifications.length - 1];
|
|
50
52
|
for (const module of latestSpec.modules) {
|
|
51
|
-
const context = this.createGenerationContext(docModel, module);
|
|
53
|
+
const context = this.createGenerationContext(docModel, module, this.forceUpdate);
|
|
52
54
|
await generator.generate(context);
|
|
53
55
|
}
|
|
54
56
|
}
|
|
55
57
|
}
|
|
56
58
|
async setupProject() {
|
|
57
|
-
|
|
58
|
-
const
|
|
59
|
-
this.
|
|
59
|
+
// Only load files from configured directories
|
|
60
|
+
const sourcePaths = [];
|
|
61
|
+
if (this.directories.documentModelDir) {
|
|
62
|
+
const dirPath = `${this.rootDir}/${this.directories.documentModelDir}`;
|
|
63
|
+
await this.ensureDirectoryExists(dirPath);
|
|
64
|
+
sourcePaths.push(`${dirPath}/**/*.ts`);
|
|
65
|
+
}
|
|
66
|
+
if (this.directories.editorsDir) {
|
|
67
|
+
const dirPath = `${this.rootDir}/${this.directories.editorsDir}`;
|
|
68
|
+
await this.ensureDirectoryExists(dirPath);
|
|
69
|
+
sourcePaths.push(`${dirPath}/**/*.ts`);
|
|
70
|
+
}
|
|
71
|
+
if (this.directories.processorsDir) {
|
|
72
|
+
const dirPath = `${this.rootDir}/${this.directories.processorsDir}`;
|
|
73
|
+
await this.ensureDirectoryExists(dirPath);
|
|
74
|
+
sourcePaths.push(`${dirPath}/**/*.ts`);
|
|
75
|
+
}
|
|
76
|
+
if (this.directories.subgraphsDir) {
|
|
77
|
+
const dirPath = `${this.rootDir}/${this.directories.subgraphsDir}`;
|
|
78
|
+
await this.ensureDirectoryExists(dirPath);
|
|
79
|
+
sourcePaths.push(`${dirPath}/**/*.ts`);
|
|
80
|
+
}
|
|
81
|
+
// Exclude node_modules from all paths
|
|
82
|
+
sourcePaths.push(`!${this.rootDir}/**/node_modules/**`);
|
|
83
|
+
if (sourcePaths.length > 0) {
|
|
84
|
+
this.project.addSourceFilesAtPaths(sourcePaths);
|
|
85
|
+
}
|
|
60
86
|
}
|
|
61
|
-
createGenerationContext(docModel, module) {
|
|
62
|
-
const
|
|
63
|
-
|
|
87
|
+
createGenerationContext(docModel, module, forceUpdate = false) {
|
|
88
|
+
const operations = module.operations.map((op) => ({
|
|
89
|
+
...op,
|
|
64
90
|
hasInput: op.schema !== null,
|
|
65
91
|
hasAttachment: op.schema?.includes(": Attachment"),
|
|
66
92
|
scope: op.scope || "global",
|
|
67
93
|
state: op.scope === "global" ? "" : op.scope,
|
|
68
|
-
errors: op.errors,
|
|
69
94
|
}));
|
|
70
95
|
return {
|
|
71
96
|
rootDir: this.rootDir,
|
|
72
97
|
docModel,
|
|
73
98
|
module,
|
|
74
99
|
project: this.project,
|
|
75
|
-
|
|
100
|
+
operations,
|
|
101
|
+
forceUpdate,
|
|
76
102
|
};
|
|
77
103
|
}
|
|
78
104
|
async ensureDirectoryExists(dirPath) {
|