prostgles-server 4.0.36 → 4.0.37

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.
Files changed (40) hide show
  1. package/dist/DboBuilder/ViewHandler.d.ts +1 -1
  2. package/dist/DboBuilder/ViewHandler.d.ts.map +1 -1
  3. package/dist/DboBuilder/ViewHandler.js +2 -77
  4. package/dist/DboBuilder/ViewHandler.js.map +1 -1
  5. package/dist/DboBuilder/delete.d.ts.map +1 -1
  6. package/dist/DboBuilder/delete.js +5 -2
  7. package/dist/DboBuilder/delete.js.map +1 -1
  8. package/dist/DboBuilder/find.d.ts +8 -0
  9. package/dist/DboBuilder/find.d.ts.map +1 -0
  10. package/dist/DboBuilder/find.js +89 -0
  11. package/dist/DboBuilder/find.js.map +1 -0
  12. package/dist/DboBuilder/insert.d.ts.map +1 -1
  13. package/dist/DboBuilder/insert.js +4 -2
  14. package/dist/DboBuilder/insert.js.map +1 -1
  15. package/dist/DboBuilder/update.d.ts.map +1 -1
  16. package/dist/DboBuilder/update.js +6 -1
  17. package/dist/DboBuilder/update.js.map +1 -1
  18. package/lib/DboBuilder/QueryBuilder/Functions.d.ts.map +1 -1
  19. package/lib/DboBuilder/QueryBuilder/Functions.js +18 -11
  20. package/lib/DboBuilder/ViewHandler.d.ts +1 -1
  21. package/lib/DboBuilder/ViewHandler.d.ts.map +1 -1
  22. package/lib/DboBuilder/ViewHandler.js +2 -77
  23. package/lib/DboBuilder/ViewHandler.ts +6 -80
  24. package/lib/DboBuilder/delete.d.ts.map +1 -1
  25. package/lib/DboBuilder/delete.js +5 -2
  26. package/lib/DboBuilder/delete.ts +7 -3
  27. package/lib/DboBuilder/find.d.ts +8 -0
  28. package/lib/DboBuilder/find.d.ts.map +1 -0
  29. package/lib/DboBuilder/find.js +88 -0
  30. package/lib/DboBuilder/find.ts +89 -0
  31. package/lib/DboBuilder/insert.d.ts.map +1 -1
  32. package/lib/DboBuilder/insert.js +4 -2
  33. package/lib/DboBuilder/insert.ts +4 -2
  34. package/lib/DboBuilder/update.d.ts.map +1 -1
  35. package/lib/DboBuilder/update.js +6 -1
  36. package/lib/DboBuilder/update.ts +7 -2
  37. package/lib/JSONBValidation/validation.js +1 -1
  38. package/package.json +2 -2
  39. package/tests/client/PID.txt +1 -1
  40. package/tests/server/package-lock.json +3 -3
@@ -5,6 +5,7 @@ const prostgles_types_1 = require("prostgles-types");
5
5
  const DboBuilder_1 = require("../DboBuilder");
6
6
  const PubSubManager_1 = require("../PubSubManager/PubSubManager");
7
7
  const uploadFile_1 = require("./uploadFile");
8
+ const find_1 = require("./find");
8
9
  async function update(filter, _newData, params, tableRules, localParams) {
9
10
  const ACTION = "update";
10
11
  try {
@@ -51,7 +52,8 @@ async function update(filter, _newData, params, tableRules, localParams) {
51
52
  const { returning, multi = true, onConflictDoNothing = false, fixIssues = false } = params || {};
52
53
  const { returnQuery = false } = localParams ?? {};
53
54
  if (params) {
54
- const good_params = ["returning", "multi", "onConflictDoNothing", "fixIssues"];
55
+ const good_paramsObj = { returning: 1, returnType: 1, fixIssues: 1, onConflictDoNothing: 1, multi: 1 };
56
+ const good_params = Object.keys(good_paramsObj);
55
57
  const bad_params = Object.keys(params).filter(k => !good_params.includes(k));
56
58
  if (bad_params && bad_params.length)
57
59
  throw "Invalid params: " + bad_params.join(", ") + " \n Expecting: " + good_params.join(", ");
@@ -106,6 +108,9 @@ async function update(filter, _newData, params, tableRules, localParams) {
106
108
  }
107
109
  if (returnQuery)
108
110
  return query;
111
+ if (params?.returnType) {
112
+ return (0, find_1.runQueryReturnType)(query, params.returnType, this, localParams);
113
+ }
109
114
  let result;
110
115
  if (this.t) {
111
116
  result = await (this.t)[qType](query).catch((err) => (0, DboBuilder_1.makeErrorFromPGError)(err, localParams, this, fields));
@@ -1 +1 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../../lib/DboBuilder/update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../lib/DboBuilder/update.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Functions.d.ts","sourceRoot":"","sources":["Functions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,UAAU,EAAqB,uBAAuB,EAAuC,MAAM,iBAAiB,CAAC;AAKtI,eAAO,MAAM,aAAa,aAAc;IAAE,IAAI,EAAE,MAAM,GAAG,YAAY,CAAC;IAAC,IAAI,EAAE,GAAG,EAAE,CAAC;IAAE,SAAS,EAAE,YAAY,EAAE,CAAC;IAAC,aAAa,EAAE,MAAM,EAAE,CAAC;CAAE,KAAG,YA0C5I,CAAA;AAGD,KAAK,YAAY,GAAG;IAClB,UAAU,EAAE,UAAU,EAAE,CAAC;IACzB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC5B;;OAEG;IACH,QAAQ,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,KAAK,MAAM,CAAC;CAC1D,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IAEb,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B;;OAEG;IACH,YAAY,EAAE,OAAO,CAAC;IAEtB;;OAEG;IAGH;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,IAAI,EAAE,UAAU,GAAG,aAAa,GAAG,UAAU,CAAC;IAC9C;;;OAGG;IACH,SAAS,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,GAAG,MAAM,EAAE,CAAC;IAC3C;;OAEG;IACH,QAAQ,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,MAAM,CAAC;IAE3C,UAAU,CAAC,EAAE,uBAAuB,CAAC;CACtC,CAAC;AA8VF;;EAEE;AACF,eAAO,MAAM,SAAS,EAAE,YAAY,EAwjBnC,CAAC;AAGF,eAAO,MAAM,eAAe,EAAE,SAAS,EA8BtC,CAAC"}
1
+ {"version":3,"file":"Functions.d.ts","sourceRoot":"","sources":["Functions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,UAAU,EAAqB,uBAAuB,EAAuC,MAAM,iBAAiB,CAAC;AAKtI,eAAO,MAAM,aAAa,aAAc;IAAE,IAAI,EAAE,MAAM,GAAG,YAAY,CAAC;IAAC,IAAI,EAAE,GAAG,EAAE,CAAC;IAAE,SAAS,EAAE,YAAY,EAAE,CAAC;IAAC,aAAa,EAAE,MAAM,EAAE,CAAC;CAAE,KAAG,YA0C5I,CAAA;AAGD,KAAK,YAAY,GAAG;IAClB,UAAU,EAAE,UAAU,EAAE,CAAC;IACzB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC5B;;OAEG;IACH,QAAQ,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,KAAK,MAAM,CAAC;CAC1D,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IAEb,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B;;OAEG;IACH,YAAY,EAAE,OAAO,CAAC;IAEtB;;OAEG;IAGH;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,IAAI,EAAE,UAAU,GAAG,aAAa,GAAG,UAAU,CAAC;IAC9C;;;OAGG;IACH,SAAS,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,GAAG,MAAM,EAAE,CAAC;IAC3C;;OAEG;IACH,QAAQ,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,MAAM,CAAC;IAE3C,UAAU,CAAC,EAAE,uBAAuB,CAAC;CACtC,CAAC;AA8VF;;EAEE;AACF,eAAO,MAAM,SAAS,EAAE,YAAY,EA+jBnC,CAAC;AAGF,eAAO,MAAM,eAAe,EAAE,SAAS,EA8BtC,CAAC"}
@@ -303,7 +303,7 @@ PostGIS_Funcs = PostGIS_Funcs.concat([
303
303
  singleColArg: true,
304
304
  numArgs: 1,
305
305
  getFields: (args) => [args[0]],
306
- getQuery: ({ allowedFields, args: [colName, ...otherArgs], tableAlias }) => {
306
+ getQuery: ({ args: [colName, ...otherArgs], tableAlias }) => {
307
307
  let secondArg = "";
308
308
  if (otherArgs.length)
309
309
  secondArg = ", " + otherArgs.map(arg => asValue(arg)).join(", ");
@@ -329,7 +329,7 @@ PostGIS_Funcs = PostGIS_Funcs.concat(["ST_Extent", "ST_3DExtent", "ST_XMin_Agg",
329
329
  singleColArg: true,
330
330
  numArgs: 1,
331
331
  getFields: (args) => [args[0]],
332
- getQuery: ({ allowedFields, args, tableAlias }) => {
332
+ getQuery: ({ args, tableAlias }) => {
333
333
  const escTabelName = (0, QueryBuilder_1.asNameAlias)(args[0], tableAlias) + "::geometry";
334
334
  if (fname.includes("Extent")) {
335
335
  return `${fname}(${escTabelName})`;
@@ -366,7 +366,7 @@ exports.FUNCTIONS = [
366
366
  singleColArg: false,
367
367
  numArgs: MAX_COL_NUM,
368
368
  getFields: (args) => args,
369
- getQuery: ({ allowedFields, args, tableAlias }) => {
369
+ getQuery: ({ args, tableAlias }) => {
370
370
  const q = DboBuilder_1.pgp.as.format("md5(" + args.map(fname => "COALESCE( " + (0, QueryBuilder_1.asNameAlias)(fname, tableAlias) + "::text, '' )").join(" || ") + ")");
371
371
  return q;
372
372
  }
@@ -378,7 +378,7 @@ exports.FUNCTIONS = [
378
378
  singleColArg: false,
379
379
  numArgs: MAX_COL_NUM,
380
380
  getFields: (args) => args,
381
- getQuery: ({ allowedFields, args, tableAlias }) => {
381
+ getQuery: ({ args, tableAlias }) => {
382
382
  const q = DboBuilder_1.pgp.as.format("md5(string_agg(" + args.map(fname => "COALESCE( " + (0, QueryBuilder_1.asNameAlias)(fname, tableAlias) + "::text, '' )").join(" || ") + ", ','))");
383
383
  return q;
384
384
  }
@@ -390,7 +390,7 @@ exports.FUNCTIONS = [
390
390
  singleColArg: false,
391
391
  numArgs: MAX_COL_NUM,
392
392
  getFields: (args) => args,
393
- getQuery: ({ allowedFields, args, tableAlias }) => {
393
+ getQuery: ({ args, tableAlias }) => {
394
394
  const q = DboBuilder_1.pgp.as.format("encode(sha256((" + args.map(fname => "COALESCE( " + (0, QueryBuilder_1.asNameAlias)(fname, tableAlias) + ", '' )").join(" || ") + ")::text::bytea), 'hex')");
395
395
  return q;
396
396
  }
@@ -402,7 +402,7 @@ exports.FUNCTIONS = [
402
402
  singleColArg: false,
403
403
  numArgs: MAX_COL_NUM,
404
404
  getFields: (args) => args,
405
- getQuery: ({ allowedFields, args, tableAlias }) => {
405
+ getQuery: ({ args, tableAlias }) => {
406
406
  const q = DboBuilder_1.pgp.as.format("encode(sha256(string_agg(" + args.map(fname => "COALESCE( " + (0, QueryBuilder_1.asNameAlias)(fname, tableAlias) + ", '' )").join(" || ") + ", ',')::text::bytea), 'hex')");
407
407
  return q;
408
408
  }
@@ -414,7 +414,7 @@ exports.FUNCTIONS = [
414
414
  singleColArg: false,
415
415
  numArgs: MAX_COL_NUM,
416
416
  getFields: (args) => args,
417
- getQuery: ({ allowedFields, args, tableAlias }) => {
417
+ getQuery: ({ args, tableAlias }) => {
418
418
  const q = DboBuilder_1.pgp.as.format("encode(sha512((" + args.map(fname => "COALESCE( " + (0, QueryBuilder_1.asNameAlias)(fname, tableAlias) + ", '' )").join(" || ") + ")::text::bytea), 'hex')");
419
419
  return q;
420
420
  }
@@ -426,7 +426,7 @@ exports.FUNCTIONS = [
426
426
  singleColArg: false,
427
427
  numArgs: MAX_COL_NUM,
428
428
  getFields: (args) => args,
429
- getQuery: ({ allowedFields, args, tableAlias }) => {
429
+ getQuery: ({ args, tableAlias }) => {
430
430
  const q = DboBuilder_1.pgp.as.format("encode(sha512(string_agg(" + args.map(fname => "COALESCE( " + (0, QueryBuilder_1.asNameAlias)(fname, tableAlias) + ", '' )").join(" || ") + ", ',')::text::bytea), 'hex')");
431
431
  return q;
432
432
  }
@@ -605,14 +605,21 @@ exports.FUNCTIONS = [
605
605
  }
606
606
  })),
607
607
  /* Basic 1 arg col funcs */
608
- ...["upper", "lower", "length", "reverse", "trim", "initcap", "round", "ceil", "floor", "sign", "md5"].map(funcName => ({
608
+ ...[
609
+ ...["TEXT"].flatMap(cast => [
610
+ "upper", "lower", "length", "reverse", "trim", "initcap"
611
+ ].map(funcName => ({ cast, funcName }))),
612
+ ...[""].flatMap(cast => [
613
+ "round", "ceil", "floor", "sign", "md5"
614
+ ].map(funcName => ({ cast, funcName }))),
615
+ ].map(({ funcName, cast }) => ({
609
616
  name: "$" + funcName,
610
617
  type: "function",
611
618
  numArgs: 1,
612
619
  singleColArg: true,
613
620
  getFields: (args) => [args[0]],
614
- getQuery: ({ allowedFields, args, tableAlias }) => {
615
- return funcName + "(" + (0, QueryBuilder_1.asNameAlias)(args[0], tableAlias) + ")";
621
+ getQuery: ({ args, tableAlias }) => {
622
+ return `${funcName}(${(0, QueryBuilder_1.asNameAlias)(args[0], tableAlias)}${cast ? `::${cast}` : ""})`;
616
623
  }
617
624
  })),
618
625
  /**
@@ -70,7 +70,7 @@ export declare class ViewHandler {
70
70
  getInfo(lang?: string, param2?: any, param3?: any, tableRules?: TableRule, localParams?: LocalParams): Promise<TInfo>;
71
71
  getColumns: any;
72
72
  getValidatedRules(tableRules?: TableRule, localParams?: LocalParams): ValidatedTableRules;
73
- find(filter?: Filter, selectParams?: SelectParams, param3_unused?: undefined, tableRules?: TableRule, localParams?: LocalParams): Promise<any[]>;
73
+ find: any;
74
74
  findOne(filter?: Filter, selectParams?: SelectParams, param3_unused?: undefined, table_rules?: TableRule, localParams?: LocalParams): Promise<any>;
75
75
  subscribe(filter: Filter, params: SubscribeParams, localFuncs: LocalFuncs): Promise<{
76
76
  unsubscribe: () => any;
@@ -1 +1 @@
1
- {"version":3,"file":"ViewHandler.d.ts","sourceRoot":"","sources":["ViewHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ViewHandler.d.ts","sourceRoot":"","sources":["ViewHandler.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ViewHandler = void 0;
4
- const makeSelectQuery_1 = require("../DboBuilder/QueryBuilder/makeSelectQuery");
5
4
  const getCondition_1 = require("./getCondition");
6
- const runSQL_1 = require("../DboBuilder/runSQL");
7
5
  const prostgles_types_1 = require("prostgles-types");
8
6
  const DboBuilder_1 = require("../DboBuilder");
9
7
  const PubSubManager_1 = require("../PubSubManager/PubSubManager");
@@ -11,6 +9,7 @@ const QueryBuilder_1 = require("./QueryBuilder/QueryBuilder");
11
9
  const Functions_1 = require("./QueryBuilder/Functions");
12
10
  const getColumns_1 = require("./getColumns");
13
11
  const subscribe_1 = require("./subscribe");
12
+ const find_1 = require("./find");
14
13
  class ColSet {
15
14
  opts;
16
15
  constructor(columns, tableName) {
@@ -497,81 +496,7 @@ class ViewHandler {
497
496
  };
498
497
  }
499
498
  }
500
- async find(filter, selectParams, param3_unused, tableRules, localParams) {
501
- try {
502
- filter = filter || {};
503
- const allowedReturnTypes = ["row", "value", "values", "statement"];
504
- const { returnType } = selectParams || {};
505
- if (returnType && !allowedReturnTypes.includes(returnType)) {
506
- throw `returnType (${returnType}) can only be ${allowedReturnTypes.join(" OR ")}`;
507
- }
508
- const { testRule = false, returnQuery = false, returnNewQuery } = localParams || {};
509
- if (testRule)
510
- return [];
511
- if (selectParams) {
512
- const good_params = ["select", "orderBy", "offset", "limit", "returnType", "groupBy"];
513
- const bad_params = Object.keys(selectParams).filter(k => !good_params.includes(k));
514
- if (bad_params && bad_params.length)
515
- throw "Invalid params: " + bad_params.join(", ") + " \n Expecting: " + good_params.join(", ");
516
- }
517
- /* Validate publish */
518
- if (tableRules) {
519
- if (!tableRules.select)
520
- throw "select rules missing for " + this.name;
521
- const fields = tableRules.select.fields;
522
- const maxLimit = tableRules.select.maxLimit;
523
- if (tableRules.select !== "*" && typeof tableRules.select !== "boolean" && !(0, DboBuilder_1.isPlainObject)(tableRules.select))
524
- throw `\nINVALID publish.${this.name}.select\nExpecting any of: "*" | { fields: "*" } | true | false`;
525
- if (!fields)
526
- throw ` invalid ${this.name}.select rule -> fields (required) setting missing.\nExpecting any of: "*" | { col_name: false } | { col1: true, col2: true }`;
527
- if (maxLimit && !Number.isInteger(maxLimit))
528
- throw ` invalid publish.${this.name}.select.maxLimit -> expecting integer but got ` + maxLimit;
529
- }
530
- const q = await (0, QueryBuilder_1.getNewQuery)(this, filter, selectParams, param3_unused, tableRules, localParams, this.columns), _query = (0, makeSelectQuery_1.makeSelectQuery)(this, q, undefined, undefined, selectParams);
531
- // console.log(_query, JSON.stringify(q, null, 2))
532
- if (testRule) {
533
- try {
534
- await this.db.any("EXPLAIN " + _query);
535
- return [];
536
- }
537
- catch (e) {
538
- console.error(e);
539
- throw `INTERNAL ERROR: Publish config is not valid for publish.${this.name}.select `;
540
- }
541
- }
542
- /** Used for subscribe */
543
- if (returnNewQuery)
544
- return q;
545
- if (returnQuery)
546
- return _query;
547
- if (returnType === "statement") {
548
- if (!(await (0, runSQL_1.canRunSQL)(this.dboBuilder.prostgles, localParams))) {
549
- throw `Not allowed: {returnType: "statement"} requires sql privileges `;
550
- }
551
- return _query;
552
- }
553
- if (["row", "value"].includes(returnType)) {
554
- return (this.t || this.db).oneOrNone(_query).then(data => {
555
- return (data && returnType === "value") ? Object.values(data)[0] : data;
556
- }).catch(err => (0, DboBuilder_1.makeErrorFromPGError)(err, localParams, this));
557
- }
558
- else {
559
- return (this.t || this.db).any(_query).then(data => {
560
- if (returnType === "values") {
561
- return data.map(d => Object.values(d)[0]);
562
- }
563
- return data;
564
- }).catch(err => (0, DboBuilder_1.makeErrorFromPGError)(err, localParams, this));
565
- }
566
- }
567
- catch (e) {
568
- // console.trace(e)
569
- if (localParams && localParams.testRule)
570
- throw e;
571
- throw (0, DboBuilder_1.parseError)(e, `dbo.${this.name}.find()`);
572
- // throw { err: parseError(e), msg: `Issue with dbo.${this.name}.find()`, args: { filter, selectParams} };
573
- }
574
- }
499
+ find = find_1.find.bind(this);
575
500
  findOne(filter, selectParams, param3_unused, table_rules, localParams) {
576
501
  try {
577
502
  const { select = "*", orderBy, offset = 0 } = selectParams || {};
@@ -1,8 +1,6 @@
1
- import { makeSelectQuery } from "../DboBuilder/QueryBuilder/makeSelectQuery";
2
1
  import { getCondition } from "./getCondition";
3
2
 
4
3
  import * as pgPromise from 'pg-promise';
5
- import { canRunSQL } from "../DboBuilder/runSQL";
6
4
  import {
7
5
  ColumnInfo, FieldFilter, SelectParams,
8
6
  OrderBy,
@@ -16,17 +14,19 @@ import {
16
14
  import { DB, DBHandlerServer, Join } from "../Prostgles";
17
15
  import {
18
16
  DboBuilder, escapeTSNames, ExistsFilterConfig,Filter, isPlainObject,
19
- JoinInfo, LocalParams, makeErrorFromPGError, parseError, pgp, postgresToTsType, SortItem,
17
+ JoinInfo, LocalParams, parseError, pgp, postgresToTsType, SortItem,
20
18
  TableHandlers, TableSchema, ValidatedTableRules
21
19
  } from "../DboBuilder";
22
20
  import { Graph } from "../shortestPath";
23
21
  import { TableRule, UpdateRule, ValidateRow } from "../PublishParser";
24
22
  import { asValue } from "../PubSubManager/PubSubManager";
25
23
  import { TableHandler } from "./TableHandler";
26
- import { asNameAlias, getNewQuery, SelectItem, SelectItemValidated } from "./QueryBuilder/QueryBuilder";
24
+ import { asNameAlias, SelectItem, SelectItemValidated } from "./QueryBuilder/QueryBuilder";
27
25
  import { COMPUTED_FIELDS, FieldSpec } from "./QueryBuilder/Functions";
28
26
  import { getColumns } from "./getColumns";
29
27
  import { LocalFuncs, subscribe } from "./subscribe";
28
+ import { find } from "./find";
29
+
30
30
  export type JoinPaths = {
31
31
  t1: string;
32
32
  t2: string;
@@ -600,82 +600,8 @@ export class ViewHandler {
600
600
  }
601
601
 
602
602
  }
603
-
604
- async find(filter?: Filter, selectParams?: SelectParams, param3_unused?: undefined, tableRules?: TableRule, localParams?: LocalParams): Promise<any[]> {
605
- try {
606
- filter = filter || {};
607
- const allowedReturnTypes: Array<SelectParams["returnType"]> = ["row", "value", "values", "statement"]
608
- const { returnType } = selectParams || {};
609
- if (returnType && !allowedReturnTypes.includes(returnType)) {
610
- throw `returnType (${returnType}) can only be ${allowedReturnTypes.join(" OR ")}`
611
- }
612
-
613
- const { testRule = false, returnQuery = false, returnNewQuery } = localParams || {};
614
-
615
- if (testRule) return [];
616
- if (selectParams) {
617
- const good_params: Array<keyof SelectParams> = ["select", "orderBy", "offset", "limit", "returnType", "groupBy"];
618
- const bad_params = Object.keys(selectParams).filter(k => !good_params.includes(k as any));
619
- if (bad_params && bad_params.length) throw "Invalid params: " + bad_params.join(", ") + " \n Expecting: " + good_params.join(", ");
620
- }
621
-
622
- /* Validate publish */
623
- if (tableRules) {
624
-
625
- if (!tableRules.select) throw "select rules missing for " + this.name;
626
- const fields = tableRules.select.fields;
627
- const maxLimit = tableRules.select.maxLimit;
628
-
629
- if (<any>tableRules.select !== "*" && typeof tableRules.select !== "boolean" && !isPlainObject(tableRules.select)) throw `\nINVALID publish.${this.name}.select\nExpecting any of: "*" | { fields: "*" } | true | false`
630
- if (!fields) throw ` invalid ${this.name}.select rule -> fields (required) setting missing.\nExpecting any of: "*" | { col_name: false } | { col1: true, col2: true }`;
631
- if (maxLimit && !Number.isInteger(maxLimit)) throw ` invalid publish.${this.name}.select.maxLimit -> expecting integer but got ` + maxLimit;
632
- }
633
-
634
- const q = await getNewQuery(this as unknown as TableHandler, filter, selectParams, param3_unused, tableRules, localParams, this.columns),
635
- _query = makeSelectQuery(this as unknown as TableHandler, q, undefined, undefined, selectParams);
636
- // console.log(_query, JSON.stringify(q, null, 2))
637
- if (testRule) {
638
- try {
639
- await this.db.any("EXPLAIN " + _query);
640
- return [];
641
- } catch (e) {
642
- console.error(e);
643
- throw `INTERNAL ERROR: Publish config is not valid for publish.${this.name}.select `
644
- }
645
- }
646
-
647
- /** Used for subscribe */
648
- if(returnNewQuery) return (q as unknown as any);
649
- if (returnQuery) return (_query as unknown as any[]);
650
-
651
- if (returnType === "statement") {
652
- if (!(await canRunSQL(this.dboBuilder.prostgles, localParams))) {
653
- throw `Not allowed: {returnType: "statement"} requires sql privileges `
654
- }
655
- return _query as unknown as any[];
656
- }
657
-
658
- if (["row", "value"].includes(returnType!)) {
659
- return (this.t || this.db).oneOrNone(_query).then(data => {
660
- return (data && returnType === "value") ? Object.values(data)[0] : data;
661
- }).catch(err => makeErrorFromPGError(err, localParams, this));
662
- } else {
663
- return (this.t || this.db).any(_query).then(data => {
664
- if (returnType === "values") {
665
- return data.map(d => Object.values(d)[0]);
666
- }
667
- return data;
668
- }).catch(err => makeErrorFromPGError(err, localParams, this));
669
- }
670
-
671
- } catch (e) {
672
- // console.trace(e)
673
- if (localParams && localParams.testRule) throw e;
674
- throw parseError(e, `dbo.${this.name}.find()`);
675
- // throw { err: parseError(e), msg: `Issue with dbo.${this.name}.find()`, args: { filter, selectParams} };
676
- }
677
- }
678
-
603
+ find = find.bind(this);
604
+
679
605
  findOne(filter?: Filter, selectParams?: SelectParams, param3_unused?: undefined, table_rules?: TableRule, localParams?: LocalParams): Promise<any> {
680
606
 
681
607
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["delete.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,YAAY,EAAe,MAAM,iBAAiB,CAAC;AAC/E,OAAO,EAAE,MAAM,EAAE,WAAW,EAAoC,MAAM,eAAe,CAAC;AACtF,OAAO,EAAc,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAEzD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,wBAAsB,OAAO,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,YAAY,EAAE,aAAa,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,CA6HrL"}
1
+ {"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["delete.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,YAAY,EAAe,MAAM,iBAAiB,CAAC;AAC/E,OAAO,EAAE,MAAM,EAAE,WAAW,EAAc,MAAM,eAAe,CAAC;AAChE,OAAO,EAAc,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAEzD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,wBAAsB,OAAO,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,YAAY,EAAE,aAAa,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,CAgIrL"}
@@ -4,6 +4,7 @@ exports._delete = void 0;
4
4
  const prostgles_types_1 = require("prostgles-types");
5
5
  const DboBuilder_1 = require("../DboBuilder");
6
6
  const PubSubManager_1 = require("../PubSubManager/PubSubManager");
7
+ const find_1 = require("./find");
7
8
  async function _delete(filter, params, param3_unused, table_rules, localParams) {
8
9
  try {
9
10
  const { returning } = params || {};
@@ -32,7 +33,8 @@ async function _delete(filter, params, param3_unused, table_rules, localParams)
32
33
  }
33
34
  }
34
35
  if (params) {
35
- const good_params = ["returning"];
36
+ const good_paramsObj = { returning: 1, returnType: 1 };
37
+ const good_params = Object.keys(good_paramsObj);
36
38
  const bad_params = Object.keys(params).filter(k => !good_params.includes(k));
37
39
  if (bad_params && bad_params.length)
38
40
  throw "Invalid params: " + bad_params.join(", ") + " \n Expecting: " + good_params.join(", ");
@@ -112,7 +114,8 @@ async function _delete(filter, params, param3_unused, table_rules, localParams)
112
114
  }
113
115
  }
114
116
  }
115
- return dbHandler[queryType](_query).catch((err) => (0, DboBuilder_1.makeErrorFromPGError)(err, localParams));
117
+ return (0, find_1.runQueryReturnType)(_query, params?.returnType, this, localParams);
118
+ // return dbHandler[queryType](_query).catch((err: any) => makeErrorFromPGError(err, localParams));
116
119
  }
117
120
  catch (e) {
118
121
  // console.trace(e)
@@ -1,9 +1,10 @@
1
1
  import pgPromise from "pg-promise";
2
2
  import { AnyObject, asName, DeleteParams, FieldFilter } from "prostgles-types";
3
- import { Filter, LocalParams, makeErrorFromPGError, parseError } from "../DboBuilder";
3
+ import { Filter, LocalParams, parseError } from "../DboBuilder";
4
4
  import { DeleteRule, TableRule } from "../PublishParser";
5
5
  import { pickKeys } from "../PubSubManager/PubSubManager";
6
6
  import { TableHandler } from "./TableHandler";
7
+ import { runQueryReturnType } from "./find";
7
8
 
8
9
  export async function _delete(this: TableHandler, filter?: Filter, params?: DeleteParams, param3_unused?: undefined, table_rules?: TableRule, localParams?: LocalParams): Promise<any> {
9
10
  try {
@@ -40,7 +41,8 @@ export async function _delete(this: TableHandler, filter?: Filter, params?: Dele
40
41
 
41
42
 
42
43
  if (params) {
43
- const good_params = ["returning"];
44
+ const good_paramsObj: Record<keyof DeleteParams, 1> = { returning: 1, returnType: 1 };
45
+ const good_params = Object.keys(good_paramsObj);
44
46
  const bad_params = Object.keys(params).filter(k => !good_params.includes(k));
45
47
  if (bad_params && bad_params.length) throw "Invalid params: " + bad_params.join(", ") + " \n Expecting: " + good_params.join(", ");
46
48
  }
@@ -124,7 +126,9 @@ export async function _delete(this: TableHandler, filter?: Filter, params?: Dele
124
126
  }
125
127
  }
126
128
 
127
- return dbHandler[queryType](_query).catch((err: any) => makeErrorFromPGError(err, localParams));
129
+ return runQueryReturnType(_query, params?.returnType, this, localParams);
130
+
131
+ // return dbHandler[queryType](_query).catch((err: any) => makeErrorFromPGError(err, localParams));
128
132
  } catch (e) {
129
133
  // console.trace(e)
130
134
  if (localParams && localParams.testRule) throw e;
@@ -0,0 +1,8 @@
1
+ import { SelectParams } from "prostgles-types";
2
+ import { Filter, LocalParams } from "../DboBuilder";
3
+ import { TableRule } from "../PublishParser";
4
+ import { TableHandler } from "./TableHandler";
5
+ import { ViewHandler } from "./ViewHandler";
6
+ export declare const find: (this: ViewHandler, filter?: Filter, selectParams?: SelectParams, param3_unused?: undefined, tableRules?: TableRule, localParams?: LocalParams) => Promise<any[]>;
7
+ export declare const runQueryReturnType: (query: string, returnType: SelectParams["returnType"], handler: ViewHandler | TableHandler, localParams: LocalParams | undefined) => Promise<any>;
8
+ //# sourceMappingURL=find.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"find.d.ts","sourceRoot":"","sources":["find.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAY,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAoC,MAAM,eAAe,CAAC;AAGtF,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,eAAO,MAAM,IAAI,SAAwB,WAAW,WAAW,MAAM,iBAAiB,YAAY,kBAAkB,SAAS,eAAe,SAAS,gBAAgB,WAAW,KAAG,QAAQ,GAAG,EAAE,CAuD/L,CAAA;AAGD,eAAO,MAAM,kBAAkB,UAAiB,MAAM,cAAc,YAAY,CAAC,YAAY,CAAC,WAAW,WAAW,GAAG,YAAY,eAAe,WAAW,GAAG,SAAS,iBAoBxK,CAAA"}
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runQueryReturnType = exports.find = void 0;
4
+ const prostgles_types_1 = require("prostgles-types");
5
+ const DboBuilder_1 = require("../DboBuilder");
6
+ const makeSelectQuery_1 = require("../DboBuilder/QueryBuilder/makeSelectQuery");
7
+ const runSQL_1 = require("../DboBuilder/runSQL");
8
+ const QueryBuilder_1 = require("./QueryBuilder/QueryBuilder");
9
+ const find = async function (filter, selectParams, param3_unused, tableRules, localParams) {
10
+ try {
11
+ filter = filter || {};
12
+ const allowedReturnTypes = ["row", "value", "values", "statement"];
13
+ const { returnType } = selectParams || {};
14
+ if (returnType && !allowedReturnTypes.includes(returnType)) {
15
+ throw `returnType (${returnType}) can only be ${allowedReturnTypes.join(" OR ")}`;
16
+ }
17
+ const { testRule = false, returnQuery = false, returnNewQuery } = localParams || {};
18
+ if (testRule)
19
+ return [];
20
+ if (selectParams) {
21
+ const good_params = ["select", "orderBy", "offset", "limit", "returnType", "groupBy"];
22
+ const bad_params = Object.keys(selectParams).filter(k => !good_params.includes(k));
23
+ if (bad_params && bad_params.length)
24
+ throw "Invalid params: " + bad_params.join(", ") + " \n Expecting: " + good_params.join(", ");
25
+ }
26
+ /* Validate publish */
27
+ if (tableRules) {
28
+ if (!tableRules.select)
29
+ throw "select rules missing for " + this.name;
30
+ const fields = tableRules.select.fields;
31
+ const maxLimit = tableRules.select.maxLimit;
32
+ if (tableRules.select !== "*" && typeof tableRules.select !== "boolean" && !(0, prostgles_types_1.isObject)(tableRules.select))
33
+ throw `\nINVALID publish.${this.name}.select\nExpecting any of: "*" | { fields: "*" } | true | false`;
34
+ if (!fields)
35
+ throw ` invalid ${this.name}.select rule -> fields (required) setting missing.\nExpecting any of: "*" | { col_name: false } | { col1: true, col2: true }`;
36
+ if (maxLimit && !Number.isInteger(maxLimit))
37
+ throw ` invalid publish.${this.name}.select.maxLimit -> expecting integer but got ` + maxLimit;
38
+ }
39
+ const q = await (0, QueryBuilder_1.getNewQuery)(this, filter, selectParams, param3_unused, tableRules, localParams, this.columns), _query = (0, makeSelectQuery_1.makeSelectQuery)(this, q, undefined, undefined, selectParams);
40
+ // console.log(_query, JSON.stringify(q, null, 2))
41
+ if (testRule) {
42
+ try {
43
+ await this.db.any("EXPLAIN " + _query);
44
+ return [];
45
+ }
46
+ catch (e) {
47
+ console.error(e);
48
+ throw `INTERNAL ERROR: Publish config is not valid for publish.${this.name}.select `;
49
+ }
50
+ }
51
+ /** Used for subscribe */
52
+ if (returnNewQuery)
53
+ return q;
54
+ if (returnQuery)
55
+ return _query;
56
+ return (0, exports.runQueryReturnType)(_query, returnType, this, localParams);
57
+ }
58
+ catch (e) {
59
+ // console.trace(e)
60
+ if (localParams && localParams.testRule)
61
+ throw e;
62
+ throw (0, DboBuilder_1.parseError)(e, `dbo.${this.name}.find()`);
63
+ // throw { err: parseError(e), msg: `Issue with dbo.${this.name}.find()`, args: { filter, selectParams} };
64
+ }
65
+ };
66
+ exports.find = find;
67
+ const runQueryReturnType = async (query, returnType, handler, localParams) => {
68
+ if (returnType === "statement") {
69
+ if (!(await (0, runSQL_1.canRunSQL)(handler.dboBuilder.prostgles, localParams))) {
70
+ throw `Not allowed: {returnType: "statement"} requires sql privileges `;
71
+ }
72
+ return query;
73
+ }
74
+ else if (["row", "value"].includes(returnType)) {
75
+ return (handler.t || handler.db).oneOrNone(query).then(data => {
76
+ return (data && returnType === "value") ? Object.values(data)[0] : data;
77
+ }).catch(err => (0, DboBuilder_1.makeErrorFromPGError)(err, localParams, this));
78
+ }
79
+ else {
80
+ return (handler.t || handler.db).any(query).then(data => {
81
+ if (returnType === "values") {
82
+ return data.map(d => Object.values(d)[0]);
83
+ }
84
+ return data;
85
+ }).catch(err => (0, DboBuilder_1.makeErrorFromPGError)(err, localParams, this));
86
+ }
87
+ };
88
+ exports.runQueryReturnType = runQueryReturnType;