prostgles-server 4.2.51 → 4.2.53
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/ViewHandler/ViewHandler.d.ts +1 -1
- package/dist/DboBuilder/ViewHandler/ViewHandler.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/count.d.ts +1 -1
- package/dist/DboBuilder/ViewHandler/count.d.ts.map +1 -1
- package/dist/DboBuilder/ViewHandler/count.js +8 -6
- package/dist/DboBuilder/ViewHandler/count.js.map +1 -1
- package/lib/DboBuilder/ViewHandler/count.ts +14 -12
- package/package.json +2 -2
- package/tests/client/package-lock.json +8 -8
- package/tests/client/package.json +1 -1
- package/tests/isomorphicQueries.spec.ts +12 -3
- package/tests/server/package-lock.json +3 -3
|
@@ -72,7 +72,7 @@ export declare class ViewHandler {
|
|
|
72
72
|
unsubscribe: () => any;
|
|
73
73
|
}>;
|
|
74
74
|
subscribeOne(filter: Filter, params: SubscribeParams, localFunc: undefined, table_rules: TableRule, localParams: LocalParams): Promise<string>;
|
|
75
|
-
count: (_filter?: Filter | undefined, selectParams?: SelectParams | undefined,
|
|
75
|
+
count: (_filter?: Filter | undefined, selectParams?: SelectParams | undefined, _param3_unused?: undefined, table_rules?: TableRule | undefined, localParams?: LocalParams | undefined) => Promise<number>;
|
|
76
76
|
size: (_filter?: Filter | undefined, selectParams?: SelectParams | undefined, param3_unused?: undefined, table_rules?: TableRule | undefined, localParams?: LocalParams | undefined) => Promise<string>;
|
|
77
77
|
getAllowedSelectFields(selectParams: FieldFilter | undefined, allowed_cols: FieldFilter, allow_empty?: boolean): string[];
|
|
78
78
|
/**
|
|
@@ -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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"}
|
|
@@ -2,5 +2,5 @@ import { SelectParams } from "prostgles-types";
|
|
|
2
2
|
import { ViewHandler } from "./ViewHandler";
|
|
3
3
|
import { Filter, LocalParams } from "../DboBuilder";
|
|
4
4
|
import { TableRule } from "../../PublishParser/publishTypesAndUtils";
|
|
5
|
-
export declare function count(this: ViewHandler, _filter?: Filter, selectParams?: SelectParams,
|
|
5
|
+
export declare function count(this: ViewHandler, _filter?: Filter, selectParams?: SelectParams, _param3_unused?: undefined, table_rules?: TableRule, localParams?: LocalParams): Promise<number>;
|
|
6
6
|
//# sourceMappingURL=count.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"count.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/ViewHandler/count.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AAErE,wBAAsB,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"count.d.ts","sourceRoot":"","sources":["../../../lib/DboBuilder/ViewHandler/count.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AAErE,wBAAsB,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,YAAY,EAAE,cAAc,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CA2B7L"}
|
|
@@ -2,20 +2,22 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.count = void 0;
|
|
4
4
|
const dboBuilderUtils_1 = require("../dboBuilderUtils");
|
|
5
|
-
async function count(_filter, selectParams,
|
|
5
|
+
async function count(_filter, selectParams, _param3_unused, table_rules, localParams) {
|
|
6
6
|
const filter = _filter || {};
|
|
7
7
|
try {
|
|
8
8
|
await this._log({ command: "count", localParams, data: { filter } });
|
|
9
|
-
return await this.find(filter, { select: "", limit: 0 }, undefined, table_rules, localParams)
|
|
9
|
+
return await this.find(filter, { select: selectParams?.select ?? "", limit: 0 }, undefined, table_rules, localParams)
|
|
10
10
|
.then(async (_allowed) => {
|
|
11
|
-
const
|
|
11
|
+
const findQuery = await this.find(filter, selectParams, undefined, table_rules, { ...localParams, returnQuery: "noRLS", bypassLimit: true });
|
|
12
12
|
const query = [
|
|
13
13
|
(0, dboBuilderUtils_1.withUserRLS)(localParams, ""),
|
|
14
|
-
"SELECT COUNT(*)
|
|
15
|
-
|
|
14
|
+
"SELECT COUNT(*)",
|
|
15
|
+
"FROM (",
|
|
16
|
+
findQuery,
|
|
16
17
|
") t"
|
|
17
18
|
].join("\n");
|
|
18
|
-
|
|
19
|
+
const handler = this.tx?.t ?? this.db;
|
|
20
|
+
return handler.one(query).then(({ count }) => +count);
|
|
19
21
|
});
|
|
20
22
|
}
|
|
21
23
|
catch (e) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"count.js","sourceRoot":"","sources":["../../../lib/DboBuilder/ViewHandler/count.ts"],"names":[],"mappings":";;;AACA,wDAA6D;AAKtD,KAAK,UAAU,KAAK,CAAoB,OAAgB,EAAE,YAA2B,EAAE,
|
|
1
|
+
{"version":3,"file":"count.js","sourceRoot":"","sources":["../../../lib/DboBuilder/ViewHandler/count.ts"],"names":[],"mappings":";;;AACA,wDAA6D;AAKtD,KAAK,UAAU,KAAK,CAAoB,OAAgB,EAAE,YAA2B,EAAE,cAA0B,EAAE,WAAuB,EAAE,WAAyB;IAC1K,MAAM,MAAM,GAAG,OAAO,IAAI,EAAE,CAAC;IAC7B,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QACrE,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,CAAC;aAClH,IAAI,CAAC,KAAK,EAAC,QAAQ,EAAC,EAAE;YACrB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,IAAI,CAC/B,MAAM,EACN,YAAY,EACZ,SAAS,EACT,WAAW,EACX,EAAE,GAAG,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CACvC,CAAC;YACvB,MAAM,KAAK,GAAG;gBACZ,IAAA,6BAAW,EAAC,WAAW,EAAE,EAAE,CAAC;gBAC5B,iBAAiB;gBACjB,QAAQ;gBACR,SAAS;gBACT,KAAK;aACN,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACb,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;YACtC,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;IACP,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,WAAW,IAAI,WAAW,CAAC,QAAQ;YAAE,MAAM,CAAC,CAAC;QACjD,MAAM,IAAA,4BAAU,EAAC,CAAC,EAAE,OAAO,IAAI,CAAC,IAAI,UAAU,CAAC,CAAA;IACjD,CAAC;AACH,CAAC;AA3BD,sBA2BC"}
|
|
@@ -4,26 +4,28 @@ import { ViewHandler } from "./ViewHandler";
|
|
|
4
4
|
import { Filter, LocalParams } from "../DboBuilder";
|
|
5
5
|
import { TableRule } from "../../PublishParser/publishTypesAndUtils";
|
|
6
6
|
|
|
7
|
-
export async function count(this: ViewHandler, _filter?: Filter, selectParams?: SelectParams,
|
|
7
|
+
export async function count(this: ViewHandler, _filter?: Filter, selectParams?: SelectParams, _param3_unused?: undefined, table_rules?: TableRule, localParams?: LocalParams): Promise<number> {
|
|
8
8
|
const filter = _filter || {};
|
|
9
9
|
try {
|
|
10
10
|
await this._log({ command: "count", localParams, data: { filter } });
|
|
11
|
-
return await this.find(filter, { select: "", limit: 0 }, undefined, table_rules, localParams)
|
|
12
|
-
.then(async _allowed => {
|
|
13
|
-
const
|
|
11
|
+
return await this.find(filter, { select: selectParams?.select ?? "", limit: 0 }, undefined, table_rules, localParams)
|
|
12
|
+
.then(async _allowed => {
|
|
13
|
+
const findQuery = await this.find(
|
|
14
14
|
filter,
|
|
15
15
|
selectParams,
|
|
16
16
|
undefined,
|
|
17
17
|
table_rules,
|
|
18
18
|
{ ...localParams, returnQuery: "noRLS", bypassLimit: true }
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
19
|
+
) as unknown as string;
|
|
20
|
+
const query = [
|
|
21
|
+
withUserRLS(localParams, ""),
|
|
22
|
+
"SELECT COUNT(*)",
|
|
23
|
+
"FROM (",
|
|
24
|
+
findQuery,
|
|
25
|
+
") t"
|
|
26
|
+
].join("\n");
|
|
27
|
+
const handler = this.tx?.t ?? this.db;
|
|
28
|
+
return handler.one(query).then(({ count }) => +count);
|
|
27
29
|
});
|
|
28
30
|
} catch (e) {
|
|
29
31
|
if (localParams && localParams.testRule) throw e;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "prostgles-server",
|
|
3
|
-
"version": "4.2.
|
|
3
|
+
"version": "4.2.53",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
"pg-cursor": "^2.10.5",
|
|
44
44
|
"pg-promise": "^11.6.0",
|
|
45
45
|
"prostgles-client": "^4.0.53",
|
|
46
|
-
"prostgles-types": "^4.0.
|
|
46
|
+
"prostgles-types": "^4.0.81"
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
49
|
"@types/bluebird": "^3.5.36",
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"license": "ISC",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@types/node": "^20.9.2",
|
|
13
|
-
"prostgles-client": "^4.0.
|
|
13
|
+
"prostgles-client": "^4.0.121",
|
|
14
14
|
"prostgles-types": "^4.0.51",
|
|
15
15
|
"socket.io-client": "^4.7.5"
|
|
16
16
|
},
|
|
@@ -2783,13 +2783,13 @@
|
|
|
2783
2783
|
}
|
|
2784
2784
|
},
|
|
2785
2785
|
"node_modules/prostgles-client": {
|
|
2786
|
-
"version": "4.0.
|
|
2787
|
-
"resolved": "https://registry.npmjs.org/prostgles-client/-/prostgles-client-4.0.
|
|
2788
|
-
"integrity": "sha512-
|
|
2786
|
+
"version": "4.0.121",
|
|
2787
|
+
"resolved": "https://registry.npmjs.org/prostgles-client/-/prostgles-client-4.0.121.tgz",
|
|
2788
|
+
"integrity": "sha512-WKIOX7pbRb0KAjof2Drw7LwIuMYzv42BsaNU/ZeUhCARXjazKlSLCRtfgiYDqGzY101PdzV6v5fpWOA/aTgXtw==",
|
|
2789
2789
|
"dependencies": {
|
|
2790
2790
|
"i": "^0.3.7",
|
|
2791
2791
|
"npm": "^10.6.0",
|
|
2792
|
-
"prostgles-types": "^4.0.
|
|
2792
|
+
"prostgles-types": "^4.0.81"
|
|
2793
2793
|
},
|
|
2794
2794
|
"peerDependencies": {
|
|
2795
2795
|
"react": "^16.8.0 || ^17.0.0 || ^18.0.0",
|
|
@@ -2805,9 +2805,9 @@
|
|
|
2805
2805
|
}
|
|
2806
2806
|
},
|
|
2807
2807
|
"node_modules/prostgles-types": {
|
|
2808
|
-
"version": "4.0.
|
|
2809
|
-
"resolved": "https://registry.npmjs.org/prostgles-types/-/prostgles-types-4.0.
|
|
2810
|
-
"integrity": "sha512-
|
|
2808
|
+
"version": "4.0.81",
|
|
2809
|
+
"resolved": "https://registry.npmjs.org/prostgles-types/-/prostgles-types-4.0.81.tgz",
|
|
2810
|
+
"integrity": "sha512-wrU6taMahvuAxlXpNANmf48jfTSfg42AXF/LO6T7dfQyterU6igjDZq86Yaxqt5vy8VyILOgaIDb00JE0TGklA==",
|
|
2811
2811
|
"dependencies": {
|
|
2812
2812
|
"json-schema": "^0.4.0"
|
|
2813
2813
|
}
|
|
@@ -553,17 +553,26 @@ export const isomorphicQueries = async (db: DBOFullyTyped | DBHandlerClient, log
|
|
|
553
553
|
const res = await db.items.find!({}, { select: { name: 1 }, orderBy: [{ key: "name", asc: false, nulls: "first", nullEmpty: true }] });
|
|
554
554
|
assert.deepStrictEqual(res, [{ name: 'b'}, { name: 'a'}, { name: 'a'}]);
|
|
555
555
|
});
|
|
556
|
-
|
|
557
556
|
await test("Order by aliased func", async () => {
|
|
558
557
|
const res = await db.items.find!({ }, { select: { uname: { $upper: ["name"] }, count: { $countAll: [] } }, orderBy: { uname: -1 }});
|
|
559
558
|
assert.deepStrictEqual(res, [{ uname: 'B', count: '1'}, { uname: 'A', count: '2'} ])
|
|
560
559
|
});
|
|
561
|
-
|
|
560
|
+
await test("Filter by aliased func", async () => {
|
|
561
|
+
const res = await db.items.find!({ uname: 'B' }, { select: { uname: { $upper: ["name"] }, count: { $countAll: [] } } });
|
|
562
|
+
assert.deepStrictEqual(res, [{ uname: 'B', count: '1'}])
|
|
563
|
+
});
|
|
564
|
+
await test("Count with Filter by aliased func ", async () => {
|
|
565
|
+
const res = await db.items.count!({ uname: 'A' }, { select: { uname: { $upper: ["name"] } } });
|
|
566
|
+
assert.deepStrictEqual(res, 2)
|
|
567
|
+
});
|
|
568
|
+
await test("Count with Aggregate and Filter by aliased func ", async () => {
|
|
569
|
+
const res = await db.items.count!({ uname: 'A' }, { select: { uname: { $upper: ["name"] }, count: { $countAll: [] } } });
|
|
570
|
+
assert.deepStrictEqual(res, 1)
|
|
571
|
+
});
|
|
562
572
|
await test("Order by aggregation", async () => {
|
|
563
573
|
const res = await db.items.find!({ }, { select: { name: 1, count: { $countAll: [] } }, orderBy: { count: -1 }});
|
|
564
574
|
assert.deepStrictEqual(res, [ { name: 'a', count: '2'} , { name: 'b', count: '1'} ])
|
|
565
575
|
});
|
|
566
|
-
|
|
567
576
|
await test("Order by colliding alias name", async () => {
|
|
568
577
|
const res = await db.items.find!({ }, { select: { name: { $countAll: [] }, n: { $left: ["name", 1]} }, orderBy: { name: -1 }});
|
|
569
578
|
assert.deepStrictEqual(res, [ { name: '2', n: 'a' } , { name: '1', n: 'b'} ])
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
},
|
|
22
22
|
"../..": {
|
|
23
23
|
"name": "prostgles-server",
|
|
24
|
-
"version": "4.2.
|
|
24
|
+
"version": "4.2.52",
|
|
25
25
|
"license": "MIT",
|
|
26
26
|
"dependencies": {
|
|
27
27
|
"bluebird": "^3.7.2",
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"pg-cursor": "^2.10.5",
|
|
33
33
|
"pg-promise": "^11.6.0",
|
|
34
34
|
"prostgles-client": "^4.0.53",
|
|
35
|
-
"prostgles-types": "^4.0.
|
|
35
|
+
"prostgles-types": "^4.0.81"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|
|
38
38
|
"@types/bluebird": "^3.5.36",
|
|
@@ -1548,7 +1548,7 @@
|
|
|
1548
1548
|
"pg-cursor": "^2.10.5",
|
|
1549
1549
|
"pg-promise": "^11.6.0",
|
|
1550
1550
|
"prostgles-client": "^4.0.53",
|
|
1551
|
-
"prostgles-types": "^4.0.
|
|
1551
|
+
"prostgles-types": "^4.0.81",
|
|
1552
1552
|
"typescript": "^5.3.3"
|
|
1553
1553
|
}
|
|
1554
1554
|
},
|