prostgles-server 4.2.547 → 4.2.549
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/DboBuilder/ViewRelatedTables/getAllViewRelatedTables.d.ts +2 -6
- package/dist/DboBuilder/ViewRelatedTables/getAllViewRelatedTables.d.ts.map +1 -1
- package/dist/DboBuilder/ViewRelatedTables/getAllViewRelatedTables.js +9 -2
- package/dist/DboBuilder/ViewRelatedTables/getAllViewRelatedTables.js.map +1 -1
- package/dist/DboBuilder/ViewRelatedTables/getViewRelatedTableJoinCondition.js +2 -2
- package/dist/DboBuilder/ViewRelatedTables/getViewRelatedTableJoinCondition.js.map +1 -1
- package/dist/DboBuilder/ViewRelatedTables/getViewRelatedTables.js +4 -4
- package/dist/DboBuilder/ViewRelatedTables/getViewRelatedTables.js.map +1 -1
- package/dist/runClientRequest.d.ts.map +1 -1
- package/dist/runClientRequest.js +3 -4
- package/dist/runClientRequest.js.map +1 -1
- package/lib/DboBuilder/ViewRelatedTables/getAllViewRelatedTables.ts +10 -3
- package/lib/DboBuilder/ViewRelatedTables/getViewRelatedTableJoinCondition.ts +2 -2
- package/lib/DboBuilder/ViewRelatedTables/getViewRelatedTables.ts +4 -4
- package/lib/runClientRequest.ts +5 -12
- package/package.json +1 -1
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
export declare const getAllViewRelatedTables: (
|
|
3
|
-
table_name: string;
|
|
4
|
-
table_schema: string;
|
|
5
|
-
table_oid: number;
|
|
6
|
-
}[]>;
|
|
1
|
+
import type { DboBuilder } from "../DboBuilder";
|
|
2
|
+
export declare const getAllViewRelatedTables: (dboBuilder: DboBuilder, viewName: string) => Promise<NonNullable<import("../DboBuilderTypes").TableSchema>[]>;
|
|
7
3
|
//# sourceMappingURL=getAllViewRelatedTables.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getAllViewRelatedTables.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/ViewRelatedTables/getAllViewRelatedTables.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getAllViewRelatedTables.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/ViewRelatedTables/getAllViewRelatedTables.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD,eAAO,MAAM,uBAAuB,GAAU,YAAY,UAAU,EAAE,UAAU,MAAM,qEAyBrF,CAAC"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getAllViewRelatedTables = void 0;
|
|
4
|
-
const
|
|
4
|
+
const prostgles_types_1 = require("prostgles-types");
|
|
5
|
+
const getAllViewRelatedTables = async (dboBuilder, viewName) => {
|
|
6
|
+
const db = dboBuilder.db;
|
|
5
7
|
const tables = await db.any(`
|
|
6
8
|
SELECT DISTINCT
|
|
7
9
|
vcu.table_name,
|
|
@@ -12,7 +14,12 @@ const getAllViewRelatedTables = async (db, viewName) => {
|
|
|
12
14
|
JOIN pg_namespace n ON n.oid = c.relnamespace AND n.nspname = vcu.table_schema
|
|
13
15
|
WHERE vcu.view_name = \${viewName}
|
|
14
16
|
`, { viewName });
|
|
15
|
-
return tables
|
|
17
|
+
return tables
|
|
18
|
+
.map((t) => {
|
|
19
|
+
const tableInfo = dboBuilder.tablesOrViews?.find((tov) => tov.oid === t.table_oid);
|
|
20
|
+
return tableInfo;
|
|
21
|
+
})
|
|
22
|
+
.filter(prostgles_types_1.isDefined);
|
|
16
23
|
};
|
|
17
24
|
exports.getAllViewRelatedTables = getAllViewRelatedTables;
|
|
18
25
|
//# sourceMappingURL=getAllViewRelatedTables.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getAllViewRelatedTables.js","sourceRoot":"","sources":["../../../lib/DboBuilder/ViewRelatedTables/getAllViewRelatedTables.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"getAllViewRelatedTables.js","sourceRoot":"","sources":["../../../lib/DboBuilder/ViewRelatedTables/getAllViewRelatedTables.ts"],"names":[],"mappings":";;;AAAA,qDAA4C;AAGrC,MAAM,uBAAuB,GAAG,KAAK,EAAE,UAAsB,EAAE,QAAgB,EAAE,EAAE;IACxF,MAAM,EAAE,GAAG,UAAU,CAAC,EAAE,CAAC;IACzB,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,GAAG,CAKzB;;;;;;;;;GASD,EACC,EAAE,QAAQ,EAAE,CACb,CAAC;IACF,OAAO,MAAM;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,MAAM,SAAS,GAAG,UAAU,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC;QACnF,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC;SACD,MAAM,CAAC,2BAAS,CAAC,CAAC;AACvB,CAAC,CAAC;AAzBW,QAAA,uBAAuB,2BAyBlC"}
|
|
@@ -15,9 +15,9 @@ const getViewRelatedTableJoinCondition = async ({ dboBuilder, viewDefinition, vi
|
|
|
15
15
|
};
|
|
16
16
|
});
|
|
17
17
|
const primaryKeyColumns = tableColumns.filter((c) => c.is_pkey);
|
|
18
|
-
const
|
|
18
|
+
const comparableColumns = tableColumns.filter((c) => c.viewColumnName && !["json", "xml"].includes(c.udt_name));
|
|
19
19
|
const allPkeyColumnsInView = primaryKeyColumns.length && primaryKeyColumns.every((pk) => (0, prostgles_types_1.isDefined)(pk.viewColumnName));
|
|
20
|
-
const joinColumns = allPkeyColumnsInView ? primaryKeyColumns :
|
|
20
|
+
const joinColumns = allPkeyColumnsInView ? primaryKeyColumns : comparableColumns;
|
|
21
21
|
let condition = "TRUE";
|
|
22
22
|
const tableName = table.name;
|
|
23
23
|
if (joinColumns.length) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getViewRelatedTableJoinCondition.js","sourceRoot":"","sources":["../../../lib/DboBuilder/ViewRelatedTables/getViewRelatedTableJoinCondition.ts"],"names":[],"mappings":";;;AAAA,qDAA4C;AAC5C,+EAA6D;AAKtD,MAAM,gCAAgC,GAAG,KAAK,EAAE,EACrD,UAAU,EACV,cAAc,EACd,UAAU,EACV,eAAe,EACf,QAAQ,GAiBT,EAAE,EAAE;IACH,MAAM,EAAE,GAAG,UAAU,CAAC,EAAE,CAAC;IACzB,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,GAAG,CAC3B,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE;QAC3E,wCAAwC;QACxC,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;YAC5C,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,CACjC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,EAAE,CAAC,gBAAgB,CAChD,EAAE,cAAc,CAAC;YAClB,OAAO;gBACL,GAAG,EAAE;gBACL,cAAc;aACf,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,MAAM,iBAAiB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAChE,MAAM,
|
|
1
|
+
{"version":3,"file":"getViewRelatedTableJoinCondition.js","sourceRoot":"","sources":["../../../lib/DboBuilder/ViewRelatedTables/getViewRelatedTableJoinCondition.ts"],"names":[],"mappings":"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"}
|
|
@@ -50,13 +50,13 @@ const getViewRelatedTables = async (viewHandler, localParams, newQuery) => {
|
|
|
50
50
|
relatedTables: [...joinedRelatedTables],
|
|
51
51
|
};
|
|
52
52
|
/** Get list of remaining used inner tables (tables whose columns do not appear in fields list but are still used by the view) */
|
|
53
|
-
const allUsedTables = await (0, getAllViewRelatedTables_1.getAllViewRelatedTables)(dboBuilder
|
|
53
|
+
const allUsedTables = await (0, getAllViewRelatedTables_1.getAllViewRelatedTables)(dboBuilder, viewName);
|
|
54
54
|
/** Remaining tables will have listeners on all records (condition = "TRUE") */
|
|
55
55
|
allUsedTables.forEach((rt) => {
|
|
56
|
-
if (!joinedRelatedTables.find((jt) => jt.tableOID
|
|
56
|
+
if (!joinedRelatedTables.find((jt) => jt.tableOID == rt.oid)) {
|
|
57
57
|
viewOptions.relatedTables.push({
|
|
58
|
-
tableName: rt.
|
|
59
|
-
tableNameEscaped:
|
|
58
|
+
tableName: rt.name,
|
|
59
|
+
tableNameEscaped: rt.name,
|
|
60
60
|
condition: "TRUE",
|
|
61
61
|
tracked_columns: undefined,
|
|
62
62
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getViewRelatedTables.js","sourceRoot":"","sources":["../../../lib/DboBuilder/ViewRelatedTables/getViewRelatedTables.ts"],"names":[],"mappings":";;;AAEA,wDAAyE;AAGzE,uEAAoE;AACpE,yFAAsF;AAE/E,MAAM,oBAAoB,GAAG,KAAK,EACvC,WAAwB,EACxB,WAAoC,EACpC,QAAkB,EAClB,EAAE;IACF,sDAAsD;IACtD,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,WAAW,CAAC;IAEnD,uDAAuD;IACvD,MAAM,EAAE,eAAe,GAAG,EAAE,EAAE,GAAG,WAAW,CAAC,eAAe,CAAC;IAE7D,IAAI,UAAU,GAAG,eAAe,EAAE,IAAI,EAAE,CAAC;IACzC,IAAI,UAAU,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;QAClD,MAAM,IAAA,qDAAmC,EAAC,2BAA2B,EAAE;YACrE,IAAI,EAAE,aAAa;YACnB,WAAW;YACX,IAAI,EAAE,IAAI;YACV,SAAS,EAAE,WAAW,CAAC,UAAU,CAAC,SAAS;SAC5C,CAAC,CAAC;IACL,CAAC;IACD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,CACxC,sBAAsB,UAAU,mDAAmD,EACnF,EAAE,EACF,EAAE,UAAU,EAAE,uBAAuB,EAAE,CACxC,CAAC;IAEF,MAAM,UAAU,GAMZ,IAAI,GAAG,EAAE,CAAC;IAEd,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE;QACzD,MAAM,KAAK,GAAG,UAAU,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,IAAI,GAAG,CAAC,GAAG,KAAK,OAAO,CAAC,CAAC;QACtF,IAAI,IAAI,IAAI,OAAO,IAAI,QAAQ,IAAI,UAAU,IAAI,KAAK,EAAE,CAAC;YACvD,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;YACpE,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC;gBACrB,cAAc,EAAE,IAAI;gBACpB,cAAc,EAAE,QAAQ;gBACxB,eAAe,EAAE,UAAU;aAC5B,CAAC,CAAC;YACH,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QACrC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,2CAA2C;IAC3C,MAAM,mBAAmB,GAAG,MAAM,IAAA,mEAAgC,EAAC;QACjE,UAAU;QACV,cAAc,EAAE,UAAU;QAC1B,UAAU;QACV,eAAe,EAAE,QAAQ;QACzB,QAAQ;KACT,CAAC,CAAC;IAEH,MAAM,WAAW,GAA4B;QAC3C,IAAI,EAAE,MAAM;QACZ,QAAQ;QACR,UAAU;QACV,aAAa,EAAE,CAAC,GAAG,mBAAmB,CAAC;KACxC,CAAC;IAEF,iIAAiI;IACjI,MAAM,aAAa,GAAG,MAAM,IAAA,iDAAuB,EAAC,UAAU,
|
|
1
|
+
{"version":3,"file":"getViewRelatedTables.js","sourceRoot":"","sources":["../../../lib/DboBuilder/ViewRelatedTables/getViewRelatedTables.ts"],"names":[],"mappings":";;;AAEA,wDAAyE;AAGzE,uEAAoE;AACpE,yFAAsF;AAE/E,MAAM,oBAAoB,GAAG,KAAK,EACvC,WAAwB,EACxB,WAAoC,EACpC,QAAkB,EAClB,EAAE;IACF,sDAAsD;IACtD,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,WAAW,CAAC;IAEnD,uDAAuD;IACvD,MAAM,EAAE,eAAe,GAAG,EAAE,EAAE,GAAG,WAAW,CAAC,eAAe,CAAC;IAE7D,IAAI,UAAU,GAAG,eAAe,EAAE,IAAI,EAAE,CAAC;IACzC,IAAI,UAAU,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;QAClD,MAAM,IAAA,qDAAmC,EAAC,2BAA2B,EAAE;YACrE,IAAI,EAAE,aAAa;YACnB,WAAW;YACX,IAAI,EAAE,IAAI;YACV,SAAS,EAAE,WAAW,CAAC,UAAU,CAAC,SAAS;SAC5C,CAAC,CAAC;IACL,CAAC;IACD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,CACxC,sBAAsB,UAAU,mDAAmD,EACnF,EAAE,EACF,EAAE,UAAU,EAAE,uBAAuB,EAAE,CACxC,CAAC;IAEF,MAAM,UAAU,GAMZ,IAAI,GAAG,EAAE,CAAC;IAEd,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE;QACzD,MAAM,KAAK,GAAG,UAAU,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,IAAI,GAAG,CAAC,GAAG,KAAK,OAAO,CAAC,CAAC;QACtF,IAAI,IAAI,IAAI,OAAO,IAAI,QAAQ,IAAI,UAAU,IAAI,KAAK,EAAE,CAAC;YACvD,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;YACpE,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC;gBACrB,cAAc,EAAE,IAAI;gBACpB,cAAc,EAAE,QAAQ;gBACxB,eAAe,EAAE,UAAU;aAC5B,CAAC,CAAC;YACH,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QACrC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,2CAA2C;IAC3C,MAAM,mBAAmB,GAAG,MAAM,IAAA,mEAAgC,EAAC;QACjE,UAAU;QACV,cAAc,EAAE,UAAU;QAC1B,UAAU;QACV,eAAe,EAAE,QAAQ;QACzB,QAAQ;KACT,CAAC,CAAC;IAEH,MAAM,WAAW,GAA4B;QAC3C,IAAI,EAAE,MAAM;QACZ,QAAQ;QACR,UAAU;QACV,aAAa,EAAE,CAAC,GAAG,mBAAmB,CAAC;KACxC,CAAC;IAEF,iIAAiI;IACjI,MAAM,aAAa,GAAG,MAAM,IAAA,iDAAuB,EAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAE1E,+EAA+E;IAC/E,aAAa,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;QAC3B,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7D,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC;gBAC7B,SAAS,EAAE,EAAE,CAAC,IAAI;gBAClB,gBAAgB,EAAE,EAAE,CAAC,IAAI;gBACzB,SAAS,EAAE,MAAM;gBACjB,eAAe,EAAE,SAAS;aAC3B,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;QACtC,MAAM,2DAA2D,CAAC;IACpE,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC;AAtFW,QAAA,oBAAoB,wBAsF/B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runClientRequest.d.ts","sourceRoot":"","sources":["../lib/runClientRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAA0B,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAKL,KAAK,SAAS,EACf,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAK1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"runClientRequest.d.ts","sourceRoot":"","sources":["../lib/runClientRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAA0B,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAKL,KAAK,SAAS,EACf,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAK1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,sCAAsC,CAAC;AA2B5E,KAAK,IAAI,GAAG;IACV,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAUF,eAAO,MAAM,gBAAgB,GAC3B,MAAM,SAAS,EACf,kBAAkB,IAAI,EACtB,WAAW,iBAAiB,EAC5B,OAAO,eAAe,GAAG,SAAS,mCA4FnC,CAAC;AAEF,eAAO,MAAM,sBAAsB,GACjC,MAAM,SAAS,EACf,WAAW,iBAAiB;;;;;;;;EAa7B,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,MAAM,SAAS,EACf,iBAAiB,UAAU,EAC3B,WAAW,iBAAiB,iBAqB7B,CAAC;AAEF,KAAK,UAAU,GAAG;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AACF,eAAO,MAAM,eAAe,GAC1B,MAAM,SAAS,EACf,iBAAiB,UAAU,EAC3B,WAAW,iBAAiB,qBAuC7B,CAAC"}
|
package/dist/runClientRequest.js
CHANGED
|
@@ -30,7 +30,7 @@ const SOCKET_ONLY_COMMANDS = [
|
|
|
30
30
|
const runClientRequest = async function (nonValidatedArgs, clientReq, scope) {
|
|
31
31
|
/* Channel name will only include client-sent params so we ignore table_rules enforced params */
|
|
32
32
|
if (!this.publishParser || !this.dbo) {
|
|
33
|
-
throw "socket/httpReq or
|
|
33
|
+
throw "socket/httpReq or authHandler missing";
|
|
34
34
|
}
|
|
35
35
|
const validation = (0, prostgles_types_1.getJSONBObjectSchemaValidationError)({
|
|
36
36
|
tableName: { type: "string" },
|
|
@@ -84,7 +84,7 @@ const runClientRequest = async function (nonValidatedArgs, clientReq, scope) {
|
|
|
84
84
|
/**
|
|
85
85
|
* satisfies check is used to ensure rules arguments are correctly passed to each method
|
|
86
86
|
*/
|
|
87
|
-
|
|
87
|
+
tableHandler[command].bind(tableHandler);
|
|
88
88
|
return tableHandler[command](param1, param2, param3, parsedTableRule, localParams);
|
|
89
89
|
};
|
|
90
90
|
exports.runClientRequest = runClientRequest;
|
|
@@ -94,8 +94,7 @@ const clientCanRunSqlRequest = async function (clientReq) {
|
|
|
94
94
|
}
|
|
95
95
|
const canRunSQL = async () => {
|
|
96
96
|
const publishParams = await this.publishParser?.getPublishParams(clientReq, undefined);
|
|
97
|
-
const allowedToRunSQL = publishParams &&
|
|
98
|
-
(await (this.opts.publishRawSQL)?.(publishParams));
|
|
97
|
+
const allowedToRunSQL = publishParams && (await this.opts.publishRawSQL?.(publishParams));
|
|
99
98
|
return allowedToRunSQL === true || allowedToRunSQL === "*";
|
|
100
99
|
};
|
|
101
100
|
const allowed = await canRunSQL();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runClientRequest.js","sourceRoot":"","sources":["../lib/runClientRequest.ts"],"names":[],"mappings":";;;AACA,qDAMyB;AAIzB,gFAA6E;AAC7E,uDAAuD;
|
|
1
|
+
{"version":3,"file":"runClientRequest.js","sourceRoot":"","sources":["../lib/runClientRequest.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { isDefined } from "prostgles-types";
|
|
2
|
+
import type { DboBuilder } from "../DboBuilder";
|
|
2
3
|
|
|
3
|
-
export const getAllViewRelatedTables = async (
|
|
4
|
+
export const getAllViewRelatedTables = async (dboBuilder: DboBuilder, viewName: string) => {
|
|
5
|
+
const db = dboBuilder.db;
|
|
4
6
|
const tables = await db.any<{
|
|
5
7
|
table_name: string;
|
|
6
8
|
table_schema: string;
|
|
@@ -18,5 +20,10 @@ export const getAllViewRelatedTables = async (db: DB, viewName: string) => {
|
|
|
18
20
|
`,
|
|
19
21
|
{ viewName },
|
|
20
22
|
);
|
|
21
|
-
return tables
|
|
23
|
+
return tables
|
|
24
|
+
.map((t) => {
|
|
25
|
+
const tableInfo = dboBuilder.tablesOrViews?.find((tov) => tov.oid === t.table_oid);
|
|
26
|
+
return tableInfo;
|
|
27
|
+
})
|
|
28
|
+
.filter(isDefined);
|
|
22
29
|
};
|
|
@@ -41,13 +41,13 @@ export const getViewRelatedTableJoinCondition = async ({
|
|
|
41
41
|
};
|
|
42
42
|
});
|
|
43
43
|
const primaryKeyColumns = tableColumns.filter((c) => c.is_pkey);
|
|
44
|
-
const
|
|
44
|
+
const comparableColumns = tableColumns.filter(
|
|
45
45
|
(c) => c.viewColumnName && !["json", "xml"].includes(c.udt_name),
|
|
46
46
|
);
|
|
47
47
|
const allPkeyColumnsInView =
|
|
48
48
|
primaryKeyColumns.length && primaryKeyColumns.every((pk) => isDefined(pk.viewColumnName));
|
|
49
49
|
|
|
50
|
-
const joinColumns = allPkeyColumnsInView ? primaryKeyColumns :
|
|
50
|
+
const joinColumns = allPkeyColumnsInView ? primaryKeyColumns : comparableColumns;
|
|
51
51
|
|
|
52
52
|
let condition = "TRUE";
|
|
53
53
|
|
|
@@ -73,14 +73,14 @@ export const getViewRelatedTables = async (
|
|
|
73
73
|
};
|
|
74
74
|
|
|
75
75
|
/** Get list of remaining used inner tables (tables whose columns do not appear in fields list but are still used by the view) */
|
|
76
|
-
const allUsedTables = await getAllViewRelatedTables(dboBuilder
|
|
76
|
+
const allUsedTables = await getAllViewRelatedTables(dboBuilder, viewName);
|
|
77
77
|
|
|
78
78
|
/** Remaining tables will have listeners on all records (condition = "TRUE") */
|
|
79
79
|
allUsedTables.forEach((rt) => {
|
|
80
|
-
if (!joinedRelatedTables.find((jt) => jt.tableOID
|
|
80
|
+
if (!joinedRelatedTables.find((jt) => jt.tableOID == rt.oid)) {
|
|
81
81
|
viewOptions.relatedTables.push({
|
|
82
|
-
tableName: rt.
|
|
83
|
-
tableNameEscaped:
|
|
82
|
+
tableName: rt.name,
|
|
83
|
+
tableNameEscaped: rt.name,
|
|
84
84
|
condition: "TRUE",
|
|
85
85
|
tracked_columns: undefined,
|
|
86
86
|
});
|
package/lib/runClientRequest.ts
CHANGED
|
@@ -12,11 +12,7 @@ import type { TableHandler as TableHandlerServer } from "./DboBuilder/TableHandl
|
|
|
12
12
|
import { parseFieldFilter } from "./DboBuilder/ViewHandler/parseFieldFilter";
|
|
13
13
|
import { canRunSQL } from "./DboBuilder/runSql/runSQL";
|
|
14
14
|
import type { Prostgles } from "./Prostgles";
|
|
15
|
-
import type {
|
|
16
|
-
Awaitable,
|
|
17
|
-
ParsedTableRule,
|
|
18
|
-
PublishParams,
|
|
19
|
-
} from "./PublishParser/publishTypesAndUtils";
|
|
15
|
+
import type { ParsedTableRule } from "./PublishParser/publishTypesAndUtils";
|
|
20
16
|
import { type PermissionScope } from "./PublishParser/publishTypesAndUtils";
|
|
21
17
|
|
|
22
18
|
const TABLE_METHODS = {
|
|
@@ -68,7 +64,7 @@ export const runClientRequest = async function (
|
|
|
68
64
|
) {
|
|
69
65
|
/* Channel name will only include client-sent params so we ignore table_rules enforced params */
|
|
70
66
|
if (!this.publishParser || !this.dbo) {
|
|
71
|
-
throw "socket/httpReq or
|
|
67
|
+
throw "socket/httpReq or authHandler missing";
|
|
72
68
|
}
|
|
73
69
|
|
|
74
70
|
const validation = getJSONBObjectSchemaValidationError(
|
|
@@ -145,9 +141,10 @@ export const runClientRequest = async function (
|
|
|
145
141
|
/**
|
|
146
142
|
* satisfies check is used to ensure rules arguments are correctly passed to each method
|
|
147
143
|
*/
|
|
148
|
-
|
|
144
|
+
tableHandler[command].bind(tableHandler) satisfies
|
|
149
145
|
| undefined
|
|
150
146
|
| TableMethodFunctionWithRulesAndLocalParams;
|
|
147
|
+
|
|
151
148
|
return (tableHandler[command] as TableMethodFunctionWithRulesAndLocalParams)(
|
|
152
149
|
param1,
|
|
153
150
|
param2,
|
|
@@ -166,11 +163,7 @@ export const clientCanRunSqlRequest = async function (
|
|
|
166
163
|
}
|
|
167
164
|
const canRunSQL = async () => {
|
|
168
165
|
const publishParams = await this.publishParser?.getPublishParams(clientReq, undefined);
|
|
169
|
-
const allowedToRunSQL =
|
|
170
|
-
publishParams &&
|
|
171
|
-
(await (
|
|
172
|
-
this.opts.publishRawSQL
|
|
173
|
-
)?.(publishParams));
|
|
166
|
+
const allowedToRunSQL = publishParams && (await this.opts.publishRawSQL?.(publishParams));
|
|
174
167
|
return allowedToRunSQL === true || allowedToRunSQL === "*";
|
|
175
168
|
};
|
|
176
169
|
|