@memberjunction/codegen-lib 5.32.0 → 5.34.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 (70) hide show
  1. package/README.md +24 -0
  2. package/dist/Config/config.d.ts +19 -8
  3. package/dist/Config/config.d.ts.map +1 -1
  4. package/dist/Config/config.js +18 -8
  5. package/dist/Config/config.js.map +1 -1
  6. package/dist/Config/db-connection.d.ts.map +1 -1
  7. package/dist/Config/db-connection.js +8 -3
  8. package/dist/Config/db-connection.js.map +1 -1
  9. package/dist/Database/codeGenDatabaseProvider.d.ts +67 -0
  10. package/dist/Database/codeGenDatabaseProvider.d.ts.map +1 -1
  11. package/dist/Database/codeGenDatabaseProvider.js +82 -15
  12. package/dist/Database/codeGenDatabaseProvider.js.map +1 -1
  13. package/dist/Database/manage-metadata.d.ts +112 -4
  14. package/dist/Database/manage-metadata.d.ts.map +1 -1
  15. package/dist/Database/manage-metadata.js +347 -43
  16. package/dist/Database/manage-metadata.js.map +1 -1
  17. package/dist/Database/providers/postgresql/PostgreSQLCodeGenConnection.d.ts +4 -0
  18. package/dist/Database/providers/postgresql/PostgreSQLCodeGenConnection.d.ts.map +1 -1
  19. package/dist/Database/providers/postgresql/PostgreSQLCodeGenConnection.js +6 -0
  20. package/dist/Database/providers/postgresql/PostgreSQLCodeGenConnection.js.map +1 -1
  21. package/dist/Database/providers/postgresql/PostgreSQLCodeGenProvider.d.ts +122 -16
  22. package/dist/Database/providers/postgresql/PostgreSQLCodeGenProvider.d.ts.map +1 -1
  23. package/dist/Database/providers/postgresql/PostgreSQLCodeGenProvider.js +605 -49
  24. package/dist/Database/providers/postgresql/PostgreSQLCodeGenProvider.js.map +1 -1
  25. package/dist/Database/providers/postgresql/viewFallback.d.ts +14 -0
  26. package/dist/Database/providers/postgresql/viewFallback.d.ts.map +1 -1
  27. package/dist/Database/providers/postgresql/viewFallback.js +107 -13
  28. package/dist/Database/providers/postgresql/viewFallback.js.map +1 -1
  29. package/dist/Database/providers/sqlserver/SQLServerCodeGenConnection.d.ts +4 -0
  30. package/dist/Database/providers/sqlserver/SQLServerCodeGenConnection.d.ts.map +1 -1
  31. package/dist/Database/providers/sqlserver/SQLServerCodeGenConnection.js +6 -0
  32. package/dist/Database/providers/sqlserver/SQLServerCodeGenConnection.js.map +1 -1
  33. package/dist/Database/providers/sqlserver/SQLServerCodeGenProvider.d.ts +5 -2
  34. package/dist/Database/providers/sqlserver/SQLServerCodeGenProvider.d.ts.map +1 -1
  35. package/dist/Database/providers/sqlserver/SQLServerCodeGenProvider.js +27 -7
  36. package/dist/Database/providers/sqlserver/SQLServerCodeGenProvider.js.map +1 -1
  37. package/dist/Database/providers/sqlserver/__tests__/SQLServerCodeGenProvider.test.js +101 -0
  38. package/dist/Database/providers/sqlserver/__tests__/SQLServerCodeGenProvider.test.js.map +1 -1
  39. package/dist/Database/sql.d.ts +8 -0
  40. package/dist/Database/sql.d.ts.map +1 -1
  41. package/dist/Database/sql.js +18 -14
  42. package/dist/Database/sql.js.map +1 -1
  43. package/dist/Database/sql_codegen.d.ts +19 -5
  44. package/dist/Database/sql_codegen.d.ts.map +1 -1
  45. package/dist/Database/sql_codegen.js +109 -55
  46. package/dist/Database/sql_codegen.js.map +1 -1
  47. package/dist/Misc/action_subclasses_codegen.js +1 -1
  48. package/dist/Misc/action_subclasses_codegen.js.map +1 -1
  49. package/dist/Misc/createNewUser.d.ts.map +1 -1
  50. package/dist/Misc/createNewUser.js +14 -3
  51. package/dist/Misc/createNewUser.js.map +1 -1
  52. package/dist/Misc/entity_subclasses_codegen.d.ts.map +1 -1
  53. package/dist/Misc/entity_subclasses_codegen.js +23 -17
  54. package/dist/Misc/entity_subclasses_codegen.js.map +1 -1
  55. package/dist/Misc/graphql_server_codegen.d.ts +11 -0
  56. package/dist/Misc/graphql_server_codegen.d.ts.map +1 -1
  57. package/dist/Misc/graphql_server_codegen.js +27 -40
  58. package/dist/Misc/graphql_server_codegen.js.map +1 -1
  59. package/dist/Misc/sql_logging.d.ts.map +1 -1
  60. package/dist/Misc/sql_logging.js +22 -2
  61. package/dist/Misc/sql_logging.js.map +1 -1
  62. package/dist/Misc/system_integrity.js +3 -3
  63. package/dist/Misc/system_integrity.js.map +1 -1
  64. package/dist/Misc/temp_batch_file.js +2 -2
  65. package/dist/Misc/temp_batch_file.js.map +1 -1
  66. package/dist/runCodeGen.d.ts +1 -1
  67. package/dist/runCodeGen.d.ts.map +1 -1
  68. package/dist/runCodeGen.js +51 -6
  69. package/dist/runCodeGen.js.map +1 -1
  70. package/package.json +19 -18
@@ -4,6 +4,7 @@
4
4
  * for CodeGen orchestration code.
5
5
  */
6
6
  import pg from 'pg';
7
+ import { SQLDialect } from '@memberjunction/sql-dialect';
7
8
  import { CodeGenConnection, CodeGenQueryResult, CodeGenTransaction } from '../../codeGenDatabaseProvider.js';
8
9
  /**
9
10
  * PostgreSQL implementation of CodeGenConnection.
@@ -31,8 +32,11 @@ import { CodeGenConnection, CodeGenQueryResult, CodeGenTransaction } from '../..
31
32
  * ```
32
33
  */
33
34
  export declare class PostgreSQLCodeGenConnection implements CodeGenConnection {
35
+ private static readonly _dialect;
34
36
  private _pool;
35
37
  constructor(pool: pg.Pool);
38
+ /** @inheritdoc */
39
+ get Dialect(): SQLDialect;
36
40
  /**
37
41
  * Provides access to the underlying pg.Pool for cases where
38
42
  * PostgreSQL-specific functionality is needed.
@@ -1 +1 @@
1
- {"version":3,"file":"PostgreSQLCodeGenConnection.d.ts","sourceRoot":"","sources":["../../../../src/Database/providers/postgresql/PostgreSQLCodeGenConnection.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EACH,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EACrB,MAAM,+BAA+B,CAAC;AA4BvC;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,2BAA4B,YAAW,iBAAiB;IACjE,OAAO,CAAC,KAAK,CAAU;gBAEX,IAAI,EAAE,EAAE,CAAC,IAAI;IAIzB;;;OAGG;IACH,IAAW,IAAI,IAAI,EAAE,CAAC,IAAI,CAEzB;IAEK,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAS/C,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAM1F,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAWlG,gBAAgB,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAMrD;;;;;OAKG;IACH,OAAO,CAAC,eAAe;CAqB1B"}
1
+ {"version":3,"file":"PostgreSQLCodeGenConnection.d.ts","sourceRoot":"","sources":["../../../../src/Database/providers/postgresql/PostgreSQLCodeGenConnection.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAqB,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,EACH,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EACrB,MAAM,+BAA+B,CAAC;AA4BvC;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,2BAA4B,YAAW,iBAAiB;IACjE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAuC;IACvE,OAAO,CAAC,KAAK,CAAU;gBAEX,IAAI,EAAE,EAAE,CAAC,IAAI;IAIzB,kBAAkB;IAClB,IAAW,OAAO,IAAI,UAAU,CAE/B;IAED;;;OAGG;IACH,IAAW,IAAI,IAAI,EAAE,CAAC,IAAI,CAEzB;IAEK,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAS/C,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAM1F,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAWlG,gBAAgB,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAMrD;;;;;OAKG;IACH,OAAO,CAAC,eAAe;CAqB1B"}
@@ -1,3 +1,4 @@
1
+ import { PostgreSQLDialect } from '@memberjunction/sql-dialect';
1
2
  /**
2
3
  * PostgreSQL transaction implementation wrapping pg.PoolClient.
3
4
  */
@@ -44,9 +45,14 @@ class PostgreSQLCodeGenTransaction {
44
45
  * ```
45
46
  */
46
47
  export class PostgreSQLCodeGenConnection {
48
+ static { this._dialect = new PostgreSQLDialect(); }
47
49
  constructor(pool) {
48
50
  this._pool = pool;
49
51
  }
52
+ /** @inheritdoc */
53
+ get Dialect() {
54
+ return PostgreSQLCodeGenConnection._dialect;
55
+ }
50
56
  /**
51
57
  * Provides access to the underlying pg.Pool for cases where
52
58
  * PostgreSQL-specific functionality is needed.
@@ -1 +1 @@
1
- {"version":3,"file":"PostgreSQLCodeGenConnection.js","sourceRoot":"","sources":["../../../../src/Database/providers/postgresql/PostgreSQLCodeGenConnection.ts"],"names":[],"mappings":"AAYA;;GAEG;AACH,MAAM,4BAA4B;IAG9B,YAAY,MAAqB;QAC7B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,GAAW;QACnB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,MAAM;QACR,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACnC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,QAAQ;QACV,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;CACJ;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,OAAO,2BAA2B;IAGpC,YAAY,IAAa;QACrB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACtB,CAAC;IAED;;;OAGG;IACH,IAAW,IAAI;QACX,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,GAAW;QACnB,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;QACtC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,MAAM,CAAC,CAAC;QACZ,CAAC;IACL,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,GAAW,EAAE,MAA+B;QAC9D,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC3D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACpD,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,IAAY,EAAE,MAA+B;QACtE,0DAA0D;QAC1D,qDAAqD;QACrD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChE,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACxC,MAAM,OAAO,GAAG,iBAAiB,IAAI,IAAI,YAAY,GAAG,CAAC;QACzD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACvD,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,gBAAgB;QAClB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QAC1C,MAAM,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC5B,OAAO,IAAI,4BAA4B,CAAC,MAAM,CAAC,CAAC;IACpD,CAAC;IAED;;;;;OAKG;IACK,eAAe,CAAC,GAAW,EAAE,MAA+B;QAChE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,MAAM,GAAc,EAAE,CAAC;QAC7B,IAAI,UAAU,GAAG,CAAC,CAAC;QAEnB,yDAAyD;QACzD,4EAA4E;QAC5E,IAAI,IAAI,GAAG,GAAG,CAAC;QACf,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACrB,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,IAAI,GAAG,KAAK,EAAE,GAAG,CAAC,CAAC;YAC5C,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnB,UAAU,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;gBACzB,iDAAiD;gBACjD,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;gBACpB,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,UAAU,EAAE,CAAC,CAAC;YACjD,CAAC;QACL,CAAC;QAED,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC5B,CAAC;CACJ"}
1
+ {"version":3,"file":"PostgreSQLCodeGenConnection.js","sourceRoot":"","sources":["../../../../src/Database/providers/postgresql/PostgreSQLCodeGenConnection.ts"],"names":[],"mappings":"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"}
@@ -5,12 +5,35 @@ import { DatabasePlatform, SQLDialect } from '@memberjunction/sql-dialect';
5
5
  * PostgreSQL implementation of the CodeGen database provider.
6
6
  * Generates PostgreSQL-native DDL for views, CRUD functions, triggers, indexes,
7
7
  * full-text search, permissions, and other database objects.
8
+ *
9
+ * Registered with `MJGlobal.ClassFactory` against the canonical `'postgresql'`
10
+ * platform key — `SQLCodeGenBase` resolves this provider via
11
+ * `ClassFactory.CreateInstance(CodeGenDatabaseProvider, configInfo.dbPlatform)`.
8
12
  */
9
13
  export declare class PostgreSQLCodeGenProvider extends CodeGenDatabaseProvider {
10
14
  /** @inheritdoc */
11
15
  get Dialect(): SQLDialect;
12
16
  /** @inheritdoc */
13
17
  get PlatformKey(): DatabasePlatform;
18
+ /**
19
+ * @inheritdoc
20
+ *
21
+ * PostgreSQL: NOT supported. PG's strict `CREATE OR REPLACE VIEW` parser
22
+ * resolves view names against the existing catalog state at parse time, so
23
+ * a body that LEFT-JOINs the view-being-created to itself (e.g. for a
24
+ * self-FK's virtual NameField) raises `42P01 undefined_table` on first
25
+ * creation. A `CREATE OR REPLACE` retry against a NULL-typed stub then
26
+ * fails with `cannot change data type of view column ... from text to
27
+ * character varying(N)` because PG enforces strict column-type compat in
28
+ * `CREATE OR REPLACE`.
29
+ *
30
+ * Returning `false` tells `sql_codegen.ts` to skip the self-join entirely
31
+ * for self-FK + virtual-NameField cases. The trade-off: the corresponding
32
+ * virtual column (e.g. `RestoredFrom` on `vwRecordChanges`) is not emitted.
33
+ * Matches the baseline-shipped vwRecordChanges shape, which never had this
34
+ * column either.
35
+ */
36
+ canSelfJoinViewForVirtualNameField(): boolean;
14
37
  /**
15
38
  * Generates a PostgreSQL `DROP ... IF EXISTS ... CASCADE` statement as a guard before
16
39
  * creating or replacing a database object. For triggers, PostgreSQL relies on
@@ -18,25 +41,43 @@ export declare class PostgreSQLCodeGenProvider extends CodeGenDatabaseProvider {
18
41
  */
19
42
  generateDropGuard(objectType: 'VIEW' | 'PROCEDURE' | 'FUNCTION' | 'TRIGGER', schema: string, name: string): string;
20
43
  /**
21
- * Generates a PostgreSQL `CREATE OR REPLACE VIEW` statement for an entity's base view.
44
+ * Generates a PostgreSQL view-regeneration block for an entity's base view.
45
+ *
22
46
  * Includes all base table columns, parent/related field joins, and root field lateral
23
47
  * joins. Applies a soft-delete `WHERE` filter when the entity uses soft deletes.
24
48
  *
25
- * **Non-destructive strategy.** Historically this method emitted
26
- * `DROP VIEW IF EXISTS ... CASCADE;` before the CREATE, which let it handle every
27
- * column-signature change — but also silently destroyed any dependent view, function,
28
- * trigger, or GRANT on the view. When a later statement (or subsequent entity in the
29
- * same run) failed, half the database's objects could be gone with no error surfaced.
49
+ * **Two-path emission (try-then-fallback).** The output wraps `CREATE OR REPLACE VIEW`
50
+ * in a `DO $$ ... EXCEPTION WHEN invalid_table_definition THEN DROP VIEW ... CASCADE;
51
+ * EXECUTE vsql; END $$` block. Why:
52
+ *
53
+ * - Happy path: `CREATE OR REPLACE VIEW` succeeds (new column list is a prefix of
54
+ * the existing one plus optional trailing additions). Zero destruction. No
55
+ * dependent views, functions, triggers, or grants are touched.
30
56
  *
31
- * We now emit just `CREATE OR REPLACE VIEW`, which PostgreSQL accepts when the new
32
- * column list is a prefix of the existing one plus optional trailing additions. Any
33
- * incompatible change (rename, reorder, type change, removed column) fails with
34
- * SQLSTATE `42P16 invalid_table_definition`. That error is intentionally allowed to
35
- * propagate up through `executeSQLFileViaShell` → the per-entity batch loop → and is
36
- * surfaced as a real regeneration failure. A follow-up pass will add a capture-drop-
37
- * restore fallback for 42P16 that preserves dependents via `pg_depend` and
38
- * `pg_get_viewdef` / `pg_get_functiondef`. Until that lands, 42P16 on PG is loud and
39
- * actionable instead of silent and destructive.
57
+ * - Sad path: PG raises SQLSTATE `42P16 invalid_table_definition` for any column
58
+ * rename / reorder / type change / removal. The exception handler runs
59
+ * `DROP VIEW ... CASCADE` and re-executes the CREATE. Dependent codegen-managed
60
+ * functions (spCreate/spUpdate/spDelete returning `SETOF vwFoo`) and dependent
61
+ * views are CASCADE-dropped — they are regenerated later in the same codegen
62
+ * output stream, so by the end of the run all dependents are restored to the new
63
+ * shape. GRANTs on the view itself are also lost on the CASCADE; codegen always
64
+ * re-emits permissions immediately after the view, so they come back too.
65
+ *
66
+ * The runtime-apply path also calls this, so the live DB applies the same DO block.
67
+ * `executeWithFallback` (the runtime helper) becomes a no-op for these statements
68
+ * because the DO block handles 42P16 internally — but it still runs as a safety net
69
+ * for any other failure modes.
70
+ *
71
+ * **What this DOES NOT preserve on the sad path:** non-codegen-managed dependent
72
+ * objects (e.g. a hand-written sproc against this view that codegen doesn't know
73
+ * about). Those would be CASCADE-dropped and not restored. MJ codegen-generated
74
+ * sprocs cover all standard CRUD pathways; bespoke sprocs against base views are
75
+ * extremely rare in practice. If a project does have them, they need to be re-applied
76
+ * after a 42P16 fallback fires.
77
+ *
78
+ * This pattern matches the v5.30.x fix migration `V202604282300` — which used the
79
+ * same DO/EXCEPTION construct to recreate `vwEntityPermissions` after the unquoted
80
+ * RoleName alias bug — proving the pattern is production-tested.
40
81
  *
41
82
  * Permissions are handled separately by sql_codegen.ts via generateViewPermissions().
42
83
  */
@@ -50,6 +91,53 @@ export declare class PostgreSQLCodeGenProvider extends CodeGenDatabaseProvider {
50
91
  * via `pg_proc` is the only way to drop without knowing the exact prior signature.
51
92
  */
52
93
  private generateDropAllOverloadsBlock;
94
+ /**
95
+ * Returns true when this entity should emit JSON-arg sprocs (single `JSONB`
96
+ * parameter, key-presence semantics) for the given CRUD verb instead of the
97
+ * default typed-arg shape. Driven by PostgreSQL's hard 100-arg `FUNC_MAX_ARGS`
98
+ * ceiling — once a typed-arg sproc would project past `POSTGRESQL_PROCEDURE_PARAM_LIMIT`,
99
+ * we switch to JSON-arg.
100
+ *
101
+ * Calls the same `useJsonArgShape` predicate used by the runtime so codegen
102
+ * emit and runtime invocation cannot disagree (see `crudSprocFieldRules`
103
+ * in `@memberjunction/generic-database-provider`).
104
+ */
105
+ private shouldUseJsonArgShape;
106
+ /**
107
+ * Returns the per-column JSON cast expression for the JSON-arg sproc body,
108
+ * e.g. `(p_data->>'PromptID')::UUID` or `(p_data->>'Status')` for plain text.
109
+ * The mapping mirrors `mapSQLType` but as JSON-extraction casts; types that
110
+ * don't need a cast (TEXT/VARCHAR) emit just the bare extraction. Binary
111
+ * (BYTEA) decodes from base64 string. JSON-typed columns use `->` (not
112
+ * `->>`) to keep the JSONB structure intact.
113
+ */
114
+ private renderJsonExtractAndCast;
115
+ /**
116
+ * Generates the SET clause body for a JSON-arg UPDATE sproc — one `CASE WHEN
117
+ * p_data ? 'Field' THEN <cast> ELSE "Field" END` per writable column, plus
118
+ * the audit-timestamp assignment.
119
+ */
120
+ private renderJsonArgUpdateSetClause;
121
+ /**
122
+ * Generates the JSON-arg variant of `spUpdate*` for wide entities. Single
123
+ * `p_data JSONB` parameter; per-column `CASE WHEN p_data ? 'Field' THEN
124
+ * <cast> ELSE "Field" END` body. Key-absent leaves the column unchanged;
125
+ * key=null clears it; key=value sets it. Identity column (`ID`) is required
126
+ * in the payload; all other columns are optional.
127
+ */
128
+ private generateCRUDUpdateJsonArg;
129
+ /**
130
+ * Generates the JSON-arg variant of `spCreate*` for wide entities. Single
131
+ * `p_data JSONB` parameter; uses `EXECUTE format(...)` to build the INSERT
132
+ * dynamically based on which keys are present in `p_data` so absent keys
133
+ * fall back to column DEFAULT (matching the typed-arg sproc's default-
134
+ * substitution behavior). Returns the newly created row from the base view.
135
+ *
136
+ * Single-UUID-PK entities auto-generate the PK if `p_data` doesn't include
137
+ * one (matching `gen_random_uuid()` default). Composite-PK entities require
138
+ * caller-supplied PKs.
139
+ */
140
+ private generateCRUDCreateJsonArg;
53
141
  /**
54
142
  * Generates a PostgreSQL `CREATE OR REPLACE FUNCTION` for inserting a new record.
55
143
  * The function accepts typed parameters for each writable field, performs an `INSERT`
@@ -60,6 +148,11 @@ export declare class PostgreSQLCodeGenProvider extends CodeGenDatabaseProvider {
60
148
  *
61
149
  * Prepends a DROP-all-overloads block (see `generateDropAllOverloadsBlock`) so
62
150
  * adding/removing a column doesn't trigger PG's overload-ambiguity error.
151
+ *
152
+ * Wide entities (where `useJsonArgShape` returns true) emit a JSON-arg variant
153
+ * via `generateCRUDCreateJsonArg` — single `p_data JSONB` parameter, dynamic
154
+ * INSERT built from keys present in the payload. Same semantics; different
155
+ * wire shape needed because of PostgreSQL's 100-arg function ceiling.
63
156
  */
64
157
  generateCRUDCreate(entity: EntityInfo): string;
65
158
  /**
@@ -116,6 +209,20 @@ export declare class PostgreSQLCodeGenProvider extends CodeGenDatabaseProvider {
116
209
  * root record's primary key value.
117
210
  */
118
211
  generateRootIDFunction(entity: EntityInfo, field: EntityFieldInfo): string;
212
+ /**
213
+ * Produces the canonical name for the recursive root-finder helper function
214
+ * generated for self-referencing fields. The function definition and the
215
+ * view's LATERAL-JOIN reference must agree on this name (caller side calls
216
+ * via `generateRootFieldJoin`, definition via `generateRootIDFunction`).
217
+ *
218
+ * Note: this intentionally does NOT match the baseline-shipped PascalCase
219
+ * `fn{Table}{Field}_GetRootID` form, because the baseline returns
220
+ * `TABLE("RootID" type)` and the view callers expect a scalar — using the
221
+ * baseline name would clash with `cannot change return type of existing
222
+ * function`. The snake_case scalar form is codegen's own naming space and
223
+ * is consistent with how downstream views are emitted.
224
+ */
225
+ private getRootIDFunctionName;
119
226
  /** @inheritdoc */
120
227
  generateRootFieldSelect(_entity: EntityInfo, field: EntityFieldInfo, alias: string): string;
121
228
  /**
@@ -187,7 +294,6 @@ export declare class PostgreSQLCodeGenProvider extends CodeGenDatabaseProvider {
187
294
  /** @inheritdoc */
188
295
  generateAllEntitiesSQLFileHeader(): string;
189
296
  /**
190
- * Maps a SQL default value expression to its PostgreSQL equivalent. Translates
191
297
  * SQL Server built-in functions (e.g., `NEWID()` to `gen_random_uuid()`,
192
298
  * `GETUTCDATE()` to `NOW() AT TIME ZONE 'UTC'`), strips outer parentheses and
193
299
  * surrounding single quotes, and re-applies quoting based on the {@link needsQuotes}
@@ -1 +1 @@
1
- {"version":3,"file":"PostgreSQLCodeGenProvider.d.ts","sourceRoot":"","sources":["../../../../src/Database/providers/postgresql/PostgreSQLCodeGenProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PostgreSQLCodeGenProvider.d.ts","sourceRoot":"","sources":["../../../../src/Database/providers/postgresql/PostgreSQLCodeGenProvider.ts"],"names":[],"mappings":"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"}