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.
@@ -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, param3_unused?: undefined, table_rules?: TableRule | undefined, localParams?: LocalParams | undefined) => Promise<number>;
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, param3_unused?: undefined, table_rules?: TableRule, localParams?: LocalParams): Promise<number>;
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,aAAa,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAyB5L"}
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, param3_unused, table_rules, localParams) {
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 q = await this.find(filter, selectParams, undefined, table_rules, { ...localParams, returnQuery: "noRLS", bypassLimit: true });
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(*) FROM (",
15
- q,
14
+ "SELECT COUNT(*)",
15
+ "FROM (",
16
+ findQuery,
16
17
  ") t"
17
18
  ].join("\n");
18
- return (this.tx?.t || this.db).one(query).then(({ count }) => +count);
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,aAAyB,EAAE,WAAuB,EAAE,WAAyB;IACzK,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,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,CAAC;aAC1F,IAAI,CAAC,KAAK,EAAC,QAAQ,EAAC,EAAE;YACrB,MAAM,CAAC,GAAW,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,CACnD,CAAC;YACT,MAAM,KAAK,GAAG;gBACZ,IAAA,6BAAW,EAAC,WAAW,EAAE,EAAE,CAAC;gBAC5B,wBAAwB;gBACxB,CAAC;gBACD,KAAK;aACN,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;QACxE,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;AAzBD,sBAyBC"}
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, param3_unused?: undefined, table_rules?: TableRule, localParams?: LocalParams): Promise<number> {
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 q: string = await this.find(
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
- ) as any;
20
- const query = [
21
- withUserRLS(localParams, ""),
22
- "SELECT COUNT(*) FROM (",
23
- q,
24
- ") t"
25
- ].join("\n");
26
- return (this.tx?.t || this.db).one(query).then(({ count }) => +count);
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.51",
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.79"
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.120",
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.120",
2787
- "resolved": "https://registry.npmjs.org/prostgles-client/-/prostgles-client-4.0.120.tgz",
2788
- "integrity": "sha512-UZwUjG+jh0nbo7zi2GdBSVBSTZmW8IDO6DWkFVAHswvzy/KWpTHDMFU1r9Y0vHRfq9xmjyso7hWo4rtH8eVEGw==",
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.79"
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.79",
2809
- "resolved": "https://registry.npmjs.org/prostgles-types/-/prostgles-types-4.0.79.tgz",
2810
- "integrity": "sha512-WEO3EEQVHF2oEv0+cXNNc/rdSL9arb3l+Y5fkoimJPABUeJ/eIa0q4brxJ6+LNBZ+B1Vbm57tHq52YVJUMgbLg==",
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
  }
@@ -13,7 +13,7 @@
13
13
  "license": "ISC",
14
14
  "dependencies": {
15
15
  "@types/node": "^20.9.2",
16
- "prostgles-client": "^4.0.120",
16
+ "prostgles-client": "^4.0.121",
17
17
  "prostgles-types": "^4.0.51",
18
18
  "socket.io-client": "^4.7.5"
19
19
  },
@@ -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.50",
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.79"
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.79",
1551
+ "prostgles-types": "^4.0.81",
1552
1552
  "typescript": "^5.3.3"
1553
1553
  }
1554
1554
  },