prostgles-server 2.0.146 → 2.0.147
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/AuthHandler.d.ts +15 -13
- package/dist/AuthHandler.d.ts.map +1 -1
- package/dist/AuthHandler.js +41 -43
- package/dist/AuthHandler.js.map +1 -1
- package/dist/DBEventsManager.d.ts +6 -5
- package/dist/DBEventsManager.d.ts.map +1 -1
- package/dist/DBEventsManager.js +8 -2
- package/dist/DBEventsManager.js.map +1 -1
- package/dist/DboBuilder.d.ts +62 -50
- package/dist/DboBuilder.d.ts.map +1 -1
- package/dist/DboBuilder.js +193 -167
- package/dist/DboBuilder.js.map +1 -1
- package/dist/FileManager.d.ts +5 -5
- package/dist/FileManager.d.ts.map +1 -1
- package/dist/FileManager.js +48 -21
- package/dist/FileManager.js.map +1 -1
- package/dist/Filtering.d.ts.map +1 -1
- package/dist/Filtering.js +11 -9
- package/dist/Filtering.js.map +1 -1
- package/dist/PostgresNotifListenManager.d.ts +3 -3
- package/dist/PostgresNotifListenManager.d.ts.map +1 -1
- package/dist/PostgresNotifListenManager.js +7 -5
- package/dist/PostgresNotifListenManager.js.map +1 -1
- package/dist/Prostgles.d.ts +6 -9
- package/dist/Prostgles.d.ts.map +1 -1
- package/dist/Prostgles.js +122 -83
- package/dist/Prostgles.js.map +1 -1
- package/dist/PubSubManager.d.ts +9 -9
- package/dist/PubSubManager.d.ts.map +1 -1
- package/dist/PubSubManager.js +10 -9
- package/dist/PubSubManager.js.map +1 -1
- package/dist/QueryBuilder.d.ts +7 -6
- package/dist/QueryBuilder.d.ts.map +1 -1
- package/dist/QueryBuilder.js +53 -23
- package/dist/QueryBuilder.js.map +1 -1
- package/dist/SyncReplication.d.ts +1 -1
- package/dist/SyncReplication.d.ts.map +1 -1
- package/dist/SyncReplication.js +31 -29
- package/dist/SyncReplication.js.map +1 -1
- package/dist/TableConfig.d.ts +0 -1
- package/dist/TableConfig.d.ts.map +1 -1
- package/dist/TableConfig.js +25 -17
- package/dist/TableConfig.js.map +1 -1
- package/dist/shortestPath.d.ts.map +1 -1
- package/dist/shortestPath.js.map +1 -1
- package/dist/utils.d.ts +2 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +2 -1
- package/dist/utils.js.map +1 -1
- package/lib/AuthHandler.ts +50 -40
- package/lib/DBEventsManager.ts +14 -7
- package/lib/DboBuilder.ts +231 -195
- package/lib/FileManager.ts +30 -21
- package/lib/Filtering.ts +19 -16
- package/lib/PostgresNotifListenManager.ts +11 -10
- package/lib/Prostgles.ts +89 -73
- package/lib/PubSubManager.ts +13 -11
- package/lib/QueryBuilder.ts +53 -29
- package/lib/SyncReplication.ts +10 -10
- package/lib/TableConfig.ts +23 -15
- package/lib/shortestPath.ts +6 -4
- package/lib/utils.ts +3 -2
- package/package.json +3 -2
- package/tests/client/PID.txt +1 -1
- package/tests/client/index.js +10 -7
- package/tests/client/index.ts +12 -8
- package/tests/client/package-lock.json +14 -14
- package/tests/client/package.json +2 -2
- package/tests/client/tsconfig.json +2 -2
- package/tests/client_only_queries.js +127 -104
- package/tests/client_only_queries.ts +43 -17
- package/tests/isomorphic_queries.js +22 -6
- package/tests/isomorphic_queries.ts +18 -6
- package/tests/server/package-lock.json +19 -17
- package/tests/server/package.json +2 -2
- package/tests/server/tsconfig.json +2 -2
- package/tsconfig.json +3 -2
package/dist/PubSubManager.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { PostgresNotifListenManager } from "./PostgresNotifListenManager";
|
|
3
|
-
import { TableOrViewInfo, TableInfo, DbHandler, DboBuilder } from "./DboBuilder";
|
|
3
|
+
import { TableOrViewInfo, TableInfo, DbHandler, DboBuilder, PRGLIOSocket } from "./DboBuilder";
|
|
4
4
|
import { TableRule, DB } from "./Prostgles";
|
|
5
5
|
import { SelectParamsBasic as SelectParams, FieldFilter, WAL, AnyObject } from "prostgles-types";
|
|
6
6
|
import { ClientExpressData } from "./SyncReplication";
|
|
@@ -33,7 +33,7 @@ declare type AddSyncParams = {
|
|
|
33
33
|
table_info: TableInfo;
|
|
34
34
|
table_rules: TableRule;
|
|
35
35
|
synced_field: string;
|
|
36
|
-
allow_delete
|
|
36
|
+
allow_delete?: boolean;
|
|
37
37
|
id_fields: string[];
|
|
38
38
|
filter: object;
|
|
39
39
|
params: {
|
|
@@ -43,12 +43,12 @@ declare type AddSyncParams = {
|
|
|
43
43
|
throttle?: number;
|
|
44
44
|
};
|
|
45
45
|
declare type SubscriptionParams = {
|
|
46
|
-
socket_id
|
|
46
|
+
socket_id?: string;
|
|
47
47
|
channel_name: string;
|
|
48
48
|
table_name: string;
|
|
49
|
-
socket:
|
|
49
|
+
socket: PRGLIOSocket | undefined;
|
|
50
50
|
table_info: TableOrViewInfo;
|
|
51
|
-
table_rules
|
|
51
|
+
table_rules?: TableRule;
|
|
52
52
|
filter: object;
|
|
53
53
|
params: SelectParams;
|
|
54
54
|
func?: (data: any) => any;
|
|
@@ -99,12 +99,12 @@ export declare class PubSubManager {
|
|
|
99
99
|
};
|
|
100
100
|
NOTIF_CHANNEL: {
|
|
101
101
|
preffix: string;
|
|
102
|
-
getFull: (appID?: string) => string;
|
|
102
|
+
getFull: (appID?: string | undefined) => string;
|
|
103
103
|
};
|
|
104
104
|
private appID?;
|
|
105
105
|
appCheckFrequencyMS: number;
|
|
106
106
|
appCheck?: ReturnType<typeof setInterval>;
|
|
107
|
-
static create: (options: PubSubManagerOptions) => Promise<PubSubManager>;
|
|
107
|
+
static create: (options: PubSubManagerOptions) => Promise<PubSubManager | undefined>;
|
|
108
108
|
destroyed: boolean;
|
|
109
109
|
destroy: () => void;
|
|
110
110
|
canContinue: () => boolean;
|
|
@@ -134,7 +134,7 @@ export declare class PubSubManager {
|
|
|
134
134
|
*/
|
|
135
135
|
addSync(syncParams: AddSyncParams): Promise<string>;
|
|
136
136
|
parseCondition: (condition: string) => string;
|
|
137
|
-
addSub(subscriptionParams: AddSubscriptionParams): Promise<string>;
|
|
137
|
+
addSub(subscriptionParams: Omit<AddSubscriptionParams, "channel_name">): Promise<string>;
|
|
138
138
|
removeLocalSub(table_name: string, condition: string, func: (items: object[]) => any): void;
|
|
139
139
|
getActiveListeners: () => {
|
|
140
140
|
table_name: string;
|
|
@@ -148,7 +148,7 @@ export declare class PubSubManager {
|
|
|
148
148
|
addTrigger(params: {
|
|
149
149
|
table_name: string;
|
|
150
150
|
condition: string;
|
|
151
|
-
}): Promise<
|
|
151
|
+
}): Promise<true | undefined>;
|
|
152
152
|
}
|
|
153
153
|
export declare function filterObj(obj: AnyObject, keys?: string[], exclude?: string[]): AnyObject;
|
|
154
154
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PubSubManager.d.ts","sourceRoot":"","sources":["../lib/PubSubManager.ts"],"names":[],"mappings":";AAKA,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAE1E,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,EAAgB,UAAU,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"PubSubManager.d.ts","sourceRoot":"","sources":["../lib/PubSubManager.ts"],"names":[],"mappings":"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"}
|
package/dist/PubSubManager.js
CHANGED
|
@@ -980,16 +980,18 @@ class PubSubManager {
|
|
|
980
980
|
const { table_name, filter, params, table_rules, socket_id, channel_name, func } = sub; //, subOne = false
|
|
981
981
|
sub.last_throttled = Date.now();
|
|
982
982
|
if (err) {
|
|
983
|
-
|
|
983
|
+
if (socket_id) {
|
|
984
|
+
this.sockets[socket_id].emit(channel_name, { err });
|
|
985
|
+
}
|
|
984
986
|
return true;
|
|
985
987
|
}
|
|
986
988
|
return new Promise(async (resolve, reject) => {
|
|
987
|
-
var _a, _b, _c, _d, _e;
|
|
988
989
|
/* TODO: Retire subOne -> it's redundant */
|
|
989
990
|
// this.dbo[table_name][subOne? "findOne" : "find"](filter, params, null, table_rules)
|
|
990
|
-
if (!
|
|
991
|
+
if (!this.dbo?.[table_name]?.find)
|
|
991
992
|
throw "1107 this.dbo[table_name].find";
|
|
992
|
-
|
|
993
|
+
this.dbo?.[table_name]?.find?.(filter, params, undefined, table_rules)
|
|
994
|
+
.then(data => {
|
|
993
995
|
if (socket_id && this.sockets[socket_id]) {
|
|
994
996
|
exports.log("Pushed " + data.length + " records to sub");
|
|
995
997
|
this.sockets[socket_id].emit(channel_name, { data }, () => {
|
|
@@ -1039,7 +1041,6 @@ class PubSubManager {
|
|
|
1039
1041
|
throw "synced_field missing from table_rules";
|
|
1040
1042
|
this.upsertSocket(socket, channel_name);
|
|
1041
1043
|
const upsertSync = () => {
|
|
1042
|
-
var _a;
|
|
1043
1044
|
let newSync = {
|
|
1044
1045
|
channel_name,
|
|
1045
1046
|
table_name,
|
|
@@ -1049,7 +1050,7 @@ class PubSubManager {
|
|
|
1049
1050
|
id_fields,
|
|
1050
1051
|
allow_delete,
|
|
1051
1052
|
table_rules,
|
|
1052
|
-
throttle: Math.max(throttle || 0,
|
|
1053
|
+
throttle: Math.max(throttle || 0, table_rules?.sync?.throttle || 0),
|
|
1053
1054
|
batch_size: utils_1.get(table_rules, "sync.batch_size") || exports.DEFAULT_SYNC_BATCH_SIZE,
|
|
1054
1055
|
last_throttled: 0,
|
|
1055
1056
|
socket_id: socket.id,
|
|
@@ -1123,7 +1124,7 @@ class PubSubManager {
|
|
|
1123
1124
|
/* Must return a channel for socket */
|
|
1124
1125
|
/* The distinct list of channel names must have a corresponding trigger in the database */
|
|
1125
1126
|
async addSub(subscriptionParams) {
|
|
1126
|
-
const { socket
|
|
1127
|
+
const { socket, func = null, table_info = null, table_rules, filter = {}, params = {}, condition = "", throttle = 0 //subOne = false,
|
|
1127
1128
|
} = subscriptionParams || {};
|
|
1128
1129
|
let validated_throttle = subscriptionParams.throttle || 10;
|
|
1129
1130
|
if ((!socket && !func) || !table_info)
|
|
@@ -1147,7 +1148,7 @@ class PubSubManager {
|
|
|
1147
1148
|
table_rules,
|
|
1148
1149
|
channel_name,
|
|
1149
1150
|
func: func ? func : undefined,
|
|
1150
|
-
socket_id: socket
|
|
1151
|
+
socket_id: socket?.id,
|
|
1151
1152
|
throttle: validated_throttle,
|
|
1152
1153
|
is_throttling: null,
|
|
1153
1154
|
last_throttled: 0,
|
|
@@ -1285,7 +1286,7 @@ class PubSubManager {
|
|
|
1285
1286
|
}
|
|
1286
1287
|
async addTrigger(params) {
|
|
1287
1288
|
try {
|
|
1288
|
-
let { table_name, condition } =
|
|
1289
|
+
let { table_name, condition } = { ...params };
|
|
1289
1290
|
if (!table_name)
|
|
1290
1291
|
throw "MISSING table_name";
|
|
1291
1292
|
if (!this.appID)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PubSubManager.js","sourceRoot":"","sources":["../lib/PubSubManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PubSubManager.js","sourceRoot":"","sources":["../lib/PubSubManager.ts"],"names":[],"mappings":"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"}
|
package/dist/QueryBuilder.d.ts
CHANGED
|
@@ -27,7 +27,7 @@ export declare type NewQuery = {
|
|
|
27
27
|
tableAlias?: string;
|
|
28
28
|
$path?: string[];
|
|
29
29
|
};
|
|
30
|
-
export declare const asNameAlias: (field: string, tableAlias?: string) => string;
|
|
30
|
+
export declare const asNameAlias: (field: string, tableAlias?: string | undefined) => string;
|
|
31
31
|
export declare const parseFunctionObject: (funcData: any) => {
|
|
32
32
|
funcName: string;
|
|
33
33
|
args: any[];
|
|
@@ -86,6 +86,7 @@ export declare type FunctionSpec = {
|
|
|
86
86
|
* allowedFields passed for multicol functions (e.g.: $rowhash)
|
|
87
87
|
*/
|
|
88
88
|
getQuery: (params: GetQueryArgs) => string;
|
|
89
|
+
returnType?: PG_COLUMN_UDT_DATA_TYPE;
|
|
89
90
|
};
|
|
90
91
|
/**
|
|
91
92
|
* Each function expects a column at the very least
|
|
@@ -113,11 +114,11 @@ export declare class SelectItemBuilder {
|
|
|
113
114
|
private addItem;
|
|
114
115
|
private addFunction;
|
|
115
116
|
addColumn: (fieldName: string, selected: boolean) => void;
|
|
116
|
-
parseUserSelect: (userSelect: FieldFilter, joinParse?: (key: string, val: any, throwErr: (msg: string) => any) => any) => Promise<
|
|
117
|
+
parseUserSelect: (userSelect: FieldFilter, joinParse?: ((key: string, val: any, throwErr: (msg: string) => any) => any) | undefined) => Promise<never[] | undefined>;
|
|
117
118
|
}
|
|
118
|
-
export declare function getNewQuery(_this: TableHandler, filter: Filter, selectParams: SelectParams & {
|
|
119
|
-
alias?: string;
|
|
120
|
-
}, param3_unused:
|
|
121
|
-
export declare function makeQuery(_this: TableHandler, q: NewQuery, depth
|
|
119
|
+
export declare function getNewQuery(_this: TableHandler, filter: Filter, selectParams: (SelectParams & {
|
|
120
|
+
alias?: string | undefined;
|
|
121
|
+
}) | undefined, param3_unused: null | undefined, tableRules: TableRule | undefined, localParams: LocalParams | undefined, columns: ColumnInfo[]): Promise<NewQuery>;
|
|
122
|
+
export declare function makeQuery(_this: TableHandler, q: NewQuery, depth?: number, joinFields?: string[], selectParams?: SelectParams): string;
|
|
122
123
|
export {};
|
|
123
124
|
//# sourceMappingURL=QueryBuilder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QueryBuilder.d.ts","sourceRoot":"","sources":["../lib/QueryBuilder.ts"],"names":[],"mappings":"AAMA,OAAO,EAAO,MAAM,EAAE,WAAW,EAAiB,YAAY,EAAiC,MAAM,cAAc,CAAC;AACpH,OAAO,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"QueryBuilder.d.ts","sourceRoot":"","sources":["../lib/QueryBuilder.ts"],"names":[],"mappings":"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"}
|
package/dist/QueryBuilder.js
CHANGED
|
@@ -6,7 +6,6 @@
|
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.makeQuery = exports.getNewQuery = exports.SelectItemBuilder = exports.COMPUTED_FIELDS = exports.FUNCTIONS = exports.parseFunction = exports.parseFunctionObject = exports.asNameAlias = void 0;
|
|
8
8
|
const DboBuilder_1 = require("./DboBuilder");
|
|
9
|
-
const Prostgles_1 = require("./Prostgles");
|
|
10
9
|
const prostgles_types_1 = require("prostgles-types");
|
|
11
10
|
const utils_1 = require("./utils");
|
|
12
11
|
exports.asNameAlias = (field, tableAlias) => {
|
|
@@ -30,7 +29,6 @@ exports.parseFunctionObject = (funcData) => {
|
|
|
30
29
|
return { funcName, args };
|
|
31
30
|
};
|
|
32
31
|
exports.parseFunction = (funcData) => {
|
|
33
|
-
var _a;
|
|
34
32
|
const { func, args, functions, allowedFields } = funcData;
|
|
35
33
|
/* Function is computed column. No checks needed */
|
|
36
34
|
if (typeof func !== "string") {
|
|
@@ -58,7 +56,7 @@ exports.parseFunction = (funcData) => {
|
|
|
58
56
|
throw makeErr(`getFields() => field name ${JSON.stringify(fieldKey)} is invalid or disallowed`);
|
|
59
57
|
}
|
|
60
58
|
});
|
|
61
|
-
if ((
|
|
59
|
+
if ((funcDef.minCols ?? 0) > fields.length) {
|
|
62
60
|
throw makeErr(`Less columns provided than necessary (minCols=${funcDef.minCols})`);
|
|
63
61
|
}
|
|
64
62
|
}
|
|
@@ -154,6 +152,8 @@ let PostGIS_Funcs = [
|
|
|
154
152
|
if (!DboBuilder_1.isPlainObject(arg2))
|
|
155
153
|
mErr();
|
|
156
154
|
const col = allColumns.find(c => c.name === args[0]);
|
|
155
|
+
if (!col)
|
|
156
|
+
throw new Error("Col not found: " + args[0]);
|
|
157
157
|
const { lat, lng, srid = 4326, geojson, text, use_spheroid, distance, spheroid = 'SPHEROID["WGS 84",6378137,298.257223563]', debug } = arg2;
|
|
158
158
|
let geomQ = "", extraParams = "";
|
|
159
159
|
if (typeof text === "string") {
|
|
@@ -530,7 +530,7 @@ exports.FUNCTIONS = [
|
|
|
530
530
|
}
|
|
531
531
|
})),
|
|
532
532
|
/* Basic 1 arg col funcs */
|
|
533
|
-
...["upper", "lower", "length", "reverse", "trim", "initcap", "round", "ceil", "floor", "sign", "
|
|
533
|
+
...["upper", "lower", "length", "reverse", "trim", "initcap", "round", "ceil", "floor", "sign", "md5"].map(funcName => ({
|
|
534
534
|
name: "$" + funcName,
|
|
535
535
|
type: "function",
|
|
536
536
|
numArgs: 1,
|
|
@@ -540,6 +540,30 @@ exports.FUNCTIONS = [
|
|
|
540
540
|
return funcName + "(" + exports.asNameAlias(args[0], tableAlias) + ")";
|
|
541
541
|
}
|
|
542
542
|
})),
|
|
543
|
+
/* Interval funcs */
|
|
544
|
+
...["age", "difference"].map(funcName => ({
|
|
545
|
+
name: "$" + funcName,
|
|
546
|
+
type: "function",
|
|
547
|
+
numArgs: 1,
|
|
548
|
+
singleColArg: true,
|
|
549
|
+
getFields: (args) => args,
|
|
550
|
+
getQuery: ({ allowedFields, args, tableAlias }) => {
|
|
551
|
+
const validCols = args.filter(a => typeof a === "string").length;
|
|
552
|
+
if (funcName === "difference" && validCols !== 2)
|
|
553
|
+
throw new Error("Must have two column names");
|
|
554
|
+
if (![1, 2].includes(validCols))
|
|
555
|
+
throw new Error("Must have one or two column names");
|
|
556
|
+
const [leftField, rightField] = args;
|
|
557
|
+
const leftQ = exports.asNameAlias(leftField, tableAlias);
|
|
558
|
+
const rightQ = rightField ? ("," + exports.asNameAlias(rightField, tableAlias)) : "";
|
|
559
|
+
if (funcName === "age") {
|
|
560
|
+
return `${funcName}(${leftQ}, ${rightQ})`;
|
|
561
|
+
}
|
|
562
|
+
else {
|
|
563
|
+
return `${leftQ} - ${rightQ}`;
|
|
564
|
+
}
|
|
565
|
+
}
|
|
566
|
+
})),
|
|
543
567
|
/* pgcrypto funcs */
|
|
544
568
|
...["crypt"].map(funcName => ({
|
|
545
569
|
name: "$" + funcName,
|
|
@@ -574,7 +598,7 @@ exports.FUNCTIONS = [
|
|
|
574
598
|
numArgs: 1,
|
|
575
599
|
minCols: 0,
|
|
576
600
|
singleColArg: false,
|
|
577
|
-
getFields: (args
|
|
601
|
+
getFields: (args) => [],
|
|
578
602
|
getQuery: ({ allowedFields, args, tableAlias }) => {
|
|
579
603
|
let value = asValue(args[0]);
|
|
580
604
|
if (typeof value !== "string")
|
|
@@ -694,11 +718,10 @@ exports.FUNCTIONS = [
|
|
|
694
718
|
res = `CASE
|
|
695
719
|
${_cols
|
|
696
720
|
.map(c => {
|
|
697
|
-
var _a, _b;
|
|
698
721
|
const colNameEscaped = exports.asNameAlias(c.key, tableAlias);
|
|
699
722
|
let colSelect = `${colNameEscaped}::TEXT`;
|
|
700
|
-
const isTstamp =
|
|
701
|
-
if (isTstamp ||
|
|
723
|
+
const isTstamp = c.colInfo?.udt_name.startsWith("timestamp");
|
|
724
|
+
if (isTstamp || c.colInfo?.udt_name === "date") {
|
|
702
725
|
colSelect = `( CASE WHEN ${colNameEscaped} IS NULL THEN ''
|
|
703
726
|
ELSE concat_ws(' ',
|
|
704
727
|
${colNameEscaped}::TEXT,
|
|
@@ -850,7 +873,13 @@ class SelectItemBuilder {
|
|
|
850
873
|
if (selected) {
|
|
851
874
|
const compCol = exports.COMPUTED_FIELDS.find(cf => cf.name === fieldName);
|
|
852
875
|
if (compCol && !this.select.find(s => s.alias === fieldName)) {
|
|
853
|
-
const cf =
|
|
876
|
+
const cf = {
|
|
877
|
+
...compCol,
|
|
878
|
+
type: "computed",
|
|
879
|
+
numArgs: 0,
|
|
880
|
+
singleColArg: false,
|
|
881
|
+
getFields: (args) => []
|
|
882
|
+
};
|
|
854
883
|
this.addFunction(cf, [], compCol.name);
|
|
855
884
|
return;
|
|
856
885
|
}
|
|
@@ -859,8 +888,8 @@ class SelectItemBuilder {
|
|
|
859
888
|
let alias = selected ? fieldName : ("not_selected_" + fieldName);
|
|
860
889
|
this.addItem({
|
|
861
890
|
type: "column",
|
|
862
|
-
columnPGDataType: colDef
|
|
863
|
-
column_udt_type: colDef
|
|
891
|
+
columnPGDataType: colDef?.data_type,
|
|
892
|
+
column_udt_type: colDef?.udt_name,
|
|
864
893
|
alias,
|
|
865
894
|
getQuery: () => prostgles_types_1.asName(fieldName),
|
|
866
895
|
getFields: () => [fieldName],
|
|
@@ -974,8 +1003,8 @@ class SelectItemBuilder {
|
|
|
974
1003
|
}
|
|
975
1004
|
}
|
|
976
1005
|
exports.SelectItemBuilder = SelectItemBuilder;
|
|
977
|
-
async function getNewQuery(_this, filter, selectParams, param3_unused = null, tableRules, localParams, columns) {
|
|
978
|
-
if ((
|
|
1006
|
+
async function getNewQuery(_this, filter, selectParams = {}, param3_unused = null, tableRules, localParams, columns) {
|
|
1007
|
+
if ((localParams?.socket || localParams?.httpReq) && !utils_1.get(tableRules, "select.fields")) {
|
|
979
1008
|
throw `INTERNAL ERROR: publish.${_this.name}.select.fields rule missing`;
|
|
980
1009
|
}
|
|
981
1010
|
// const all_columns: SelectItem[] = _this.column_names.slice(0).map(fieldName => ({
|
|
@@ -995,7 +1024,6 @@ async function getNewQuery(_this, filter, selectParams, param3_unused = null, ta
|
|
|
995
1024
|
// let select: SelectItem[] = [],
|
|
996
1025
|
let joinQueries = [];
|
|
997
1026
|
// const all_colnames = _this.column_names.slice(0).concat(COMPUTED_FIELDS.map(c => c.name));
|
|
998
|
-
selectParams = selectParams || {};
|
|
999
1027
|
const { select: userSelect = "*" } = selectParams,
|
|
1000
1028
|
// allCols = _this.column_names.slice(0),
|
|
1001
1029
|
// allFieldsIncludingComputed = allCols.concat(COMPUTED_FIELDS.map(c => c.name)),
|
|
@@ -1040,6 +1068,8 @@ async function getNewQuery(_this, filter, selectParams, param3_unused = null, ta
|
|
|
1040
1068
|
j_table = key;
|
|
1041
1069
|
}
|
|
1042
1070
|
}
|
|
1071
|
+
if (!j_table)
|
|
1072
|
+
throw "j_table missing";
|
|
1043
1073
|
const _thisJoinedTable = _this.dboBuilder.dbo[j_table];
|
|
1044
1074
|
if (!_thisJoinedTable) {
|
|
1045
1075
|
throw `Joined table ${JSON.stringify(j_table)} is disallowed or inexistent \nOr you've forgot to put the function arguments into an array`;
|
|
@@ -1047,10 +1077,10 @@ async function getNewQuery(_this, filter, selectParams, param3_unused = null, ta
|
|
|
1047
1077
|
let isLocal = true;
|
|
1048
1078
|
if (localParams && (localParams.socket || localParams.httpReq)) {
|
|
1049
1079
|
isLocal = false;
|
|
1050
|
-
j_tableRules = await _this.dboBuilder.publishParser
|
|
1080
|
+
j_tableRules = await _this.dboBuilder.publishParser?.getValidatedRequestRuleWusr({ tableName: j_table, command: "find", localParams });
|
|
1051
1081
|
}
|
|
1052
1082
|
if (isLocal || j_tableRules) {
|
|
1053
|
-
const joinQuery = await getNewQuery(_thisJoinedTable, j_filter,
|
|
1083
|
+
const joinQuery = await getNewQuery(_thisJoinedTable, j_filter, { ...j_selectParams, alias: j_alias }, param3_unused, j_tableRules, localParams, columns);
|
|
1054
1084
|
joinQuery.isLeftJoin = j_isLeftJoin;
|
|
1055
1085
|
joinQuery.tableAlias = j_alias;
|
|
1056
1086
|
joinQuery.$path = j_path;
|
|
@@ -1087,7 +1117,7 @@ async function getNewQuery(_this, filter, selectParams, param3_unused = null, ta
|
|
|
1087
1117
|
where,
|
|
1088
1118
|
// having: cond.having,
|
|
1089
1119
|
limit: _this.prepareLimitQuery(selectParams.limit, p),
|
|
1090
|
-
orderBy: [_this.prepareSort(selectParams.orderBy, allowedFields, selectParams.alias,
|
|
1120
|
+
orderBy: [_this.prepareSort(selectParams.orderBy, allowedFields, selectParams.alias, undefined, select)],
|
|
1091
1121
|
offset: _this.prepareOffsetQuery(selectParams.offset)
|
|
1092
1122
|
};
|
|
1093
1123
|
// console.log(resQuery);
|
|
@@ -1096,7 +1126,7 @@ async function getNewQuery(_this, filter, selectParams, param3_unused = null, ta
|
|
|
1096
1126
|
}
|
|
1097
1127
|
exports.getNewQuery = getNewQuery;
|
|
1098
1128
|
/* No validation/authorisation at this point */
|
|
1099
|
-
function makeQuery(_this, q, depth = 0, joinFields = [], selectParams) {
|
|
1129
|
+
function makeQuery(_this, q, depth = 0, joinFields = [], selectParams = {}) {
|
|
1100
1130
|
const PREF = `prostgles`, joins = q.joins || [],
|
|
1101
1131
|
// aggs = q.aggs || [],
|
|
1102
1132
|
makePref = (q) => !q.tableAlias ? q.table : `${q.tableAlias || ""}_${q.table}`, makePrefANON = (joinAlias, table) => prostgles_types_1.asName(!joinAlias ? table : `${joinAlias || ""}_${table}`), makePrefAN = (q) => prostgles_types_1.asName(makePref(q));
|
|
@@ -1110,7 +1140,7 @@ function makeQuery(_this, q, depth = 0, joinFields = [], selectParams) {
|
|
|
1110
1140
|
const joinTables = (q1, q2) => {
|
|
1111
1141
|
const joinInfo = _this.getJoins(q1.table, q2.table, q2.$path, true);
|
|
1112
1142
|
const paths = joinInfo.paths;
|
|
1113
|
-
return
|
|
1143
|
+
return paths.flatMap(({ table, on }, i) => {
|
|
1114
1144
|
const getColName = (col, q) => {
|
|
1115
1145
|
if (table === q.table) {
|
|
1116
1146
|
const colFromSelect = q.select.find(s => s.getQuery() === prostgles_types_1.asName(col));
|
|
@@ -1151,7 +1181,7 @@ function makeQuery(_this, q, depth = 0, joinFields = [], selectParams) {
|
|
|
1151
1181
|
if (s.type === "aggregation")
|
|
1152
1182
|
return prostgles_types_1.asName(`agg_${s.alias}`) + " AS " + prostgles_types_1.asName(s.alias);
|
|
1153
1183
|
return prostgles_types_1.asName(s.alias);
|
|
1154
|
-
}).concat(q2.joins
|
|
1184
|
+
}).concat(q2.joins?.map(j => prostgles_types_1.asName(j.table)) ?? []).join(", ");
|
|
1155
1185
|
const _iiQ = makeQuery(_this, q2, depth + 1, on.map(([c1, c2]) => prostgles_types_1.asName(c2)), selectParams);
|
|
1156
1186
|
// const iiQ = flat(_iiQ.split("\n")); // prettify for debugging
|
|
1157
1187
|
// console.log(_iiQ)
|
|
@@ -1176,7 +1206,7 @@ function makeQuery(_this, q, depth = 0, joinFields = [], selectParams) {
|
|
|
1176
1206
|
`ON ${on.map(([c1, c2]) => `${prevAlias}.${prostgles_types_1.asName(getPrevColName(c1))} = ${thisAlias}.${prostgles_types_1.asName(getThisColName(c2))} `).join(" AND ")}`
|
|
1177
1207
|
];
|
|
1178
1208
|
return jres;
|
|
1179
|
-
})
|
|
1209
|
+
});
|
|
1180
1210
|
};
|
|
1181
1211
|
const getGroupBy = (rootSelectItems, groupByItems) => {
|
|
1182
1212
|
if (groupByItems.length) {
|
|
@@ -1198,7 +1228,7 @@ function makeQuery(_this, q, depth = 0, joinFields = [], selectParams) {
|
|
|
1198
1228
|
let groupBy = "";
|
|
1199
1229
|
const rootSelectItems = q.select.filter(s => joinFields.includes(s.getQuery()) || s.selected);
|
|
1200
1230
|
/* If aggs exist need to set groupBy add joinFields into select */
|
|
1201
|
-
if (aggs.length ||
|
|
1231
|
+
if (aggs.length || selectParams?.groupBy) {
|
|
1202
1232
|
// const missingFields = joinFields.filter(jf => !q.select.find(s => s.type === "column" && s.alias === jf));
|
|
1203
1233
|
// if(depth && missingFields.length){
|
|
1204
1234
|
// // select = Array.from(new Set(missingFields.concat(select)));
|
|
@@ -1292,7 +1322,7 @@ function makeQuery(_this, q, depth = 0, joinFields = [], selectParams) {
|
|
|
1292
1322
|
`${q.where} `
|
|
1293
1323
|
]),
|
|
1294
1324
|
`) ${makePrefAN(q)} `,
|
|
1295
|
-
...
|
|
1325
|
+
...joins.flatMap((j, i) => joinTables(q, j))
|
|
1296
1326
|
]),
|
|
1297
1327
|
") t1"
|
|
1298
1328
|
]),
|