@memberjunction/codegen-lib 6.2.0-edge.0 → 6.2.0-edge.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Angular/angular-codegen.d.ts +6 -0
- package/dist/Angular/angular-codegen.d.ts.map +1 -1
- package/dist/Angular/angular-codegen.js +26 -14
- package/dist/Angular/angular-codegen.js.map +1 -1
- package/dist/Config/config.d.ts +45 -2
- package/dist/Config/config.d.ts.map +1 -1
- package/dist/Config/config.js +116 -39
- package/dist/Config/config.js.map +1 -1
- package/dist/Config/db-connection.d.ts +4 -0
- package/dist/Config/db-connection.d.ts.map +1 -1
- package/dist/Config/db-connection.js +11 -3
- package/dist/Config/db-connection.js.map +1 -1
- package/dist/Config/pg-connection.d.ts +2 -0
- package/dist/Config/pg-connection.d.ts.map +1 -1
- package/dist/Config/pg-connection.js +5 -1
- package/dist/Config/pg-connection.js.map +1 -1
- package/dist/Config/schema-output.d.ts +8 -0
- package/dist/Config/schema-output.d.ts.map +1 -1
- package/dist/Config/schema-output.js +19 -7
- package/dist/Config/schema-output.js.map +1 -1
- package/dist/Database/__tests__/exclude-schema-permissions.test.js +3 -3
- package/dist/Database/codeGenDatabaseProvider.d.ts +16 -1
- package/dist/Database/codeGenDatabaseProvider.d.ts.map +1 -1
- package/dist/Database/codeGenDatabaseProvider.js +37 -9
- package/dist/Database/codeGenDatabaseProvider.js.map +1 -1
- package/dist/Database/dbSchema.d.ts +4 -0
- package/dist/Database/dbSchema.d.ts.map +1 -1
- package/dist/Database/dbSchema.js +17 -9
- package/dist/Database/dbSchema.js.map +1 -1
- package/dist/Database/entity-field-change-tracking.d.ts +4 -0
- package/dist/Database/entity-field-change-tracking.d.ts.map +1 -1
- package/dist/Database/entity-field-change-tracking.js +12 -4
- package/dist/Database/entity-field-change-tracking.js.map +1 -1
- package/dist/Database/exclude-tables.d.ts +2 -0
- package/dist/Database/exclude-tables.d.ts.map +1 -1
- package/dist/Database/exclude-tables.js +5 -1
- package/dist/Database/exclude-tables.js.map +1 -1
- package/dist/Database/field-metadata-lock.d.ts +8 -6
- package/dist/Database/field-metadata-lock.d.ts.map +1 -1
- package/dist/Database/field-metadata-lock.js +29 -25
- package/dist/Database/field-metadata-lock.js.map +1 -1
- package/dist/Database/heal-schema-params.d.ts +14 -2
- package/dist/Database/heal-schema-params.d.ts.map +1 -1
- package/dist/Database/heal-schema-params.js +21 -5
- package/dist/Database/heal-schema-params.js.map +1 -1
- package/dist/Database/manage-metadata.d.ts +119 -3
- package/dist/Database/manage-metadata.d.ts.map +1 -1
- package/dist/Database/manage-metadata.js +529 -364
- package/dist/Database/manage-metadata.js.map +1 -1
- package/dist/Database/materializationAnalysis.d.ts +61 -2
- package/dist/Database/materializationAnalysis.d.ts.map +1 -1
- package/dist/Database/materializationAnalysis.js +43 -23
- package/dist/Database/materializationAnalysis.js.map +1 -1
- package/dist/Database/materializationBroadRender.d.ts +5 -3
- package/dist/Database/materializationBroadRender.d.ts.map +1 -1
- package/dist/Database/materializationBroadRender.js +17 -13
- package/dist/Database/materializationBroadRender.js.map +1 -1
- package/dist/Database/materializationDrift.d.ts +2 -0
- package/dist/Database/materializationDrift.d.ts.map +1 -1
- package/dist/Database/materializationDrift.js +5 -1
- package/dist/Database/materializationDrift.js.map +1 -1
- package/dist/Database/materializationParamClassifier.d.ts +17 -2
- package/dist/Database/materializationParamClassifier.d.ts.map +1 -1
- package/dist/Database/materializationParamClassifier.js +22 -10
- package/dist/Database/materializationParamClassifier.js.map +1 -1
- package/dist/Database/materializationParamVerifier.d.ts +2 -0
- package/dist/Database/materializationParamVerifier.d.ts.map +1 -1
- package/dist/Database/materializationParamVerifier.js +18 -14
- package/dist/Database/materializationParamVerifier.js.map +1 -1
- package/dist/Database/materializationSqlAst.d.ts +19 -1
- package/dist/Database/materializationSqlAst.d.ts.map +1 -1
- package/dist/Database/materializationSqlAst.js +53 -17
- package/dist/Database/materializationSqlAst.js.map +1 -1
- package/dist/Database/providers/postgresql/PostgreSQLCodeGenProvider.js +30 -30
- package/dist/Database/providers/postgresql/PostgreSQLCodeGenProvider.js.map +1 -1
- package/dist/Database/providers/postgresql/metadataSupportObjects.d.ts +2 -0
- package/dist/Database/providers/postgresql/metadataSupportObjects.d.ts.map +1 -1
- package/dist/Database/providers/postgresql/metadataSupportObjects.js +5 -1
- package/dist/Database/providers/postgresql/metadataSupportObjects.js.map +1 -1
- package/dist/Database/providers/postgresql/viewDependencyCapture.d.ts +10 -0
- package/dist/Database/providers/postgresql/viewDependencyCapture.d.ts.map +1 -1
- package/dist/Database/providers/postgresql/viewDependencyCapture.js +25 -5
- package/dist/Database/providers/postgresql/viewDependencyCapture.js.map +1 -1
- package/dist/Database/providers/postgresql/viewFallback.d.ts +11 -7
- package/dist/Database/providers/postgresql/viewFallback.d.ts.map +1 -1
- package/dist/Database/providers/postgresql/viewFallback.js +18 -12
- package/dist/Database/providers/postgresql/viewFallback.js.map +1 -1
- package/dist/Database/providers/sqlserver/SQLServerCodeGenProvider.js +13 -13
- package/dist/Database/providers/sqlserver/SQLServerCodeGenProvider.js.map +1 -1
- package/dist/Database/reconcileFieldLevelSecurity.d.ts +2 -0
- package/dist/Database/reconcileFieldLevelSecurity.d.ts.map +1 -1
- package/dist/Database/reconcileFieldLevelSecurity.js +5 -1
- package/dist/Database/reconcileFieldLevelSecurity.js.map +1 -1
- package/dist/Database/reorder-columns.d.ts +2 -0
- package/dist/Database/reorder-columns.d.ts.map +1 -1
- package/dist/Database/reorder-columns.js +5 -1
- package/dist/Database/reorder-columns.js.map +1 -1
- package/dist/Database/schema-filters.d.ts +6 -0
- package/dist/Database/schema-filters.d.ts.map +1 -1
- package/dist/Database/schema-filters.js +17 -5
- package/dist/Database/schema-filters.js.map +1 -1
- package/dist/Database/schema-scope.d.ts +4 -0
- package/dist/Database/schema-scope.d.ts.map +1 -1
- package/dist/Database/schema-scope.js +13 -5
- package/dist/Database/schema-scope.js.map +1 -1
- package/dist/Database/search-guardrails.d.ts +42 -0
- package/dist/Database/search-guardrails.d.ts.map +1 -1
- package/dist/Database/search-guardrails.js +57 -17
- package/dist/Database/search-guardrails.js.map +1 -1
- package/dist/Database/sql.d.ts +20 -0
- package/dist/Database/sql.d.ts.map +1 -1
- package/dist/Database/sql.js +72 -32
- package/dist/Database/sql.js.map +1 -1
- package/dist/Database/sql_codegen.d.ts +92 -0
- package/dist/Database/sql_codegen.d.ts.map +1 -1
- package/dist/Database/sql_codegen.js +197 -113
- package/dist/Database/sql_codegen.js.map +1 -1
- package/dist/EntityNameScanner/EntityNameScanner.d.ts +16 -0
- package/dist/EntityNameScanner/EntityNameScanner.d.ts.map +1 -1
- package/dist/EntityNameScanner/EntityNameScanner.js +47 -15
- package/dist/EntityNameScanner/EntityNameScanner.js.map +1 -1
- package/dist/EntityNameScanner/HtmlEntityNameScanner.d.ts +6 -0
- package/dist/EntityNameScanner/HtmlEntityNameScanner.d.ts.map +1 -1
- package/dist/EntityNameScanner/HtmlEntityNameScanner.js +19 -7
- package/dist/EntityNameScanner/HtmlEntityNameScanner.js.map +1 -1
- package/dist/EntityNameScanner/MetadataNameScanner.d.ts +6 -0
- package/dist/EntityNameScanner/MetadataNameScanner.d.ts.map +1 -1
- package/dist/EntityNameScanner/MetadataNameScanner.js +19 -7
- package/dist/EntityNameScanner/MetadataNameScanner.js.map +1 -1
- package/dist/Manifest/GenerateClassRegistrationsManifest.d.ts +6 -0
- package/dist/Manifest/GenerateClassRegistrationsManifest.d.ts.map +1 -1
- package/dist/Manifest/GenerateClassRegistrationsManifest.js +16 -4
- package/dist/Manifest/GenerateClassRegistrationsManifest.js.map +1 -1
- package/dist/Misc/action_subclasses_codegen.d.ts +4 -0
- package/dist/Misc/action_subclasses_codegen.d.ts.map +1 -1
- package/dist/Misc/action_subclasses_codegen.js +11 -3
- package/dist/Misc/action_subclasses_codegen.js.map +1 -1
- package/dist/Misc/advanced_generation.d.ts +48 -2
- package/dist/Misc/advanced_generation.d.ts.map +1 -1
- package/dist/Misc/advanced_generation.js +53 -15
- package/dist/Misc/advanced_generation.js.map +1 -1
- package/dist/Misc/codegen-reporter.d.ts +53 -0
- package/dist/Misc/codegen-reporter.d.ts.map +1 -1
- package/dist/Misc/codegen-reporter.js +106 -22
- package/dist/Misc/codegen-reporter.js.map +1 -1
- package/dist/Misc/createNewUser.d.ts +6 -0
- package/dist/Misc/createNewUser.d.ts.map +1 -1
- package/dist/Misc/createNewUser.js +5 -1
- package/dist/Misc/createNewUser.js.map +1 -1
- package/dist/Misc/entity_subclasses_codegen.d.ts +8 -0
- package/dist/Misc/entity_subclasses_codegen.d.ts.map +1 -1
- package/dist/Misc/entity_subclasses_codegen.js +52 -36
- package/dist/Misc/entity_subclasses_codegen.js.map +1 -1
- package/dist/Misc/externalTypeMapping.d.ts +2 -0
- package/dist/Misc/externalTypeMapping.d.ts.map +1 -1
- package/dist/Misc/externalTypeMapping.js +5 -1
- package/dist/Misc/externalTypeMapping.js.map +1 -1
- package/dist/Misc/file-write.d.ts +2 -0
- package/dist/Misc/file-write.d.ts.map +1 -1
- package/dist/Misc/file-write.js +5 -1
- package/dist/Misc/file-write.js.map +1 -1
- package/dist/Misc/graphql_server_codegen.d.ts +10 -0
- package/dist/Misc/graphql_server_codegen.d.ts.map +1 -1
- package/dist/Misc/graphql_server_codegen.js +46 -26
- package/dist/Misc/graphql_server_codegen.js.map +1 -1
- package/dist/Misc/remote_operations_codegen.d.ts +12 -0
- package/dist/Misc/remote_operations_codegen.d.ts.map +1 -1
- package/dist/Misc/remote_operations_codegen.js +21 -5
- package/dist/Misc/remote_operations_codegen.js.map +1 -1
- package/dist/Misc/runCommand.d.ts +6 -0
- package/dist/Misc/runCommand.d.ts.map +1 -1
- package/dist/Misc/runCommand.js +16 -4
- package/dist/Misc/runCommand.js.map +1 -1
- package/dist/Misc/schema-emit.d.ts +28 -0
- package/dist/Misc/schema-emit.d.ts.map +1 -1
- package/dist/Misc/schema-emit.js +75 -23
- package/dist/Misc/schema-emit.js.map +1 -1
- package/dist/Misc/sql_logging.d.ts +31 -9
- package/dist/Misc/sql_logging.d.ts.map +1 -1
- package/dist/Misc/sql_logging.js +95 -51
- package/dist/Misc/sql_logging.js.map +1 -1
- package/dist/Misc/sql_text.d.ts +4 -0
- package/dist/Misc/sql_text.d.ts.map +1 -1
- package/dist/Misc/sql_text.js +10 -2
- package/dist/Misc/sql_text.js.map +1 -1
- package/dist/Misc/status_logging.d.ts +36 -0
- package/dist/Misc/status_logging.d.ts.map +1 -1
- package/dist/Misc/status_logging.js +95 -23
- package/dist/Misc/status_logging.js.map +1 -1
- package/dist/Misc/system_integrity.js +4 -4
- package/dist/Misc/system_integrity.js.map +1 -1
- package/dist/Misc/temp_batch_file.d.ts +12 -0
- package/dist/Misc/temp_batch_file.d.ts.map +1 -1
- package/dist/Misc/temp_batch_file.js +35 -11
- package/dist/Misc/temp_batch_file.js.map +1 -1
- package/dist/Misc/util.d.ts +33 -0
- package/dist/Misc/util.d.ts.map +1 -1
- package/dist/Misc/util.js +53 -13
- package/dist/Misc/util.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/plugins/index.d.ts +11 -1
- package/dist/plugins/index.d.ts.map +1 -1
- package/dist/plugins/index.js +9 -1
- package/dist/plugins/index.js.map +1 -1
- package/dist/runCodeGen.d.ts +6 -0
- package/dist/runCodeGen.d.ts.map +1 -1
- package/dist/runCodeGen.js +150 -138
- package/dist/runCodeGen.js.map +1 -1
- package/package.json +29 -29
|
@@ -37,17 +37,27 @@ export interface SchemaNamed {
|
|
|
37
37
|
* literal — schema names like `bsd_crm` are common and must not glob).
|
|
38
38
|
*/
|
|
39
39
|
/** Case-insensitive schema/entity key. Null/undefined become ''. */
|
|
40
|
+
export declare function SchemaKey(name: string | null | undefined): string;
|
|
41
|
+
/** @deprecated Use {@link SchemaKey}. */
|
|
40
42
|
export declare function schemaKey(name: string | null | undefined): string;
|
|
43
|
+
export declare function SchemaNameMatches(pattern: string, schemaName: string | null | undefined): boolean;
|
|
44
|
+
/** @deprecated Use {@link SchemaNameMatches}. */
|
|
41
45
|
export declare function schemaNameMatches(pattern: string, schemaName: string | null | undefined): boolean;
|
|
42
46
|
/**
|
|
43
47
|
* Turn a SQL schema name into a safe TypeScript file stem.
|
|
44
48
|
* `__mj` stays `__mj`; `bsd_crm` stays `bsd_crm`; `Sales.Analytics` becomes `Sales_Analytics`.
|
|
45
49
|
*/
|
|
50
|
+
export declare function SanitizeSchemaFileName(schemaName: string | null | undefined): string;
|
|
51
|
+
/** @deprecated Use {@link SanitizeSchemaFileName}. */
|
|
46
52
|
export declare function sanitizeSchemaFileName(schemaName: string | null | undefined): string;
|
|
47
53
|
/**
|
|
48
54
|
* Group entities by their raw `SchemaName` (trimmed, original casing of the
|
|
49
55
|
* first occurrence). Order inside each group is the input order.
|
|
50
56
|
*/
|
|
57
|
+
export declare function GroupEntitiesBySchema<T extends {
|
|
58
|
+
SchemaName: string;
|
|
59
|
+
}>(entities: readonly T[]): Map<string, T[]>;
|
|
60
|
+
/** @deprecated Use {@link GroupEntitiesBySchema}. */
|
|
51
61
|
export declare function groupEntitiesBySchema<T extends {
|
|
52
62
|
SchemaName: string;
|
|
53
63
|
}>(entities: readonly T[]): Map<string, T[]>;
|
|
@@ -61,22 +71,32 @@ export declare function groupEntitiesBySchema<T extends {
|
|
|
61
71
|
* still keeps mtimes stable). Otherwise only schemas that contain a new/modified
|
|
62
72
|
* entity are dirty — missing files are added later by {@link schemasToEmit}.
|
|
63
73
|
*/
|
|
74
|
+
export declare function ResolveDirtySchemasForEmit(entities: readonly SchemaNamed[], dirtyEntityNames: Iterable<string>, skipDB: boolean, dirtySchemaOnly: boolean, deletedEntitySchemas?: Iterable<string>): DirtySchemaSet;
|
|
75
|
+
/** @deprecated Use {@link ResolveDirtySchemasForEmit}. */
|
|
64
76
|
export declare function resolveDirtySchemasForEmit(entities: readonly SchemaNamed[], dirtyEntityNames: Iterable<string>, skipDB: boolean, dirtySchemaOnly: boolean, deletedEntitySchemas?: Iterable<string>): DirtySchemaSet;
|
|
77
|
+
export declare function CollectDirtySchemas(entities: readonly SchemaNamed[], dirtyEntityNames: Iterable<string>): Set<string>;
|
|
78
|
+
/** @deprecated Use {@link CollectDirtySchemas}. */
|
|
65
79
|
export declare function collectDirtySchemas(entities: readonly SchemaNamed[], dirtyEntityNames: Iterable<string>): Set<string>;
|
|
66
80
|
/**
|
|
67
81
|
* Decide which schema files to rebuild. Missing files are always rebuilt so a
|
|
68
82
|
* fresh clone / first run is complete. When `dirty` is `'all'` every schema is
|
|
69
83
|
* rebuilt (callers still use write-if-changed to keep mtimes stable).
|
|
70
84
|
*/
|
|
85
|
+
export declare function SchemasToEmit(allSchemas: readonly string[], dirty: DirtySchemaSet | undefined, fileExists: (schemaName: string) => boolean): string[];
|
|
86
|
+
/** @deprecated Use {@link SchemasToEmit}. */
|
|
71
87
|
export declare function schemasToEmit(allSchemas: readonly string[], dirty: DirtySchemaSet | undefined, fileExists: (schemaName: string) => boolean): string[];
|
|
72
88
|
/**
|
|
73
89
|
* Bounded parallel map. Order of results matches `items`. A limit of 1 is serial.
|
|
74
90
|
*/
|
|
91
|
+
export declare function MapLimit<T, R>(items: readonly T[], limit: number, mapper: (item: T, index: number) => Promise<R>): Promise<R[]>;
|
|
92
|
+
/** @deprecated Use {@link MapLimit}. */
|
|
75
93
|
export declare function mapLimit<T, R>(items: readonly T[], limit: number, mapper: (item: T, index: number) => Promise<R>): Promise<R[]>;
|
|
76
94
|
/**
|
|
77
95
|
* Barrel that re-exports every per-schema file. Uses `.js` specifiers so the
|
|
78
96
|
* file is valid in `"type": "module"` packages (MJCoreEntities, MJServer).
|
|
79
97
|
*/
|
|
98
|
+
export declare function BuildSchemaBarrel(schemas: readonly string[], relativeDir: string, extraHeader: string): string;
|
|
99
|
+
/** @deprecated Use {@link BuildSchemaBarrel}. */
|
|
80
100
|
export declare function buildSchemaBarrel(schemas: readonly string[], relativeDir: string, extraHeader: string): string;
|
|
81
101
|
/**
|
|
82
102
|
* Names of files in a per-schema emit directory that no live schema claims.
|
|
@@ -85,6 +105,8 @@ export declare function buildSchemaBarrel(schemas: readonly string[], relativeDi
|
|
|
85
105
|
* filesystem. `fileNames` is a plain directory listing; `schemas` is every schema in the
|
|
86
106
|
* run, not just the dirty subset.
|
|
87
107
|
*/
|
|
108
|
+
export declare function SelectOrphanedSchemaFiles(fileNames: readonly string[], schemas: readonly string[]): string[];
|
|
109
|
+
/** @deprecated Use {@link SelectOrphanedSchemaFiles}. */
|
|
88
110
|
export declare function selectOrphanedSchemaFiles(fileNames: readonly string[], schemas: readonly string[]): string[];
|
|
89
111
|
/**
|
|
90
112
|
* Delete per-schema files that no live schema claims, returning what was removed.
|
|
@@ -99,6 +121,8 @@ export declare function selectOrphanedSchemaFiles(fileNames: readonly string[],
|
|
|
99
121
|
* Safe under dirty-schema regen: `schemas` is the full set for the run, so a schema that
|
|
100
122
|
* simply was not dirty this time is still live and is never pruned.
|
|
101
123
|
*/
|
|
124
|
+
export declare function PruneOrphanedSchemaFiles(directory: string, schemas: readonly string[]): string[];
|
|
125
|
+
/** @deprecated Use {@link PruneOrphanedSchemaFiles}. */
|
|
102
126
|
export declare function pruneOrphanedSchemaFiles(directory: string, schemas: readonly string[]): string[];
|
|
103
127
|
/**
|
|
104
128
|
* Fill in a partial {@link SchemaEmitOptions} from config defaults.
|
|
@@ -111,6 +135,8 @@ export declare function pruneOrphanedSchemaFiles(directory: string, schemas: rea
|
|
|
111
135
|
* generator uses them: its per-schema assembly is async (each file awaits its entities),
|
|
112
136
|
* while GraphQL assembly is synchronous, so there is nothing to overlap there.
|
|
113
137
|
*/
|
|
138
|
+
export declare function ResolveSchemaEmitOptions(options: SchemaEmitOptions | undefined, defaults: SchemaEmitOptions | undefined): Required<SchemaEmitOptions>;
|
|
139
|
+
/** @deprecated Use {@link ResolveSchemaEmitOptions}. */
|
|
114
140
|
export declare function resolveSchemaEmitOptions(options: SchemaEmitOptions | undefined, defaults: SchemaEmitOptions | undefined): Required<SchemaEmitOptions>;
|
|
115
141
|
/**
|
|
116
142
|
* Write one emitted file, honouring the write-if-changed setting.
|
|
@@ -119,5 +145,7 @@ export declare function resolveSchemaEmitOptions(options: SchemaEmitOptions | un
|
|
|
119
145
|
* an unchanged file identically, or one leaves mtimes alone while the other churns them and
|
|
120
146
|
* downstream incremental builds see phantom work.
|
|
121
147
|
*/
|
|
148
|
+
export declare function EmitSchemaFile(filePath: string, content: string, useWriteIfChanged: boolean): void;
|
|
149
|
+
/** @deprecated Use {@link EmitSchemaFile}. */
|
|
122
150
|
export declare function emitSchemaFile(filePath: string, content: string, useWriteIfChanged: boolean): void;
|
|
123
151
|
//# sourceMappingURL=schema-emit.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-emit.d.ts","sourceRoot":"","sources":["../../src/Misc/schema-emit.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAQH,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"}
|
|
1
|
+
{"version":3,"file":"schema-emit.d.ts","sourceRoot":"","sources":["../../src/Misc/schema-emit.ts"],"names":[],"mappings":"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"}
|
package/dist/Misc/schema-emit.js
CHANGED
|
@@ -10,38 +10,50 @@
|
|
|
10
10
|
import fs from 'fs';
|
|
11
11
|
import path from 'path';
|
|
12
12
|
import { ordinalCompare } from '@memberjunction/global';
|
|
13
|
-
import {
|
|
13
|
+
import { WriteFileIfChanged } from './file-write.js';
|
|
14
14
|
/**
|
|
15
15
|
* Case-insensitive schema match. `%` is the only wildcard (SQL `_` is a
|
|
16
16
|
* literal — schema names like `bsd_crm` are common and must not glob).
|
|
17
17
|
*/
|
|
18
18
|
/** Case-insensitive schema/entity key. Null/undefined become ''. */
|
|
19
|
-
export function
|
|
19
|
+
export function SchemaKey(name) {
|
|
20
20
|
return (name ?? '').trim().toLowerCase();
|
|
21
21
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
22
|
+
/** @deprecated Use {@link SchemaKey}. */
|
|
23
|
+
export function schemaKey(name) {
|
|
24
|
+
return SchemaKey(name);
|
|
25
|
+
}
|
|
26
|
+
export function SchemaNameMatches(pattern, schemaName) {
|
|
27
|
+
const p = SchemaKey(pattern);
|
|
28
|
+
const s = SchemaKey(schemaName);
|
|
25
29
|
if (!p.includes('%')) {
|
|
26
30
|
return p === s;
|
|
27
31
|
}
|
|
28
32
|
const escaped = p.replace(/[.+^${}()|[\]\\]/g, '\\$&').replace(/%/g, '.*');
|
|
29
33
|
return new RegExp(`^${escaped}$`).test(s);
|
|
30
34
|
}
|
|
35
|
+
/** @deprecated Use {@link SchemaNameMatches}. */
|
|
36
|
+
export function schemaNameMatches(pattern, schemaName) {
|
|
37
|
+
return SchemaNameMatches(pattern, schemaName);
|
|
38
|
+
}
|
|
31
39
|
/**
|
|
32
40
|
* Turn a SQL schema name into a safe TypeScript file stem.
|
|
33
41
|
* `__mj` stays `__mj`; `bsd_crm` stays `bsd_crm`; `Sales.Analytics` becomes `Sales_Analytics`.
|
|
34
42
|
*/
|
|
35
|
-
export function
|
|
43
|
+
export function SanitizeSchemaFileName(schemaName) {
|
|
36
44
|
// Keep leading underscores — `__mj` is a real schema name and a valid file stem.
|
|
37
45
|
const cleaned = (schemaName ?? '').trim().replace(/[^A-Za-z0-9_]+/g, '_').replace(/_+$/g, '');
|
|
38
46
|
return cleaned.length > 0 ? cleaned : 'schema';
|
|
39
47
|
}
|
|
48
|
+
/** @deprecated Use {@link SanitizeSchemaFileName}. */
|
|
49
|
+
export function sanitizeSchemaFileName(schemaName) {
|
|
50
|
+
return SanitizeSchemaFileName(schemaName);
|
|
51
|
+
}
|
|
40
52
|
/**
|
|
41
53
|
* Group entities by their raw `SchemaName` (trimmed, original casing of the
|
|
42
54
|
* first occurrence). Order inside each group is the input order.
|
|
43
55
|
*/
|
|
44
|
-
export function
|
|
56
|
+
export function GroupEntitiesBySchema(entities) {
|
|
45
57
|
const map = new Map();
|
|
46
58
|
for (const entity of entities) {
|
|
47
59
|
const key = (entity.SchemaName ?? '').trim() || 'unknown';
|
|
@@ -55,6 +67,10 @@ export function groupEntitiesBySchema(entities) {
|
|
|
55
67
|
}
|
|
56
68
|
return map;
|
|
57
69
|
}
|
|
70
|
+
/** @deprecated Use {@link GroupEntitiesBySchema}. */
|
|
71
|
+
export function groupEntitiesBySchema(entities) {
|
|
72
|
+
return GroupEntitiesBySchema(entities);
|
|
73
|
+
}
|
|
58
74
|
/**
|
|
59
75
|
* Map dirty entity names (from `newEntityList` ∪ `modifiedEntityList`) back to
|
|
60
76
|
* the schemas those entities live in. Comparison is case-insensitive.
|
|
@@ -65,11 +81,11 @@ export function groupEntitiesBySchema(entities) {
|
|
|
65
81
|
* still keeps mtimes stable). Otherwise only schemas that contain a new/modified
|
|
66
82
|
* entity are dirty — missing files are added later by {@link schemasToEmit}.
|
|
67
83
|
*/
|
|
68
|
-
export function
|
|
84
|
+
export function ResolveDirtySchemasForEmit(entities, dirtyEntityNames, skipDB, dirtySchemaOnly, deletedEntitySchemas = []) {
|
|
69
85
|
if (skipDB || !dirtySchemaOnly) {
|
|
70
86
|
return 'all';
|
|
71
87
|
}
|
|
72
|
-
const schemas =
|
|
88
|
+
const schemas = CollectDirtySchemas(entities, dirtyEntityNames);
|
|
73
89
|
// Deletion arrives as a schema, not an entity name: by the time this runs the entity is gone
|
|
74
90
|
// from `entities`, so `collectDirtySchemas` could never resolve it. Union it in directly, or
|
|
75
91
|
// the schema is not rebuilt and the dead class survives on disk.
|
|
@@ -81,10 +97,14 @@ export function resolveDirtySchemasForEmit(entities, dirtyEntityNames, skipDB, d
|
|
|
81
97
|
}
|
|
82
98
|
return schemas;
|
|
83
99
|
}
|
|
84
|
-
|
|
100
|
+
/** @deprecated Use {@link ResolveDirtySchemasForEmit}. */
|
|
101
|
+
export function resolveDirtySchemasForEmit(entities, dirtyEntityNames, skipDB, dirtySchemaOnly, deletedEntitySchemas = []) {
|
|
102
|
+
return ResolveDirtySchemasForEmit(entities, dirtyEntityNames, skipDB, dirtySchemaOnly, deletedEntitySchemas);
|
|
103
|
+
}
|
|
104
|
+
export function CollectDirtySchemas(entities, dirtyEntityNames) {
|
|
85
105
|
const dirty = new Set();
|
|
86
106
|
for (const name of dirtyEntityNames) {
|
|
87
|
-
const key =
|
|
107
|
+
const key = SchemaKey(name);
|
|
88
108
|
if (key.length > 0) {
|
|
89
109
|
dirty.add(key);
|
|
90
110
|
}
|
|
@@ -94,7 +114,7 @@ export function collectDirtySchemas(entities, dirtyEntityNames) {
|
|
|
94
114
|
return schemas;
|
|
95
115
|
}
|
|
96
116
|
for (const entity of entities) {
|
|
97
|
-
if (dirty.has(
|
|
117
|
+
if (dirty.has(SchemaKey(entity.Name))) {
|
|
98
118
|
const schema = (entity.SchemaName ?? '').trim();
|
|
99
119
|
if (schema.length > 0) {
|
|
100
120
|
schemas.add(schema);
|
|
@@ -103,12 +123,16 @@ export function collectDirtySchemas(entities, dirtyEntityNames) {
|
|
|
103
123
|
}
|
|
104
124
|
return schemas;
|
|
105
125
|
}
|
|
126
|
+
/** @deprecated Use {@link CollectDirtySchemas}. */
|
|
127
|
+
export function collectDirtySchemas(entities, dirtyEntityNames) {
|
|
128
|
+
return CollectDirtySchemas(entities, dirtyEntityNames);
|
|
129
|
+
}
|
|
106
130
|
/**
|
|
107
131
|
* Decide which schema files to rebuild. Missing files are always rebuilt so a
|
|
108
132
|
* fresh clone / first run is complete. When `dirty` is `'all'` every schema is
|
|
109
133
|
* rebuilt (callers still use write-if-changed to keep mtimes stable).
|
|
110
134
|
*/
|
|
111
|
-
export function
|
|
135
|
+
export function SchemasToEmit(allSchemas, dirty, fileExists) {
|
|
112
136
|
if (dirty === 'all' || dirty == null) {
|
|
113
137
|
return [...allSchemas];
|
|
114
138
|
}
|
|
@@ -120,10 +144,14 @@ export function schemasToEmit(allSchemas, dirty, fileExists) {
|
|
|
120
144
|
return dirtyLower.has(schema.trim().toLowerCase());
|
|
121
145
|
});
|
|
122
146
|
}
|
|
147
|
+
/** @deprecated Use {@link SchemasToEmit}. */
|
|
148
|
+
export function schemasToEmit(allSchemas, dirty, fileExists) {
|
|
149
|
+
return SchemasToEmit(allSchemas, dirty, fileExists);
|
|
150
|
+
}
|
|
123
151
|
/**
|
|
124
152
|
* Bounded parallel map. Order of results matches `items`. A limit of 1 is serial.
|
|
125
153
|
*/
|
|
126
|
-
export async function
|
|
154
|
+
export async function MapLimit(items, limit, mapper) {
|
|
127
155
|
const concurrency = Math.max(1, Math.floor(limit));
|
|
128
156
|
const results = new Array(items.length);
|
|
129
157
|
let next = 0;
|
|
@@ -137,18 +165,26 @@ export async function mapLimit(items, limit, mapper) {
|
|
|
137
165
|
await Promise.all(workers);
|
|
138
166
|
return results;
|
|
139
167
|
}
|
|
168
|
+
/** @deprecated Use {@link MapLimit}. */
|
|
169
|
+
export async function mapLimit(items, limit, mapper) {
|
|
170
|
+
return MapLimit(items, limit, mapper);
|
|
171
|
+
}
|
|
140
172
|
/**
|
|
141
173
|
* Barrel that re-exports every per-schema file. Uses `.js` specifiers so the
|
|
142
174
|
* file is valid in `"type": "module"` packages (MJCoreEntities, MJServer).
|
|
143
175
|
*/
|
|
144
|
-
export function
|
|
176
|
+
export function BuildSchemaBarrel(schemas, relativeDir, extraHeader) {
|
|
145
177
|
const dir = relativeDir.replace(/\\/g, '/').replace(/\/+$/, '');
|
|
146
178
|
const exports = [...schemas]
|
|
147
179
|
.sort((a, b) => ordinalCompare(a, b))
|
|
148
|
-
.map((schema) => `export * from './${dir}/${
|
|
180
|
+
.map((schema) => `export * from './${dir}/${SanitizeSchemaFileName(schema)}.js';`)
|
|
149
181
|
.join('\n');
|
|
150
182
|
return `${extraHeader}${exports}\n`;
|
|
151
183
|
}
|
|
184
|
+
/** @deprecated Use {@link BuildSchemaBarrel}. */
|
|
185
|
+
export function buildSchemaBarrel(schemas, relativeDir, extraHeader) {
|
|
186
|
+
return BuildSchemaBarrel(schemas, relativeDir, extraHeader);
|
|
187
|
+
}
|
|
152
188
|
/**
|
|
153
189
|
* Names of files in a per-schema emit directory that no live schema claims.
|
|
154
190
|
*
|
|
@@ -156,10 +192,14 @@ export function buildSchemaBarrel(schemas, relativeDir, extraHeader) {
|
|
|
156
192
|
* filesystem. `fileNames` is a plain directory listing; `schemas` is every schema in the
|
|
157
193
|
* run, not just the dirty subset.
|
|
158
194
|
*/
|
|
159
|
-
export function
|
|
160
|
-
const live = new Set(schemas.map((schema) => `${
|
|
195
|
+
export function SelectOrphanedSchemaFiles(fileNames, schemas) {
|
|
196
|
+
const live = new Set(schemas.map((schema) => `${SanitizeSchemaFileName(schema)}.ts`));
|
|
161
197
|
return fileNames.filter((name) => name.endsWith('.ts') && !live.has(name)).sort();
|
|
162
198
|
}
|
|
199
|
+
/** @deprecated Use {@link SelectOrphanedSchemaFiles}. */
|
|
200
|
+
export function selectOrphanedSchemaFiles(fileNames, schemas) {
|
|
201
|
+
return SelectOrphanedSchemaFiles(fileNames, schemas);
|
|
202
|
+
}
|
|
163
203
|
/**
|
|
164
204
|
* Delete per-schema files that no live schema claims, returning what was removed.
|
|
165
205
|
*
|
|
@@ -173,16 +213,20 @@ export function selectOrphanedSchemaFiles(fileNames, schemas) {
|
|
|
173
213
|
* Safe under dirty-schema regen: `schemas` is the full set for the run, so a schema that
|
|
174
214
|
* simply was not dirty this time is still live and is never pruned.
|
|
175
215
|
*/
|
|
176
|
-
export function
|
|
216
|
+
export function PruneOrphanedSchemaFiles(directory, schemas) {
|
|
177
217
|
if (!fs.existsSync(directory)) {
|
|
178
218
|
return [];
|
|
179
219
|
}
|
|
180
|
-
const orphans =
|
|
220
|
+
const orphans = SelectOrphanedSchemaFiles(fs.readdirSync(directory), schemas);
|
|
181
221
|
for (const name of orphans) {
|
|
182
222
|
fs.unlinkSync(path.join(directory, name));
|
|
183
223
|
}
|
|
184
224
|
return orphans;
|
|
185
225
|
}
|
|
226
|
+
/** @deprecated Use {@link PruneOrphanedSchemaFiles}. */
|
|
227
|
+
export function pruneOrphanedSchemaFiles(directory, schemas) {
|
|
228
|
+
return PruneOrphanedSchemaFiles(directory, schemas);
|
|
229
|
+
}
|
|
186
230
|
/**
|
|
187
231
|
* Fill in a partial {@link SchemaEmitOptions} from config defaults.
|
|
188
232
|
*
|
|
@@ -194,7 +238,7 @@ export function pruneOrphanedSchemaFiles(directory, schemas) {
|
|
|
194
238
|
* generator uses them: its per-schema assembly is async (each file awaits its entities),
|
|
195
239
|
* while GraphQL assembly is synchronous, so there is nothing to overlap there.
|
|
196
240
|
*/
|
|
197
|
-
export function
|
|
241
|
+
export function ResolveSchemaEmitOptions(options, defaults) {
|
|
198
242
|
return {
|
|
199
243
|
perSchema: options?.perSchema ?? defaults?.perSchema ?? true,
|
|
200
244
|
dirtySchemas: options?.dirtySchemas ?? 'all',
|
|
@@ -203,6 +247,10 @@ export function resolveSchemaEmitOptions(options, defaults) {
|
|
|
203
247
|
writeIfChanged: options?.writeIfChanged ?? defaults?.writeIfChanged ?? true,
|
|
204
248
|
};
|
|
205
249
|
}
|
|
250
|
+
/** @deprecated Use {@link ResolveSchemaEmitOptions}. */
|
|
251
|
+
export function resolveSchemaEmitOptions(options, defaults) {
|
|
252
|
+
return ResolveSchemaEmitOptions(options, defaults);
|
|
253
|
+
}
|
|
206
254
|
/**
|
|
207
255
|
* Write one emitted file, honouring the write-if-changed setting.
|
|
208
256
|
*
|
|
@@ -210,12 +258,16 @@ export function resolveSchemaEmitOptions(options, defaults) {
|
|
|
210
258
|
* an unchanged file identically, or one leaves mtimes alone while the other churns them and
|
|
211
259
|
* downstream incremental builds see phantom work.
|
|
212
260
|
*/
|
|
213
|
-
export function
|
|
261
|
+
export function EmitSchemaFile(filePath, content, useWriteIfChanged) {
|
|
214
262
|
if (useWriteIfChanged) {
|
|
215
|
-
|
|
263
|
+
WriteFileIfChanged(filePath, content);
|
|
216
264
|
return;
|
|
217
265
|
}
|
|
218
266
|
fs.mkdirSync(path.dirname(filePath), { recursive: true });
|
|
219
267
|
fs.writeFileSync(filePath, content);
|
|
220
268
|
}
|
|
269
|
+
/** @deprecated Use {@link EmitSchemaFile}. */
|
|
270
|
+
export function emitSchemaFile(filePath, content, useWriteIfChanged) {
|
|
271
|
+
return EmitSchemaFile(filePath, content, useWriteIfChanged);
|
|
272
|
+
}
|
|
221
273
|
//# sourceMappingURL=schema-emit.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-emit.js","sourceRoot":"","sources":["../../src/Misc/schema-emit.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"schema-emit.js","sourceRoot":"","sources":["../../src/Misc/schema-emit.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,16 +3,18 @@ import { CodeGenConnection } from '../Database/codeGenDatabaseProvider.js';
|
|
|
3
3
|
* True when `folderPath` is the CodeGenLib / MJ-host default (`./migrations/v5` etc.),
|
|
4
4
|
* not an Open App `migrations/codegen` tree.
|
|
5
5
|
*/
|
|
6
|
+
export declare function IsMjDefaultSqlOutputPath(folderPath: string): boolean;
|
|
7
|
+
/** @deprecated Use {@link IsMjDefaultSqlOutputPath}. */
|
|
6
8
|
export declare function isMjDefaultSqlOutputPath(folderPath: string): boolean;
|
|
7
9
|
export type ResolveSQLOutputFolderArgs = {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
Cwd: string;
|
|
11
|
+
ConfiguredFolderPath?: string;
|
|
12
|
+
IncludeSchemas?: string[];
|
|
13
|
+
CoreSchema: string;
|
|
12
14
|
/** CLI `--sql-output-dir`. Wins over config when set. */
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
15
|
+
SqlOutputDirFlag?: string;
|
|
16
|
+
HasMjAppJson: boolean;
|
|
17
|
+
IsMjMonorepo: boolean;
|
|
16
18
|
};
|
|
17
19
|
/**
|
|
18
20
|
* Where CodeGen writes `CodeGen_Run_*.sql` (EntityField INSERTs and other metadata SQL).
|
|
@@ -25,13 +27,15 @@ export type ResolveSQLOutputFolderArgs = {
|
|
|
25
27
|
* MJ monorepo cwd + `includeSchemas` listing a non-core schema: throw. Run
|
|
26
28
|
* CodeGen from the app directory.
|
|
27
29
|
*/
|
|
30
|
+
export declare function ResolveSQLOutputFolder(args: ResolveSQLOutputFolderArgs): string;
|
|
31
|
+
/** @deprecated Use {@link ResolveSQLOutputFolder}. */
|
|
28
32
|
export declare function resolveSQLOutputFolder(args: ResolveSQLOutputFolderArgs): string;
|
|
29
33
|
/**
|
|
30
34
|
* Utility class for logging SQL to a run file that can be fresh for each run or appended to depending on the settings in the configuration
|
|
31
35
|
*/
|
|
32
36
|
export declare class SQLLogging {
|
|
33
|
-
private static
|
|
34
|
-
private static
|
|
37
|
+
private static _sQLLoggingFilePath;
|
|
38
|
+
private static _omitRecurringScriptsFromLog;
|
|
35
39
|
/** CLI `--sql-output-dir`. Set before {@link initSQLLogging}. */
|
|
36
40
|
static sqlOutputDirFlag: string | undefined;
|
|
37
41
|
static get SQLLoggingFilePath(): string;
|
|
@@ -60,17 +64,27 @@ export declare class SQLLogging {
|
|
|
60
64
|
*
|
|
61
65
|
* Public so the routing can be unit-tested without a CodeGen run.
|
|
62
66
|
*/
|
|
67
|
+
static RedirectToPGMigrations(folderPath: string): string;
|
|
68
|
+
/** @deprecated Use {@link RedirectToPGMigrations}. */
|
|
63
69
|
static redirectToPGMigrations(folderPath: string): string;
|
|
70
|
+
static InitSQLLogging(): void;
|
|
71
|
+
/** @deprecated Use {@link InitSQLLogging}. */
|
|
64
72
|
static initSQLLogging(): void;
|
|
65
73
|
/**
|
|
66
74
|
* The batch separator for the active platform: `GO` on SQL Server, none on PostgreSQL. Used as the
|
|
67
75
|
* default for callers that do not pass the provider's separator, so a PostgreSQL capture can never
|
|
68
76
|
* pick up a literal `GO` from a forgotten argument.
|
|
69
77
|
*/
|
|
78
|
+
static DefaultBatchSeparator(): string;
|
|
79
|
+
/** @deprecated Use {@link DefaultBatchSeparator}. */
|
|
70
80
|
static defaultBatchSeparator(): string;
|
|
71
81
|
/** Test hook — SQLLogging is a process-wide singleton. */
|
|
82
|
+
static ResetForTests(): void;
|
|
83
|
+
/** @deprecated Use {@link ResetForTests}. */
|
|
72
84
|
static resetForTests(): void;
|
|
73
85
|
/** Test hook — sets the active capture file path for testing. */
|
|
86
|
+
static SetFilePathForTesting(filePath: string): void;
|
|
87
|
+
/** @deprecated Use {@link SetFilePathForTesting}. */
|
|
74
88
|
static setFilePathForTesting(filePath: string): void;
|
|
75
89
|
/**
|
|
76
90
|
* Test hook — turns SQL capture off for the process: disables `SQLOutput` so
|
|
@@ -78,7 +92,11 @@ export declare class SQLLogging {
|
|
|
78
92
|
* file open, and closes any capture file already open so nothing is written meanwhile. Returns a
|
|
79
93
|
* function that restores both; call it from `afterAll`.
|
|
80
94
|
*/
|
|
95
|
+
static SuppressOutputForTests(): () => void;
|
|
96
|
+
/** @deprecated Use {@link SuppressOutputForTests}. */
|
|
81
97
|
static suppressOutputForTests(): () => void;
|
|
98
|
+
static FinishSQLLogging(): void;
|
|
99
|
+
/** @deprecated Use {@link FinishSQLLogging}. */
|
|
82
100
|
static finishSQLLogging(): void;
|
|
83
101
|
protected static createFileName(): string;
|
|
84
102
|
/**
|
|
@@ -101,6 +119,8 @@ export declare class SQLLogging {
|
|
|
101
119
|
* unless the log already ends at a batch boundary, and one after it. Implies `includeBatchSeparator`.
|
|
102
120
|
* @returns
|
|
103
121
|
*/
|
|
122
|
+
static AppendToSQLLogFile(contents: string, description?: string, isRecurringScript?: boolean, includeBatchSeparator?: boolean, batchSeparator?: string, requiresOwnBatch?: boolean): Promise<void>;
|
|
123
|
+
/** @deprecated Use {@link AppendToSQLLogFile}. */
|
|
104
124
|
static appendToSQLLogFile(contents: string, description?: string, isRecurringScript?: boolean, includeBatchSeparator?: boolean, batchSeparator?: string, requiresOwnBatch?: boolean): Promise<void>;
|
|
105
125
|
/**
|
|
106
126
|
* Executes the given SQL query using the given DataSource object.
|
|
@@ -121,6 +141,8 @@ export declare class SQLLogging {
|
|
|
121
141
|
* inside `IF ... BEGIN ... END` — so the match is not limited to the first statement. A declaration
|
|
122
142
|
* inside a routine body is routine-scoped and cannot collide across units, so it does not count.
|
|
123
143
|
*/
|
|
144
|
+
static DeclaresBatchScopedVariable(sql: string): boolean;
|
|
145
|
+
/** @deprecated Use {@link DeclaresBatchScopedVariable}. */
|
|
124
146
|
static declaresBatchScopedVariable(sql: string): boolean;
|
|
125
147
|
/** Bytes read from the end of the log to decide whether it ends at a batch boundary. */
|
|
126
148
|
private static readonly BOUNDARY_TAIL_BYTES;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sql_logging.d.ts","sourceRoot":"","sources":["../../src/Misc/sql_logging.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AASxE;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAGpE;AAED,MAAM,MAAM,0BAA0B,GAAG;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,0BAA0B,GAAG,MAAM,CAoC/E;AAED;;GAEG;AACH,qBAAa,UAAU;IACnB,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAc;IAChD,OAAO,CAAC,MAAM,CAAC,4BAA4B,CAAiB;IAC5D,iEAAiE;IACjE,OAAc,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC;IAEnD,WAAkB,kBAAkB,IAAI,MAAM,CAE7C;IACD,WAAkB,2BAA2B,IAAI,OAAO,CAEvD;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;WACW,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;
|
|
1
|
+
{"version":3,"file":"sql_logging.d.ts","sourceRoot":"","sources":["../../src/Misc/sql_logging.ts"],"names":[],"mappings":"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"}
|