prostgles-server 4.2.56 → 4.2.57
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/getNewQuery.d.ts.map +1 -1
- package/dist/DboBuilder/QueryBuilder/getNewQuery.js +13 -9
- package/dist/DboBuilder/QueryBuilder/getNewQuery.js.map +1 -1
- package/dist/DboBuilder/QueryBuilder/prepareHaving.d.ts.map +1 -1
- package/dist/DboBuilder/QueryBuilder/prepareHaving.js +0 -2
- package/dist/DboBuilder/QueryBuilder/prepareHaving.js.map +1 -1
- package/dist/DboBuilder/ViewHandler/ViewHandler.d.ts +1 -10
- package/dist/DboBuilder/ViewHandler/ViewHandler.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/prepareWhere.d.ts +2 -2
- package/dist/DboBuilder/ViewHandler/prepareWhere.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/prepareWhere.js +2 -1
- package/dist/DboBuilder/ViewHandler/prepareWhere.js.map +1 -1
- package/dist/DboBuilder/getCondition.d.ts +2 -1
- package/dist/DboBuilder/getCondition.d.ts.map +1 -1
- package/dist/DboBuilder/getCondition.js +17 -8
- package/dist/DboBuilder/getCondition.js.map +1 -1
- package/dist/Filtering.d.ts.map +1 -1
- package/dist/Filtering.js +1 -1
- package/dist/Filtering.js.map +1 -1
- package/lib/DboBuilder/QueryBuilder/getNewQuery.ts +14 -8
- package/lib/DboBuilder/QueryBuilder/prepareHaving.ts +1 -2
- package/lib/DboBuilder/ViewHandler/prepareWhere.ts +5 -3
- package/lib/DboBuilder/getCondition.ts +23 -14
- package/lib/Filtering.ts +1 -2
- package/package.json +1 -1
- package/tests/isomorphicQueries.spec.ts +21 -2
- package/tests/server/package-lock.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getNewQuery.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/QueryBuilder/getNewQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,WAAW,EAA2C,MAAM,iBAAiB,CAAC;AACjI,OAAO,EAAE,MAAM,EAAE,WAAW,EAAuB,MAAM,eAAe,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAIzD,OAAO,EAAE,QAAQ,EAAmC,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"getNewQuery.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/QueryBuilder/getNewQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,WAAW,EAA2C,MAAM,iBAAiB,CAAC;AACjI,OAAO,EAAE,MAAM,EAAE,WAAW,EAAuB,MAAM,eAAe,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAIzD,OAAO,EAAE,QAAQ,EAAmC,MAAM,gBAAgB,CAAC;AAmE3E,wBAAsB,WAAW,CAC/B,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,MAAM,EACd,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAA2C,EACvD,aAAa,kBAAO,EACpB,UAAU,EAAE,SAAS,GAAG,SAAS,EACjC,WAAW,EAAE,WAAW,GAAG,SAAS,GACnC,OAAO,CAAC,QAAQ,CAAC,CAgKnB"}
|
|
@@ -6,7 +6,6 @@ const parseJoinPath_1 = require("../ViewHandler/parseJoinPath");
|
|
|
6
6
|
const prepareSortItems_1 = require("../ViewHandler/prepareSortItems");
|
|
7
7
|
const Functions_1 = require("./Functions");
|
|
8
8
|
const QueryBuilder_1 = require("./QueryBuilder");
|
|
9
|
-
const prepareHaving_1 = require("./prepareHaving");
|
|
10
9
|
const JOIN_KEYS = ["$innerJoin", "$leftJoin"];
|
|
11
10
|
const JOIN_PARAM_KEYS = (0, prostgles_types_1.getKeys)({
|
|
12
11
|
$condition: 1,
|
|
@@ -148,15 +147,25 @@ async function getNewQuery(_this, filter, selectParams = {}, param3_unused = nul
|
|
|
148
147
|
});
|
|
149
148
|
const select = sBuilder.select;
|
|
150
149
|
const tableAlias = selectParams.alias;
|
|
151
|
-
const
|
|
150
|
+
const commonWhereParams = {
|
|
152
151
|
filter,
|
|
153
152
|
select,
|
|
154
153
|
forcedFilter: tableRules?.select?.forcedFilter,
|
|
155
154
|
filterFields: tableRules?.select?.filterFields,
|
|
156
155
|
tableAlias,
|
|
157
156
|
localParams,
|
|
158
|
-
tableRule: tableRules
|
|
157
|
+
tableRule: tableRules,
|
|
158
|
+
isHaving: false,
|
|
159
|
+
};
|
|
160
|
+
const filterOpts = await _this.prepareWhere({
|
|
161
|
+
...commonWhereParams,
|
|
162
|
+
isHaving: false,
|
|
159
163
|
});
|
|
164
|
+
const havingOpts = selectParams.having ? await _this.prepareWhere({
|
|
165
|
+
...commonWhereParams,
|
|
166
|
+
filter: selectParams.having,
|
|
167
|
+
isHaving: true,
|
|
168
|
+
}) : undefined;
|
|
160
169
|
const where = filterOpts.where;
|
|
161
170
|
const validatedRules = _this.getValidatedRules(tableRules, localParams);
|
|
162
171
|
const resQuery = {
|
|
@@ -166,12 +175,7 @@ async function getNewQuery(_this, filter, selectParams = {}, param3_unused = nul
|
|
|
166
175
|
joins: joinQueries,
|
|
167
176
|
where,
|
|
168
177
|
whereOpts: filterOpts,
|
|
169
|
-
having:
|
|
170
|
-
having: selectParams.having,
|
|
171
|
-
select,
|
|
172
|
-
tableAlias,
|
|
173
|
-
filterFieldNames: tableRules ? _this.parseFieldFilter(tableRules?.select?.filterFields) : _this.column_names.slice(0),
|
|
174
|
-
}),
|
|
178
|
+
having: havingOpts?.condition ?? "",
|
|
175
179
|
isLeftJoin: false,
|
|
176
180
|
limit: prepareLimitQuery(selectParams.limit, validatedRules),
|
|
177
181
|
orderByItems: (0, prepareSortItems_1.prepareSortItems)(selectParams.orderBy, allowedOrderByFields, selectParams.alias, select, joinQueries),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getNewQuery.js","sourceRoot":"","sources":["../../../lib/DboBuilder/QueryBuilder/getNewQuery.ts"],"names":[],"mappings":";;;AAAA,qDAAiI;AAIjI,gEAA6D;AAC7D,sEAAmE;AACnE,2CAAyD;AACzD,iDAA2E;
|
|
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":"prepareHaving.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/QueryBuilder/prepareHaving.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAG1D,KAAK,IAAI,GAAG;IACV,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAC9B,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,gBAAgB,EAAE,MAAM,EAAE,CAAC;CAC5B,CAAA;AACD,eAAO,MAAM,aAAa,qDAAsD,IAAI,
|
|
1
|
+
{"version":3,"file":"prepareHaving.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/QueryBuilder/prepareHaving.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAG1D,KAAK,IAAI,GAAG;IACV,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAC9B,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,gBAAgB,EAAE,MAAM,EAAE,CAAC;CAC5B,CAAA;AACD,eAAO,MAAM,aAAa,qDAAsD,IAAI,WAUnF,CAAA"}
|
|
@@ -6,8 +6,6 @@ const Filtering_1 = require("../../Filtering");
|
|
|
6
6
|
const prepareHaving = ({ having, select, tableAlias, filterFieldNames }) => {
|
|
7
7
|
if (!having || (0, prostgles_types_1.isEmpty)(having))
|
|
8
8
|
return "";
|
|
9
|
-
// const selectedItem = select
|
|
10
|
-
// .find(s => s.alias);
|
|
11
9
|
const havingStr = (0, Filtering_1.parseFilterItem)({
|
|
12
10
|
filter: having,
|
|
13
11
|
select,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepareHaving.js","sourceRoot":"","sources":["../../../lib/DboBuilder/QueryBuilder/prepareHaving.ts"],"names":[],"mappings":";;;AAAA,qDAA0C;AAG1C,+CAAkD;AAQ3C,MAAM,aAAa,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAQ,EAAE,EAAE;IACtF,IAAG,CAAC,MAAM,IAAI,IAAA,yBAAO,EAAC,MAAM,CAAC;QAAE,OAAO,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"prepareHaving.js","sourceRoot":"","sources":["../../../lib/DboBuilder/QueryBuilder/prepareHaving.ts"],"names":[],"mappings":";;;AAAA,qDAA0C;AAG1C,+CAAkD;AAQ3C,MAAM,aAAa,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAQ,EAAE,EAAE;IACtF,IAAG,CAAC,MAAM,IAAI,IAAA,yBAAO,EAAC,MAAM,CAAC;QAAE,OAAO,EAAE,CAAC;IAEzC,MAAM,SAAS,GAAG,IAAA,2BAAe,EAAC;QAChC,MAAM,EAAE,MAAM;QACd,MAAM;QACN,UAAU;QACV,kBAAkB,EAAE,gBAAgB;KACrC,CAAC,CAAC;IACH,OAAO,SAAS,CAAC;AACnB,CAAC,CAAA;AAVY,QAAA,aAAa,iBAUzB"}
|
|
@@ -78,16 +78,7 @@ export declare class ViewHandler {
|
|
|
78
78
|
/**
|
|
79
79
|
* Parses group or simple filter
|
|
80
80
|
*/
|
|
81
|
-
prepareWhere: (params: {
|
|
82
|
-
filter?: Filter | undefined;
|
|
83
|
-
select: import("../QueryBuilder/QueryBuilder").SelectItem[] | undefined;
|
|
84
|
-
forcedFilter?: AnyObject | undefined;
|
|
85
|
-
filterFields?: FieldFilter | undefined;
|
|
86
|
-
addWhere?: boolean | undefined;
|
|
87
|
-
tableAlias?: string | undefined;
|
|
88
|
-
localParams: LocalParams | undefined;
|
|
89
|
-
tableRule: TableRule | undefined;
|
|
90
|
-
}) => Promise<{
|
|
81
|
+
prepareWhere: (params: import("./prepareWhere").PrepareWhereParams) => Promise<{
|
|
91
82
|
condition: string;
|
|
92
83
|
where: string;
|
|
93
84
|
filter: AnyObject;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewHandler.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/ViewHandler/ViewHandler.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ViewHandler.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/ViewHandler/ViewHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import { ViewHandler } from "./ViewHandler";
|
|
|
3
3
|
import { ExistsFilterConfig, Filter, LocalParams } from "../DboBuilder";
|
|
4
4
|
import { SelectItem } from "../QueryBuilder/QueryBuilder";
|
|
5
5
|
import { TableRule } from "../../PublishParser/PublishParser";
|
|
6
|
-
type PrepareWhereParams = {
|
|
6
|
+
export type PrepareWhereParams = {
|
|
7
7
|
filter?: Filter;
|
|
8
8
|
select: SelectItem[] | undefined;
|
|
9
9
|
forcedFilter?: AnyObject;
|
|
@@ -12,6 +12,7 @@ type PrepareWhereParams = {
|
|
|
12
12
|
tableAlias?: string;
|
|
13
13
|
localParams: LocalParams | undefined;
|
|
14
14
|
tableRule: TableRule | undefined;
|
|
15
|
+
isHaving?: boolean;
|
|
15
16
|
};
|
|
16
17
|
export declare function prepareWhere(this: ViewHandler, params: PrepareWhereParams): Promise<{
|
|
17
18
|
condition: string;
|
|
@@ -19,5 +20,4 @@ export declare function prepareWhere(this: ViewHandler, params: PrepareWherePara
|
|
|
19
20
|
filter: AnyObject;
|
|
20
21
|
exists: ExistsFilterConfig[];
|
|
21
22
|
}>;
|
|
22
|
-
export {};
|
|
23
23
|
//# sourceMappingURL=prepareWhere.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepareWhere.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/ViewHandler/prepareWhere.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAgC,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAG9D,
|
|
1
|
+
{"version":3,"file":"prepareWhere.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/ViewHandler/prepareWhere.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAgC,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAG9D,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,UAAU,EAAE,GAAG,SAAS,CAAC;IACjC,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,YAAY,CAAC,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC;IACrC,SAAS,EAAE,SAAS,GAAG,SAAS,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,wBAAsB,YAAY,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,kBAAkB,EAAE,CAAC;CAAE,CAAC,CAsEjL"}
|
|
@@ -46,7 +46,8 @@ async function prepareWhere(params) {
|
|
|
46
46
|
allowed_colnames: isForcedFilterBypass ? this.column_names.slice(0) : this.parseFieldFilter(filterFields),
|
|
47
47
|
tableAlias,
|
|
48
48
|
localParams: isForcedFilterBypass ? undefined : localParams,
|
|
49
|
-
tableRules: isForcedFilterBypass ? undefined : tableRule
|
|
49
|
+
tableRules: isForcedFilterBypass ? undefined : tableRule,
|
|
50
|
+
isHaving: params.isHaving,
|
|
50
51
|
});
|
|
51
52
|
result = cond.condition;
|
|
52
53
|
exists.push(...cond.exists);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepareWhere.js","sourceRoot":"","sources":["../../../lib/DboBuilder/ViewHandler/prepareWhere.ts"],"names":[],"mappings":";;;AAAA,+CAA4F;AAK5F,kDAA+C;
|
|
1
|
+
{"version":3,"file":"prepareWhere.js","sourceRoot":"","sources":["../../../lib/DboBuilder/ViewHandler/prepareWhere.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ExistsFilterConfig, LocalParams } from "./DboBuilder";
|
|
2
1
|
import { TableRule } from "../PublishParser/PublishParser";
|
|
2
|
+
import { ExistsFilterConfig, LocalParams } from "./DboBuilder";
|
|
3
3
|
import { SelectItem } from "./QueryBuilder/QueryBuilder";
|
|
4
4
|
import { ViewHandler } from "./ViewHandler/ViewHandler";
|
|
5
5
|
/**
|
|
@@ -15,6 +15,7 @@ export declare function getCondition(this: ViewHandler, params: {
|
|
|
15
15
|
tableAlias?: string;
|
|
16
16
|
localParams?: LocalParams;
|
|
17
17
|
tableRules?: TableRule;
|
|
18
|
+
isHaving?: boolean;
|
|
18
19
|
}): Promise<{
|
|
19
20
|
exists: ExistsFilterConfig[];
|
|
20
21
|
condition: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getCondition.d.ts","sourceRoot":"","sources":["../../lib/DboBuilder/getCondition.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getCondition.d.ts","sourceRoot":"","sources":["../../lib/DboBuilder/getCondition.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAO,MAAM,cAAc,CAAC;AAEpE,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAOxD;;;;;GAKG;AACH,wBAAsB,YAAY,CAChC,IAAI,EAAE,WAAW,EACjB,MAAM,EAAE;IACN,MAAM,EAAE,GAAG,CAAC;IACZ,MAAM,EAAE,UAAU,EAAE,GAAG,SAAS,CAAC;IACjC,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,GACA,OAAO,CAAC;IAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CA0K9D"}
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getCondition = void 0;
|
|
4
4
|
const prostgles_types_1 = require("prostgles-types");
|
|
5
|
-
const DboBuilder_1 = require("./DboBuilder");
|
|
6
5
|
const Filtering_1 = require("../Filtering");
|
|
6
|
+
const DboBuilder_1 = require("./DboBuilder");
|
|
7
7
|
const Functions_1 = require("./QueryBuilder/Functions");
|
|
8
8
|
const getExistsCondition_1 = require("./ViewHandler/getExistsCondition");
|
|
9
9
|
const getExistsFilters_1 = require("./ViewHandler/getExistsFilters");
|
|
@@ -16,7 +16,7 @@ const FILTER_FUNCS = Functions_1.FUNCTIONS.filter(f => f.canBeUsedForFilter);
|
|
|
16
16
|
* { fff: { $ilike: 'abc' } } => "fff" ilike 'abc'
|
|
17
17
|
*/
|
|
18
18
|
async function getCondition(params) {
|
|
19
|
-
const { filter: rawFilter, select, allowed_colnames, tableAlias, localParams, tableRules } = params;
|
|
19
|
+
const { filter: rawFilter, select, allowed_colnames, tableAlias, localParams, tableRules, isHaving } = params;
|
|
20
20
|
const filter = { ...rawFilter };
|
|
21
21
|
const existsConfigs = (0, getExistsFilters_1.getExistsFilters)(filter, this);
|
|
22
22
|
const funcConds = [];
|
|
@@ -60,8 +60,8 @@ async function getCondition(params) {
|
|
|
60
60
|
if (select) {
|
|
61
61
|
/* Allow filtering by selected fields/funcs */
|
|
62
62
|
allowedSelect = select.filter(s => {
|
|
63
|
-
if (["function", "computed", "column"].includes(s.type)) {
|
|
64
|
-
|
|
63
|
+
if (["function", "computed", "column"].includes(s.type) || isHaving && s.type === "aggregation") {
|
|
64
|
+
/** Selected computed cols are allowed for filtering without checking. Why not allow all?! */
|
|
65
65
|
if (s.type !== "column" || allowed_colnames.includes(s.alias)) {
|
|
66
66
|
return true;
|
|
67
67
|
}
|
|
@@ -113,14 +113,23 @@ async function getCondition(params) {
|
|
|
113
113
|
fName.slice(c.length).includes(".")))));
|
|
114
114
|
if (invalidColumn) {
|
|
115
115
|
const selItem = select?.find(s => s.alias === invalidColumn);
|
|
116
|
+
let isComplexFilter = false;
|
|
116
117
|
if (selItem?.type === "aggregation") {
|
|
117
|
-
|
|
118
|
+
if (!params.isHaving) {
|
|
119
|
+
throw new Error(`Filtering by ${invalidColumn} is not allowed. Aggregations cannot be filtered. Use HAVING clause instead.`);
|
|
120
|
+
}
|
|
121
|
+
else {
|
|
122
|
+
isComplexFilter = true;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
if (!isComplexFilter) {
|
|
126
|
+
const allowedCols = allowedSelect.map(s => s.type === "column" ? s.getQuery() : s.alias).join(", ");
|
|
127
|
+
const errMessage = `Table: ${this.name} -> disallowed/inexistent columns in filter: ${invalidColumn} \n Expecting one of: ${allowedCols}`;
|
|
128
|
+
throw errMessage;
|
|
118
129
|
}
|
|
119
|
-
const allowedCols = allowedSelect.map(s => s.type === "column" ? s.getQuery() : s.alias).join(", ");
|
|
120
|
-
const errMessage = `Table: ${this.name} -> disallowed/inexistent columns in filter: ${invalidColumn} \n Expecting one of: ${allowedCols}`;
|
|
121
|
-
throw errMessage;
|
|
122
130
|
}
|
|
123
131
|
/* TODO: Allow filter funcs */
|
|
132
|
+
// see isComplexFilter above where they are allowed
|
|
124
133
|
// const singleFuncs = FUNCTIONS.filter(f => f.singleColArg);
|
|
125
134
|
const f = (0, prostgles_types_1.pickKeys)(filter, filterKeys);
|
|
126
135
|
const q = (0, Filtering_1.parseFilterItem)({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getCondition.js","sourceRoot":"","sources":["../../lib/DboBuilder/getCondition.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"getCondition.js","sourceRoot":"","sources":["../../lib/DboBuilder/getCondition.ts"],"names":[],"mappings":"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"}
|
package/dist/Filtering.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Filtering.d.ts","sourceRoot":"","sources":["../lib/Filtering.ts"],"names":[],"mappings":"AAEA,OAAO,EAKL,UAAU,EAQX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AAIpE,eAAO,MAAM,eAAe,oSAMlB,CAAC;AAEX,eAAO,MAAM,6BAA6B,iTAqBS,CAAC;AAEpD;;;EAGE;AACF,KAAK,mBAAmB,GAAG;IACzB,MAAM,EAAE,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC/B,MAAM,EAAE,UAAU,EAAE,GAAG,SAAS,CAAC;IACjC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,kBAAkB,EAAE,MAAM,EAAE,CAAC;CAC9B,CAAC;AAEF,eAAO,MAAM,eAAe,SAAU,mBAAmB,KAAG,
|
|
1
|
+
{"version":3,"file":"Filtering.d.ts","sourceRoot":"","sources":["../lib/Filtering.ts"],"names":[],"mappings":"AAEA,OAAO,EAKL,UAAU,EAQX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AAIpE,eAAO,MAAM,eAAe,oSAMlB,CAAC;AAEX,eAAO,MAAM,6BAA6B,iTAqBS,CAAC;AAEpD;;;EAGE;AACF,KAAK,mBAAmB,GAAG;IACzB,MAAM,EAAE,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC/B,MAAM,EAAE,UAAU,EAAE,GAAG,SAAS,CAAC;IACjC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,kBAAkB,EAAE,MAAM,EAAE,CAAC;CAC9B,CAAC;AAEF,eAAO,MAAM,eAAe,SAAU,mBAAmB,KAAG,MAqV3D,CAAA;AAED,KAAK,iBAAiB,GAAG;IACvB,MAAM,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;IAC5C,UAAU,EAAE,UAAU,GAAG,SAAS,CAAC;CACpC,CAAA;AACD,eAAO,MAAM,qBAAqB,QAAS,GAAG,0BAA0B,iBAAiB,WAkBxF,CAAA"}
|
package/dist/Filtering.js
CHANGED
|
@@ -108,7 +108,7 @@ const parseFilterItem = (args) => {
|
|
|
108
108
|
validateSelectedItemFilter(selItem);
|
|
109
109
|
}
|
|
110
110
|
if (!selItem) {
|
|
111
|
-
return mErr("Bad filter. Could not match to a column or alias or dot notation
|
|
111
|
+
return mErr("Bad filter. Could not match to a column or alias or dot notation" + select?.map(s => s.alias));
|
|
112
112
|
}
|
|
113
113
|
let remainingStr = fKey.slice(selItem.alias.length);
|
|
114
114
|
/* Is json path spec */
|
package/dist/Filtering.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Filtering.js","sourceRoot":"","sources":["../lib/Filtering.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Filtering.js","sourceRoot":"","sources":["../lib/Filtering.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ import { prepareSortItems } from "../ViewHandler/prepareSortItems";
|
|
|
7
7
|
import { COMPUTED_FIELDS, FUNCTIONS } from "./Functions";
|
|
8
8
|
import { NewQuery, NewQueryJoin, SelectItemBuilder } from "./QueryBuilder";
|
|
9
9
|
import { prepareHaving } from "./prepareHaving";
|
|
10
|
+
import { PrepareWhereParams } from "../ViewHandler/prepareWhere";
|
|
10
11
|
|
|
11
12
|
const JOIN_KEYS = ["$innerJoin", "$leftJoin"] as const;
|
|
12
13
|
const JOIN_PARAM_KEYS = getKeys({
|
|
@@ -191,15 +192,25 @@ export async function getNewQuery(
|
|
|
191
192
|
const select = sBuilder.select;
|
|
192
193
|
|
|
193
194
|
const tableAlias = selectParams.alias;
|
|
194
|
-
const
|
|
195
|
+
const commonWhereParams: PrepareWhereParams = {
|
|
195
196
|
filter,
|
|
196
197
|
select,
|
|
197
198
|
forcedFilter: tableRules?.select?.forcedFilter,
|
|
198
199
|
filterFields: tableRules?.select?.filterFields,
|
|
199
200
|
tableAlias,
|
|
200
201
|
localParams,
|
|
201
|
-
tableRule: tableRules
|
|
202
|
+
tableRule: tableRules,
|
|
203
|
+
isHaving: false,
|
|
204
|
+
}
|
|
205
|
+
const filterOpts = await _this.prepareWhere({
|
|
206
|
+
...commonWhereParams,
|
|
207
|
+
isHaving: false,
|
|
202
208
|
});
|
|
209
|
+
const havingOpts = selectParams.having? await _this.prepareWhere({
|
|
210
|
+
...commonWhereParams,
|
|
211
|
+
filter: selectParams.having,
|
|
212
|
+
isHaving: true,
|
|
213
|
+
}) : undefined;
|
|
203
214
|
const where = filterOpts.where;
|
|
204
215
|
const validatedRules = _this.getValidatedRules(tableRules, localParams);
|
|
205
216
|
|
|
@@ -210,12 +221,7 @@ export async function getNewQuery(
|
|
|
210
221
|
joins: joinQueries,
|
|
211
222
|
where,
|
|
212
223
|
whereOpts: filterOpts,
|
|
213
|
-
having:
|
|
214
|
-
having: selectParams.having,
|
|
215
|
-
select,
|
|
216
|
-
tableAlias,
|
|
217
|
-
filterFieldNames: tableRules ? _this.parseFieldFilter(tableRules?.select?.filterFields) : _this.column_names.slice(0),
|
|
218
|
-
}),
|
|
224
|
+
having: havingOpts?.condition ?? "",
|
|
219
225
|
isLeftJoin: false,
|
|
220
226
|
limit: prepareLimitQuery(selectParams.limit, validatedRules),
|
|
221
227
|
orderByItems: prepareSortItems(
|
|
@@ -11,8 +11,7 @@ type Args = {
|
|
|
11
11
|
}
|
|
12
12
|
export const prepareHaving = ({ having, select, tableAlias, filterFieldNames }: Args) => {
|
|
13
13
|
if(!having || isEmpty(having)) return "";
|
|
14
|
-
|
|
15
|
-
// .find(s => s.alias);
|
|
14
|
+
|
|
16
15
|
const havingStr = parseFilterItem({
|
|
17
16
|
filter: having,
|
|
18
17
|
select,
|
|
@@ -5,7 +5,7 @@ import { SelectItem } from "../QueryBuilder/QueryBuilder";
|
|
|
5
5
|
import { TableRule } from "../../PublishParser/PublishParser";
|
|
6
6
|
import { getCondition } from "../getCondition";
|
|
7
7
|
|
|
8
|
-
type PrepareWhereParams = {
|
|
8
|
+
export type PrepareWhereParams = {
|
|
9
9
|
filter?: Filter;
|
|
10
10
|
select: SelectItem[] | undefined;
|
|
11
11
|
forcedFilter?: AnyObject;
|
|
@@ -13,7 +13,8 @@ type PrepareWhereParams = {
|
|
|
13
13
|
addWhere?: boolean;
|
|
14
14
|
tableAlias?: string,
|
|
15
15
|
localParams: LocalParams | undefined,
|
|
16
|
-
tableRule: TableRule | undefined
|
|
16
|
+
tableRule: TableRule | undefined,
|
|
17
|
+
isHaving?: boolean;
|
|
17
18
|
};
|
|
18
19
|
|
|
19
20
|
export async function prepareWhere(this: ViewHandler, params: PrepareWhereParams): Promise<{ condition: string; where: string; filter: AnyObject; exists: ExistsFilterConfig[]; }> {
|
|
@@ -61,7 +62,8 @@ export async function prepareWhere(this: ViewHandler, params: PrepareWhereParams
|
|
|
61
62
|
allowed_colnames: isForcedFilterBypass ? this.column_names.slice(0) : this.parseFieldFilter(filterFields),
|
|
62
63
|
tableAlias,
|
|
63
64
|
localParams: isForcedFilterBypass ? undefined : localParams,
|
|
64
|
-
tableRules: isForcedFilterBypass ? undefined : tableRule
|
|
65
|
+
tableRules: isForcedFilterBypass ? undefined : tableRule,
|
|
66
|
+
isHaving: params.isHaving,
|
|
65
67
|
});
|
|
66
68
|
result = cond.condition;
|
|
67
69
|
exists.push(...cond.exists);
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { FILTER_OPERANDS, parseFilterItem } from "../Filtering";
|
|
4
|
-
import { asValue } from "../PubSubManager/PubSubManager";
|
|
1
|
+
import { pickKeys } from "prostgles-types";
|
|
2
|
+
import { parseFilterItem } from "../Filtering";
|
|
5
3
|
import { TableRule } from "../PublishParser/PublishParser";
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
4
|
+
import { ExistsFilterConfig, LocalParams, pgp } from "./DboBuilder";
|
|
5
|
+
import { FUNCTIONS } from "./QueryBuilder/Functions";
|
|
6
|
+
import { SelectItem } from "./QueryBuilder/QueryBuilder";
|
|
8
7
|
import { ViewHandler } from "./ViewHandler/ViewHandler";
|
|
9
8
|
import { getExistsCondition } from "./ViewHandler/getExistsCondition";
|
|
10
9
|
import { getExistsFilters } from "./ViewHandler/getExistsFilters";
|
|
@@ -26,10 +25,11 @@ export async function getCondition(
|
|
|
26
25
|
allowed_colnames: string[],
|
|
27
26
|
tableAlias?: string,
|
|
28
27
|
localParams?: LocalParams,
|
|
29
|
-
tableRules?: TableRule
|
|
28
|
+
tableRules?: TableRule,
|
|
29
|
+
isHaving?: boolean,
|
|
30
30
|
},
|
|
31
31
|
): Promise<{ exists: ExistsFilterConfig[]; condition: string }> {
|
|
32
|
-
const { filter: rawFilter, select, allowed_colnames, tableAlias, localParams, tableRules } = params;
|
|
32
|
+
const { filter: rawFilter, select, allowed_colnames, tableAlias, localParams, tableRules, isHaving } = params;
|
|
33
33
|
|
|
34
34
|
const filter = { ... (rawFilter as any) } as any;
|
|
35
35
|
|
|
@@ -86,8 +86,8 @@ export async function getCondition(
|
|
|
86
86
|
if (select) {
|
|
87
87
|
/* Allow filtering by selected fields/funcs */
|
|
88
88
|
allowedSelect = select.filter(s => {
|
|
89
|
-
if (["function", "computed", "column"].includes(s.type)) {
|
|
90
|
-
|
|
89
|
+
if (["function", "computed", "column"].includes(s.type) || isHaving && s.type === "aggregation") {
|
|
90
|
+
/** Selected computed cols are allowed for filtering without checking. Why not allow all?! */
|
|
91
91
|
if (s.type !== "column" || allowed_colnames.includes(s.alias)) {
|
|
92
92
|
return true;
|
|
93
93
|
}
|
|
@@ -157,15 +157,24 @@ export async function getCondition(
|
|
|
157
157
|
|
|
158
158
|
if (invalidColumn) {
|
|
159
159
|
const selItem = select?.find(s => s.alias === invalidColumn);
|
|
160
|
+
let isComplexFilter = false;
|
|
160
161
|
if(selItem?.type === "aggregation"){
|
|
161
|
-
|
|
162
|
+
if(!params.isHaving){
|
|
163
|
+
throw new Error(`Filtering by ${invalidColumn} is not allowed. Aggregations cannot be filtered. Use HAVING clause instead.`);
|
|
164
|
+
} else {
|
|
165
|
+
isComplexFilter = true;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
if(!isComplexFilter){
|
|
170
|
+
const allowedCols = allowedSelect.map(s => s.type === "column" ? s.getQuery() : s.alias).join(", ");
|
|
171
|
+
const errMessage = `Table: ${this.name} -> disallowed/inexistent columns in filter: ${invalidColumn} \n Expecting one of: ${allowedCols}`;
|
|
172
|
+
throw errMessage;
|
|
162
173
|
}
|
|
163
|
-
const allowedCols = allowedSelect.map(s => s.type === "column" ? s.getQuery() : s.alias).join(", ");
|
|
164
|
-
const errMessage = `Table: ${this.name} -> disallowed/inexistent columns in filter: ${invalidColumn} \n Expecting one of: ${allowedCols}`;
|
|
165
|
-
throw errMessage;
|
|
166
174
|
}
|
|
167
175
|
|
|
168
176
|
/* TODO: Allow filter funcs */
|
|
177
|
+
// see isComplexFilter above where they are allowed
|
|
169
178
|
// const singleFuncs = FUNCTIONS.filter(f => f.singleColArg);
|
|
170
179
|
|
|
171
180
|
const f = pickKeys(filter, filterKeys);
|
package/lib/Filtering.ts
CHANGED
|
@@ -131,12 +131,11 @@ export const parseFilterItem = (args: ParseFilterItemArgs): string => {
|
|
|
131
131
|
validateSelectedItemFilter(selItem);
|
|
132
132
|
}
|
|
133
133
|
if(!selItem) {
|
|
134
|
-
return mErr("Bad filter. Could not match to a column or alias or dot notation
|
|
134
|
+
return mErr("Bad filter. Could not match to a column or alias or dot notation" + select?.map(s => s.alias));
|
|
135
135
|
}
|
|
136
136
|
|
|
137
137
|
let remainingStr = fKey.slice(selItem.alias.length);
|
|
138
138
|
|
|
139
|
-
|
|
140
139
|
/* Is json path spec */
|
|
141
140
|
if(remainingStr.startsWith("->")){
|
|
142
141
|
|
package/package.json
CHANGED
|
@@ -1205,14 +1205,33 @@ export const isomorphicQueries = async (db: DBOFullyTyped | DBHandlerClient, log
|
|
|
1205
1205
|
});
|
|
1206
1206
|
|
|
1207
1207
|
await test("Having clause", async () => {
|
|
1208
|
-
// await db.items.insert!([{ name: "a" }, { name: "a" }]);
|
|
1209
1208
|
const res = await db.items.find!(
|
|
1210
1209
|
{},
|
|
1211
1210
|
{
|
|
1212
1211
|
select: { name: 1, c: { $countAll: [] }
|
|
1213
1212
|
},
|
|
1214
|
-
having: {
|
|
1213
|
+
having: {
|
|
1215
1214
|
c: 4,
|
|
1215
|
+
}
|
|
1216
|
+
});
|
|
1217
|
+
assert.deepStrictEqual(res, [{
|
|
1218
|
+
c: '4',
|
|
1219
|
+
name: 'multi'
|
|
1220
|
+
}]);
|
|
1221
|
+
});
|
|
1222
|
+
|
|
1223
|
+
await test("Having clause with complex filter", async () => {
|
|
1224
|
+
const res = await db.items.find!(
|
|
1225
|
+
{},
|
|
1226
|
+
{
|
|
1227
|
+
select: { name: 1, c: { $countAll: [] }
|
|
1228
|
+
},
|
|
1229
|
+
having: {
|
|
1230
|
+
$filter: [
|
|
1231
|
+
{ $countAll: [] },
|
|
1232
|
+
"=",
|
|
1233
|
+
4
|
|
1234
|
+
],
|
|
1216
1235
|
}
|
|
1217
1236
|
});
|
|
1218
1237
|
assert.deepStrictEqual(res, [{
|