@memberjunction/codegen-lib 6.1.0-edge.5 → 6.1.0-edge.7

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.
Files changed (103) hide show
  1. package/README.md +20 -0
  2. package/dist/Angular/angular-codegen.d.ts +9 -6
  3. package/dist/Angular/angular-codegen.d.ts.map +1 -1
  4. package/dist/Angular/angular-codegen.js +80 -51
  5. package/dist/Angular/angular-codegen.js.map +1 -1
  6. package/dist/Angular/join-grid-related-entity-component.d.ts.map +1 -1
  7. package/dist/Angular/join-grid-related-entity-component.js +5 -2
  8. package/dist/Angular/join-grid-related-entity-component.js.map +1 -1
  9. package/dist/Angular/related-entity-components.d.ts +11 -0
  10. package/dist/Angular/related-entity-components.d.ts.map +1 -1
  11. package/dist/Angular/related-entity-components.js +23 -0
  12. package/dist/Angular/related-entity-components.js.map +1 -1
  13. package/dist/Angular/timeline-related-entity-component.d.ts.map +1 -1
  14. package/dist/Angular/timeline-related-entity-component.js +3 -2
  15. package/dist/Angular/timeline-related-entity-component.js.map +1 -1
  16. package/dist/Config/config.d.ts +29 -2
  17. package/dist/Config/config.d.ts.map +1 -1
  18. package/dist/Config/config.js +54 -5
  19. package/dist/Config/config.js.map +1 -1
  20. package/dist/Database/codeGenDatabaseProvider.d.ts +64 -1
  21. package/dist/Database/codeGenDatabaseProvider.d.ts.map +1 -1
  22. package/dist/Database/codeGenDatabaseProvider.js +49 -3
  23. package/dist/Database/codeGenDatabaseProvider.js.map +1 -1
  24. package/dist/Database/dbSchema.js +2 -1
  25. package/dist/Database/dbSchema.js.map +1 -1
  26. package/dist/Database/entity-field-change-tracking.d.ts +53 -0
  27. package/dist/Database/entity-field-change-tracking.d.ts.map +1 -0
  28. package/dist/Database/entity-field-change-tracking.js +120 -0
  29. package/dist/Database/entity-field-change-tracking.js.map +1 -0
  30. package/dist/Database/entity-level-tree-cycles.d.ts.map +1 -1
  31. package/dist/Database/entity-level-tree-cycles.js +3 -2
  32. package/dist/Database/entity-level-tree-cycles.js.map +1 -1
  33. package/dist/Database/field-metadata-lock.d.ts +47 -0
  34. package/dist/Database/field-metadata-lock.d.ts.map +1 -0
  35. package/dist/Database/field-metadata-lock.js +159 -0
  36. package/dist/Database/field-metadata-lock.js.map +1 -0
  37. package/dist/Database/manage-metadata.d.ts +133 -51
  38. package/dist/Database/manage-metadata.d.ts.map +1 -1
  39. package/dist/Database/manage-metadata.js +574 -306
  40. package/dist/Database/manage-metadata.js.map +1 -1
  41. package/dist/Database/providers/postgresql/PostgreSQLCodeGenProvider.d.ts +10 -2
  42. package/dist/Database/providers/postgresql/PostgreSQLCodeGenProvider.d.ts.map +1 -1
  43. package/dist/Database/providers/postgresql/PostgreSQLCodeGenProvider.js +113 -42
  44. package/dist/Database/providers/postgresql/PostgreSQLCodeGenProvider.js.map +1 -1
  45. package/dist/Database/providers/postgresql/metadataSupportObjects.js +31 -8
  46. package/dist/Database/providers/postgresql/metadataSupportObjects.js.map +1 -1
  47. package/dist/Database/providers/sqlserver/SQLServerCodeGenProvider.d.ts +47 -2
  48. package/dist/Database/providers/sqlserver/SQLServerCodeGenProvider.d.ts.map +1 -1
  49. package/dist/Database/providers/sqlserver/SQLServerCodeGenProvider.js +176 -30
  50. package/dist/Database/providers/sqlserver/SQLServerCodeGenProvider.js.map +1 -1
  51. package/dist/Database/providers/sqlserver/__tests__/BaseViewEmissionGoldenMaster.test.js +15 -2
  52. package/dist/Database/providers/sqlserver/__tests__/BaseViewEmissionGoldenMaster.test.js.map +1 -1
  53. package/dist/Database/reconcileFieldLevelSecurity.d.ts +22 -0
  54. package/dist/Database/reconcileFieldLevelSecurity.d.ts.map +1 -0
  55. package/dist/Database/reconcileFieldLevelSecurity.js +47 -0
  56. package/dist/Database/reconcileFieldLevelSecurity.js.map +1 -0
  57. package/dist/Database/sql_codegen.d.ts +34 -0
  58. package/dist/Database/sql_codegen.d.ts.map +1 -1
  59. package/dist/Database/sql_codegen.js +152 -14
  60. package/dist/Database/sql_codegen.js.map +1 -1
  61. package/dist/Manifest/GenerateClassRegistrationsManifest.d.ts.map +1 -1
  62. package/dist/Manifest/GenerateClassRegistrationsManifest.js +3 -2
  63. package/dist/Manifest/GenerateClassRegistrationsManifest.js.map +1 -1
  64. package/dist/Misc/action_subclasses_codegen.js +2 -2
  65. package/dist/Misc/action_subclasses_codegen.js.map +1 -1
  66. package/dist/Misc/advanced_generation.d.ts +17 -5
  67. package/dist/Misc/advanced_generation.d.ts.map +1 -1
  68. package/dist/Misc/advanced_generation.js +69 -23
  69. package/dist/Misc/advanced_generation.js.map +1 -1
  70. package/dist/Misc/codegen-reporter.d.ts +2 -0
  71. package/dist/Misc/codegen-reporter.d.ts.map +1 -1
  72. package/dist/Misc/codegen-reporter.js +6 -2
  73. package/dist/Misc/codegen-reporter.js.map +1 -1
  74. package/dist/Misc/entity_subclasses_codegen.d.ts.map +1 -1
  75. package/dist/Misc/entity_subclasses_codegen.js +30 -20
  76. package/dist/Misc/entity_subclasses_codegen.js.map +1 -1
  77. package/dist/Misc/graphql_server_codegen.d.ts +39 -0
  78. package/dist/Misc/graphql_server_codegen.d.ts.map +1 -1
  79. package/dist/Misc/graphql_server_codegen.js +63 -9
  80. package/dist/Misc/graphql_server_codegen.js.map +1 -1
  81. package/dist/Misc/remote_operations_codegen.d.ts +36 -1
  82. package/dist/Misc/remote_operations_codegen.d.ts.map +1 -1
  83. package/dist/Misc/remote_operations_codegen.js +178 -8
  84. package/dist/Misc/remote_operations_codegen.js.map +1 -1
  85. package/dist/Misc/schema-emit.d.ts.map +1 -1
  86. package/dist/Misc/schema-emit.js +2 -1
  87. package/dist/Misc/schema-emit.js.map +1 -1
  88. package/dist/Misc/sql_logging.d.ts +63 -8
  89. package/dist/Misc/sql_logging.d.ts.map +1 -1
  90. package/dist/Misc/sql_logging.js +169 -42
  91. package/dist/Misc/sql_logging.js.map +1 -1
  92. package/dist/Misc/util.d.ts +12 -0
  93. package/dist/Misc/util.d.ts.map +1 -1
  94. package/dist/Misc/util.js +71 -8
  95. package/dist/Misc/util.js.map +1 -1
  96. package/dist/plugins/index.d.ts +3 -0
  97. package/dist/plugins/index.d.ts.map +1 -1
  98. package/dist/plugins/index.js +28 -1
  99. package/dist/plugins/index.js.map +1 -1
  100. package/dist/runCodeGen.d.ts.map +1 -1
  101. package/dist/runCodeGen.js +134 -26
  102. package/dist/runCodeGen.js.map +1 -1
  103. package/package.json +29 -29
@@ -1 +1 @@
1
- {"version":3,"file":"BaseViewEmissionGoldenMaster.test.js","sourceRoot":"","sources":["../../../../../src/Database/providers/sqlserver/__tests__/BaseViewEmissionGoldenMaster.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseViewEmissionGoldenMaster.test.js","sourceRoot":"","sources":["../../../../../src/Database/providers/sqlserver/__tests__/BaseViewEmissionGoldenMaster.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { IMetadataProvider, UserInfo } from '@memberjunction/core';
2
+ /**
3
+ * Brings every field-security-enabled entity's permission rows back in line with its current
4
+ * fields and entity-level permissions.
5
+ *
6
+ * This is the schema-change half of field-security lifecycle management, and the reason it lives
7
+ * in CodeGen: a column added to an enabled entity has no permission rows, and on an enabled
8
+ * entity a field with no rows is DENIED. Without this pass a new column would be invisible to
9
+ * every user — including the administrator who added it — until something else happened to
10
+ * reconcile. It also removes rows orphaned by a dropped column or a role that lost entity access.
11
+ *
12
+ * Must run AFTER the metadata refresh that follows `manageMetadata`, or it computes the delta
13
+ * from a field list that predates the columns it exists to cover.
14
+ *
15
+ * Failures are logged and swallowed. Reconciliation is a maintenance pass over data CodeGen does
16
+ * not own; failing the whole run — after schema, views and procs have already been written —
17
+ * would trade a recoverable permissions gap for an unrecoverable half-finished build. The gap is
18
+ * also visible rather than silent: a missing row denies, so the symptom is "I cannot see this new
19
+ * column", not "everyone can see it".
20
+ */
21
+ export declare function reconcileFieldLevelSecurity(provider: IMetadataProvider, currentUser: UserInfo): Promise<boolean>;
22
+ //# sourceMappingURL=reconcileFieldLevelSecurity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reconcileFieldLevelSecurity.d.ts","sourceRoot":"","sources":["../../src/Database/reconcileFieldLevelSecurity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,iBAAiB,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAI/E;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,2BAA2B,CAAC,QAAQ,EAAE,iBAAiB,EAAE,WAAW,EAAE,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CA4BtH"}
@@ -0,0 +1,47 @@
1
+ import { ReconcileFieldPermissions } from '@memberjunction/core-entities-server';
2
+ import { logError, logStatus } from '../Misc/status_logging.js';
3
+ /**
4
+ * Brings every field-security-enabled entity's permission rows back in line with its current
5
+ * fields and entity-level permissions.
6
+ *
7
+ * This is the schema-change half of field-security lifecycle management, and the reason it lives
8
+ * in CodeGen: a column added to an enabled entity has no permission rows, and on an enabled
9
+ * entity a field with no rows is DENIED. Without this pass a new column would be invisible to
10
+ * every user — including the administrator who added it — until something else happened to
11
+ * reconcile. It also removes rows orphaned by a dropped column or a role that lost entity access.
12
+ *
13
+ * Must run AFTER the metadata refresh that follows `manageMetadata`, or it computes the delta
14
+ * from a field list that predates the columns it exists to cover.
15
+ *
16
+ * Failures are logged and swallowed. Reconciliation is a maintenance pass over data CodeGen does
17
+ * not own; failing the whole run — after schema, views and procs have already been written —
18
+ * would trade a recoverable permissions gap for an unrecoverable half-finished build. The gap is
19
+ * also visible rather than silent: a missing row denies, so the symptom is "I cannot see this new
20
+ * column", not "everyone can see it".
21
+ */
22
+ export async function reconcileFieldLevelSecurity(provider, currentUser) {
23
+ const enabled = (provider?.Entities ?? []).filter((e) => e.EnableFieldLevelSecurity);
24
+ if (enabled.length === 0) {
25
+ return true; // nothing opted in — the overwhelmingly common case
26
+ }
27
+ let inserted = 0;
28
+ let deleted = 0;
29
+ let failures = 0;
30
+ for (const entity of enabled) {
31
+ try {
32
+ const result = await ReconcileFieldPermissions(entity, provider, currentUser);
33
+ inserted += result.Inserted;
34
+ deleted += result.Deleted;
35
+ }
36
+ catch (e) {
37
+ failures++;
38
+ logError(` Field-security reconciliation failed for '${entity.Name}': ${e instanceof Error ? e.message : String(e)}`);
39
+ }
40
+ }
41
+ if (inserted > 0 || deleted > 0) {
42
+ logStatus(` Field-level security: reconciled ${enabled.length} entity(ies) — ` +
43
+ `${inserted} permission row(s) added, ${deleted} removed`);
44
+ }
45
+ return failures === 0;
46
+ }
47
+ //# sourceMappingURL=reconcileFieldLevelSecurity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reconcileFieldLevelSecurity.js","sourceRoot":"","sources":["../../src/Database/reconcileFieldLevelSecurity.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AACjF,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAE7D;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,QAA2B,EAAE,WAAqB;IAChG,MAAM,OAAO,GAAG,CAAC,QAAQ,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAa,EAAE,EAAE,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC;IACjG,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,CAAC,oDAAoD;IACrE,CAAC;IAED,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,QAAQ,GAAG,CAAC,CAAC;IAEjB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC3B,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,yBAAyB,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;YAC9E,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC;YAC5B,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC;QAC9B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,QAAQ,EAAE,CAAC;YACX,QAAQ,CAAC,gDAAgD,MAAM,CAAC,IAAI,MAAM,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC5H,CAAC;IACL,CAAC;IAED,IAAI,QAAQ,GAAG,CAAC,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;QAC9B,SAAS,CACL,uCAAuC,OAAO,CAAC,MAAM,iBAAiB;YACtE,GAAG,QAAQ,6BAA6B,OAAO,UAAU,CAC5D,CAAC;IACN,CAAC;IACD,OAAO,QAAQ,KAAK,CAAC,CAAC;AAC1B,CAAC"}
@@ -74,6 +74,31 @@ export declare class SQLCodeGenBase {
74
74
  */
75
75
  protected applyLatePhaseFixups(pool: CodeGenConnection, regenList: ViewRegenEntry[], regenEntities: EntityInfo[]): Promise<void>;
76
76
  runCustomSQLScripts(pool: CodeGenConnection, when: string): Promise<boolean>;
77
+ /**
78
+ * Builds the once-per-run {@link FieldSecurityRunContext} and hands it to the dialect
79
+ * provider (whose permission emitters are synchronous string builders and cannot query).
80
+ * Three inputs, all read here:
81
+ *
82
+ * 1. **Managed roles** — `MJ: Roles` metadata rows with a non-blank `SQLName`, EXCLUDING
83
+ * the standard UI/Developer/Integration roles: by decision D1a, field-security DENYs
84
+ * target custom (DBA-created) roles only, so standard roles never enter
85
+ * `RoleSQLNameByID` and Deny rows against them stay app-tier-enforced.
86
+ * 2. **Service-protected roles** — roles any protected principal is a member of
87
+ * (`sys.database_role_members`). Protected principals default to the known service
88
+ * logins (`MJ_Connect`, `MJ_Connect_Dev`) plus the configured CodeGen login; a DENY
89
+ * to such a role would strip the column from the service login itself.
90
+ * 3. **Catalog permission state** — every `sys.database_permissions` entry (object- and
91
+ * column-level) granted to a managed role, keyed by `<schema>.<object>`. This powers
92
+ * the wipe-and-reassert reconciliation (decision D7) that finally makes permission
93
+ * REMOVAL propagate: the historical model was assert-only, so a deleted
94
+ * `EntityPermission` / Deny row left its GRANT/DENY in the database until the view
95
+ * happened to be regenerated.
96
+ *
97
+ * SQL Server only (PostgreSQL emits no DB-tier field security, decision D2). Any failure
98
+ * degrades to a null context — emitters fall back to the historical grants-only output —
99
+ * with a prominent warning, never a failed run.
100
+ */
101
+ protected prepareFieldSecurityRunContext(pool: CodeGenConnection): Promise<void>;
77
102
  applyPermissions(pool: CodeGenConnection, directory: string, entities: EntityInfo[], batchSize?: number): Promise<boolean>;
78
103
  /**
79
104
  * This function will handle the process of creating all of the generated objects like base view, stored procedures, etc. for all entities in the entities array. It will generate the SQL for each entity and then execute it.
@@ -380,6 +405,15 @@ export declare class SQLCodeGenBase {
380
405
  * Virtual fields are excluded — see hasNativeGeoFields for the rationale.
381
406
  */
382
407
  protected generateNativeGeoFields(entityFields: EntityFieldInfo[], classNameFirstChar: string, qi: (name: string) => string): string;
408
+ /**
409
+ * Bubble lat/lng from EmbeddedRecord peers as `__mj_Latitude_{FK}`.
410
+ * Geocode lives on the Address (or other source); the parent only displays it.
411
+ */
412
+ protected generateEmbeddedGeoSelect(entity: EntityInfo, classNameFirstChar: string): {
413
+ select: string;
414
+ joins: string;
415
+ };
416
+ protected generateEmbeddedGeoJoins(entity: EntityInfo, classNameFirstChar: string): string;
383
417
  /**
384
418
  * Generate SELECT aliases from the RecordGeoCode LEFT JOIN → __mj_Latitude / __mj_Longitude.
385
419
  */
@@ -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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"}
@@ -1,4 +1,4 @@
1
- import { EntityInfo, Metadata } from '@memberjunction/core';
1
+ import { EntityInfo, Metadata, ShouldJoinRecordGeoCodes, HasNativeLatLngFields, NativeLatitudeField, NativeLongitudeField, ListEmbeddedGeoSpecs } from '@memberjunction/core';
2
2
  import { logError, logStatus, logWarning, startSpinner, updateSpinner, succeedSpinner, failSpinner } from '../Misc/status_logging.js';
3
3
  import * as fs from 'fs';
4
4
  import path from 'path';
@@ -141,6 +141,13 @@ export class SQLCodeGenBase {
141
141
  startSpinner('Cleaning generated files...');
142
142
  this.deleteGeneratedEntityFiles(directory, baselineEntities);
143
143
  succeedSpinner('Cleaned generated files');
144
+ // STEP 2(a.5) - field-level security / permission-reconciliation run context.
145
+ // One async pass over the live catalog (permission state + service-login role
146
+ // memberships) so the synchronous permission emitters can (1) REVOKE-and-reassert
147
+ // within the managed scope — which is what makes GRANT/DENY *removal* reach the
148
+ // database at all — and (2) emit field-security column DENYs safely. SQL Server
149
+ // only: PostgreSQL has no DENY primitive, so per decision D2 it emits nothing.
150
+ await this.prepareFieldSecurityRunContext(pool);
144
151
  // STEP 2(b) - generate all the SQL files and execute them
145
152
  startSpinner(`Generating SQL for ${includedEntities.length} entities...`);
146
153
  const step2StartTime = new Date();
@@ -459,6 +466,98 @@ export class SQLCodeGenBase {
459
466
  return false;
460
467
  }
461
468
  }
469
+ /**
470
+ * Builds the once-per-run {@link FieldSecurityRunContext} and hands it to the dialect
471
+ * provider (whose permission emitters are synchronous string builders and cannot query).
472
+ * Three inputs, all read here:
473
+ *
474
+ * 1. **Managed roles** — `MJ: Roles` metadata rows with a non-blank `SQLName`, EXCLUDING
475
+ * the standard UI/Developer/Integration roles: by decision D1a, field-security DENYs
476
+ * target custom (DBA-created) roles only, so standard roles never enter
477
+ * `RoleSQLNameByID` and Deny rows against them stay app-tier-enforced.
478
+ * 2. **Service-protected roles** — roles any protected principal is a member of
479
+ * (`sys.database_role_members`). Protected principals default to the known service
480
+ * logins (`MJ_Connect`, `MJ_Connect_Dev`) plus the configured CodeGen login; a DENY
481
+ * to such a role would strip the column from the service login itself.
482
+ * 3. **Catalog permission state** — every `sys.database_permissions` entry (object- and
483
+ * column-level) granted to a managed role, keyed by `<schema>.<object>`. This powers
484
+ * the wipe-and-reassert reconciliation (decision D7) that finally makes permission
485
+ * REMOVAL propagate: the historical model was assert-only, so a deleted
486
+ * `EntityPermission` / Deny row left its GRANT/DENY in the database until the view
487
+ * happened to be regenerated.
488
+ *
489
+ * SQL Server only (PostgreSQL emits no DB-tier field security, decision D2). Any failure
490
+ * degrades to a null context — emitters fall back to the historical grants-only output —
491
+ * with a prominent warning, never a failed run.
492
+ */
493
+ async prepareFieldSecurityRunContext(pool) {
494
+ if (this._dbProvider.PlatformKey !== 'sqlserver') {
495
+ this._dbProvider.SetFieldSecurityRunContext(null);
496
+ return;
497
+ }
498
+ try {
499
+ const md = new Metadata(); // global-provider-ok: codegen runs offline against a single provider
500
+ const standardRoleNames = new Set(['ui', 'developer', 'integration']);
501
+ const managedRoles = md.Roles.filter(r => (r.SQLName ?? '').trim().length > 0 && !standardRoleNames.has((r.Name ?? '').trim().toLowerCase()));
502
+ const roleSQLNameByID = new Map();
503
+ for (const role of managedRoles) {
504
+ roleSQLNameByID.set((role.ID ?? '').trim().toLowerCase(), role.SQLName.trim());
505
+ }
506
+ // The reconciliation scope includes the STANDARD roles' grants too (their view
507
+ // GRANTs / proc EXECUTEs are CodeGen-owned and must self-heal like any other),
508
+ // so the catalog query spans every non-blank-SQLName role — only the DENY
509
+ // emission path is restricted to the custom-role map above.
510
+ const allManagedSQLNames = md.Roles
511
+ .map(r => (r.SQLName ?? '').trim())
512
+ .filter(n => n.length > 0);
513
+ const escape = (name) => name.replace(/'/g, "''");
514
+ const protectedPrincipals = [...new Set(['MJ_Connect', 'MJ_Connect_Dev', (configInfo.codeGenLogin ?? '').trim()].filter(p => p.length > 0))];
515
+ const membershipResult = await pool.query(`
516
+ SELECT DISTINCT r.name AS role_name
517
+ FROM sys.database_role_members drm
518
+ JOIN sys.database_principals r ON r.principal_id = drm.role_principal_id
519
+ JOIN sys.database_principals m ON m.principal_id = drm.member_principal_id
520
+ WHERE m.name IN (${protectedPrincipals.map(p => `N'${escape(p)}'`).join(', ')})
521
+ `);
522
+ const serviceProtected = new Set(membershipResult.recordset.map(r => r.role_name.trim().toLowerCase()));
523
+ const catalog = new Map();
524
+ if (allManagedSQLNames.length > 0) {
525
+ const permissionResult = await pool.query(`
526
+ SELECT pr.name AS role_name, s.name AS schema_name, o.name AS object_name,
527
+ c.name AS column_name, p.state_desc, p.permission_name
528
+ FROM sys.database_permissions p
529
+ JOIN sys.database_principals pr ON pr.principal_id = p.grantee_principal_id
530
+ JOIN sys.objects o ON o.object_id = p.major_id
531
+ JOIN sys.schemas s ON s.schema_id = o.schema_id
532
+ LEFT JOIN sys.columns c ON c.object_id = p.major_id AND c.column_id = p.minor_id
533
+ WHERE p.class = 1
534
+ AND pr.name IN (${allManagedSQLNames.map(n => `N'${escape(n)}'`).join(', ')})
535
+ `);
536
+ for (const row of permissionResult.recordset) {
537
+ const key = `${row.schema_name}.${row.object_name}`.toLowerCase();
538
+ const entries = catalog.get(key) ?? [];
539
+ entries.push({
540
+ RoleName: row.role_name.trim(),
541
+ PermissionName: row.permission_name.trim(),
542
+ StateDesc: row.state_desc.trim(),
543
+ ColumnName: row.column_name ? row.column_name.trim() : null,
544
+ });
545
+ catalog.set(key, entries);
546
+ }
547
+ }
548
+ this._dbProvider.SetFieldSecurityRunContext({
549
+ ServiceProtectedRoleSQLNames: serviceProtected,
550
+ CatalogPermissions: catalog,
551
+ RoleSQLNameByID: roleSQLNameByID,
552
+ });
553
+ logStatus(` Field-security run context ready: ${roleSQLNameByID.size} custom role(s), ${serviceProtected.size} service-protected role(s), ${catalog.size} object(s) with managed permissions`);
554
+ }
555
+ catch (e) {
556
+ logWarning(` ⚠️ Could not build the field-security run context (${e instanceof Error ? e.message : String(e)}). ` +
557
+ `Permission emission degrades to grants-only for this run: no field-security DENYs and no reconciliation REVOKEs.`);
558
+ this._dbProvider.SetFieldSecurityRunContext(null);
559
+ }
560
+ }
462
561
  async applyPermissions(pool, directory, entities, batchSize = 5) {
463
562
  try {
464
563
  let bSuccess = true;
@@ -680,6 +779,8 @@ export class SQLCodeGenBase {
680
779
  // BaseView while CodeGen keeps writing the inner view underneath it. Gating on
681
780
  // BaseViewGenerated alone would skip the inner view and leave the custom layer selecting
682
781
  // from an object that does not exist.
782
+ // One pass: overlay already applied → Pass 1 sees extra BaseView columns and logs
783
+ // EntityField INSERTs; Pass 2 DROPs/creates only GeneratedViewName, never the overlay.
683
784
  const generatesView = (entity.BaseViewGenerated || entity.HasLayeredBaseView) && !entity.VirtualEntity;
684
785
  const tvfSQL = generatesView ? this.generateRecursiveFKTVFs(entity) : '';
685
786
  const viewPieces = generatesView
@@ -1596,17 +1697,22 @@ export class SQLCodeGenBase {
1596
1697
  const classNameFirstChar = entity.BaseTableCodeName.charAt(0).toLowerCase();
1597
1698
  let relatedFieldsString = await this.generateBaseViewRelatedFieldsString(pool, entity.Fields);
1598
1699
  const relatedFieldsJoinString = this.generateBaseViewJoins(entity, entity.Fields);
1599
- // Geo support: add __mj_Latitude and __mj_Longitude virtual fields for geo-enabled entities
1600
- // Skip for Record Geo Codes itself to avoid circular self-reference in the view
1700
+ // Geo WRITE source: native lat/lng aliases, or RecordGeoCode JOIN when the entity
1701
+ // has writable Geo* fields and no native coords. Display-only entities (Person/Org
1702
+ // virtual PrimaryAddress*) do not get a RecordGeoCode join on their own ID.
1601
1703
  if (entity.SupportsGeoCoding && entity.Name.trim().toLowerCase() !== 'mj: record geo codes') {
1602
1704
  const qi = this._dbProvider.Dialect.QuoteIdentifier.bind(this._dbProvider.Dialect);
1603
- const geoFieldsSelect = this.hasNativeGeoFields(entity.Fields)
1705
+ const geoFieldsSelect = HasNativeLatLngFields(entity.Fields)
1604
1706
  ? this.generateNativeGeoFields(entity.Fields, classNameFirstChar, qi)
1605
- : this.generateRecordGeoCodeFields(qi);
1707
+ : (ShouldJoinRecordGeoCodes(entity) ? this.generateRecordGeoCodeFields(qi) : '');
1606
1708
  if (geoFieldsSelect) {
1607
1709
  relatedFieldsString += (relatedFieldsString ? ',\n' : '') + geoFieldsSelect;
1608
1710
  }
1609
1711
  }
1712
+ const embeddedGeo = this.generateEmbeddedGeoSelect(entity, classNameFirstChar);
1713
+ if (embeddedGeo.select) {
1714
+ relatedFieldsString += (relatedFieldsString ? ',\n' : '') + embeddedGeo.select;
1715
+ }
1610
1716
  // GRANTs target the PUBLIC view (BaseView), not the one this method generates. For a
1611
1717
  // LAYERED entity those are different objects, and the outer one may not exist yet: the
1612
1718
  // documented setup is "name the inner view -> run CodeGen -> then create BaseView", so the
@@ -1720,10 +1826,9 @@ export class SQLCodeGenBase {
1720
1826
  sOutput += `${ef.AllowsNull ? 'LEFT OUTER' : 'INNER'} JOIN\n ${qs(ef.RelatedEntitySchemaName, relatedTable)} AS ${ef._RelatedEntityTableAlias}\n ON\n ${qi(classNameFirstChar)}.${qi(ef.Name)} = ${ef._RelatedEntityTableAlias}.${qi(ef.RelatedEntityFieldName)}`;
1721
1827
  }
1722
1828
  }
1723
- // Geo support: add LEFT JOIN to vwRecordGeoCodes for entities with SupportsGeoCoding = 1
1724
- // that don't have native GeoLatitude/GeoLongitude fields (those get aliased directly).
1725
- // Skip for Record Geo Codes itself to avoid circular self-reference in the view.
1726
- if (entity.SupportsGeoCoding && !this.hasNativeGeoFields(entityFields) && entity.Name.trim().toLowerCase() !== 'mj: record geo codes') {
1829
+ // Geo WRITE source: RecordGeoCode JOIN only when there are writable Geo* fields
1830
+ // and no native lat/lng. Display-only entities skip this join.
1831
+ if (ShouldJoinRecordGeoCodes(entity)) {
1727
1832
  const dialect = this._dbProvider.Dialect;
1728
1833
  const qi = dialect.QuoteIdentifier.bind(dialect);
1729
1834
  const qs = dialect.QuoteSchema.bind(dialect);
@@ -1747,6 +1852,7 @@ export class SQLCodeGenBase {
1747
1852
  }
1748
1853
  sOutput += `LEFT OUTER JOIN\n ${qs(mjCoreSchema, 'vwRecordGeoCodes')} AS __mj_rgc\n ON\n __mj_rgc.${qi('EntityID')} = '${entity.ID}'\n AND __mj_rgc.${qi('RecordID')} = ${recordIdExpr}\n AND __mj_rgc.${qi('LocationType')} = 'Primary'`;
1749
1854
  }
1855
+ sOutput += this.generateEmbeddedGeoJoins(entity, classNameFirstChar);
1750
1856
  return sOutput;
1751
1857
  }
1752
1858
  /**
@@ -1763,21 +1869,53 @@ export class SQLCodeGenBase {
1763
1869
  * on any geo-eligible entity whose RecordGeoCode-based view ran once.
1764
1870
  */
1765
1871
  hasNativeGeoFields(entityFields) {
1766
- const hasLat = entityFields.some(f => f.ExtendedType === 'GeoLatitude' && !f.IsVirtual);
1767
- const hasLng = entityFields.some(f => f.ExtendedType === 'GeoLongitude' && !f.IsVirtual);
1768
- return hasLat && hasLng;
1872
+ return HasNativeLatLngFields(entityFields);
1769
1873
  }
1770
1874
  /**
1771
1875
  * Generate SELECT aliases for native lat/lng fields → __mj_Latitude / __mj_Longitude.
1772
1876
  * Virtual fields are excluded — see hasNativeGeoFields for the rationale.
1773
1877
  */
1774
1878
  generateNativeGeoFields(entityFields, classNameFirstChar, qi) {
1775
- const latField = entityFields.find(f => f.ExtendedType === 'GeoLatitude' && !f.IsVirtual);
1776
- const lngField = entityFields.find(f => f.ExtendedType === 'GeoLongitude' && !f.IsVirtual);
1879
+ const latField = NativeLatitudeField(entityFields);
1880
+ const lngField = NativeLongitudeField(entityFields);
1777
1881
  if (!latField || !lngField)
1778
1882
  return '';
1779
1883
  return ` ${qi(classNameFirstChar)}.${qi(latField.Name)} AS ${qi('__mj_Latitude')},\n ${qi(classNameFirstChar)}.${qi(lngField.Name)} AS ${qi('__mj_Longitude')}`;
1780
1884
  }
1885
+ /**
1886
+ * Bubble lat/lng from EmbeddedRecord peers as `__mj_Latitude_{FK}`.
1887
+ * Geocode lives on the Address (or other source); the parent only displays it.
1888
+ */
1889
+ generateEmbeddedGeoSelect(entity, classNameFirstChar) {
1890
+ const specs = ListEmbeddedGeoSpecs(entity.Fields);
1891
+ if (specs.length === 0)
1892
+ return { select: '', joins: '' };
1893
+ const md = new Metadata(); // global-provider-ok: CodeGen is CLI tool
1894
+ const qi = this._dbProvider.Dialect.QuoteIdentifier.bind(this._dbProvider.Dialect);
1895
+ const qs = this._dbProvider.Dialect.QuoteSchema.bind(this._dbProvider.Dialect);
1896
+ const selects = [];
1897
+ const joins = [];
1898
+ for (const spec of specs) {
1899
+ const related = md.Entities.find(e => e.ID.toLowerCase() === spec.relatedEntityID.toLowerCase());
1900
+ if (!related)
1901
+ continue;
1902
+ const latF = NativeLatitudeField(related.Fields) ?? related.Fields.find(f => f.Name === '__mj_Latitude' || f.Name === 'PrimaryAddressLatitude');
1903
+ const lngF = NativeLongitudeField(related.Fields) ?? related.Fields.find(f => f.Name === '__mj_Longitude' || f.Name === 'PrimaryAddressLongitude');
1904
+ if (!latF || !lngF)
1905
+ continue;
1906
+ const alias = `__mj_emb_${spec.foreignKeyField}`;
1907
+ const schema = spec.relatedSchemaName || related.SchemaName;
1908
+ const table = spec.relatedBaseTable || related.BaseTable;
1909
+ const joinKind = spec.allowsNull ? 'LEFT OUTER' : 'INNER';
1910
+ joins.push(`${joinKind} JOIN\n ${qs(schema, table)} AS ${alias}\n ON\n ${qi(classNameFirstChar)}.${qi(spec.foreignKeyField)} = ${alias}.${qi(related.FirstPrimaryKey.Name)}`); // first-pk-ok: FK target — a single FK column joins to the related entity's single key
1911
+ selects.push(` ${alias}.${qi(latF.Name)} AS ${qi(spec.lat)},\n ${alias}.${qi(lngF.Name)} AS ${qi(spec.lng)}`);
1912
+ }
1913
+ return { select: selects.join(',\n'), joins: joins.join('\n') };
1914
+ }
1915
+ generateEmbeddedGeoJoins(entity, classNameFirstChar) {
1916
+ const { joins } = this.generateEmbeddedGeoSelect(entity, classNameFirstChar);
1917
+ return joins ? ((entity.Fields.length ? '\n' : '') + joins) : '';
1918
+ }
1781
1919
  /**
1782
1920
  * Generate SELECT aliases from the RecordGeoCode LEFT JOIN → __mj_Latitude / __mj_Longitude.
1783
1921
  */