@memberjunction/codegen-lib 6.1.0-edge.4 → 6.1.0-edge.5
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/Config/config.d.ts +172 -10
- package/dist/Config/config.d.ts.map +1 -1
- package/dist/Config/config.js +57 -1
- package/dist/Config/config.js.map +1 -1
- package/dist/Config/schema-output.d.ts +33 -0
- package/dist/Config/schema-output.d.ts.map +1 -0
- package/dist/Config/schema-output.js +52 -0
- package/dist/Config/schema-output.js.map +1 -0
- package/dist/Database/codeGenDatabaseProvider.d.ts +49 -0
- package/dist/Database/codeGenDatabaseProvider.d.ts.map +1 -1
- package/dist/Database/codeGenDatabaseProvider.js +105 -0
- package/dist/Database/codeGenDatabaseProvider.js.map +1 -1
- package/dist/Database/exclude-tables.d.ts +26 -0
- package/dist/Database/exclude-tables.d.ts.map +1 -0
- package/dist/Database/exclude-tables.js +38 -0
- package/dist/Database/exclude-tables.js.map +1 -0
- package/dist/Database/manage-metadata.d.ts +52 -2
- package/dist/Database/manage-metadata.d.ts.map +1 -1
- package/dist/Database/manage-metadata.js +95 -14
- package/dist/Database/manage-metadata.js.map +1 -1
- package/dist/Database/providers/sqlserver/SQLServerCodeGenProvider.d.ts +2 -0
- package/dist/Database/providers/sqlserver/SQLServerCodeGenProvider.d.ts.map +1 -1
- package/dist/Database/providers/sqlserver/SQLServerCodeGenProvider.js +10 -0
- package/dist/Database/providers/sqlserver/SQLServerCodeGenProvider.js.map +1 -1
- package/dist/Database/providers/sqlserver/__tests__/SQLServerCodeGenProvider.test.js +17 -0
- package/dist/Database/providers/sqlserver/__tests__/SQLServerCodeGenProvider.test.js.map +1 -1
- package/dist/Database/sql_codegen.d.ts +15 -0
- package/dist/Database/sql_codegen.d.ts.map +1 -1
- package/dist/Database/sql_codegen.js +55 -15
- package/dist/Database/sql_codegen.js.map +1 -1
- package/dist/Manifest/GenerateClassRegistrationsManifest.d.ts +22 -0
- package/dist/Manifest/GenerateClassRegistrationsManifest.d.ts.map +1 -1
- package/dist/Manifest/GenerateClassRegistrationsManifest.js +112 -5
- package/dist/Manifest/GenerateClassRegistrationsManifest.js.map +1 -1
- package/dist/Misc/codegen-reporter.d.ts +3 -0
- package/dist/Misc/codegen-reporter.d.ts.map +1 -1
- package/dist/Misc/codegen-reporter.js +3 -0
- package/dist/Misc/codegen-reporter.js.map +1 -1
- package/dist/Misc/emit-stats.d.ts +28 -0
- package/dist/Misc/emit-stats.d.ts.map +1 -0
- package/dist/Misc/emit-stats.js +43 -0
- package/dist/Misc/emit-stats.js.map +1 -0
- package/dist/Misc/entity_subclasses_codegen.d.ts +20 -2
- package/dist/Misc/entity_subclasses_codegen.d.ts.map +1 -1
- package/dist/Misc/entity_subclasses_codegen.js +92 -33
- package/dist/Misc/entity_subclasses_codegen.js.map +1 -1
- package/dist/Misc/file-write.d.ts +15 -0
- package/dist/Misc/file-write.d.ts.map +1 -0
- package/dist/Misc/file-write.js +33 -0
- package/dist/Misc/file-write.js.map +1 -0
- package/dist/Misc/graphql_server_codegen.d.ts +12 -2
- package/dist/Misc/graphql_server_codegen.d.ts.map +1 -1
- package/dist/Misc/graphql_server_codegen.js +61 -12
- package/dist/Misc/graphql_server_codegen.js.map +1 -1
- package/dist/Misc/runCommand.d.ts +5 -0
- package/dist/Misc/runCommand.d.ts.map +1 -1
- package/dist/Misc/runCommand.js +43 -17
- package/dist/Misc/runCommand.js.map +1 -1
- package/dist/Misc/schema-emit.d.ts +123 -0
- package/dist/Misc/schema-emit.d.ts.map +1 -0
- package/dist/Misc/schema-emit.js +220 -0
- package/dist/Misc/schema-emit.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -1
- package/dist/runCodeGen.d.ts +20 -2
- package/dist/runCodeGen.d.ts.map +1 -1
- package/dist/runCodeGen.js +147 -21
- package/dist/runCodeGen.js.map +1 -1
- package/package.json +29 -29
|
@@ -2,6 +2,7 @@ import { EntityFieldInfo, EntityInfo, EntityRelationshipInfo } from '@memberjunc
|
|
|
2
2
|
import { ValidatorResult } from '../Database/manage-metadata.js';
|
|
3
3
|
import { type ConfigInfo } from '../Config/config.js';
|
|
4
4
|
import { CodeGenConnection } from '../Database/codeGenDatabaseProvider.js';
|
|
5
|
+
import { SchemaEmitOptions } from './schema-emit.js';
|
|
5
6
|
/**
|
|
6
7
|
* The parsed shape of `EntityRelationship.RelatedRecordCollection` — the policy half of a
|
|
7
8
|
* `DeclareRelatedRecords(...)` declaration.
|
|
@@ -79,10 +80,27 @@ export declare class EntitySubClassGeneratorBase {
|
|
|
79
80
|
* @param entities
|
|
80
81
|
* @param directory
|
|
81
82
|
* @param skipDBUpdate - when set to true, no updates are written back to the database - which happens after code generation when newly generated code from AI has been generated, but in the case where this flag is true, we don't ever write back to the DB because the assumption is we are only emitting code to the file that was already in the DB.
|
|
83
|
+
* @param options - per-schema emit / dirty-schema / parallelism. Defaults come from `configInfo.fileEmit`.
|
|
82
84
|
* @returns
|
|
83
85
|
*/
|
|
84
|
-
generateAllEntitySubClasses(pool: CodeGenConnection, entities: EntityInfo[], directory: string, skipDBUpdate: boolean): Promise<boolean>;
|
|
85
|
-
|
|
86
|
+
generateAllEntitySubClasses(pool: CodeGenConnection, entities: EntityInfo[], directory: string, skipDBUpdate: boolean, options?: SchemaEmitOptions): Promise<boolean>;
|
|
87
|
+
/**
|
|
88
|
+
* Build the TypeScript source for one emit file (one schema, or the legacy monolith).
|
|
89
|
+
* Hoists and de-duplicates two kinds of import into the file header: the generated
|
|
90
|
+
* base class each entity extends, and the embedded-record peers an entity references.
|
|
91
|
+
* Emitting each once per file — instead of once per entity — prevents a TS2300
|
|
92
|
+
* duplicate-identifier error in a file holding 2+ external entities.
|
|
93
|
+
*
|
|
94
|
+
* Entities without primary keys are excluded because {@link generateEntitySubClass}
|
|
95
|
+
* emits nothing for them; hoisting their imports would leave an unused import that
|
|
96
|
+
* fails a downstream consumer's `noUnusedLocals`.
|
|
97
|
+
*/
|
|
98
|
+
assembleEntitySubclassFile(pool: CodeGenConnection, entities: EntityInfo[], skipDBUpdate: boolean, includeLoadModule: boolean): Promise<string>;
|
|
99
|
+
/** Delegates so both generators share one set of defaults; override to change them. */
|
|
100
|
+
protected resolveEmitOptions(options?: SchemaEmitOptions): Required<SchemaEmitOptions>;
|
|
101
|
+
/** Delegates so both generators write identically; override to change that. */
|
|
102
|
+
protected emitFile(filePath: string, content: string, useWriteIfChanged: boolean): void;
|
|
103
|
+
generateEntitySubClassFileHeader(includeLoadModule?: boolean): string;
|
|
86
104
|
/**
|
|
87
105
|
* Resolves an entity's generated base class and the import statement that class requires.
|
|
88
106
|
* Pure (no side effects) so BOTH {@link generateEntitySubClass} and the file assembler can call it —
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity_subclasses_codegen.d.ts","sourceRoot":"","sources":["../../src/Misc/entity_subclasses_codegen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuC,eAAe,EAA4B,UAAU,EAAE,sBAAsB,EAAuC,MAAM,sBAAsB,CAAC;AAO/L,OAAO,EAAE,eAAe,EAAsB,MAAM,6BAA6B,CAAC;AAClF,OAAO,
|
|
1
|
+
{"version":3,"file":"entity_subclasses_codegen.d.ts","sourceRoot":"","sources":["../../src/Misc/entity_subclasses_codegen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuC,eAAe,EAA4B,UAAU,EAAE,sBAAsB,EAAuC,MAAM,sBAAsB,CAAC;AAO/L,OAAO,EAAE,eAAe,EAAsB,MAAM,6BAA6B,CAAC;AAClF,OAAO,EAA0D,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE3G,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAGxE,OAAO,EACL,iBAAiB,EASlB,MAAM,eAAe,CAAC;AA0CvB;;;;;;;;;;GAUG;AACH;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,mGAAmG;IACnG,IAAI,EAAE,MAAM,CAAC;IACb,sEAAsE;IACtE,IAAI,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,MAAM,GAAG,OAAO,CAAC;IACnD,MAAM,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,kDAAkD;IAClD,QAAQ,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC1C,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,6CAA6C;IAC7C,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,0FAA0F;IAC1F,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACzC,UAAU,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;CACpC,CAAC;AAEF;;GAEG;AACH,qBAAa,2BAA2B;IACtC;;;;OAIG;IACH,SAAS,CAAC,MAAM,CAAC,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAS1D;;;;;;;;;;OAUG;IACH,SAAS,CAAC,MAAM,CAAC,0BAA0B,CACvC,UAAU,EAAE,MAAM,EAClB,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,GAClB;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE;IAgDvC;;;;;;;;OAQG;IACU,2BAA2B,CACtC,IAAI,EAAE,iBAAiB,EACvB,QAAQ,EAAE,UAAU,EAAE,EACtB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,OAAO,EACrB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,OAAO,CAAC;IA2DnB;;;;;;;;;;OAUG;IACU,0BAA0B,CACrC,IAAI,EAAE,iBAAiB,EACvB,QAAQ,EAAE,UAAU,EAAE,EACtB,YAAY,EAAE,OAAO,EACrB,iBAAiB,EAAE,OAAO,GACzB,OAAO,CAAC,MAAM,CAAC;IA6BlB,uFAAuF;IACvF,SAAS,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,QAAQ,CAAC,iBAAiB,CAAC;IAItF,+EAA+E;IAC/E,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,OAAO,GAAG,IAAI;IAIhF,gCAAgC,CAAC,iBAAiB,GAAE,OAAc,GAAG,MAAM;IAelF;;;;;;;OAOG;IACH,SAAS,CAAC,sBAAsB,CAAC,MAAM,EAAE,UAAU,GAAG;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,MAAM,CAAA;KAAE;IAWvF,sBAAsB,CAAC,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,GAAE,OAAe,EAAE,YAAY,GAAE,OAAe,GAAG,OAAO,CAAC,MAAM,CAAC;IA2SpK;;;;;;;;;;;;;;;;;;;;OAoBG;WACW,gCAAgC,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM;IAoC1E;;;;;;;;;;OAUG;WACW,kCAAkC,CAC9C,MAAM,EAAE,UAAU,EAClB,YAAY,EAAE,sBAAsB,GACnC,6BAA6B,GAAG,IAAI;IAwGvC;;;;;;;OAOG;IACH,SAAS,CAAC,MAAM,CAAC,6BAA6B,CAC5C,MAAM,EAAE,UAAU,EAClB,YAAY,EAAE,sBAAsB,EACpC,MAAM,EAAE,6BAA6B,GACpC,MAAM;IA+FT;;;;;OAKG;IACH,SAAS,CAAC,MAAM,CAAC,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAI1D;;;;;;;;;OASG;WACW,uBAAuB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM;IAsCjE;;;;;;;OAOG;WACW,wBAAwB,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM;IAiEtF;;;OAGG;WACW,uBAAuB,CACnC,MAAM,EAAE,UAAU,EAClB,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,EAC5B,MAAM,CAAC,EAAE,UAAU,GAClB,eAAe,EAAE;IA6EpB;;;OAGG;WACW,0BAA0B,CAAC,OAAO,EAAE,eAAe,EAAE,GAAG,MAAM,EAAE;IAwB9E;;;OAGG;WACW,sBAAsB,CAAC,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,MAAM,EAAE;IAMrH;;;OAGG;WACW,yBAAyB,CACrC,MAAM,EAAE,UAAU,EAClB,KAAK,EAAE,eAAe,GACrB,oBAAoB,GAAG,IAAI;IAmC9B;;OAEG;IACH,SAAS,CAAC,MAAM,CAAC,oBAAoB,CACnC,MAAM,EAAE,UAAU,EAClB,KAAK,EAAE,eAAe,EACtB,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,oBAAoB,GAC3B,MAAM;IAuCT;;;OAGG;IACH,SAAS,CAAC,uBAAuB,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,eAAe,GAAG,MAAM;IAaxE,8BAA8B,CAAC,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAoEhI,wBAAwB,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,eAAe,EAAE,CAAA;KAAE;IAyEpG,qBAAqB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM;IAkExD;;;;;;OAMG;IACI,sBAAsB,CAAC,WAAW,EAAE,eAAe,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,MAAM;CA0BzF"}
|
|
@@ -6,8 +6,10 @@ import ts from 'typescript';
|
|
|
6
6
|
import { makeDir, sortBySequenceAndCreatedAt } from '../Misc/util.js';
|
|
7
7
|
import { logError, logStatus, logWarning } from './status_logging.js';
|
|
8
8
|
import { ManageMetadataBase } from '../Database/manage-metadata.js';
|
|
9
|
-
import { mj_core_schema, resolveEntityImportPackage } from '../Config/config.js';
|
|
9
|
+
import { configInfo, mj_core_schema, resolveEntityImportPackage } from '../Config/config.js';
|
|
10
10
|
import { SQLLogging } from './sql_logging.js';
|
|
11
|
+
import { EmitStats } from './emit-stats.js';
|
|
12
|
+
import { buildSchemaBarrel, groupEntitiesBySchema, mapLimit, emitSchemaFile, pruneOrphanedSchemaFiles, resolveSchemaEmitOptions, sanitizeSchemaFileName, schemasToEmit, } from './schema-emit.js';
|
|
11
13
|
/**
|
|
12
14
|
* Dynamically collects all own property names from BaseEntity's prototype chain
|
|
13
15
|
* (excluding Object.prototype). Any entity field whose CodeName matches one of
|
|
@@ -103,36 +105,47 @@ export class EntitySubClassGeneratorBase {
|
|
|
103
105
|
* @param entities
|
|
104
106
|
* @param directory
|
|
105
107
|
* @param skipDBUpdate - when set to true, no updates are written back to the database - which happens after code generation when newly generated code from AI has been generated, but in the case where this flag is true, we don't ever write back to the DB because the assumption is we are only emitting code to the file that was already in the DB.
|
|
108
|
+
* @param options - per-schema emit / dirty-schema / parallelism. Defaults come from `configInfo.fileEmit`.
|
|
106
109
|
* @returns
|
|
107
110
|
*/
|
|
108
|
-
async generateAllEntitySubClasses(pool, entities, directory, skipDBUpdate) {
|
|
111
|
+
async generateAllEntitySubClasses(pool, entities, directory, skipDBUpdate, options) {
|
|
109
112
|
try {
|
|
110
|
-
|
|
111
|
-
const zodContent = entities.map((entity) => this.GenerateSchemaAndType(entity)).join('');
|
|
112
|
-
let sContent = "";
|
|
113
|
-
for (const e of entities) {
|
|
114
|
-
sContent += await this.generateEntitySubClass(pool, e, false, skipDBUpdate);
|
|
115
|
-
}
|
|
116
|
-
// Hoist the base-class imports (e.g. ReadOnlyExternalBaseEntity for external entities, or custom
|
|
117
|
-
// subclass imports) into the file header, de-duplicated. Emitting each once — instead of once per
|
|
118
|
-
// entity — prevents a TS2300 duplicate-identifier error in files with 2+ external entities.
|
|
119
|
-
// Only consider entities that actually emit a class: generateEntitySubClass skips PK-less entities
|
|
120
|
-
// (returns ''), so hoisting their import would leave a dangling/unused import (a build error under
|
|
121
|
-
// a downstream consumer's noUnusedLocals). Match that skip condition here.
|
|
122
|
-
const entitiesWithPK = entities.filter((e) => e.PrimaryKeys.length > 0);
|
|
123
|
-
const localClassNames = new Set(entitiesWithPK.map((e) => `${e.ClassName}Entity`));
|
|
124
|
-
const baseClassImports = [...new Set(entitiesWithPK
|
|
125
|
-
.map((e) => this.resolveEntityBaseClass(e).importStatement)
|
|
126
|
-
.filter((s) => s.length > 0))].join('');
|
|
127
|
-
// Collect every embed + related-record-collection peer across the file, then emit
|
|
128
|
-
// one grouped `import { A, B } from 'pkg'` per npm package. Per-entity import
|
|
129
|
-
// lines would duplicate packages (Address on two owners → two import lines).
|
|
130
|
-
const peerImports = entitiesWithPK.flatMap((e) => EntitySubClassGeneratorBase.CollectPeerClassImports(e, localClassNames));
|
|
131
|
-
const peerImportStatements = EntitySubClassGeneratorBase.FormatPeerImportStatements(peerImports).join('');
|
|
132
|
-
const subclassImports = `${baseClassImports}${peerImportStatements}`;
|
|
133
|
-
const allContent = `${this.generateEntitySubClassFileHeader()} \n ${subclassImports}${zodContent} \n ${sContent}`;
|
|
113
|
+
const emit = this.resolveEmitOptions(options);
|
|
134
114
|
makeDir(directory);
|
|
135
|
-
|
|
115
|
+
if (!emit.perSchema) {
|
|
116
|
+
const allContent = await this.assembleEntitySubclassFile(pool, entities, skipDBUpdate, true);
|
|
117
|
+
this.emitFile(path.join(directory, 'entity_subclasses.ts'), allContent, emit.writeIfChanged);
|
|
118
|
+
return true;
|
|
119
|
+
}
|
|
120
|
+
const grouped = groupEntitiesBySchema(entities);
|
|
121
|
+
const schemas = [...grouped.keys()].sort((a, b) => a.localeCompare(b));
|
|
122
|
+
const schemasDir = path.join(directory, 'entities');
|
|
123
|
+
makeDir(schemasDir);
|
|
124
|
+
const toEmit = schemasToEmit(schemas, emit.dirtySchemas, (schemaName) => fs.existsSync(path.join(schemasDir, `${sanitizeSchemaFileName(schemaName)}.ts`)));
|
|
125
|
+
const emitSet = new Set(toEmit);
|
|
126
|
+
for (const schemaName of schemas) {
|
|
127
|
+
EmitStats.RecordSchemaEmit(emitSet.has(schemaName));
|
|
128
|
+
}
|
|
129
|
+
const concurrency = emit.parallel ? emit.concurrency : 1;
|
|
130
|
+
const assembleStarted = Date.now();
|
|
131
|
+
await mapLimit(toEmit, concurrency, async (schemaName) => {
|
|
132
|
+
const schemaEntities = grouped.get(schemaName) ?? [];
|
|
133
|
+
const content = await this.assembleEntitySubclassFile(pool, schemaEntities, skipDBUpdate, false);
|
|
134
|
+
const filePath = path.join(schemasDir, `${sanitizeSchemaFileName(schemaName)}.ts`);
|
|
135
|
+
this.emitFile(filePath, content, emit.writeIfChanged);
|
|
136
|
+
});
|
|
137
|
+
EmitStats.AddAssembleMs(Date.now() - assembleStarted);
|
|
138
|
+
// Before the barrel, so the directory and the barrel always agree.
|
|
139
|
+
const pruned = pruneOrphanedSchemaFiles(schemasDir, schemas);
|
|
140
|
+
if (pruned.length > 0) {
|
|
141
|
+
logStatus(` Removed ${pruned.length} orphaned entity schema file(s): ${pruned.join(', ')}`);
|
|
142
|
+
}
|
|
143
|
+
const barrel = buildSchemaBarrel(schemas, 'entities', `export const loadModule = () => {
|
|
144
|
+
// no-op — importing this barrel loads every per-schema module via the re-exports below
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
`);
|
|
148
|
+
this.emitFile(path.join(directory, 'entity_subclasses.ts'), barrel, emit.writeIfChanged);
|
|
136
149
|
return true;
|
|
137
150
|
}
|
|
138
151
|
catch (err) {
|
|
@@ -142,15 +155,61 @@ export class EntitySubClassGeneratorBase {
|
|
|
142
155
|
return false;
|
|
143
156
|
}
|
|
144
157
|
}
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
import
|
|
148
|
-
|
|
149
|
-
|
|
158
|
+
/**
|
|
159
|
+
* Build the TypeScript source for one emit file (one schema, or the legacy monolith).
|
|
160
|
+
* Hoists and de-duplicates two kinds of import into the file header: the generated
|
|
161
|
+
* base class each entity extends, and the embedded-record peers an entity references.
|
|
162
|
+
* Emitting each once per file — instead of once per entity — prevents a TS2300
|
|
163
|
+
* duplicate-identifier error in a file holding 2+ external entities.
|
|
164
|
+
*
|
|
165
|
+
* Entities without primary keys are excluded because {@link generateEntitySubClass}
|
|
166
|
+
* emits nothing for them; hoisting their imports would leave an unused import that
|
|
167
|
+
* fails a downstream consumer's `noUnusedLocals`.
|
|
168
|
+
*/
|
|
169
|
+
async assembleEntitySubclassFile(pool, entities, skipDBUpdate, includeLoadModule) {
|
|
170
|
+
const zodContent = entities.map((entity) => this.GenerateSchemaAndType(entity)).join('');
|
|
171
|
+
let sContent = '';
|
|
172
|
+
for (const e of entities) {
|
|
173
|
+
sContent += await this.generateEntitySubClass(pool, e, false, skipDBUpdate);
|
|
174
|
+
}
|
|
175
|
+
// Only entities that actually emit a class: generateEntitySubClass skips PK-less entities
|
|
176
|
+
// (returns ''), so hoisting their imports would leave a dangling/unused import that fails a
|
|
177
|
+
// downstream consumer's noUnusedLocals.
|
|
178
|
+
const entitiesWithPK = entities.filter((e) => e.PrimaryKeys.length > 0);
|
|
179
|
+
const localClassNames = new Set(entitiesWithPK.map((e) => `${e.ClassName}Entity`));
|
|
180
|
+
// De-duplicated so a file holding 2+ external entities does not emit
|
|
181
|
+
// `import { ReadOnlyExternalBaseEntity }` twice (TS2300).
|
|
182
|
+
const baseClassImports = [...new Set(entitiesWithPK
|
|
183
|
+
.map((e) => this.resolveEntityBaseClass(e).importStatement)
|
|
184
|
+
.filter((s) => s.length > 0))].join('');
|
|
185
|
+
// Collect every embed + related-record-collection peer across the file, then emit
|
|
186
|
+
// one grouped `import { A, B } from 'pkg'` per npm package. Per-entity import
|
|
187
|
+
// lines would duplicate packages (Address on two owners → two import lines).
|
|
188
|
+
const peerImports = entitiesWithPK.flatMap((e) => EntitySubClassGeneratorBase.CollectPeerClassImports(e, localClassNames));
|
|
189
|
+
const peerImportStatements = EntitySubClassGeneratorBase.FormatPeerImportStatements(peerImports).join('');
|
|
190
|
+
const subclassImports = `${baseClassImports}${peerImportStatements}`;
|
|
191
|
+
return `${this.generateEntitySubClassFileHeader(includeLoadModule)} \n ${subclassImports}${zodContent} \n ${sContent}`;
|
|
192
|
+
}
|
|
193
|
+
/** Delegates so both generators share one set of defaults; override to change them. */
|
|
194
|
+
resolveEmitOptions(options) {
|
|
195
|
+
return resolveSchemaEmitOptions(options, configInfo?.fileEmit);
|
|
196
|
+
}
|
|
197
|
+
/** Delegates so both generators write identically; override to change that. */
|
|
198
|
+
emitFile(filePath, content, useWriteIfChanged) {
|
|
199
|
+
emitSchemaFile(filePath, content, useWriteIfChanged);
|
|
200
|
+
}
|
|
201
|
+
generateEntitySubClassFileHeader(includeLoadModule = true) {
|
|
202
|
+
const loadModule = includeLoadModule
|
|
203
|
+
? `
|
|
150
204
|
export const loadModule = () => {
|
|
151
205
|
// no-op, only used to ensure this file is a valid module and to allow easy loading
|
|
152
206
|
}
|
|
153
|
-
|
|
207
|
+
`
|
|
208
|
+
: '';
|
|
209
|
+
return `import { BaseEntity, EntitySaveOptions, EntityDeleteOptions, CompositeKey, ValidationResult, ValidationErrorInfo, ValidationErrorType, Metadata, ProviderType, DatabaseProviderBase, RunView } from "@memberjunction/core";
|
|
210
|
+
import { RegisterClass } from "@memberjunction/global";
|
|
211
|
+
import { z } from "zod";
|
|
212
|
+
${loadModule}
|
|
154
213
|
`;
|
|
155
214
|
}
|
|
156
215
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity_subclasses_codegen.js","sourceRoot":"","sources":["../../src/Misc/entity_subclasses_codegen.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"entity_subclasses_codegen.js","sourceRoot":"","sources":["../../src/Misc/entity_subclasses_codegen.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Write `newContent` to `filePath` only when the file is missing or the bytes differ.
|
|
3
|
+
*
|
|
4
|
+
* Unchanged generated files keep their mtime. That is the whole point on a 2,000-entity
|
|
5
|
+
* database: TypeScript incremental builds (`incremental: true`) and file watchers treat
|
|
6
|
+
* a rewritten-but-identical monolith as dirty and recompile it. Skipping the write is
|
|
7
|
+
* what makes per-schema emit actually cheap on a no-op CodeGen run.
|
|
8
|
+
*
|
|
9
|
+
* Deliberately dependency-free (no `util` / config import) so unit tests can exercise
|
|
10
|
+
* it without booting the CodeGen config graph.
|
|
11
|
+
*
|
|
12
|
+
* @returns true when the file was created or rewritten
|
|
13
|
+
*/
|
|
14
|
+
export declare function writeFileIfChanged(filePath: string, newContent: string): boolean;
|
|
15
|
+
//# sourceMappingURL=file-write.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-write.d.ts","sourceRoot":"","sources":["../../src/Misc/file-write.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAehF"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import fs from 'fs';
|
|
2
|
+
import path from 'path';
|
|
3
|
+
import { EmitStats } from './emit-stats.js';
|
|
4
|
+
/**
|
|
5
|
+
* Write `newContent` to `filePath` only when the file is missing or the bytes differ.
|
|
6
|
+
*
|
|
7
|
+
* Unchanged generated files keep their mtime. That is the whole point on a 2,000-entity
|
|
8
|
+
* database: TypeScript incremental builds (`incremental: true`) and file watchers treat
|
|
9
|
+
* a rewritten-but-identical monolith as dirty and recompile it. Skipping the write is
|
|
10
|
+
* what makes per-schema emit actually cheap on a no-op CodeGen run.
|
|
11
|
+
*
|
|
12
|
+
* Deliberately dependency-free (no `util` / config import) so unit tests can exercise
|
|
13
|
+
* it without booting the CodeGen config graph.
|
|
14
|
+
*
|
|
15
|
+
* @returns true when the file was created or rewritten
|
|
16
|
+
*/
|
|
17
|
+
export function writeFileIfChanged(filePath, newContent) {
|
|
18
|
+
const dir = path.dirname(filePath);
|
|
19
|
+
if (!fs.existsSync(dir)) {
|
|
20
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
21
|
+
}
|
|
22
|
+
if (fs.existsSync(filePath)) {
|
|
23
|
+
const existing = fs.readFileSync(filePath, 'utf-8');
|
|
24
|
+
if (existing === newContent) {
|
|
25
|
+
EmitStats.RecordFileWrite(false);
|
|
26
|
+
return false;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
fs.writeFileSync(filePath, newContent);
|
|
30
|
+
EmitStats.RecordFileWrite(true);
|
|
31
|
+
return true;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=file-write.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-write.js","sourceRoot":"","sources":["../../src/Misc/file-write.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAgB,EAAE,UAAkB;IACrE,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IACD,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACpD,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;YAC5B,SAAS,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;YACjC,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IACD,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IACvC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IAChC,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -1,10 +1,20 @@
|
|
|
1
1
|
import { EntityInfo, EntityFieldInfo } from '@memberjunction/core';
|
|
2
|
+
import { SchemaEmitOptions } from './schema-emit.js';
|
|
2
3
|
/**
|
|
3
4
|
* This class is responsible for generating the GraphQL Server resolvers and types for the entities, you can sub-class this class to extend/modify the logic, make sure to use @memberjunction/global RegisterClass decorator
|
|
4
5
|
* so that your class is used.
|
|
5
6
|
*/
|
|
6
7
|
export declare class GraphQLServerGeneratorBase {
|
|
7
|
-
generateGraphQLServerCode(entities: EntityInfo[], outputDirectory: string, generatedEntitiesImportLibrary: string, excludeRelatedEntitiesExternalToSchema: boolean): boolean;
|
|
8
|
+
generateGraphQLServerCode(entities: EntityInfo[], outputDirectory: string, generatedEntitiesImportLibrary: string, excludeRelatedEntitiesExternalToSchema: boolean, options?: SchemaEmitOptions): boolean;
|
|
9
|
+
/**
|
|
10
|
+
* Build one GraphQL server file — a single schema, or the legacy monolith when
|
|
11
|
+
* per-schema emit is turned off.
|
|
12
|
+
*/
|
|
13
|
+
assembleGraphQLServerFile(entities: EntityInfo[], generatedEntitiesImportLibrary: string, excludeRelatedEntitiesExternalToSchema: boolean, fromSchemaSubdir?: boolean): string;
|
|
14
|
+
/** Delegates so both generators share one set of defaults; override to change them. */
|
|
15
|
+
protected resolveEmitOptions(options?: SchemaEmitOptions): Required<SchemaEmitOptions>;
|
|
16
|
+
/** Delegates so both generators write identically; override to change that. */
|
|
17
|
+
protected emitFile(filePath: string, content: string, useWriteIfChanged: boolean): void;
|
|
8
18
|
protected _graphQLTypeSuffix: string;
|
|
9
19
|
/**
|
|
10
20
|
* The suffix to append to the GraphQL Type name, default is an underscore, override this property in your sub-class to change the suffix
|
|
@@ -25,7 +35,7 @@ export declare class GraphQLServerGeneratorBase {
|
|
|
25
35
|
*/
|
|
26
36
|
protected getServerGraphQLTypeName(entity: EntityInfo): string;
|
|
27
37
|
generateServerEntityString(entity: EntityInfo, includeFileHeader: boolean, generatedEntitiesImportLibrary: string, _excludeRelatedEntitiesExternalToSchema: boolean): string;
|
|
28
|
-
generateAllEntitiesServerFileHeader(entities: EntityInfo[], importLibrary: string, isInternal: boolean): string;
|
|
38
|
+
generateAllEntitiesServerFileHeader(entities: EntityInfo[], importLibrary: string, isInternal: boolean, fromSchemaSubdir?: boolean): string;
|
|
29
39
|
/**
|
|
30
40
|
* Generates import statements for entity classes, grouping by package when
|
|
31
41
|
* entityPackageName is a schema-to-package map.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graphql_server_codegen.d.ts","sourceRoot":"","sources":["../../src/Misc/graphql_server_codegen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAkG,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"graphql_server_codegen.d.ts","sourceRoot":"","sources":["../../src/Misc/graphql_server_codegen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAkG,MAAM,sBAAsB,CAAC;AAiBnK,OAAO,EACL,iBAAiB,EAQlB,MAAM,eAAe,CAAC;AAGvB;;;GAGG;AACH,qBAAa,0BAA0B;IAC9B,yBAAyB,CAC9B,QAAQ,EAAE,UAAU,EAAE,EACtB,eAAe,EAAE,MAAM,EACvB,8BAA8B,EAAE,MAAM,EACtC,sCAAsC,EAAE,OAAO,EAC/C,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO;IAqEV;;;OAGG;IACI,yBAAyB,CAC9B,QAAQ,EAAE,UAAU,EAAE,EACtB,8BAA8B,EAAE,MAAM,EACtC,sCAAsC,EAAE,OAAO,EAC/C,gBAAgB,GAAE,OAAe,GAChC,MAAM;IAcT,uFAAuF;IACvF,SAAS,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,QAAQ,CAAC,iBAAiB,CAAC;IAItF,+EAA+E;IAC/E,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,OAAO,GAAG,IAAI;IAIvF,SAAS,CAAC,kBAAkB,SAAO;IACnC;;OAEG;IACH,IAAW,iBAAiB,IAAI,MAAM,CAErC;IAED;;;;;;OAMG;IACH,SAAS,CAAC,4BAA4B,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM;IAIlE;;;;OAIG;IACH,SAAS,CAAC,wBAAwB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM;IAIvD,0BAA0B,CAC/B,MAAM,EAAE,UAAU,EAClB,iBAAiB,EAAE,OAAO,EAC1B,8BAA8B,EAAE,MAAM,EACtC,uCAAuC,EAAE,OAAO,GAC/C,MAAM;IAqCF,mCAAmC,CAAC,QAAQ,EAAE,UAAU,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,gBAAgB,GAAE,OAAe,GAAG,MAAM;IA6BzJ;;;OAGG;IACH,SAAS,CAAC,qBAAqB,CAAC,QAAQ,EAAE,UAAU,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,MAAM;IAyBrG,sCAAsC,CAC3C,MAAM,EAAE,UAAU,EAClB,aAAa,EAAE,MAAM,GACpB,MAAM;IAqBT,SAAS,CAAC,0BAA0B,CAAC,MAAM,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,GAAG,MAAM;IAa/F,SAAS,CAAC,0BAA0B,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM;IAMhE,SAAS,CAAC,mBAAmB,CAAC,SAAS,EAAE,eAAe,GAAG,MAAM;IAejE;;;;;;;;;;OAUG;IACH,SAAS,CAAC,yBAAyB,CAAC,SAAS,EAAE,eAAe,GAAG,MAAM;IAqBvE,SAAS,CAAC,6BAA6B,CACrC,MAAM,EAAE,UAAU,EAClB,qBAAqB,EAAE,MAAM,GAC5B,MAAM;IA0JT;;;;OAIG;IACH,SAAS,CAAC,oBAAoB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM;IAO1D,SAAS,CAAC,8BAA8B,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM;IAOpE,SAAS,CAAC,mCAAmC,CAAC,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,GAAG,QAAQ,EAAE,qBAAqB,EAAE,OAAO,GAAG,MAAM;IAiE3I,SAAS,CAAC,8BAA8B,CAAC,MAAM,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,GAAG,MAAM;CAsEpG"}
|