prostgles-server 4.2.445 → 4.2.447
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/QueryBuilder/getJoinQuery.d.ts.map +1 -1
- package/dist/DboBuilder/QueryBuilder/getJoinQuery.js +4 -3
- package/dist/DboBuilder/QueryBuilder/getJoinQuery.js.map +1 -1
- package/dist/DboBuilder/QueryBuilder/getNewQuery.d.ts +1 -1
- package/dist/DboBuilder/QueryBuilder/getNewQuery.d.ts.map +1 -1
- package/dist/DboBuilder/QueryBuilder/getNewQuery.js +8 -8
- package/dist/DboBuilder/QueryBuilder/getNewQuery.js.map +1 -1
- package/dist/DboBuilder/getCondition.d.ts.map +1 -1
- package/dist/DboBuilder/getCondition.js +1 -1
- package/dist/DboBuilder/getCondition.js.map +1 -1
- package/lib/DboBuilder/QueryBuilder/getJoinQuery.ts +19 -12
- package/lib/DboBuilder/QueryBuilder/getNewQuery.ts +9 -9
- package/lib/DboBuilder/getCondition.ts +6 -2
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getJoinQuery.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/QueryBuilder/getJoinQuery.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAE1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAK9D,KAAK,IAAI,GAAG;IACV,EAAE,EAAE,QAAQ,CAAC;IACb,EAAE,EAAE,YAAY,CAAC;IACjB,mBAAmB,EAAE,OAAO,CAAC;CAC9B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,GAAI,SAAS,MAAM;;;CAMzC,CAAC;AAEF,eAAO,MAAM,mBAAmB,oCAAoC,CAAC;AACrE;;GAEG;AACH,eAAO,MAAM,uBAAuB,0BAA0B,CAAC;AAgB/D,KAAK,kBAAkB,GAAG;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,wBAAwB,EAAE,MAAM,EAAE,CAAC;IACnC,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,KAAK,CAAC;IACZ,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,YAAY,GAAI,aAAa,WAAW,EAAE,YAAY,IAAI,KAAG,
|
|
1
|
+
{"version":3,"file":"getJoinQuery.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/QueryBuilder/getJoinQuery.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAE1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAK9D,KAAK,IAAI,GAAG;IACV,EAAE,EAAE,QAAQ,CAAC;IACb,EAAE,EAAE,YAAY,CAAC;IACjB,mBAAmB,EAAE,OAAO,CAAC;CAC9B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,GAAI,SAAS,MAAM;;;CAMzC,CAAC;AAEF,eAAO,MAAM,mBAAmB,oCAAoC,CAAC;AACrE;;GAEG;AACH,eAAO,MAAM,uBAAuB,0BAA0B,CAAC;AAgB/D,KAAK,kBAAkB,GAAG;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,wBAAwB,EAAE,MAAM,EAAE,CAAC;IACnC,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,KAAK,CAAC;IACZ,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,YAAY,GAAI,aAAa,WAAW,EAAE,YAAY,IAAI,KAAG,kBAkIzE,CAAC;AAwFF,MAAM,MAAM,gBAAgB,GAAG,mBAAmB,GAAG;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC"}
|
|
@@ -58,10 +58,12 @@ const getJoinQuery = (viewHandler, { q1, q2 }) => {
|
|
|
58
58
|
const targetTableAlias = (0, prostgles_types_1.asName)(targetTableAliasRaw);
|
|
59
59
|
const firstJoinTablePath = paths[0];
|
|
60
60
|
const firstJoinTableJoinFields = firstJoinTablePath.on.flatMap((condObj) => Object.entries(condObj).map(([_source, target]) => target));
|
|
61
|
+
const jsonAggSort = (0, DboBuilder_1.prepareOrderByQuery)(q2.orderByItems, targetTableAliasRaw).join(", ");
|
|
61
62
|
const { rootSelectItems, jsonAggLimit } = getNestedSelectFields({
|
|
62
63
|
q: q2,
|
|
63
64
|
firstJoinTableAlias: getJoinTable(firstJoinTablePath.table, 0, paths.length === 1 ? targetTableAliasRaw : undefined).rawAlias,
|
|
64
65
|
_joinFields: firstJoinTableJoinFields,
|
|
66
|
+
jsonAggSort,
|
|
65
67
|
});
|
|
66
68
|
const joinType = q2.isLeftJoin ? "LEFT" : "INNER";
|
|
67
69
|
const joinCondition = (0, getTableJoinQuery_1.getJoinOnCondition)({
|
|
@@ -75,7 +77,6 @@ const getJoinQuery = (viewHandler, { q1, q2 }) => {
|
|
|
75
77
|
.filter((s) => s.selected)
|
|
76
78
|
.map((s) => (0, asNameAlias_1.asNameAlias)(s.alias, targetTableAliasRaw));
|
|
77
79
|
const rootNestedSort = q1.orderByItems.filter((d) => d.nested?.joinAlias === q2.joinAlias);
|
|
78
|
-
const jsonAggSort = (0, DboBuilder_1.prepareOrderByQuery)(q2.orderByItems, targetTableAliasRaw).join(", ");
|
|
79
80
|
const jsonAgg = `json_agg((SELECT x FROM (SELECT ${selectedFields.join(", ")}) as x )${jsonAggSort}) ${jsonAggLimit} as ${exports.JSON_AGG_FIELD_NAME}`;
|
|
80
81
|
const { innerQuery } = getInnerJoinQuery({
|
|
81
82
|
paths,
|
|
@@ -202,7 +203,7 @@ const getInnerJoinQuery = ({ paths, q1, q2, targetTableAliasRaw, rootSelectItems
|
|
|
202
203
|
});
|
|
203
204
|
return { innerQuery };
|
|
204
205
|
};
|
|
205
|
-
const getNestedSelectFields = ({ q, firstJoinTableAlias, _joinFields }) => {
|
|
206
|
+
const getNestedSelectFields = ({ q, firstJoinTableAlias, _joinFields, jsonAggSort, }) => {
|
|
206
207
|
const targetTableAlias = q.tableAlias || q.table;
|
|
207
208
|
const requiredJoinFields = Array.from(new Set(_joinFields));
|
|
208
209
|
const selectedFields = q.select.filter((s) => s.selected);
|
|
@@ -225,7 +226,7 @@ const getNestedSelectFields = ({ q, firstJoinTableAlias, _joinFields }) => {
|
|
|
225
226
|
})));
|
|
226
227
|
const getQuery = (tableAlias) => {
|
|
227
228
|
const partitionBy = `PARTITION BY ${requiredJoinFields.map((f) => (0, asNameAlias_1.asNameAlias)(f, tableAlias)).join(", ")}`;
|
|
228
|
-
return `ROW_NUMBER() OVER(${partitionBy}) AS ${exports.NESTED_ROWID_FIELD_NAME}`;
|
|
229
|
+
return `ROW_NUMBER() OVER(${partitionBy} ${jsonAggSort}) AS ${exports.NESTED_ROWID_FIELD_NAME}`;
|
|
229
230
|
};
|
|
230
231
|
if (q.limit) {
|
|
231
232
|
rootSelectItems.push({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getJoinQuery.js","sourceRoot":"","sources":["../../../lib/DboBuilder/QueryBuilder/getJoinQuery.ts"],"names":[],"mappings":";;;AAAA,qDAAoD;AAEpD,gEAA6D;AAG7D,qDAAwF;AAExF,wEAAsE;AACtE,8CAAoD;AACpD,yDAAsD;AAQtD;;GAEG;AACI,MAAM,UAAU,GAAG,CAAC,OAAe,EAAE,EAAE;IAC5C,MAAM,KAAK,GAAG,IAAA,wBAAM,EAAC,iBAAiB,GAAG,OAAO,CAAC,CAAC;IAClD,OAAO;QACL,KAAK;QACL,UAAU,EAAE,GAAG,IAAA,wBAAM,EAAC,OAAO,CAAC,OAAO,KAAK,EAAE;KAC7C,CAAC;AACJ,CAAC,CAAC;AANW,QAAA,UAAU,cAMrB;AAEW,QAAA,mBAAmB,GAAG,iCAAiC,CAAC;AACrE;;GAEG;AACU,QAAA,uBAAuB,GAAG,uBAAuB,CAAC;AAE/D,MAAM,YAAY,GAAG,CACnB,SAAiB,EACjB,SAAiB,EACjB,gBAAoC,EACpC,EAAE;IACF,MAAM,QAAQ,GAAG,gBAAgB,IAAI,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;IACnE,OAAO;QACL,kEAAkE;QAClE,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,IAAA,wBAAM,EAAC,QAAQ,CAAC;QACvB,QAAQ;KACT,CAAC;AACJ,CAAC,CAAC;AAWF;;;;;;;;;;GAUG;AACI,MAAM,YAAY,GAAG,CAAC,WAAwB,EAAE,EAAE,EAAE,EAAE,EAAE,EAAQ,EAAsB,EAAE;IAC7F,MAAM,KAAK,GAAG,IAAA,6BAAa,EAAC;QAC1B,SAAS,EAAE,EAAE,CAAC,KAAK;QACnB,OAAO,EAAE,EAAE,CAAC,QAAQ;QACpB,WAAW,EAAE,WAAW;QACxB,gBAAgB,EAAE,IAAI;QACtB,wBAAwB,EAAE,IAAI;KAC/B,CAAC,CAAC;IAEH,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IACD,MAAM,mBAAmB,GAAG,EAAE,CAAC,UAAU,IAAI,EAAE,CAAC,KAAK,CAAC;IACtD,MAAM,gBAAgB,GAAG,IAAA,wBAAM,EAAC,mBAAmB,CAAC,CAAC;IAErD,MAAM,kBAAkB,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;IACrC,MAAM,wBAAwB,GAAG,kBAAkB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CACzE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAC3D,CAAC;IACF,MAAM,EAAE,eAAe,EAAE,YAAY,EAAE,GAAG,qBAAqB,CAAC;QAC9D,CAAC,EAAE,EAAE;QACL,mBAAmB,EAAE,YAAY,CAC/B,kBAAkB,CAAC,KAAK,EACxB,CAAC,EACD,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,CACrD,CAAC,QAAQ;QACV,WAAW,EAAE,wBAAwB;
|
|
1
|
+
{"version":3,"file":"getJoinQuery.js","sourceRoot":"","sources":["../../../lib/DboBuilder/QueryBuilder/getJoinQuery.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,6 @@ import type { Filter, LocalParams } from "../DboBuilder";
|
|
|
4
4
|
import type { ViewHandler } from "../ViewHandler/ViewHandler";
|
|
5
5
|
import type { NewQuery } from "./QueryBuilder";
|
|
6
6
|
export declare function getNewQuery(_this: ViewHandler, filter: Filter, selectParams: (SelectParams & {
|
|
7
|
-
|
|
7
|
+
joinExpressionAlias?: string;
|
|
8
8
|
}) | undefined, param3_unused: null | undefined, tableRules: ParsedTableRule | undefined, localParams: LocalParams | undefined): Promise<NewQuery>;
|
|
9
9
|
//# sourceMappingURL=getNewQuery.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getNewQuery.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/QueryBuilder/getNewQuery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAKV,YAAY,EAEb,MAAM,iBAAiB,CAAC;AAEzB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAuB,MAAM,eAAe,CAAC;AAC9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAM9D,OAAO,KAAK,EAAE,QAAQ,EAAgB,MAAM,gBAAgB,CAAC;AAyE7D,wBAAsB,WAAW,CAC/B,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,MAAM,EACd,YAAY,GAAE,YAAY,GAAG;IAAE,
|
|
1
|
+
{"version":3,"file":"getNewQuery.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/QueryBuilder/getNewQuery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAKV,YAAY,EAEb,MAAM,iBAAiB,CAAC;AAEzB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAuB,MAAM,eAAe,CAAC;AAC9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAM9D,OAAO,KAAK,EAAE,QAAQ,EAAgB,MAAM,gBAAgB,CAAC;AAyE7D,wBAAsB,WAAW,CAC/B,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,MAAM,EACd,YAAY,GAAE,YAAY,GAAG;IAAE,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAAE,aAAK,EAClE,aAAa,kBAAO,EACpB,UAAU,EAAE,eAAe,GAAG,SAAS,EACvC,WAAW,EAAE,WAAW,GAAG,SAAS,GACnC,OAAO,CAAC,QAAQ,CAAC,CA8KnB"}
|
|
@@ -81,17 +81,17 @@ async function getNewQuery(_this, filter, selectParams = {}, param3_unused = nul
|
|
|
81
81
|
allFields: _this.column_names.slice(0),
|
|
82
82
|
columns,
|
|
83
83
|
});
|
|
84
|
-
await sBuilder.parseUserSelect(userSelect, async (
|
|
84
|
+
await sBuilder.parseUserSelect(userSelect, async (joinColumnName, _joinParams, throwErr) => {
|
|
85
85
|
const j_selectParams = {};
|
|
86
86
|
let j_filter = {}, j_isLeftJoin = true;
|
|
87
|
-
const j_alias = fTable;
|
|
88
87
|
const parsedJoin = parseJoinSelect(_joinParams);
|
|
89
88
|
if (!parsedJoin.type) {
|
|
90
89
|
throwErr(parsedJoin.error);
|
|
91
90
|
return;
|
|
92
91
|
}
|
|
92
|
+
const joinExpressionAlias = joinColumnName;
|
|
93
93
|
const j_path = (0, parseJoinPath_1.parseJoinPath)({
|
|
94
|
-
rawPath: parsedJoin.type === "simple" ?
|
|
94
|
+
rawPath: parsedJoin.type === "simple" ? joinColumnName : parsedJoin.params.path,
|
|
95
95
|
rootTable: _this.name,
|
|
96
96
|
viewHandler: _this,
|
|
97
97
|
allowMultiOrJoin: true,
|
|
@@ -113,7 +113,7 @@ async function getNewQuery(_this, filter, selectParams = {}, param3_unused = nul
|
|
|
113
113
|
else {
|
|
114
114
|
j_selectParams.select = parsedJoin.params;
|
|
115
115
|
}
|
|
116
|
-
const joinTableName = parsedJoin.type === "simple" ?
|
|
116
|
+
const joinTableName = parsedJoin.type === "simple" ? joinColumnName
|
|
117
117
|
: typeof j_path === "string" ? j_path
|
|
118
118
|
: j_path.at(-1)?.table;
|
|
119
119
|
if (!joinTableName) {
|
|
@@ -135,9 +135,9 @@ async function getNewQuery(_this, filter, selectParams = {}, param3_unused = nul
|
|
|
135
135
|
}
|
|
136
136
|
const isAllowedAccessToTable = isLocal || joinTableRules;
|
|
137
137
|
if (isAllowedAccessToTable) {
|
|
138
|
-
const joinQuery = await getNewQuery(joinTableHandler, j_filter, { ...j_selectParams,
|
|
138
|
+
const joinQuery = await getNewQuery(joinTableHandler, j_filter, { ...j_selectParams, joinExpressionAlias }, param3_unused, joinTableRules, localParams);
|
|
139
139
|
joinQuery.isLeftJoin = j_isLeftJoin;
|
|
140
|
-
joinQuery.tableAlias =
|
|
140
|
+
joinQuery.tableAlias = joinExpressionAlias;
|
|
141
141
|
joinQueries.push({
|
|
142
142
|
...joinQuery,
|
|
143
143
|
joinPath: j_path,
|
|
@@ -156,7 +156,7 @@ async function getNewQuery(_this, filter, selectParams = {}, param3_unused = nul
|
|
|
156
156
|
}
|
|
157
157
|
});
|
|
158
158
|
const select = sBuilder.select;
|
|
159
|
-
const tableAlias = selectParams.
|
|
159
|
+
const tableAlias = selectParams.joinExpressionAlias;
|
|
160
160
|
const commonWhereParams = {
|
|
161
161
|
filter,
|
|
162
162
|
select,
|
|
@@ -190,7 +190,7 @@ async function getNewQuery(_this, filter, selectParams = {}, param3_unused = nul
|
|
|
190
190
|
having: havingOpts?.condition ?? "",
|
|
191
191
|
isLeftJoin: false,
|
|
192
192
|
limit: prepareLimitQuery(selectParams.limit, validatedRules),
|
|
193
|
-
orderByItems: (0, prepareSortItems_1.prepareSortItems)(selectParams.orderBy, allowedOrderByFields, selectParams.
|
|
193
|
+
orderByItems: (0, prepareSortItems_1.prepareSortItems)(selectParams.orderBy, allowedOrderByFields, selectParams.joinExpressionAlias, select, joinQueries),
|
|
194
194
|
offset: prepareOffsetQuery(selectParams.offset),
|
|
195
195
|
};
|
|
196
196
|
if (resQuery.select.some((s) => s.type === "aggregation") && resQuery.joins?.length) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getNewQuery.js","sourceRoot":"","sources":["../../../lib/DboBuilder/QueryBuilder/getNewQuery.ts"],"names":[],"mappings":";;AA0FA,kCAqLC;AAvQD,qDAAuE;AAIvE,gEAA6D;AAC7D,sEAAmE;AAEnE,iEAA8D;AAC9D,qDAAkD;AAElD,iDAAmD;AAEnD,MAAM,SAAS,GAAG,CAAC,YAAY,EAAE,WAAW,CAAU,CAAC;AACvD,MAAM,eAAe,GAAG,IAAA,yBAAO,EAAC;IAC9B,UAAU,EAAE,CAAC;IACb,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,CAAC;IACT,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,CAAC;IACT,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,CAAC;CACsE,CAAC,CAAC;AAanF,MAAM,eAAe,GAAG,CAAC,UAAsB,EAAc,EAAE;IAC7D,IAAI,CAAE,UAAqB,EAAE,CAAC;QAC5B,OAAO;YACL,KAAK,EAAE,mBAAmB;SAC3B,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;QACnC,IAAK,UAAqB,KAAK,GAAG,EAAE,CAAC;YACnC,MAAM,sCAAsC,CAAC;QAC/C,CAAC;QACD,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,UAAU;SACnB,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,GAAG,IAAA,yBAAO,EAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,0BAAQ,EAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;IAC1F,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;QACrB,OAAO;YACL,KAAK,EAAE,oEAAoE;SAC5E,CAAC;IACJ,CAAC;SAAM,IAAI,OAAO,EAAE,CAAC;QACnB,gFAAgF;QAChF,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAClD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAA,0BAAQ,EAAC,CAAC,GAAG,eAAe,EAAE,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC,CACxD,CAAC;QACF,IAAI,aAAa,CAAC,MAAM,EAAE,CAAC;YACzB,MAAM,uBAAuB,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3D,CAAC;QACD,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,CAAwB,CAAC;QACxD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACxC,MAAM,4CAA4C,OAAO,EAAE,CAAC;QAC9D,CAAC;QACD,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE;gBACN,GAAI,UAAiC;gBACrC,IAAI;gBACJ,KAAK,EAAE,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,KAAK;aAC5D;SACF,CAAC;IACJ,CAAC;IAED,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,UAA8B;KACvC,CAAC;AACJ,CAAC,CAAC;AAEK,KAAK,UAAU,WAAW,CAC/B,KAAkB,EAClB,MAAc,EACd,
|
|
1
|
+
{"version":3,"file":"getNewQuery.js","sourceRoot":"","sources":["../../../lib/DboBuilder/QueryBuilder/getNewQuery.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getCondition.d.ts","sourceRoot":"","sources":["../../lib/DboBuilder/getCondition.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGpE,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAO7D;;;;;GAKG;AACH,wBAAsB,YAAY,CAChC,IAAI,EAAE,WAAW,EACjB,MAAM,EAAE;IACN,MAAM,EAAE,GAAG,CAAC;IACZ,MAAM,EAAE,mBAAmB,EAAE,GAAG,SAAS,CAAC;IAC1C,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,GACA,OAAO,CAAC;IAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"getCondition.d.ts","sourceRoot":"","sources":["../../lib/DboBuilder/getCondition.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGpE,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAO7D;;;;;GAKG;AACH,wBAAsB,YAAY,CAChC,IAAI,EAAE,WAAW,EACjB,MAAM,EAAE;IACN,MAAM,EAAE,GAAG,CAAC;IACZ,MAAM,EAAE,mBAAmB,EAAE,GAAG,SAAS,CAAC;IAC1C,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,GACA,OAAO,CAAC;IAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAsN9D"}
|
|
@@ -40,7 +40,7 @@ async function getCondition(params) {
|
|
|
40
40
|
});
|
|
41
41
|
let existsCond = "";
|
|
42
42
|
if (existsConfigs.length) {
|
|
43
|
-
existsCond = (await Promise.all(existsConfigs.map(async (existsConfig) => await getExistsCondition_1.getExistsCondition.bind(this)(existsConfig, tableAlias, localParams)))).join(" AND ");
|
|
43
|
+
existsCond = (await Promise.all(existsConfigs.map(async (existsConfig) => await getExistsCondition_1.getExistsCondition.bind(this)(existsConfig, tableAlias && (0, prostgles_types_1.asName)(tableAlias), localParams)))).join(" AND ");
|
|
44
44
|
}
|
|
45
45
|
/* Computed field queries ($rowhash) */
|
|
46
46
|
const p = this.getValidatedRules(tableRules, localParams);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getCondition.js","sourceRoot":"","sources":["../../lib/DboBuilder/getCondition.ts"],"names":[],"mappings":";;AAoBA,
|
|
1
|
+
{"version":3,"file":"getCondition.js","sourceRoot":"","sources":["../../lib/DboBuilder/getCondition.ts"],"names":[],"mappings":"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"}
|
|
@@ -35,7 +35,7 @@ export const NESTED_ROWID_FIELD_NAME = "prostgles_rowid_field";
|
|
|
35
35
|
const getJoinTable = (
|
|
36
36
|
tableName: string,
|
|
37
37
|
pathIndex: number,
|
|
38
|
-
isLastTableAlias: string | undefined
|
|
38
|
+
isLastTableAlias: string | undefined,
|
|
39
39
|
) => {
|
|
40
40
|
const rawAlias = isLastTableAlias ?? `p${pathIndex} ${tableName}`;
|
|
41
41
|
return {
|
|
@@ -83,16 +83,18 @@ export const getJoinQuery = (viewHandler: ViewHandler, { q1, q2 }: Args): GetJoi
|
|
|
83
83
|
|
|
84
84
|
const firstJoinTablePath = paths[0]!;
|
|
85
85
|
const firstJoinTableJoinFields = firstJoinTablePath.on.flatMap((condObj) =>
|
|
86
|
-
Object.entries(condObj).map(([_source, target]) => target)
|
|
86
|
+
Object.entries(condObj).map(([_source, target]) => target),
|
|
87
87
|
);
|
|
88
|
+
const jsonAggSort = prepareOrderByQuery(q2.orderByItems, targetTableAliasRaw).join(", ");
|
|
88
89
|
const { rootSelectItems, jsonAggLimit } = getNestedSelectFields({
|
|
89
90
|
q: q2,
|
|
90
91
|
firstJoinTableAlias: getJoinTable(
|
|
91
92
|
firstJoinTablePath.table,
|
|
92
93
|
0,
|
|
93
|
-
paths.length === 1 ? targetTableAliasRaw : undefined
|
|
94
|
+
paths.length === 1 ? targetTableAliasRaw : undefined,
|
|
94
95
|
).rawAlias,
|
|
95
96
|
_joinFields: firstJoinTableJoinFields,
|
|
97
|
+
jsonAggSort,
|
|
96
98
|
});
|
|
97
99
|
|
|
98
100
|
const joinType = q2.isLeftJoin ? "LEFT" : "INNER";
|
|
@@ -109,7 +111,6 @@ export const getJoinQuery = (viewHandler: ViewHandler, { q1, q2 }: Args): GetJoi
|
|
|
109
111
|
.filter((s) => s.selected)
|
|
110
112
|
.map((s) => asNameAlias(s.alias, targetTableAliasRaw));
|
|
111
113
|
const rootNestedSort = q1.orderByItems.filter((d) => d.nested?.joinAlias === q2.joinAlias);
|
|
112
|
-
const jsonAggSort = prepareOrderByQuery(q2.orderByItems, targetTableAliasRaw).join(", ");
|
|
113
114
|
const jsonAgg = `json_agg((SELECT x FROM (SELECT ${selectedFields.join(", ")}) as x )${jsonAggSort}) ${jsonAggLimit} as ${JSON_AGG_FIELD_NAME}`;
|
|
114
115
|
|
|
115
116
|
const { innerQuery } = getInnerJoinQuery({
|
|
@@ -135,7 +136,7 @@ export const getJoinQuery = (viewHandler: ViewHandler, { q1, q2 }: Args): GetJoi
|
|
|
135
136
|
`SELECT `,
|
|
136
137
|
...indentLines(
|
|
137
138
|
[rootTableIdField, jsonAgg, ...rootNestedSort.map((d) => d.nested!.wrapperQuerySortItem)],
|
|
138
|
-
{ appendCommas: true }
|
|
139
|
+
{ appendCommas: true },
|
|
139
140
|
),
|
|
140
141
|
`FROM (`,
|
|
141
142
|
...indentLines(innerQuery),
|
|
@@ -165,7 +166,7 @@ export const getJoinQuery = (viewHandler: ViewHandler, { q1, q2 }: Args): GetJoi
|
|
|
165
166
|
jsonAgg,
|
|
166
167
|
...rootNestedSort.map((d) => d.nested!.wrapperQuerySortItem),
|
|
167
168
|
],
|
|
168
|
-
{ appendCommas: true }
|
|
169
|
+
{ appendCommas: true },
|
|
169
170
|
),
|
|
170
171
|
`FROM (`,
|
|
171
172
|
...indentLines(innerQuery),
|
|
@@ -221,7 +222,7 @@ const getInnerJoinQuery = ({
|
|
|
221
222
|
: q1.table
|
|
222
223
|
: paths[i - 1]!.table,
|
|
223
224
|
i - 1,
|
|
224
|
-
undefined
|
|
225
|
+
undefined,
|
|
225
226
|
);
|
|
226
227
|
|
|
227
228
|
const table = getJoinTable(path.table, i, isLast ? targetTableAliasRaw : undefined);
|
|
@@ -236,7 +237,7 @@ const getInnerJoinQuery = ({
|
|
|
236
237
|
if (aggs.length) {
|
|
237
238
|
const groupByFields = rootSelectItems
|
|
238
239
|
.map((c, i) =>
|
|
239
|
-
c.isJoinCol || (c.selected && c.type !== "aggregation") ? `${i + 1}` : undefined
|
|
240
|
+
c.isJoinCol || (c.selected && c.type !== "aggregation") ? `${i + 1}` : undefined,
|
|
240
241
|
)
|
|
241
242
|
.filter(isDefined);
|
|
242
243
|
if (groupByFields.length) {
|
|
@@ -255,7 +256,7 @@ const getInnerJoinQuery = ({
|
|
|
255
256
|
` /* Join fields + select */`,
|
|
256
257
|
...indentLines(
|
|
257
258
|
rootSelectItems.map((s) => s.query),
|
|
258
|
-
{ appendCommas: true }
|
|
259
|
+
{ appendCommas: true },
|
|
259
260
|
),
|
|
260
261
|
`FROM ${table.name} ${table.alias}`,
|
|
261
262
|
...targetQueryExtraQueries,
|
|
@@ -280,13 +281,19 @@ type GetSelectFieldsArgs = {
|
|
|
280
281
|
q: NewQueryJoin;
|
|
281
282
|
firstJoinTableAlias: string;
|
|
282
283
|
_joinFields: string[];
|
|
284
|
+
jsonAggSort: string;
|
|
283
285
|
};
|
|
284
286
|
|
|
285
287
|
export type SelectItemNested = SelectItemValidated & {
|
|
286
288
|
query: string;
|
|
287
289
|
isJoinCol: boolean;
|
|
288
290
|
};
|
|
289
|
-
const getNestedSelectFields = ({
|
|
291
|
+
const getNestedSelectFields = ({
|
|
292
|
+
q,
|
|
293
|
+
firstJoinTableAlias,
|
|
294
|
+
_joinFields,
|
|
295
|
+
jsonAggSort,
|
|
296
|
+
}: GetSelectFieldsArgs) => {
|
|
290
297
|
const targetTableAlias = q.tableAlias || q.table;
|
|
291
298
|
|
|
292
299
|
const requiredJoinFields = Array.from(new Set(_joinFields));
|
|
@@ -308,12 +315,12 @@ const getNestedSelectFields = ({ q, firstJoinTableAlias, _joinFields }: GetSelec
|
|
|
308
315
|
selected: false,
|
|
309
316
|
isJoinCol: true,
|
|
310
317
|
query: `${asName(firstJoinTableAlias)}.${getJoinCol(f).rootSelect}`,
|
|
311
|
-
}))
|
|
318
|
+
})),
|
|
312
319
|
);
|
|
313
320
|
|
|
314
321
|
const getQuery = (tableAlias?: string) => {
|
|
315
322
|
const partitionBy = `PARTITION BY ${requiredJoinFields.map((f) => asNameAlias(f, tableAlias)).join(", ")}`;
|
|
316
|
-
return `ROW_NUMBER() OVER(${partitionBy}) AS ${NESTED_ROWID_FIELD_NAME}`;
|
|
323
|
+
return `ROW_NUMBER() OVER(${partitionBy} ${jsonAggSort}) AS ${NESTED_ROWID_FIELD_NAME}`;
|
|
317
324
|
};
|
|
318
325
|
|
|
319
326
|
if (q.limit) {
|
|
@@ -91,7 +91,7 @@ const parseJoinSelect = (joinParams: JoinSelect): ParsedJoin => {
|
|
|
91
91
|
export async function getNewQuery(
|
|
92
92
|
_this: ViewHandler,
|
|
93
93
|
filter: Filter,
|
|
94
|
-
selectParams: SelectParams & {
|
|
94
|
+
selectParams: SelectParams & { joinExpressionAlias?: string } = {},
|
|
95
95
|
param3_unused = null,
|
|
96
96
|
tableRules: ParsedTableRule | undefined,
|
|
97
97
|
localParams: LocalParams | undefined,
|
|
@@ -122,11 +122,10 @@ export async function getNewQuery(
|
|
|
122
122
|
columns,
|
|
123
123
|
});
|
|
124
124
|
|
|
125
|
-
await sBuilder.parseUserSelect(userSelect, async (
|
|
125
|
+
await sBuilder.parseUserSelect(userSelect, async (joinColumnName, _joinParams, throwErr) => {
|
|
126
126
|
const j_selectParams: SelectParams = {};
|
|
127
127
|
let j_filter: Filter = {},
|
|
128
128
|
j_isLeftJoin = true;
|
|
129
|
-
const j_alias = fTable;
|
|
130
129
|
|
|
131
130
|
const parsedJoin = parseJoinSelect(_joinParams);
|
|
132
131
|
|
|
@@ -134,8 +133,9 @@ export async function getNewQuery(
|
|
|
134
133
|
throwErr(parsedJoin.error);
|
|
135
134
|
return;
|
|
136
135
|
}
|
|
136
|
+
const joinExpressionAlias = joinColumnName;
|
|
137
137
|
const j_path = parseJoinPath({
|
|
138
|
-
rawPath: parsedJoin.type === "simple" ?
|
|
138
|
+
rawPath: parsedJoin.type === "simple" ? joinColumnName : parsedJoin.params.path,
|
|
139
139
|
rootTable: _this.name,
|
|
140
140
|
viewHandler: _this,
|
|
141
141
|
allowMultiOrJoin: true,
|
|
@@ -160,7 +160,7 @@ export async function getNewQuery(
|
|
|
160
160
|
}
|
|
161
161
|
|
|
162
162
|
const joinTableName =
|
|
163
|
-
parsedJoin.type === "simple" ?
|
|
163
|
+
parsedJoin.type === "simple" ? joinColumnName
|
|
164
164
|
: typeof j_path === "string" ? j_path
|
|
165
165
|
: j_path.at(-1)?.table;
|
|
166
166
|
if (!joinTableName) {
|
|
@@ -190,13 +190,13 @@ export async function getNewQuery(
|
|
|
190
190
|
const joinQuery: NewQuery = await getNewQuery(
|
|
191
191
|
joinTableHandler,
|
|
192
192
|
j_filter,
|
|
193
|
-
{ ...j_selectParams,
|
|
193
|
+
{ ...j_selectParams, joinExpressionAlias },
|
|
194
194
|
param3_unused,
|
|
195
195
|
joinTableRules,
|
|
196
196
|
localParams,
|
|
197
197
|
);
|
|
198
198
|
joinQuery.isLeftJoin = j_isLeftJoin;
|
|
199
|
-
joinQuery.tableAlias =
|
|
199
|
+
joinQuery.tableAlias = joinExpressionAlias;
|
|
200
200
|
joinQueries.push({
|
|
201
201
|
...joinQuery,
|
|
202
202
|
joinPath: j_path,
|
|
@@ -218,7 +218,7 @@ export async function getNewQuery(
|
|
|
218
218
|
|
|
219
219
|
const select = sBuilder.select;
|
|
220
220
|
|
|
221
|
-
const tableAlias = selectParams.
|
|
221
|
+
const tableAlias = selectParams.joinExpressionAlias;
|
|
222
222
|
const commonWhereParams: PrepareWhereParams = {
|
|
223
223
|
filter,
|
|
224
224
|
select,
|
|
@@ -257,7 +257,7 @@ export async function getNewQuery(
|
|
|
257
257
|
orderByItems: prepareSortItems(
|
|
258
258
|
selectParams.orderBy,
|
|
259
259
|
allowedOrderByFields,
|
|
260
|
-
selectParams.
|
|
260
|
+
selectParams.joinExpressionAlias,
|
|
261
261
|
select,
|
|
262
262
|
joinQueries,
|
|
263
263
|
),
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { pickKeys } from "prostgles-types";
|
|
1
|
+
import { asName, pickKeys } from "prostgles-types";
|
|
2
2
|
import { parseFilterItem } from "../Filtering";
|
|
3
3
|
import type { ParsedTableRule } from "../PublishParser/PublishParser";
|
|
4
4
|
import type { ExistsFilterConfig, LocalParams } from "./DboBuilder";
|
|
@@ -74,7 +74,11 @@ export async function getCondition(
|
|
|
74
74
|
await Promise.all(
|
|
75
75
|
existsConfigs.map(
|
|
76
76
|
async (existsConfig) =>
|
|
77
|
-
await getExistsCondition.bind(this)(
|
|
77
|
+
await getExistsCondition.bind(this)(
|
|
78
|
+
existsConfig,
|
|
79
|
+
tableAlias && asName(tableAlias),
|
|
80
|
+
localParams,
|
|
81
|
+
),
|
|
78
82
|
),
|
|
79
83
|
)
|
|
80
84
|
).join(" AND ");
|