@memberjunction/codegen-lib 5.0.0 → 5.1.0

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.
@@ -67,6 +67,18 @@ export declare class AngularFormSectionInfo {
67
67
  * You can sub-class this class to create your own Angular client code generator logic.
68
68
  */
69
69
  export declare class AngularClientGeneratorBase {
70
+ /**
71
+ * Recursively removes a directory and all its contents (files and subdirectories).
72
+ * @param dirPath The path to the directory to remove
73
+ */
74
+ protected removeDirectoryRecursively(dirPath: string): void;
75
+ /**
76
+ * Removes orphaned Angular entity form directories that no longer correspond to existing entities.
77
+ * This handles cleanup when entities are renamed or deleted.
78
+ * @param entityPath The path to the Entities directory containing entity form subdirectories
79
+ * @param entities Array of current EntityInfo objects that should have form directories
80
+ */
81
+ protected cleanupOrphanedEntityDirectories(entityPath: string, entities: EntityInfo[]): void;
70
82
  /**
71
83
  * Main entry point for generating Angular code for a collection of entities
72
84
  * @param entities Array of EntityInfo objects to generate Angular code for
@@ -1 +1 @@
1
- {"version":3,"file":"angular-codegen.d.ts","sourceRoot":"","sources":["../../src/Angular/angular-codegen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"angular-codegen.d.ts","sourceRoot":"","sources":["../../src/Angular/angular-codegen.ts"],"names":[],"mappings":"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"}
@@ -33,6 +33,67 @@ export class AngularClientGeneratorBase {
33
33
  */
34
34
  this.subModule_BaseName = 'GeneratedForms_SubModule_';
35
35
  }
36
+ /**
37
+ * Recursively removes a directory and all its contents (files and subdirectories).
38
+ * @param dirPath The path to the directory to remove
39
+ */
40
+ removeDirectoryRecursively(dirPath) {
41
+ if (!fs.existsSync(dirPath)) {
42
+ return;
43
+ }
44
+ const entries = fs.readdirSync(dirPath, { withFileTypes: true });
45
+ for (const entry of entries) {
46
+ const fullPath = path.join(dirPath, entry.name);
47
+ if (entry.isDirectory()) {
48
+ // Recursively remove subdirectory
49
+ this.removeDirectoryRecursively(fullPath);
50
+ }
51
+ else {
52
+ // Remove file
53
+ fs.unlinkSync(fullPath);
54
+ }
55
+ }
56
+ // Remove the now-empty directory
57
+ fs.rmdirSync(dirPath);
58
+ }
59
+ /**
60
+ * Removes orphaned Angular entity form directories that no longer correspond to existing entities.
61
+ * This handles cleanup when entities are renamed or deleted.
62
+ * @param entityPath The path to the Entities directory containing entity form subdirectories
63
+ * @param entities Array of current EntityInfo objects that should have form directories
64
+ */
65
+ cleanupOrphanedEntityDirectories(entityPath, entities) {
66
+ try {
67
+ if (!fs.existsSync(entityPath)) {
68
+ return; // Nothing to clean up if directory doesn't exist
69
+ }
70
+ // Get the set of valid entity ClassNames (these should have directories)
71
+ const validClassNames = new Set(entities
72
+ .filter(e => e.PrimaryKeys && e.PrimaryKeys.length > 0 && e.IncludeInAPI)
73
+ .map(e => e.ClassName));
74
+ // Read all subdirectories in the Entities folder
75
+ const existingDirs = fs.readdirSync(entityPath, { withFileTypes: true })
76
+ .filter(dirent => dirent.isDirectory())
77
+ .map(dirent => dirent.name);
78
+ // Delete directories that don't match any current entity ClassName
79
+ for (const dir of existingDirs) {
80
+ if (!validClassNames.has(dir)) {
81
+ const dirPath = path.join(entityPath, dir);
82
+ try {
83
+ // Recursively remove the directory and all its contents
84
+ this.removeDirectoryRecursively(dirPath);
85
+ logStatus(` Removed orphaned entity form directory: ${dir}`);
86
+ }
87
+ catch (err) {
88
+ logError(` Failed to remove orphaned directory ${dir}: ${err}`);
89
+ }
90
+ }
91
+ }
92
+ }
93
+ catch (err) {
94
+ logError(`Error cleaning up orphaned entity directories: ${err}`);
95
+ }
96
+ }
36
97
  /**
37
98
  * Main entry point for generating Angular code for a collection of entities
38
99
  * @param entities Array of EntityInfo objects to generate Angular code for
@@ -44,6 +105,8 @@ export class AngularClientGeneratorBase {
44
105
  async generateAngularCode(entities, directory, modulePrefix, contextUser) {
45
106
  try {
46
107
  const entityPath = path.join(directory, 'Entities');
108
+ // Clean up orphaned directories from renamed/deleted entities BEFORE generating new files
109
+ this.cleanupOrphanedEntityDirectories(entityPath, entities);
47
110
  //const classMapEntries: string[] = [];
48
111
  const componentImports = [];
49
112
  const relatedEntityModuleImports = [];
@@ -1 +1 @@
1
- {"version":3,"file":"angular-codegen.js","sourceRoot":"","sources":["../../src/Angular/angular-codegen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"angular-codegen.js","sourceRoot":"","sources":["../../src/Angular/angular-codegen.ts"],"names":[],"mappings":"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"}
@@ -182,9 +182,9 @@ export declare class SQLCodeGenBase {
182
182
  protected createEntityFieldsParamString(entityFields: EntityFieldInfo[], isUpdate: boolean): string;
183
183
  protected createEntityFieldsInsertString(entity: EntityInfo, entityFields: EntityFieldInfo[], prefix: string, excludePrimaryKey?: boolean): string;
184
184
  protected createEntityFieldsUpdateString(entityFields: EntityFieldInfo[]): string;
185
- protected generateSPDelete(entity: EntityInfo): string;
186
- protected generateCascadeDeletes(entity: EntityInfo): string;
187
- protected generateSingleCascadeOperation(parentEntity: EntityInfo, relatedEntity: EntityInfo, fkField: EntityFieldInfo): string;
185
+ protected generateSPDelete(entity: EntityInfo, pool: sql.ConnectionPool): Promise<string>;
186
+ protected generateCascadeDeletes(entity: EntityInfo, pool: sql.ConnectionPool): Promise<string>;
187
+ protected generateSingleCascadeOperation(parentEntity: EntityInfo, relatedEntity: EntityInfo, fkField: EntityFieldInfo, pool: sql.ConnectionPool): Promise<string>;
188
188
  protected generateCascadeCursorOperation(parentEntity: EntityInfo, relatedEntity: EntityInfo, fkField: EntityFieldInfo, operation: 'delete' | 'update'): string;
189
189
  protected buildPrimaryKeyComponents(entity: EntityInfo, prefix?: string): {
190
190
  varDeclarations: string;
@@ -198,6 +198,13 @@ export declare class SQLCodeGenBase {
198
198
  fetchInto: string;
199
199
  allParams: string;
200
200
  };
201
+ /**
202
+ * Checks if a field is part of a composite (multi-column) unique constraint.
203
+ * Returns true if the field participates in a unique index with 2+ columns.
204
+ * This is used to determine if a nullable FK should use DELETE instead of UPDATE
205
+ * during cascade operations, since setting to NULL could violate uniqueness.
206
+ */
207
+ protected isFieldInCompositeUniqueConstraint(pool: sql.ConnectionPool, schemaName: string, tableName: string, columnName: string): Promise<boolean>;
201
208
  /**
202
209
  * Analyzes cascade delete dependencies without generating SQL.
203
210
  * This method only tracks which entities depend on others for cascade operations.
@@ -1 +1 @@
1
- {"version":3,"file":"sql_codegen.d.ts","sourceRoot":"","sources":["../../src/Database/sql_codegen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sql_codegen.d.ts","sourceRoot":"","sources":["../../src/Database/sql_codegen.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { logError, logStatus, logWarning, startSpinner, updateSpinner, succeedSp
3
3
  import * as fs from 'fs';
4
4
  import path from 'path';
5
5
  import { SQLUtilityBase } from './sql.js';
6
+ import sql from 'mssql';
6
7
  import { autoIndexForeignKeys, configInfo, customSqlScripts, dbDatabase, mjCoreSchema, MAX_INDEX_NAME_LENGTH } from '../Config/config.js';
7
8
  import { ManageMetadataBase } from './manage-metadata.js';
8
9
  import { UserCache } from '@memberjunction/sqlserver-dataprovider';
@@ -617,7 +618,7 @@ export class SQLCodeGenBase {
617
618
  if (this.entitiesNeedingDeleteSPRegeneration.has(options.entity.ID)) {
618
619
  logStatus(` Regenerating ${spName} due to cascade dependency changes`);
619
620
  }
620
- const s = this.generateSingleEntitySQLFileHeader(options.entity, spName) + this.generateSPDelete(options.entity);
621
+ const s = this.generateSingleEntitySQLFileHeader(options.entity, spName) + await this.generateSPDelete(options.entity, options.pool);
621
622
  if (options.writeFiles) {
622
623
  const filePath = path.join(options.directory, this.SQLUtilityObject.getDBObjectFileName('sp', options.entity.SchemaName, spName, false, true));
623
624
  this.logSQLForNewOrModifiedEntity(options.entity, s, `spDelete SQL for ${options.entity.Name}`, options.enableSQLLoggingForNewOrModifiedEntities);
@@ -737,7 +738,7 @@ export class SQLCodeGenBase {
737
738
  if (entity.AllowDeleteAPI && !entity.VirtualEntity) {
738
739
  if (entity.spDeleteGenerated)
739
740
  // generated SP, will include permissions
740
- sOutput += this.generateSPDelete(entity) + '\n\n';
741
+ sOutput += await this.generateSPDelete(entity, pool) + '\n\n';
741
742
  else
742
743
  // custom SP, still generate the permissions
743
744
  sOutput += this.generateSPPermissions(entity, entity.spDelete, SPType.Delete) + '\n\n';
@@ -1662,9 +1663,9 @@ ${updatedAtTrigger}
1662
1663
  }
1663
1664
  return sOutput;
1664
1665
  }
1665
- generateSPDelete(entity) {
1666
+ async generateSPDelete(entity, pool) {
1666
1667
  const spName = entity.spDelete ? entity.spDelete : `spDelete${entity.BaseTableCodeName}`;
1667
- const sCascadeDeletes = this.generateCascadeDeletes(entity);
1668
+ const sCascadeDeletes = await this.generateCascadeDeletes(entity, pool);
1668
1669
  const permissions = this.generateSPPermissions(entity, spName, SPType.Delete);
1669
1670
  let sVariables = '';
1670
1671
  let sSelect = '';
@@ -1725,7 +1726,7 @@ END
1725
1726
  GO${permissions}
1726
1727
  `;
1727
1728
  }
1728
- generateCascadeDeletes(entity) {
1729
+ async generateCascadeDeletes(entity, pool) {
1729
1730
  let sOutput = '';
1730
1731
  if (entity.CascadeDeletes) {
1731
1732
  const md = new Metadata();
@@ -1733,11 +1734,11 @@ GO${permissions}
1733
1734
  for (const e of md.Entities) {
1734
1735
  for (const ef of e.Fields) {
1735
1736
  if (ef.RelatedEntityID === entity.ID && ef.IsVirtual === false) {
1736
- const sql = this.generateSingleCascadeOperation(entity, e, ef);
1737
- if (sql !== '') {
1737
+ const cascadeSql = await this.generateSingleCascadeOperation(entity, e, ef, pool);
1738
+ if (cascadeSql !== '') {
1738
1739
  if (sOutput !== '')
1739
1740
  sOutput += '\n ';
1740
- sOutput += sql;
1741
+ sOutput += cascadeSql;
1741
1742
  }
1742
1743
  }
1743
1744
  }
@@ -1745,7 +1746,26 @@ GO${permissions}
1745
1746
  }
1746
1747
  return sOutput === '' ? '' : `${sOutput}\n `;
1747
1748
  }
1748
- generateSingleCascadeOperation(parentEntity, relatedEntity, fkField) {
1749
+ async generateSingleCascadeOperation(parentEntity, relatedEntity, fkField, pool) {
1750
+ // Check if nullable FK is part of composite unique constraint
1751
+ // If so, we must DELETE instead of UPDATE to avoid unique constraint violations
1752
+ if (fkField.AllowsNull) {
1753
+ const isCompositeUnique = await this.isFieldInCompositeUniqueConstraint(pool, relatedEntity.SchemaName, relatedEntity.BaseTable, fkField.Name);
1754
+ if (isCompositeUnique) {
1755
+ if (relatedEntity.AllowDeleteAPI) {
1756
+ // FK is part of composite unique - use DELETE instead of UPDATE
1757
+ logStatus(` ${relatedEntity.Name}.${fkField.Name} is part of composite unique constraint - using DELETE cascade`);
1758
+ return this.generateCascadeCursorOperation(parentEntity, relatedEntity, fkField, 'delete');
1759
+ }
1760
+ else {
1761
+ // Can't delete and can't safely update - warn
1762
+ const msg = `${relatedEntity.Name}.${fkField.Name} is part of composite unique constraint but entity doesn't allow delete API`;
1763
+ logWarning(`WARNING in spDelete${parentEntity.BaseTableCodeName}: ${msg}`);
1764
+ return `
1765
+ -- WARNING: ${msg} - cascade operation may fail due to unique constraint violation`;
1766
+ }
1767
+ }
1768
+ }
1749
1769
  if (fkField.AllowsNull === false && relatedEntity.AllowDeleteAPI) {
1750
1770
  // Non-nullable FK: generate cursor-based cascade delete
1751
1771
  return this.generateCascadeCursorOperation(parentEntity, relatedEntity, fkField, 'delete');
@@ -1899,6 +1919,50 @@ GO${permissions}
1899
1919
  }
1900
1920
  return { declarations, selectFields, fetchInto, allParams };
1901
1921
  }
1922
+ /**
1923
+ * Checks if a field is part of a composite (multi-column) unique constraint.
1924
+ * Returns true if the field participates in a unique index with 2+ columns.
1925
+ * This is used to determine if a nullable FK should use DELETE instead of UPDATE
1926
+ * during cascade operations, since setting to NULL could violate uniqueness.
1927
+ */
1928
+ async isFieldInCompositeUniqueConstraint(pool, schemaName, tableName, columnName) {
1929
+ const query = `
1930
+ SELECT i.index_id
1931
+ FROM sys.indexes i
1932
+ INNER JOIN sys.tables t ON i.object_id = t.object_id
1933
+ INNER JOIN sys.schemas s ON t.schema_id = s.schema_id
1934
+ WHERE i.is_unique = 1
1935
+ AND i.is_primary_key = 0
1936
+ AND s.name = @schemaName
1937
+ AND t.name = @tableName
1938
+ -- This index contains the specified column
1939
+ AND EXISTS (
1940
+ SELECT 1
1941
+ FROM sys.index_columns ic
1942
+ INNER JOIN sys.columns c ON ic.object_id = c.object_id AND c.column_id = ic.column_id
1943
+ WHERE ic.object_id = i.object_id
1944
+ AND ic.index_id = i.index_id
1945
+ AND c.name = @columnName
1946
+ )
1947
+ -- This index has more than one column (composite)
1948
+ AND (SELECT COUNT(*)
1949
+ FROM sys.index_columns ic2
1950
+ WHERE ic2.object_id = i.object_id
1951
+ AND ic2.index_id = i.index_id) > 1
1952
+ `;
1953
+ try {
1954
+ const result = await pool.request()
1955
+ .input('schemaName', sql.NVarChar, schemaName)
1956
+ .input('tableName', sql.NVarChar, tableName)
1957
+ .input('columnName', sql.NVarChar, columnName)
1958
+ .query(query);
1959
+ return result.recordset.length > 0;
1960
+ }
1961
+ catch (error) {
1962
+ logWarning(`Failed to check composite unique constraint for ${schemaName}.${tableName}.${columnName}: ${error}`);
1963
+ return false; // Fallback to existing UPDATE behavior
1964
+ }
1965
+ }
1902
1966
  /**
1903
1967
  * Analyzes cascade delete dependencies without generating SQL.
1904
1968
  * This method only tracks which entities depend on others for cascade operations.