@memberjunction/codegen-lib 5.42.0 → 5.44.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.
Files changed (43) hide show
  1. package/README.md +1 -1
  2. package/dist/Config/config.d.ts +132 -7
  3. package/dist/Config/config.d.ts.map +1 -1
  4. package/dist/Config/config.js +186 -11
  5. package/dist/Config/config.js.map +1 -1
  6. package/dist/Config/db-connection.d.ts +13 -0
  7. package/dist/Config/db-connection.d.ts.map +1 -1
  8. package/dist/Config/db-connection.js +19 -6
  9. package/dist/Config/db-connection.js.map +1 -1
  10. package/dist/Config/pg-connection.d.ts +58 -0
  11. package/dist/Config/pg-connection.d.ts.map +1 -0
  12. package/dist/Config/pg-connection.js +100 -0
  13. package/dist/Config/pg-connection.js.map +1 -0
  14. package/dist/Database/codeGenDatabaseProvider.d.ts +65 -1
  15. package/dist/Database/codeGenDatabaseProvider.d.ts.map +1 -1
  16. package/dist/Database/codeGenDatabaseProvider.js +27 -0
  17. package/dist/Database/codeGenDatabaseProvider.js.map +1 -1
  18. package/dist/Database/manage-metadata.d.ts.map +1 -1
  19. package/dist/Database/manage-metadata.js +12 -2
  20. package/dist/Database/manage-metadata.js.map +1 -1
  21. package/dist/Database/providers/postgresql/PostgreSQLCodeGenProvider.d.ts +23 -1
  22. package/dist/Database/providers/postgresql/PostgreSQLCodeGenProvider.d.ts.map +1 -1
  23. package/dist/Database/providers/postgresql/PostgreSQLCodeGenProvider.js +58 -4
  24. package/dist/Database/providers/postgresql/PostgreSQLCodeGenProvider.js.map +1 -1
  25. package/dist/Database/providers/postgresql/metadataSupportObjects.js +12 -0
  26. package/dist/Database/providers/postgresql/metadataSupportObjects.js.map +1 -1
  27. package/dist/Database/providers/sqlserver/SQLServerCodeGenProvider.d.ts +13 -1
  28. package/dist/Database/providers/sqlserver/SQLServerCodeGenProvider.d.ts.map +1 -1
  29. package/dist/Database/providers/sqlserver/SQLServerCodeGenProvider.js +39 -3
  30. package/dist/Database/providers/sqlserver/SQLServerCodeGenProvider.js.map +1 -1
  31. package/dist/Misc/remote_operations_codegen.d.ts +54 -0
  32. package/dist/Misc/remote_operations_codegen.d.ts.map +1 -0
  33. package/dist/Misc/remote_operations_codegen.js +186 -0
  34. package/dist/Misc/remote_operations_codegen.js.map +1 -0
  35. package/dist/index.d.ts +1 -0
  36. package/dist/index.d.ts.map +1 -1
  37. package/dist/index.js +1 -0
  38. package/dist/index.js.map +1 -1
  39. package/dist/runCodeGen.d.ts +16 -26
  40. package/dist/runCodeGen.d.ts.map +1 -1
  41. package/dist/runCodeGen.js +49 -87
  42. package/dist/runCodeGen.js.map +1 -1
  43. package/package.json +20 -20
@@ -1,5 +1,5 @@
1
1
  import { EntityInfo, EntityFieldInfo } from '@memberjunction/core';
2
- import { CodeGenDatabaseProvider, CRUDType, BaseViewGenerationContext, CascadeDeleteContext, FullTextSearchResult, PhasedExecutionResult } from '../../codeGenDatabaseProvider.js';
2
+ import { CodeGenDatabaseProvider, CRUDType, BaseViewGenerationContext, CascadeDeleteContext, FullTextSearchResult, PhasedExecutionResult, DataSourceResult } from '../../codeGenDatabaseProvider.js';
3
3
  import { DatabasePlatform, SQLDialect } from '@memberjunction/sql-dialect';
4
4
  /**
5
5
  * PostgreSQL implementation of the CodeGen database provider.
@@ -15,6 +15,28 @@ export declare class PostgreSQLCodeGenProvider extends CodeGenDatabaseProvider {
15
15
  get Dialect(): SQLDialect;
16
16
  /** @inheritdoc */
17
17
  get PlatformKey(): DatabasePlatform;
18
+ /**
19
+ * PostgreSQL implementation of {@link CodeGenDatabaseProvider.SetupDataSource}.
20
+ *
21
+ * Acquires the module-cached `pg.Pool` via {@link PGConnection} (so repeated
22
+ * CodeGen operations reuse the same pool — matching SQL Server's behavior),
23
+ * wires up `PostgreSQLDataProvider`, registers it as the active provider,
24
+ * and loads the audit user.
25
+ *
26
+ * **User-loading asymmetry** — SQL Server uses `UserCache.Instance.Refresh(pool)`
27
+ * which is hard-typed to `mssql.ConnectionPool` in `@memberjunction/sqlserver-dataprovider`.
28
+ * Refactoring it to be cross-platform would touch that package's public
29
+ * API; until then PG hand-queries `vwUsers`/`vwUserRoles` here. Same
30
+ * audit-user semantics (find Owner, else first user), just a different
31
+ * load path. Tracked for follow-up: unify behind a platform-agnostic
32
+ * cache that takes a `CodeGenConnection`.
33
+ *
34
+ * **Env var resolution** — PG_HOST / PG_PORT / PG_DATABASE / PG_USERNAME /
35
+ * PG_PASSWORD now flow through `configInfo.{dbHost,dbPort,dbDatabase,codeGenLogin,codeGenPassword}`
36
+ * via `DEFAULT_CODEGEN_CONFIG` (see `Config/config.ts`). The provider just
37
+ * reads `configInfo`.
38
+ */
39
+ SetupDataSource(): Promise<DataSourceResult>;
18
40
  /**
19
41
  * @inheritdoc
20
42
  *
@@ -1 +1 @@
1
- {"version":3,"file":"PostgreSQLCodeGenProvider.d.ts","sourceRoot":"","sources":["../../../../src/Database/providers/postgresql/PostgreSQLCodeGenProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAwB,MAAM,sBAAsB,CAAC;AAEzF,OAAO,EACH,uBAAuB,EACvB,QAAQ,EACR,yBAAyB,EACzB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACxB,MAAM,+BAA+B,CAAC;AAIvC,OAAO,EAAqB,gBAAgB,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAY9F;;;;;;;;GAQG;AACH,qBACa,yBAA0B,SAAQ,uBAAuB;IAClE,kBAAkB;IAClB,IAAI,OAAO,IAAI,UAAU,CAExB;IAED,kBAAkB;IAClB,IAAI,WAAW,IAAI,gBAAgB,CAElC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACM,kCAAkC,IAAI,OAAO;IAMtD;;;;OAIG;IACH,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAoBlH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwCG;IACH,gBAAgB,CAAC,OAAO,EAAE,yBAAyB,GAAG,MAAM;IAqN5D;;;;;;;OAOG;IACH,OAAO,CAAC,6BAA6B;IAkBrC;;;;;;;;;;OAUG;IACH,OAAO,CAAC,qBAAqB;IAI7B;;;;;;;OAOG;IACH,OAAO,CAAC,wBAAwB;IAqBhC;;;;OAIG;IACH,OAAO,CAAC,4BAA4B;IAapC;;;;;;OAMG;IACH,OAAO,CAAC,yBAAyB;IA4DjC;;;;;;;;;;OAUG;IACH,OAAO,CAAC,yBAAyB;IA+GjC;;;;;;;;;;;;;;;OAeG;IACH,kBAAkB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM;IA+D9C;;;;;;;OAOG;IACH,kBAAkB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM;IAmE9C;;;;;;;OAOG;IACH,kBAAkB,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM;IAkClE;;;;;;OAMG;IACH,wBAAwB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM;IAgCpD;;;;;OAKG;IACH,yBAAyB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,EAAE;IAkBvD;;;;;;;;;;;OAWG;IACH,sBAAsB,CAAC,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,eAAe,EAAE,EAAE,oBAAoB,EAAE,MAAM,GAAG,oBAAoB;IAuE/H;;;;;;OAMG;IACH,sBAAsB,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,eAAe,GAAG,MAAM;IAkD1E;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,qBAAqB;IAI7B,kBAAkB;IAClB,uBAAuB,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAK3F;;;;OAIG;IACH,qBAAqB,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAUxF,kBAAkB;IAClB,uBAAuB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM;IASnD;;;;OAIG;IACH,uBAAuB,CAAC,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM;IAkBxF,kBAAkB;IAClB,iCAAiC,CAAC,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM;IAUnF,kBAAkB;IAClB,8BAA8B,CAAC,OAAO,EAAE,oBAAoB,GAAG,MAAM;IAYrE;;;;OAIG;IACH,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM;IAmBnE;;;;;;OAMG;IACH;;;;;;OAMG;IACH,SAAS,CAAC,mBAAmB,CAAC,EAAE,EAAE,eAAe,GAAG,MAAM;IAI1D;;;;;;;;;;;OAWG;IACH,uBAAuB,CAAC,YAAY,EAAE,eAAe,EAAE,EAAE,QAAQ,EAAE,OAAO,GAAG,MAAM;IAiCnF;;;;;;;;OAQG;IACH,SAAS,CAAC,wBAAwB,CAAC,EAAE,EAAE,eAAe,GAAG,MAAM;IAM/D,kBAAkB;IAClB,kBAAkB,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM;IAkB9D,kBAAkB;IAClB,qBAAqB,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IASnE,kBAAkB;IAClB,gCAAgC,IAAI,MAAM;IAU1C;;;;;OAKG;IACH,kBAAkB,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,GAAG,MAAM;IA6DtE;;;;;OAKG;IACH,yBAAyB,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG;QAC5D,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,EAAE,MAAM,CAAC;KACzB;IA2BD,kBAAkB;IAClB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM;IAQrG,kBAAkB;IAClB,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM;IAInE,kBAAkB;IAClB,2BAA2B,CAAC,iBAAiB,EAAE,MAAM,GAAG;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAM1F,kBAAkB;IAClB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,CAAC,EAAE,MAAM,GAAG,MAAM;IAQ5I,kBAAkB;IAClB,gCAAgC,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,MAAM;IAOpI,kBAAkB;IAClB,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,MAAM;IAcjH;;;;;OAKG;IACH,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM;IAgCvF,kBAAkB;IAClB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW,GAAG,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAUlG,kBAAkB;IAClB,gBAAgB,IAAI,MAAM;IAI1B,kBAAkB;IAClB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IAgB3D,kBAAkB;IAClB,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED;;;;OAIG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO;IAW7D,kBAAkB;IAClB,yBAAyB,IAAI,MAAM,EAAE;IAIrC;;;;OAIG;IACH,IAAI,gBAAgB,IAAI,OAAO,CAE9B;IAED,kBAAkB;IAClB,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM;IAIlE,kBAAkB;IAClB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IAIlE;;;;OAIG;IACH,IAAI,+BAA+B,IAAI,OAAO,CAE7C;IAID;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAyDlC;IAEH;;;;;OAKG;IACH,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IA0CzC;;;;;OAKG;IACH,uBAAuB,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAuB/D,kBAAkB;IAClB,yBAAyB,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM;IAK7E,kBAAkB;IAClB,+BAA+B,CAAC,eAAe,EAAE,MAAM,EAAE,GAAG,MAAM;IAKlE,kBAAkB;IAClB,sCAAsC,IAAI,MAAM;IAKhD,kBAAkB;IAClB,gCAAgC,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM;IAK9D,kBAAkB;IAClB,4BAA4B,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAMjE;;;;;;OAMG;IACG,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAuDhE,kBAAkB;IAClB,0BAA0B,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM;IAcrD;;;;;;;;;;;;OAYG;IACY,kBAAkB,CAC7B,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,MAAM,EACf,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GAC7B,OAAO,CAAC,IAAI,CAAC;IA4EhB;;;;;;;;;;;;OAYG;IACY,mBAAmB,CAAC,IAAI,EAAE;QACrC,MAAM,EAAE,UAAU,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,aAAa,EAAE,MAAM,CAAC;QACtB,aAAa,EAAE,MAAM,CAAC;QACtB,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;QACpB,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;KAChC,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAoGlC;;;OAGG;IACH,OAAO,CAAC,WAAW;IAUnB;;OAEG;IACH,OAAO,CAAC,UAAU;IAgBlB,4CAA4C;IAC5C,OAAO,CAAC,eAAe;IAIvB,wDAAwD;IACxD,OAAO,CAAC,0BAA0B;IAOlC,iDAAiD;IACjD,OAAO,CAAC,wBAAwB;IAUhC,oDAAoD;IACpD,OAAO,CAAC,sBAAsB;IAQ9B;;;;;OAKG;IACH,OAAO,CAAC,8BAA8B;IAWtC,6EAA6E;IAC7E,OAAO,CAAC,0BAA0B;IAMlC,sEAAsE;IACtE,OAAO,CAAC,yBAAyB;IAkEjC,yEAAyE;IACzE,OAAO,CAAC,mBAAmB;IAkD3B,2DAA2D;IAC3D,OAAO,CAAC,2BAA2B;IAsBnC,oEAAoE;IACpE,OAAO,CAAC,2BAA2B;IAmBnC,4EAA4E;IAC5E,OAAO,CAAC,sBAAsB;IAY9B,kBAAkB;IAClB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IAI9D;;;;OAIG;IACH,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM;IAiBpE;;;;;OAKG;IACH,oCAAoC,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM;IAoBnG,kBAAkB;IAClB,2BAA2B,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM;IAUzF,yEAAyE;IACzE,OAAO,CAAC,sBAAsB;IAgB9B,iEAAiE;IACjE,OAAO,CAAC,qBAAqB;IA4B7B,gDAAgD;IAChD,OAAO,CAAC,0BAA0B;IAQlC,6DAA6D;IAC7D,OAAO,CAAC,uBAAuB;IAQ/B,oCAAoC;IACpC,OAAO,CAAC,eAAe;IAOvB,wFAAwF;IACxF,OAAO,CAAC,WAAW;IAoBnB;;;;OAIG;IACH,OAAO,CAAC,6BAA6B;IAqFrC;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAa/B;;;OAGG;IACH,OAAO,CAAC,wCAAwC;CA2BnD"}
1
+ {"version":3,"file":"PostgreSQLCodeGenProvider.d.ts","sourceRoot":"","sources":["../../../../src/Database/providers/postgresql/PostgreSQLCodeGenProvider.ts"],"names":[],"mappings":"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"}
@@ -5,15 +5,17 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  var PostgreSQLCodeGenProvider_1;
8
- import { EntityInfo } from '@memberjunction/core';
8
+ import { EntityInfo, SetProvider, UserInfo } from '@memberjunction/core';
9
9
  import { RegisterClass, UUIDsEqual } from '@memberjunction/global';
10
10
  import { CodeGenDatabaseProvider, CRUDType, } from '../../codeGenDatabaseProvider.js';
11
- import { configInfo } from '../../../Config/config.js';
12
- import { logError } from '../../../Misc/status_logging.js';
11
+ import { configInfo, mj_core_schema } from '../../../Config/config.js';
12
+ import { logError, startSpinner, succeedSpinner } from '../../../Misc/status_logging.js';
13
13
  import { buildMetadataSupportObjectsSQL } from './metadataSupportObjects.js';
14
14
  import { PostgreSQLDialect } from '@memberjunction/sql-dialect';
15
15
  import { shouldIncludeFieldInParams, useJsonArgShape, } from '@memberjunction/generic-database-provider';
16
- import { POSTGRESQL_PROCEDURE_PARAM_LIMIT } from '@memberjunction/postgresql-dataprovider';
16
+ import { POSTGRESQL_PROCEDURE_PARAM_LIMIT, PostgreSQLDataProvider, PostgreSQLProviderConfigData, } from '@memberjunction/postgresql-dataprovider';
17
+ import { PGConnection, getPgConfig } from '../../../Config/pg-connection.js';
18
+ import { PostgreSQLCodeGenConnection } from './PostgreSQLCodeGenConnection.js';
17
19
  import * as fs from 'fs';
18
20
  import path from 'path';
19
21
  import { executeWithFallback } from './viewFallback.js';
@@ -37,6 +39,58 @@ let PostgreSQLCodeGenProvider = class PostgreSQLCodeGenProvider extends CodeGenD
37
39
  get PlatformKey() {
38
40
  return 'postgresql';
39
41
  }
42
+ /**
43
+ * PostgreSQL implementation of {@link CodeGenDatabaseProvider.SetupDataSource}.
44
+ *
45
+ * Acquires the module-cached `pg.Pool` via {@link PGConnection} (so repeated
46
+ * CodeGen operations reuse the same pool — matching SQL Server's behavior),
47
+ * wires up `PostgreSQLDataProvider`, registers it as the active provider,
48
+ * and loads the audit user.
49
+ *
50
+ * **User-loading asymmetry** — SQL Server uses `UserCache.Instance.Refresh(pool)`
51
+ * which is hard-typed to `mssql.ConnectionPool` in `@memberjunction/sqlserver-dataprovider`.
52
+ * Refactoring it to be cross-platform would touch that package's public
53
+ * API; until then PG hand-queries `vwUsers`/`vwUserRoles` here. Same
54
+ * audit-user semantics (find Owner, else first user), just a different
55
+ * load path. Tracked for follow-up: unify behind a platform-agnostic
56
+ * cache that takes a `CodeGenConnection`.
57
+ *
58
+ * **Env var resolution** — PG_HOST / PG_PORT / PG_DATABASE / PG_USERNAME /
59
+ * PG_PASSWORD now flow through `configInfo.{dbHost,dbPort,dbDatabase,codeGenLogin,codeGenPassword}`
60
+ * via `DEFAULT_CODEGEN_CONFIG` (see `Config/config.ts`). The provider just
61
+ * reads `configInfo`.
62
+ */
63
+ async SetupDataSource() {
64
+ startSpinner('Initializing database connection...');
65
+ const pool = await PGConnection();
66
+ const pgConfig = getPgConfig();
67
+ const coreSchema = mj_core_schema();
68
+ const dpConfig = new PostgreSQLProviderConfigData({
69
+ Host: pgConfig.Host,
70
+ Port: pgConfig.Port ?? 5432,
71
+ Database: pgConfig.Database,
72
+ User: pgConfig.User,
73
+ Password: pgConfig.Password,
74
+ }, coreSchema, 1);
75
+ const provider = new PostgreSQLDataProvider();
76
+ await provider.Config(dpConfig);
77
+ SetProvider(provider);
78
+ const conn = new PostgreSQLCodeGenConnection(pool);
79
+ const usersResult = await conn.query('SELECT * FROM "' + coreSchema + '"."vwUsers"');
80
+ const rolesResult = await conn.query('SELECT * FROM "' + coreSchema + '"."vwUserRoles"');
81
+ const userInfos = usersResult.recordset.map((user) => {
82
+ user.UserRoles = rolesResult.recordset.filter((role) => UUIDsEqual(role.UserID, user.ID));
83
+ return new UserInfo(provider, user);
84
+ });
85
+ const userMatch = userInfos.find((u) => u?.Type?.trim().toLowerCase() === 'owner');
86
+ const currentUser = userMatch ?? userInfos[0];
87
+ if (!currentUser) {
88
+ throw new Error('No users found in PostgreSQL. Ensure vwUsers has at least one user.');
89
+ }
90
+ const connectionInfo = `${pgConfig.Host}:${pgConfig.Port ?? 5432}/${pgConfig.Database}`;
91
+ succeedSpinner('PostgreSQL connection initialized: ' + connectionInfo);
92
+ return { provider, connection: conn, currentUser, connectionInfo };
93
+ }
40
94
  /**
41
95
  * @inheritdoc
42
96
  *
@@ -1 +1 @@
1
- {"version":3,"file":"PostgreSQLCodeGenProvider.js","sourceRoot":"","sources":["../../../../src/Database/providers/postgresql/PostgreSQLCodeGenProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PostgreSQLCodeGenProvider.js","sourceRoot":"","sources":["../../../../src/Database/providers/postgresql/PostgreSQLCodeGenProvider.ts"],"names":[],"mappings":"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"}
@@ -548,6 +548,18 @@ BEGIN
548
548
  WHERE si."ID" IS NULL
549
549
  AND ss."SchemaName" NOT IN (SELECT x.schema_name FROM _usi_excluded x);
550
550
 
551
+ -- Backfill the case-stable canonical schema name from the installed Open App record.
552
+ -- SchemaInfo.SchemaName is the physical (lowercased) name on PG; the app record carries
553
+ -- the canonical casing (manifest schema.name). Case-insensitive join; only fills NULLs.
554
+ -- Mirrors the SQL Server proc in migration V202606301331 — keep the two in sync.
555
+ UPDATE __mj."SchemaInfo" si SET
556
+ "CanonicalSchemaName" = app."SchemaName",
557
+ "__mj_UpdatedAt" = now()
558
+ FROM __mj."OpenApp" app
559
+ WHERE LOWER(si."SchemaName") = LOWER(app."SchemaName")
560
+ AND si."CanonicalSchemaName" IS NULL
561
+ AND app."SchemaName" IS NOT NULL;
562
+
551
563
  RETURN QUERY
552
564
  SELECT si.*
553
565
  FROM __mj."SchemaInfo" si
@@ -1 +1 @@
1
- {"version":3,"file":"metadataSupportObjects.js","sourceRoot":"","sources":["../../../../src/Database/providers/postgresql/metadataSupportObjects.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,8BAA8B,CAAC,YAAoB;IAC/D,OAAO,4BAA4B,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACzE,CAAC;AACD,MAAM,4BAA4B,GAAW,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+mBtD,CAAC"}
1
+ {"version":3,"file":"metadataSupportObjects.js","sourceRoot":"","sources":["../../../../src/Database/providers/postgresql/metadataSupportObjects.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,8BAA8B,CAAC,YAAoB;IAC/D,OAAO,4BAA4B,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACzE,CAAC;AACD,MAAM,4BAA4B,GAAW,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2nBtD,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { EntityInfo, EntityFieldInfo } from '@memberjunction/core';
2
- import { CodeGenDatabaseProvider, CRUDType, BaseViewGenerationContext, CascadeDeleteContext, FullTextSearchResult } from '../../codeGenDatabaseProvider.js';
2
+ import { CodeGenDatabaseProvider, CRUDType, BaseViewGenerationContext, CascadeDeleteContext, FullTextSearchResult, DataSourceResult } from '../../codeGenDatabaseProvider.js';
3
3
  import { DatabasePlatform, SQLDialect } from '@memberjunction/sql-dialect';
4
4
  /**
5
5
  * SQL Server implementation of the CodeGen database provider.
@@ -17,6 +17,18 @@ export declare class SQLServerCodeGenProvider extends CodeGenDatabaseProvider {
17
17
  get Dialect(): SQLDialect;
18
18
  /** @inheritdoc */
19
19
  get PlatformKey(): DatabasePlatform;
20
+ /**
21
+ * SQL Server implementation of {@link CodeGenDatabaseProvider.SetupDataSource}.
22
+ *
23
+ * Opens (or reuses) the module-cached mssql pool via `MSSQLConnection()`,
24
+ * wires up the SQL Server metadata provider, builds the dialect-aware
25
+ * connection, and resolves the audit user via `UserCache.Refresh()` —
26
+ * the canonical pattern that has lived in `runCodeGen.setupSQLServerDataSource()`
27
+ * since the multi-provider work started. It now sits behind the
28
+ * `CodeGenDatabaseProvider` factory so adding a third platform doesn't
29
+ * mean touching the orchestrator.
30
+ */
31
+ SetupDataSource(): Promise<DataSourceResult>;
20
32
  /**
21
33
  * Generates SQL Server-style conditional DROP guards using the `IF OBJECT_ID(...) IS NOT NULL`
22
34
  * pattern. Maps each object type to its SQL Server type code: `'V'` for views, `'P'` for
@@ -1 +1 @@
1
- {"version":3,"file":"SQLServerCodeGenProvider.d.ts","sourceRoot":"","sources":["../../../../src/Database/providers/sqlserver/SQLServerCodeGenProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SQLServerCodeGenProvider.d.ts","sourceRoot":"","sources":["../../../../src/Database/providers/sqlserver/SQLServerCodeGenProvider.ts"],"names":[],"mappings":"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"}
@@ -9,9 +9,11 @@ import { CodeGenDatabaseProvider, } from '../../codeGenDatabaseProvider.js';
9
9
  import { SQLServerDialect } from '@memberjunction/sql-dialect';
10
10
  import { RegisterClass } from '@memberjunction/global';
11
11
  import { sortBySequenceAndCreatedAt } from '../../../Misc/util.js';
12
- import { dbDatabase } from '../../../Config/config.js';
13
- import { MSSQLConnection } from '../../../Config/db-connection.js';
14
- import { logError, logWarning } from '../../../Misc/status_logging.js';
12
+ import { dbDatabase, mj_core_schema } from '../../../Config/config.js';
13
+ import { MSSQLConnection, getSqlConfig } from '../../../Config/db-connection.js';
14
+ import { logError, logWarning, startSpinner, succeedSpinner } from '../../../Misc/status_logging.js';
15
+ import { SQLServerProviderConfigData, UserCache, setupSQLServerClient, } from '@memberjunction/sqlserver-dataprovider';
16
+ import { SQLServerCodeGenConnection } from './SQLServerCodeGenConnection.js';
15
17
  import * as fs from 'fs';
16
18
  import * as path from 'path';
17
19
  const ssDialect = new SQLServerDialect();
@@ -35,6 +37,40 @@ let SQLServerCodeGenProvider = class SQLServerCodeGenProvider extends CodeGenDat
35
37
  get PlatformKey() {
36
38
  return 'sqlserver';
37
39
  }
40
+ /**
41
+ * SQL Server implementation of {@link CodeGenDatabaseProvider.SetupDataSource}.
42
+ *
43
+ * Opens (or reuses) the module-cached mssql pool via `MSSQLConnection()`,
44
+ * wires up the SQL Server metadata provider, builds the dialect-aware
45
+ * connection, and resolves the audit user via `UserCache.Refresh()` —
46
+ * the canonical pattern that has lived in `runCodeGen.setupSQLServerDataSource()`
47
+ * since the multi-provider work started. It now sits behind the
48
+ * `CodeGenDatabaseProvider` factory so adding a third platform doesn't
49
+ * mean touching the orchestrator.
50
+ */
51
+ async SetupDataSource() {
52
+ startSpinner('Initializing database connection...');
53
+ const pool = await MSSQLConnection();
54
+ const config = new SQLServerProviderConfigData(pool, mj_core_schema());
55
+ const provider = await setupSQLServerClient(config);
56
+ const conn = new SQLServerCodeGenConnection(pool);
57
+ // `getSqlConfig()` returns the config that was built lazily by
58
+ // MSSQLConnection() above. The non-null assertion is safe because the
59
+ // call to MSSQLConnection on the line above is what guarantees the
60
+ // accessor has a value to return.
61
+ const cfg = getSqlConfig();
62
+ let connectionInfo = cfg.server;
63
+ if (cfg.port)
64
+ connectionInfo += ':' + cfg.port;
65
+ if (cfg.options?.instanceName)
66
+ connectionInfo += '\\' + cfg.options.instanceName;
67
+ connectionInfo += '/' + cfg.database;
68
+ await UserCache.Instance.Refresh(pool);
69
+ const userMatch = UserCache.Users.find((u) => u?.Type?.trim().toLowerCase() === 'owner');
70
+ const currentUser = userMatch ?? UserCache.Users[0];
71
+ succeedSpinner('SQL Server connection initialized: ' + connectionInfo);
72
+ return { provider, connection: conn, currentUser, connectionInfo };
73
+ }
38
74
  // ─── DROP GUARDS ─────────────────────────────────────────────────────
39
75
  /**
40
76
  * Generates SQL Server-style conditional DROP guards using the `IF OBJECT_ID(...) IS NOT NULL`