@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,9 +2,11 @@ import { TypeScriptTypeFromSQLType, TypeScriptTypeFromSQLTypeWithNullableOption,
|
|
|
2
2
|
import { IsBinarySQLType, IsBooleanSQLType, IsCurrencySQLType, IsDateSQLType, IsFloatSQLType, IsStringSQLType, IsUuidSQLType, } from '@memberjunction/sql-dialect';
|
|
3
3
|
import fs from 'fs';
|
|
4
4
|
import path from 'path';
|
|
5
|
-
import { logError } from './status_logging.js';
|
|
6
|
-
import { mjCoreSchema, resolveEntityPackageName } from '../Config/config.js';
|
|
5
|
+
import { logError, logStatus } from './status_logging.js';
|
|
6
|
+
import { configInfo, mjCoreSchema, resolveEntityPackageName } from '../Config/config.js';
|
|
7
7
|
import { makeDir, sortBySequenceAndCreatedAt } from './util.js';
|
|
8
|
+
import { EmitStats } from './emit-stats.js';
|
|
9
|
+
import { buildSchemaBarrel, groupEntitiesBySchema, emitSchemaFile, pruneOrphanedSchemaFiles, resolveSchemaEmitOptions, sanitizeSchemaFileName, schemasToEmit, } from './schema-emit.js';
|
|
8
10
|
/**
|
|
9
11
|
* 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
|
|
10
12
|
* so that your class is used.
|
|
@@ -13,16 +15,43 @@ export class GraphQLServerGeneratorBase {
|
|
|
13
15
|
constructor() {
|
|
14
16
|
this._graphQLTypeSuffix = '_';
|
|
15
17
|
}
|
|
16
|
-
generateGraphQLServerCode(entities, outputDirectory, generatedEntitiesImportLibrary, excludeRelatedEntitiesExternalToSchema) {
|
|
17
|
-
const isInternal = generatedEntitiesImportLibrary.trim().toLowerCase().startsWith('@memberjunction/');
|
|
18
|
-
let sRet = '';
|
|
18
|
+
generateGraphQLServerCode(entities, outputDirectory, generatedEntitiesImportLibrary, excludeRelatedEntitiesExternalToSchema, options) {
|
|
19
19
|
try {
|
|
20
|
-
|
|
21
|
-
for (let i = 0; i < entities.length; ++i) {
|
|
22
|
-
sRet += this.generateServerEntityString(entities[i], false, generatedEntitiesImportLibrary, excludeRelatedEntitiesExternalToSchema);
|
|
23
|
-
}
|
|
20
|
+
const emit = this.resolveEmitOptions(options);
|
|
24
21
|
makeDir(outputDirectory);
|
|
25
|
-
|
|
22
|
+
if (!emit.perSchema) {
|
|
23
|
+
const content = this.assembleGraphQLServerFile(entities, generatedEntitiesImportLibrary, excludeRelatedEntitiesExternalToSchema);
|
|
24
|
+
this.emitFile(path.join(outputDirectory, 'generated.ts'), content, emit.writeIfChanged);
|
|
25
|
+
return true;
|
|
26
|
+
}
|
|
27
|
+
const grouped = groupEntitiesBySchema(entities);
|
|
28
|
+
const schemas = [...grouped.keys()].sort((a, b) => a.localeCompare(b));
|
|
29
|
+
const schemasDir = path.join(outputDirectory, 'graphql-schemas');
|
|
30
|
+
makeDir(schemasDir);
|
|
31
|
+
const toEmit = schemasToEmit(schemas, emit.dirtySchemas, (schemaName) => fs.existsSync(path.join(schemasDir, `${sanitizeSchemaFileName(schemaName)}.ts`)));
|
|
32
|
+
const emitSet = new Set(toEmit);
|
|
33
|
+
for (const schemaName of schemas) {
|
|
34
|
+
EmitStats.RecordSchemaEmit(emitSet.has(schemaName));
|
|
35
|
+
}
|
|
36
|
+
const assembleStarted = Date.now();
|
|
37
|
+
for (const schemaName of toEmit) {
|
|
38
|
+
const schemaEntities = grouped.get(schemaName) ?? [];
|
|
39
|
+
const content = this.assembleGraphQLServerFile(schemaEntities, generatedEntitiesImportLibrary, excludeRelatedEntitiesExternalToSchema, true);
|
|
40
|
+
this.emitFile(path.join(schemasDir, `${sanitizeSchemaFileName(schemaName)}.ts`), content, emit.writeIfChanged);
|
|
41
|
+
}
|
|
42
|
+
EmitStats.AddAssembleMs(Date.now() - assembleStarted);
|
|
43
|
+
// Before the barrel, so the directory and the barrel always agree.
|
|
44
|
+
const pruned = pruneOrphanedSchemaFiles(schemasDir, schemas);
|
|
45
|
+
if (pruned.length > 0) {
|
|
46
|
+
logStatus(` Removed ${pruned.length} orphaned GraphQL schema file(s): ${pruned.join(', ')}`);
|
|
47
|
+
}
|
|
48
|
+
const barrel = buildSchemaBarrel(schemas, 'graphql-schemas', `/********************************************************************************
|
|
49
|
+
* GraphQL server barrel — AUTO GENERATED. Do not edit.
|
|
50
|
+
* Re-exports one file per schema.
|
|
51
|
+
*
|
|
52
|
+
**********************************************************************************/
|
|
53
|
+
`);
|
|
54
|
+
this.emitFile(path.join(outputDirectory, 'generated.ts'), barrel, emit.writeIfChanged);
|
|
26
55
|
return true;
|
|
27
56
|
}
|
|
28
57
|
catch (err) {
|
|
@@ -30,6 +59,26 @@ export class GraphQLServerGeneratorBase {
|
|
|
30
59
|
return false;
|
|
31
60
|
}
|
|
32
61
|
}
|
|
62
|
+
/**
|
|
63
|
+
* Build one GraphQL server file — a single schema, or the legacy monolith when
|
|
64
|
+
* per-schema emit is turned off.
|
|
65
|
+
*/
|
|
66
|
+
assembleGraphQLServerFile(entities, generatedEntitiesImportLibrary, excludeRelatedEntitiesExternalToSchema, fromSchemaSubdir = false) {
|
|
67
|
+
const isInternal = generatedEntitiesImportLibrary.trim().toLowerCase().startsWith('@memberjunction/');
|
|
68
|
+
let sRet = this.generateAllEntitiesServerFileHeader(entities, generatedEntitiesImportLibrary, isInternal, fromSchemaSubdir);
|
|
69
|
+
for (const entity of entities) {
|
|
70
|
+
sRet += this.generateServerEntityString(entity, false, generatedEntitiesImportLibrary, excludeRelatedEntitiesExternalToSchema);
|
|
71
|
+
}
|
|
72
|
+
return sRet;
|
|
73
|
+
}
|
|
74
|
+
/** Delegates so both generators share one set of defaults; override to change them. */
|
|
75
|
+
resolveEmitOptions(options) {
|
|
76
|
+
return resolveSchemaEmitOptions(options, configInfo?.fileEmit);
|
|
77
|
+
}
|
|
78
|
+
/** Delegates so both generators write identically; override to change that. */
|
|
79
|
+
emitFile(filePath, content, useWriteIfChanged) {
|
|
80
|
+
emitSchemaFile(filePath, content, useWriteIfChanged);
|
|
81
|
+
}
|
|
33
82
|
/**
|
|
34
83
|
* The suffix to append to the GraphQL Type name, default is an underscore, override this property in your sub-class to change the suffix
|
|
35
84
|
*/
|
|
@@ -86,7 +135,7 @@ export class GraphQLServerGeneratorBase {
|
|
|
86
135
|
return sEntityOutput;
|
|
87
136
|
}
|
|
88
137
|
}
|
|
89
|
-
generateAllEntitiesServerFileHeader(entities, importLibrary, isInternal) {
|
|
138
|
+
generateAllEntitiesServerFileHeader(entities, importLibrary, isInternal, fromSchemaSubdir = false) {
|
|
90
139
|
let sRet = `/********************************************************************************
|
|
91
140
|
* ALL ENTITIES - TypeGraphQL Type Class Definition - AUTO GENERATED FILE
|
|
92
141
|
* Generated Entities and Resolvers for Server
|
|
@@ -104,7 +153,7 @@ import { Metadata, EntityPermissionType, CompositeKey, UserInfo } from '@memberj
|
|
|
104
153
|
|
|
105
154
|
import { MaxLength } from 'class-validator';
|
|
106
155
|
${isInternal
|
|
107
|
-
? `import { mj_core_schema } from '../config.js';\n`
|
|
156
|
+
? `import { mj_core_schema } from '${fromSchemaSubdir ? '../../config.js' : '../config.js'}';\n`
|
|
108
157
|
: `import * as mj_core_schema_server_object_types from '@memberjunction/server'`}
|
|
109
158
|
|
|
110
159
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graphql_server_codegen.js","sourceRoot":"","sources":["../../src/Misc/graphql_server_codegen.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"graphql_server_codegen.js","sourceRoot":"","sources":["../../src/Misc/graphql_server_codegen.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,11 @@ export type CommandExecutionResult = {
|
|
|
5
5
|
success: boolean;
|
|
6
6
|
elapsedTime: number;
|
|
7
7
|
};
|
|
8
|
+
/**
|
|
9
|
+
* Combine the exit-code message with a tail of captured stdout/stderr so AFTER
|
|
10
|
+
* failures show the actual tsc/pnpm diagnostic instead of just "exited with code N".
|
|
11
|
+
*/
|
|
12
|
+
export declare function formatCommandFailureDetail(result: CommandExecutionResult, tailLines?: number): string;
|
|
8
13
|
/**
|
|
9
14
|
* Base class that handles the process of running commands which can be done executed from any other area of the system, typically done by the main runMemberJunctionCodeGen process
|
|
10
15
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runCommand.d.ts","sourceRoot":"","sources":["../../src/Misc/runCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAA2B,MAAM,kBAAkB,CAAC;AAMxE,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAA;AAED;;GAEG;AACH,qBAAa,eAAe;IACb,WAAW,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC;IA6BvE,UAAU,CAAC,OAAO,EAAE,WAAW,GAAI,OAAO,CAAC,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"runCommand.d.ts","sourceRoot":"","sources":["../../src/Misc/runCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAA2B,MAAM,kBAAkB,CAAC;AAMxE,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAA;AAID;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,sBAAsB,EAAE,SAAS,GAAE,MAAkC,GAAG,MAAM,CAahI;AAED;;GAEG;AACH,qBAAa,eAAe;IACb,WAAW,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC;IA6BvE,UAAU,CAAC,OAAO,EAAE,WAAW,GAAI,OAAO,CAAC,sBAAsB,CAAC;CA8GhF"}
|
package/dist/Misc/runCommand.js
CHANGED
|
@@ -3,6 +3,25 @@ import { spawn } from 'child_process';
|
|
|
3
3
|
import { logError, logStatus } from './status_logging.js';
|
|
4
4
|
import path from 'path';
|
|
5
5
|
import treeKill from 'tree-kill';
|
|
6
|
+
const FAILURE_OUTPUT_TAIL_LINES = 40;
|
|
7
|
+
/**
|
|
8
|
+
* Combine the exit-code message with a tail of captured stdout/stderr so AFTER
|
|
9
|
+
* failures show the actual tsc/pnpm diagnostic instead of just "exited with code N".
|
|
10
|
+
*/
|
|
11
|
+
export function formatCommandFailureDetail(result, tailLines = FAILURE_OUTPUT_TAIL_LINES) {
|
|
12
|
+
const parts = [];
|
|
13
|
+
const errorText = (result.error || '').trim();
|
|
14
|
+
if (errorText) {
|
|
15
|
+
parts.push(errorText);
|
|
16
|
+
}
|
|
17
|
+
const output = (result.output || '').trim();
|
|
18
|
+
if (output) {
|
|
19
|
+
const lines = output.split(/\r?\n/);
|
|
20
|
+
const kept = lines.length > tailLines ? ['…', ...lines.slice(-tailLines)] : lines;
|
|
21
|
+
parts.push(kept.join('\n'));
|
|
22
|
+
}
|
|
23
|
+
return parts.join('\n');
|
|
24
|
+
}
|
|
6
25
|
/**
|
|
7
26
|
* Base class that handles the process of running commands which can be done executed from any other area of the system, typically done by the main runMemberJunctionCodeGen process
|
|
8
27
|
*/
|
|
@@ -37,7 +56,6 @@ export class RunCommandsBase {
|
|
|
37
56
|
try {
|
|
38
57
|
let output = '';
|
|
39
58
|
let startTime = new Date();
|
|
40
|
-
let bErrors = false;
|
|
41
59
|
const commandName = command.command;
|
|
42
60
|
const absPath = path.resolve(currentWorkingDirectory, command.workingDirectory);
|
|
43
61
|
logStatus(`STARTING COMMAND: "${command.command}" in location "${absPath}" with args "${command.args.join(' ')}"`);
|
|
@@ -57,13 +75,10 @@ export class RunCommandsBase {
|
|
|
57
75
|
output += data.toString();
|
|
58
76
|
});
|
|
59
77
|
cp.stderr?.on('data', (data) => {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
console.error(`COMMAND: "${command.command}" FAILED: ${elapsedTime / 1000} seconds`);
|
|
65
|
-
bErrors = true;
|
|
66
|
-
}
|
|
78
|
+
// tsc / npm / pnpm write the word "error" to stderr on successful
|
|
79
|
+
// builds (TS diagnostics that were not emitted, deprecation banners,
|
|
80
|
+
// progress). Exit code is the only honest success signal.
|
|
81
|
+
output += data.toString();
|
|
67
82
|
});
|
|
68
83
|
cp.on('error', (error) => {
|
|
69
84
|
const elapsedTime = new Date().getTime() - startTime.getTime();
|
|
@@ -73,17 +88,28 @@ export class RunCommandsBase {
|
|
|
73
88
|
reject(error);
|
|
74
89
|
});
|
|
75
90
|
cp.on('close', (code) => {
|
|
91
|
+
const elapsedTime = new Date().getTime() - startTime.getTime();
|
|
76
92
|
if (code === 0) {
|
|
77
|
-
const elapsedTime = new Date().getTime() - startTime.getTime();
|
|
78
93
|
logStatus(`COMMAND: "${command.command}" COMPLETED SUCCESSFULLY: ${elapsedTime / 1000} seconds`);
|
|
79
|
-
resolve({
|
|
94
|
+
resolve({
|
|
95
|
+
output,
|
|
80
96
|
error: null,
|
|
81
|
-
success:
|
|
82
|
-
elapsedTime
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
reject(new Error(`Process exited with code ${code}`));
|
|
97
|
+
success: true,
|
|
98
|
+
elapsedTime,
|
|
99
|
+
});
|
|
100
|
+
return;
|
|
86
101
|
}
|
|
102
|
+
// Resolve (do not reject) so callers keep stdout/stderr. The previous
|
|
103
|
+
// reject-on-nonzero path dropped the captured output and left AFTER
|
|
104
|
+
// failures looking like a bare "Process exited with code N".
|
|
105
|
+
const message = `Process exited with code ${code}`;
|
|
106
|
+
console.error(`COMMAND: "${command.command}" FAILED: ${elapsedTime / 1000} seconds (${message})`);
|
|
107
|
+
resolve({
|
|
108
|
+
output,
|
|
109
|
+
error: message,
|
|
110
|
+
success: false,
|
|
111
|
+
elapsedTime,
|
|
112
|
+
});
|
|
87
113
|
});
|
|
88
114
|
});
|
|
89
115
|
if (command.timeout && command.timeout > 0) {
|
|
@@ -93,13 +119,13 @@ export class RunCommandsBase {
|
|
|
93
119
|
const elapsedTime = new Date().getTime() - startTime.getTime();
|
|
94
120
|
if (!cp.killed) {
|
|
95
121
|
treeKill(cp.pid);
|
|
96
|
-
console.error(`COMMAND: "${command.command}"
|
|
122
|
+
console.error(`COMMAND: "${command.command}" TIMED OUT after ${elapsedTime / 1000} seconds`);
|
|
97
123
|
output += `Process killed after ${timeout} ms`;
|
|
98
124
|
}
|
|
99
125
|
resolve({
|
|
100
126
|
output: output,
|
|
101
127
|
error: null,
|
|
102
|
-
success:
|
|
128
|
+
success: false,
|
|
103
129
|
elapsedTime: elapsedTime,
|
|
104
130
|
});
|
|
105
131
|
}, timeout);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runCommand.js","sourceRoot":"","sources":["../../src/Misc/runCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,KAAK,EAAgB,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,QAAQ,MAAM,WAAW,CAAC;AASjC;;GAEG;AACH,MAAM,OAAO,eAAe;IACnB,KAAK,CAAC,WAAW,CAAC,QAAuB;QAC9C,IAAI,CAAC;YACH,MAAM,OAAO,GAA6B,EAAE,CAAC;YAE7C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC/B,IAAI,CAAC;oBACH,+EAA+E;oBAC/E,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;gBAC/C,CAAC;gBACD,OAAO,CAAC,EAAE,CAAC;oBACT,yEAAyE;oBACzE,0EAA0E;oBAC1E,2EAA2E;oBAC3E,4DAA4D;oBAC5D,MAAM,OAAO,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;oBAC3D,QAAQ,CAAC,OAAO,CAAC,CAAC;oBAClB,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC/E,CAAC;YACH,CAAC;YAED,OAAO,OAAO,CAAA;QAChB,CAAC;QACD,OAAO,CAAC,EAAE,CAAC;YACT,QAAQ,CAAC,CAAW,CAAC,CAAA;YACrB,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;IAGM,KAAK,CAAC,UAAU,CAAC,OAAoB;QAC1C,IAAI,EAAE,GAAiB,IAAK,CAAC;QAC7B,IAAI,CAAC;YACH,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAI,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;YAC3B,
|
|
1
|
+
{"version":3,"file":"runCommand.js","sourceRoot":"","sources":["../../src/Misc/runCommand.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Schema is the incremental unit for CodeGen file emit.
|
|
3
|
+
*
|
|
4
|
+
* A 2,000-entity database is almost never one schema with 2,000 tables. It is
|
|
5
|
+
* two-to-three dozen schemas of 100–150 tables each. Entity identity stays the
|
|
6
|
+
* entity (names, FKs, metadata rows). Everything that can be incremental —
|
|
7
|
+
* emit, dirty regen, parallelism, output-directory routing, agent context —
|
|
8
|
+
* keys off the schema.
|
|
9
|
+
*/
|
|
10
|
+
export type DirtySchemaSet = Set<string> | 'all';
|
|
11
|
+
export interface SchemaEmitOptions {
|
|
12
|
+
/**
|
|
13
|
+
* When true (the default), emit one TypeScript file per schema plus a thin
|
|
14
|
+
* barrel. When false, emit the historical single monolith.
|
|
15
|
+
*/
|
|
16
|
+
perSchema?: boolean;
|
|
17
|
+
/**
|
|
18
|
+
* Schemas whose files must be rebuilt. `'all'` rebuilds every schema
|
|
19
|
+
* (used by `--skipdb` file-only runs). A Set rebuilds only those schemas
|
|
20
|
+
* plus any schema whose file is missing. An omitted / empty set with
|
|
21
|
+
* existing files is the fast path: skip the string-build entirely.
|
|
22
|
+
*/
|
|
23
|
+
dirtySchemas?: DirtySchemaSet;
|
|
24
|
+
/** Assemble independent schema files in parallel. Defaults to true. */
|
|
25
|
+
parallel?: boolean;
|
|
26
|
+
/** Max schemas to assemble in parallel. Defaults to 8. */
|
|
27
|
+
concurrency?: number;
|
|
28
|
+
/** Skip the disk write when bytes are identical. Defaults to true. */
|
|
29
|
+
writeIfChanged?: boolean;
|
|
30
|
+
}
|
|
31
|
+
export interface SchemaNamed {
|
|
32
|
+
Name: string;
|
|
33
|
+
SchemaName: string;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Case-insensitive schema match. `%` is the only wildcard (SQL `_` is a
|
|
37
|
+
* literal — schema names like `bsd_crm` are common and must not glob).
|
|
38
|
+
*/
|
|
39
|
+
/** Case-insensitive schema/entity key. Null/undefined become ''. */
|
|
40
|
+
export declare function schemaKey(name: string | null | undefined): string;
|
|
41
|
+
export declare function schemaNameMatches(pattern: string, schemaName: string | null | undefined): boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Turn a SQL schema name into a safe TypeScript file stem.
|
|
44
|
+
* `__mj` stays `__mj`; `bsd_crm` stays `bsd_crm`; `Sales.Analytics` becomes `Sales_Analytics`.
|
|
45
|
+
*/
|
|
46
|
+
export declare function sanitizeSchemaFileName(schemaName: string | null | undefined): string;
|
|
47
|
+
/**
|
|
48
|
+
* Group entities by their raw `SchemaName` (trimmed, original casing of the
|
|
49
|
+
* first occurrence). Order inside each group is the input order.
|
|
50
|
+
*/
|
|
51
|
+
export declare function groupEntitiesBySchema<T extends {
|
|
52
|
+
SchemaName: string;
|
|
53
|
+
}>(entities: readonly T[]): Map<string, T[]>;
|
|
54
|
+
/**
|
|
55
|
+
* Map dirty entity names (from `newEntityList` ∪ `modifiedEntityList`) back to
|
|
56
|
+
* the schemas those entities live in. Comparison is case-insensitive.
|
|
57
|
+
*/
|
|
58
|
+
/**
|
|
59
|
+
* Resolve which schemas a file-emit pass should rebuild.
|
|
60
|
+
* `--skipdb` and `dirtySchemaOnly === false` rebuild every schema (write-if-changed
|
|
61
|
+
* still keeps mtimes stable). Otherwise only schemas that contain a new/modified
|
|
62
|
+
* entity are dirty — missing files are added later by {@link schemasToEmit}.
|
|
63
|
+
*/
|
|
64
|
+
export declare function resolveDirtySchemasForEmit(entities: readonly SchemaNamed[], dirtyEntityNames: Iterable<string>, skipDB: boolean, dirtySchemaOnly: boolean, deletedEntitySchemas?: Iterable<string>): DirtySchemaSet;
|
|
65
|
+
export declare function collectDirtySchemas(entities: readonly SchemaNamed[], dirtyEntityNames: Iterable<string>): Set<string>;
|
|
66
|
+
/**
|
|
67
|
+
* Decide which schema files to rebuild. Missing files are always rebuilt so a
|
|
68
|
+
* fresh clone / first run is complete. When `dirty` is `'all'` every schema is
|
|
69
|
+
* rebuilt (callers still use write-if-changed to keep mtimes stable).
|
|
70
|
+
*/
|
|
71
|
+
export declare function schemasToEmit(allSchemas: readonly string[], dirty: DirtySchemaSet | undefined, fileExists: (schemaName: string) => boolean): string[];
|
|
72
|
+
/**
|
|
73
|
+
* Bounded parallel map. Order of results matches `items`. A limit of 1 is serial.
|
|
74
|
+
*/
|
|
75
|
+
export declare function mapLimit<T, R>(items: readonly T[], limit: number, mapper: (item: T, index: number) => Promise<R>): Promise<R[]>;
|
|
76
|
+
/**
|
|
77
|
+
* Barrel that re-exports every per-schema file. Uses `.js` specifiers so the
|
|
78
|
+
* file is valid in `"type": "module"` packages (MJCoreEntities, MJServer).
|
|
79
|
+
*/
|
|
80
|
+
export declare function buildSchemaBarrel(schemas: readonly string[], relativeDir: string, extraHeader: string): string;
|
|
81
|
+
/**
|
|
82
|
+
* Names of files in a per-schema emit directory that no live schema claims.
|
|
83
|
+
*
|
|
84
|
+
* Kept pure and separate from the deletion so the decision is testable without a
|
|
85
|
+
* filesystem. `fileNames` is a plain directory listing; `schemas` is every schema in the
|
|
86
|
+
* run, not just the dirty subset.
|
|
87
|
+
*/
|
|
88
|
+
export declare function selectOrphanedSchemaFiles(fileNames: readonly string[], schemas: readonly string[]): string[];
|
|
89
|
+
/**
|
|
90
|
+
* Delete per-schema files that no live schema claims, returning what was removed.
|
|
91
|
+
*
|
|
92
|
+
* A schema that empties out — its last table dropped — leaves its file on disk. The barrel
|
|
93
|
+
* stops exporting it, which is not enough: `tsc` still compiles it through `include`, the
|
|
94
|
+
* class-registration manifest still globs it into the registry, and the CodeGen-tail guard
|
|
95
|
+
* reads every `.ts` in the directory regardless of what the barrel names. So a deleted
|
|
96
|
+
* entity keeps a live `@RegisterClass` registration and inflates the roster the guard
|
|
97
|
+
* compares. The old monolith could not drift this way; it was rewritten in full every run.
|
|
98
|
+
*
|
|
99
|
+
* Safe under dirty-schema regen: `schemas` is the full set for the run, so a schema that
|
|
100
|
+
* simply was not dirty this time is still live and is never pruned.
|
|
101
|
+
*/
|
|
102
|
+
export declare function pruneOrphanedSchemaFiles(directory: string, schemas: readonly string[]): string[];
|
|
103
|
+
/**
|
|
104
|
+
* Fill in a partial {@link SchemaEmitOptions} from config defaults.
|
|
105
|
+
*
|
|
106
|
+
* Shared by both generators so the defaults cannot drift between entity subclasses and
|
|
107
|
+
* GraphQL resolvers — they must agree, or one emits per-schema while the other emits a
|
|
108
|
+
* monolith and the two rosters stop lining up.
|
|
109
|
+
*
|
|
110
|
+
* `parallel` / `concurrency` are resolved for every caller even though only the entity
|
|
111
|
+
* generator uses them: its per-schema assembly is async (each file awaits its entities),
|
|
112
|
+
* while GraphQL assembly is synchronous, so there is nothing to overlap there.
|
|
113
|
+
*/
|
|
114
|
+
export declare function resolveSchemaEmitOptions(options: SchemaEmitOptions | undefined, defaults: SchemaEmitOptions | undefined): Required<SchemaEmitOptions>;
|
|
115
|
+
/**
|
|
116
|
+
* Write one emitted file, honouring the write-if-changed setting.
|
|
117
|
+
*
|
|
118
|
+
* Shared for the same reason as {@link resolveSchemaEmitOptions}: both generators must treat
|
|
119
|
+
* an unchanged file identically, or one leaves mtimes alone while the other churns them and
|
|
120
|
+
* downstream incremental builds see phantom work.
|
|
121
|
+
*/
|
|
122
|
+
export declare function emitSchemaFile(filePath: string, content: string, useWriteIfChanged: boolean): void;
|
|
123
|
+
//# sourceMappingURL=schema-emit.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-emit.d.ts","sourceRoot":"","sources":["../../src/Misc/schema-emit.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAOH,MAAM,MAAM,cAAc,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;AAEjD,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,cAAc,CAAC;IAC9B,uEAAuE;IACvE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,0DAA0D;IAC1D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sEAAsE;IACtE,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,oEAAoE;AACpE,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAEjE;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAQjG;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAIpF;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,SAAS;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAYhH;AAED;;;GAGG;AACH;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,SAAS,WAAW,EAAE,EAChC,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,EAClC,MAAM,EAAE,OAAO,EACf,eAAe,EAAE,OAAO,EACxB,oBAAoB,GAAE,QAAQ,CAAC,MAAM,CAAM,GAC1C,cAAc,CAehB;AAED,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,SAAS,WAAW,EAAE,EAChC,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,GACjC,GAAG,CAAC,MAAM,CAAC,CAqBb;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,KAAK,EAAE,cAAc,GAAG,SAAS,EACjC,UAAU,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,GAC1C,MAAM,EAAE,CAWV;AAED;;GAEG;AACH,wBAAsB,QAAQ,CAAC,CAAC,EAAE,CAAC,EACjC,KAAK,EAAE,SAAS,CAAC,EAAE,EACnB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GAC7C,OAAO,CAAC,CAAC,EAAE,CAAC,CAcd;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,SAAS,MAAM,EAAE,EAC1B,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,GAClB,MAAM,CAOR;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAG5G;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAShG;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,iBAAiB,GAAG,SAAS,EACtC,QAAQ,EAAE,iBAAiB,GAAG,SAAS,GACtC,QAAQ,CAAC,iBAAiB,CAAC,CAQ7B;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,OAAO,GAAG,IAAI,CAOlG"}
|