prostgles-server 3.0.139 → 3.0.141

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.
@@ -1,3 +1,4 @@
1
1
  export declare const VALIDATE_SCHEMA_FUNCNAME: "validate_jsonb_schema";
2
+ export declare const JSONB_DATA_TYPES: readonly ["boolean", "number", "integer", "string", "Date", "time", "timestamp", "any", ...("string[]" | "number[]" | "boolean[]" | "integer[]" | "time[]" | "timestamp[]" | "Date[]" | "any[]")[], "Lookup", "Lookup[]"];
2
3
  export declare const validate_jsonb_schema_sql: string;
3
4
  //# sourceMappingURL=validate_jsonb_schema_sql.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validate_jsonb_schema_sql.d.ts","sourceRoot":"","sources":["../../lib/JSONBValidation/validate_jsonb_schema_sql.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,wBAAwB,yBAAmC,CAAC;AACzE,eAAO,MAAM,yBAAyB,QA4drC,CAAC"}
1
+ {"version":3,"file":"validate_jsonb_schema_sql.d.ts","sourceRoot":"","sources":["../../lib/JSONBValidation/validate_jsonb_schema_sql.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,wBAAwB,yBAAmC,CAAC;AACzE,eAAO,MAAM,gBAAgB,2NAGnB,CAAC;AAEX,eAAO,MAAM,yBAAyB,QA2drC,CAAC"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validate_jsonb_schema_sql = exports.VALIDATE_SCHEMA_FUNCNAME = void 0;
3
+ exports.validate_jsonb_schema_sql = exports.JSONB_DATA_TYPES = exports.VALIDATE_SCHEMA_FUNCNAME = void 0;
4
+ const prostgles_types_1 = require("prostgles-types");
4
5
  const PubSubManager_1 = require("../PubSubManager/PubSubManager");
5
6
  const raiseException = (err) => `
6
7
  IF (context->'silent')::BOOLEAN = TRUE THEN
@@ -10,6 +11,10 @@ ELSE
10
11
  END IF;
11
12
  `;
12
13
  exports.VALIDATE_SCHEMA_FUNCNAME = "validate_jsonb_schema";
14
+ exports.JSONB_DATA_TYPES = [
15
+ ...prostgles_types_1.DATA_TYPES,
16
+ "Lookup", "Lookup[]"
17
+ ];
13
18
  exports.validate_jsonb_schema_sql = `
14
19
 
15
20
  /*
@@ -32,12 +37,12 @@ DECLARE
32
37
  obj_key_val RECORD;
33
38
  schema JSONB;
34
39
  path text;
35
- allowed_types text[] = '{any,boolean,number,integer,string,Date,time,timestamp,Lookup,boolean[],number[],integer[],string[],any[],Date[],time[],timestamp[],Lookup[]}';
40
+ allowed_types text[] = '{${exports.JSONB_DATA_TYPES.join(",")}}';
36
41
  typeStr TEXT = NULL;
37
42
  optional boolean;
38
43
  nullable boolean;
39
- colname TEXT = context->>'column';
40
- tablename TEXT = context->>'table';
44
+ colname TEXT = COALESCE(context->>'column', '');
45
+ tablename TEXT = COALESCE(context->>'table', '');
41
46
  oneof JSONB;
42
47
  arrayof JSONB;
43
48
  lookup_data_def_schema TEXT = $d$
@@ -82,7 +87,6 @@ BEGIN
82
87
  'Data: ' || data::TEXT,
83
88
  'JSONBSchema: ' || schema::TEXT
84
89
  );
85
- colname = COALESCE(checked_path[1], '');
86
90
 
87
91
  IF length(jsonb_schema) = 0 THEN
88
92
  ${raiseException(`'Empty schema. %', path`)}
@@ -245,7 +249,7 @@ BEGIN
245
249
  ) t);
246
250
 
247
251
  IF array_length(extra_keys, 1) > 0 THEN
248
- ${raiseException(`E'Object contains invalid keys: % \n %', array_to_string(extra_keys, ', '), path`)}
252
+ ${raiseException(`E'Object contains % invalid keys: [ % ] \n %', array_length(extra_keys)::TEXT, array_to_string(extra_keys, ', '), path`)}
249
253
  END IF;
250
254
 
251
255
  FOR sub_schema IN
@@ -315,7 +319,7 @@ BEGIN
315
319
  /* Ignore duplicate errors */
316
320
  IF v_one_of_errors IS NULL OR v_one_of_errors NOT ilike '%' || v_msg || '%' THEN
317
321
  v_one_of_errors = concat_ws(
318
- E'\n',
322
+ E'\n\n',
319
323
  v_one_of_errors,
320
324
  concat_ws(
321
325
  ', ',
@@ -332,7 +336,7 @@ BEGIN
332
336
 
333
337
  END LOOP;
334
338
 
335
- ${raiseException(`'No oneOf schemas matching ( % ), %', v_one_of_errors, path`)}
339
+ ${raiseException(`E'No oneOf schemas matching:\n % ), %', v_one_of_errors, path`)}
336
340
 
337
341
  /* arrayOfType: { key_name: { type: "string" } } */
338
342
  ELSIF (schema ? 'arrayOf' OR schema ? 'arrayOfType') THEN
@@ -1 +1 @@
1
- {"version":3,"file":"validate_jsonb_schema_sql.js","sourceRoot":"","sources":["../../lib/JSONBValidation/validate_jsonb_schema_sql.ts"],"names":[],"mappings":";;;AAAA,kEAA+D;AAG/D,MAAM,cAAc,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC;;;;oBAIpB,GAAG;;CAEtB,CAAA;AAEY,QAAA,wBAAwB,GAAG,uBAAgC,CAAC;AAC5D,QAAA,yBAAyB,GAAG;;;IAGrC,6BAAa,CAAC,kCAAkC;;;0BAG1B,gCAAwB;4BACtB,gCAAwB;;6BAEvB,gCAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAkE/C,cAAc,CAAC,yBAAyB,CAAC;;;;;;;;;;;;;MAazC,cAAc,CAAC,2GAA2G,CAAC;;;;;;;QAOzH,cAAc,CAAC,4BAA4B,CAAC;;;;;;;;;;;QAW5C,cAAc,CAAC,8EAA8E,CAAC;;;;QAI9F,cAAc,CAAC,8DAA8D,CAAC;;;;;;;;;;;aAWzE,gCAAwB;;;;;;;;;;aAUxB,gCAAwB;;;;;;;;;;;;;;;;;;;;;;;;UAwB3B,cAAc,CAAC,yEAAyE,CAAC;;;;;;;;;YASvF,cAAc,CAAC,mDAAmD,CAAC;;;;;;;mBAO5D,gCAAwB;;;;;;;;;;;;;;;;;;;;;;;;;YAyB/B,cAAc,CAAC,wFAAwF,CAAC;;;;;;;;cAQtG,cAAc,CAAC,iHAAiH,CAAC;;;;;;;;cAQjI,cAAc,CAAC,oIAAoI,CAAC;;;YAGtJ,cAAc,CAAC,oEAAoE,CAAC;;;;;;;;;;UAUtF,cAAc,CAAC,oCAAoC,CAAC;;;;;;;;;;UAUpD,cAAc,CAAC,kFAAkF,CAAC;;;;;;;;;;;cAW9F,cAAc,CAAC,oFAAoF,CAAC;;;oBAG9F,gCAAwB;;;;;;;;;;;;;;QAcpC,cAAc,CAAC,sEAAsE,CAAC;;;;;;;;;QAStF,cAAc,CAAC,iGAAiG,CAAC;;;;;;;;;;;aAW5G,gCAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAuC/B,cAAc,CAAC,6DAA6D,CAAC;;;;;;;;QAQ3E,cAAc,CAAC,4BAA4B,CAAC;;;;;;;eAOrC,gCAAwB;;;;;;;;;;;;;;;;;;;;;;;QAuB/B,cAAc,CAAC,kIAAkI,CAAC;;;;QAIlJ,cAAc,CAAC,6BAA6B,CAAC;;;;;;;6EAOwB,gCAAwB;;;;;;;oEAOjC,gCAAwB;;;;;;;;;MAStF,cAAc,CAAC,yCAAyC,CAAC;;;;;;;sBAOzC,gCAAwB,QAAQ,6BAAa,CAAC,kCAAkC;;;;;;;;;;;;SAY7F,gCAAwB;;;;;;SAMxB,gCAAwB;;;;;SAKxB,gCAAwB;;;;SAIxB,gCAAwB;;;;;SAKxB,gCAAwB;;;;;;;;;;;;;;;;SAgBxB,gCAAwB;;;;;SAKxB,gCAAwB;;;;;SAKxB,gCAAwB;;;;;SAKxB,gCAAwB;;SAExB,gCAAwB;;SAExB,gCAAwB;;;SAGxB,gCAAwB;SACxB,gCAAwB;SACxB,gCAAwB;SACxB,gCAAwB;SACxB,gCAAwB;SACxB,gCAAwB;;SAExB,gCAAwB;SACxB,gCAAwB;;;SAGxB,gCAAwB;CAChC,CAAC"}
1
+ {"version":3,"file":"validate_jsonb_schema_sql.js","sourceRoot":"","sources":["../../lib/JSONBValidation/validate_jsonb_schema_sql.ts"],"names":[],"mappings":";;;AAAA,qDAA6C;AAC7C,kEAA+D;AAG/D,MAAM,cAAc,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC;;;;oBAIpB,GAAG;;CAEtB,CAAA;AAEY,QAAA,wBAAwB,GAAG,uBAAgC,CAAC;AAC5D,QAAA,gBAAgB,GAAG;IAC9B,GAAG,4BAAU;IACb,QAAQ,EAAC,UAAU;CACX,CAAC;AAEE,QAAA,yBAAyB,GAAG;;;IAGrC,6BAAa,CAAC,kCAAkC;;;0BAG1B,gCAAwB;4BACtB,gCAAwB;;6BAEvB,gCAAwB;;;;;;;;;;;;;6BAaxB,wBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAoDjD,cAAc,CAAC,yBAAyB,CAAC;;;;;;;;;;;;;MAazC,cAAc,CAAC,2GAA2G,CAAC;;;;;;;QAOzH,cAAc,CAAC,4BAA4B,CAAC;;;;;;;;;;;QAW5C,cAAc,CAAC,8EAA8E,CAAC;;;;QAI9F,cAAc,CAAC,8DAA8D,CAAC;;;;;;;;;;;aAWzE,gCAAwB;;;;;;;;;;aAUxB,gCAAwB;;;;;;;;;;;;;;;;;;;;;;;;UAwB3B,cAAc,CAAC,yEAAyE,CAAC;;;;;;;;;YASvF,cAAc,CAAC,mDAAmD,CAAC;;;;;;;mBAO5D,gCAAwB;;;;;;;;;;;;;;;;;;;;;;;;;YAyB/B,cAAc,CAAC,wFAAwF,CAAC;;;;;;;;cAQtG,cAAc,CAAC,iHAAiH,CAAC;;;;;;;;cAQjI,cAAc,CAAC,oIAAoI,CAAC;;;YAGtJ,cAAc,CAAC,oEAAoE,CAAC;;;;;;;;;;UAUtF,cAAc,CAAC,oCAAoC,CAAC;;;;;;;;;;UAUpD,cAAc,CAAC,wHAAwH,CAAC;;;;;;;;;;;cAWpI,cAAc,CAAC,oFAAoF,CAAC;;;oBAG9F,gCAAwB;;;;;;;;;;;;;;QAcpC,cAAc,CAAC,sEAAsE,CAAC;;;;;;;;;QAStF,cAAc,CAAC,iGAAiG,CAAC;;;;;;;;;;;aAW5G,gCAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAuC/B,cAAc,CAAC,gEAAgE,CAAC;;;;;;;;QAQ9E,cAAc,CAAC,4BAA4B,CAAC;;;;;;;eAOrC,gCAAwB;;;;;;;;;;;;;;;;;;;;;;;QAuB/B,cAAc,CAAC,kIAAkI,CAAC;;;;QAIlJ,cAAc,CAAC,6BAA6B,CAAC;;;;;;;6EAOwB,gCAAwB;;;;;;;oEAOjC,gCAAwB;;;;;;;;;MAStF,cAAc,CAAC,yCAAyC,CAAC;;;;;;;sBAOzC,gCAAwB,QAAQ,6BAAa,CAAC,kCAAkC;;;;;;;;;;;;SAY7F,gCAAwB;;;;;;SAMxB,gCAAwB;;;;;SAKxB,gCAAwB;;;;SAIxB,gCAAwB;;;;;SAKxB,gCAAwB;;;;;;;;;;;;;;;;SAgBxB,gCAAwB;;;;;SAKxB,gCAAwB;;;;;SAKxB,gCAAwB;;;;;SAKxB,gCAAwB;;SAExB,gCAAwB;;SAExB,gCAAwB;;;SAGxB,gCAAwB;SACxB,gCAAwB;SACxB,gCAAwB;SACxB,gCAAwB;SACxB,gCAAwB;SACxB,gCAAwB;;SAExB,gCAAwB;SACxB,gCAAwB;;;SAGxB,gCAAwB;CAChC,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export declare const VALIDATE_SCHEMA_FUNCNAME: "validate_jsonb_schema";
2
+ export declare const JSONB_DATA_TYPES: readonly ["boolean", "number", "integer", "string", "Date", "time", "timestamp", "any", ...("string[]" | "number[]" | "boolean[]" | "integer[]" | "time[]" | "timestamp[]" | "Date[]" | "any[]")[], "Lookup", "Lookup[]"];
2
3
  export declare const validate_jsonb_schema_sql: string;
3
4
  //# sourceMappingURL=validate_jsonb_schema_sql.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validate_jsonb_schema_sql.d.ts","sourceRoot":"","sources":["validate_jsonb_schema_sql.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,wBAAwB,yBAAmC,CAAC;AACzE,eAAO,MAAM,yBAAyB,QA4drC,CAAC"}
1
+ {"version":3,"file":"validate_jsonb_schema_sql.d.ts","sourceRoot":"","sources":["validate_jsonb_schema_sql.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,wBAAwB,yBAAmC,CAAC;AACzE,eAAO,MAAM,gBAAgB,2NAGnB,CAAC;AAEX,eAAO,MAAM,yBAAyB,QA2drC,CAAC"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validate_jsonb_schema_sql = exports.VALIDATE_SCHEMA_FUNCNAME = void 0;
3
+ exports.validate_jsonb_schema_sql = exports.JSONB_DATA_TYPES = exports.VALIDATE_SCHEMA_FUNCNAME = void 0;
4
+ const prostgles_types_1 = require("prostgles-types");
4
5
  const PubSubManager_1 = require("../PubSubManager/PubSubManager");
5
6
  const raiseException = (err) => `
6
7
  IF (context->'silent')::BOOLEAN = TRUE THEN
@@ -10,6 +11,10 @@ ELSE
10
11
  END IF;
11
12
  `;
12
13
  exports.VALIDATE_SCHEMA_FUNCNAME = "validate_jsonb_schema";
14
+ exports.JSONB_DATA_TYPES = [
15
+ ...prostgles_types_1.DATA_TYPES,
16
+ "Lookup", "Lookup[]"
17
+ ];
13
18
  exports.validate_jsonb_schema_sql = `
14
19
 
15
20
  /*
@@ -32,12 +37,12 @@ DECLARE
32
37
  obj_key_val RECORD;
33
38
  schema JSONB;
34
39
  path text;
35
- allowed_types text[] = '{any,boolean,number,integer,string,Date,time,timestamp,Lookup,boolean[],number[],integer[],string[],any[],Date[],time[],timestamp[],Lookup[]}';
40
+ allowed_types text[] = '{${exports.JSONB_DATA_TYPES.join(",")}}';
36
41
  typeStr TEXT = NULL;
37
42
  optional boolean;
38
43
  nullable boolean;
39
- colname TEXT = context->>'column';
40
- tablename TEXT = context->>'table';
44
+ colname TEXT = COALESCE(context->>'column', '');
45
+ tablename TEXT = COALESCE(context->>'table', '');
41
46
  oneof JSONB;
42
47
  arrayof JSONB;
43
48
  lookup_data_def_schema TEXT = $d$
@@ -82,7 +87,6 @@ BEGIN
82
87
  'Data: ' || data::TEXT,
83
88
  'JSONBSchema: ' || schema::TEXT
84
89
  );
85
- colname = COALESCE(checked_path[1], '');
86
90
 
87
91
  IF length(jsonb_schema) = 0 THEN
88
92
  ${raiseException(`'Empty schema. %', path`)}
@@ -245,7 +249,7 @@ BEGIN
245
249
  ) t);
246
250
 
247
251
  IF array_length(extra_keys, 1) > 0 THEN
248
- ${raiseException(`E'Object contains invalid keys: % \n %', array_to_string(extra_keys, ', '), path`)}
252
+ ${raiseException(`E'Object contains % invalid keys: [ % ] \n %', array_length(extra_keys)::TEXT, array_to_string(extra_keys, ', '), path`)}
249
253
  END IF;
250
254
 
251
255
  FOR sub_schema IN
@@ -315,7 +319,7 @@ BEGIN
315
319
  /* Ignore duplicate errors */
316
320
  IF v_one_of_errors IS NULL OR v_one_of_errors NOT ilike '%' || v_msg || '%' THEN
317
321
  v_one_of_errors = concat_ws(
318
- E'\n',
322
+ E'\n\n',
319
323
  v_one_of_errors,
320
324
  concat_ws(
321
325
  ', ',
@@ -332,7 +336,7 @@ BEGIN
332
336
 
333
337
  END LOOP;
334
338
 
335
- ${raiseException(`'No oneOf schemas matching ( % ), %', v_one_of_errors, path`)}
339
+ ${raiseException(`E'No oneOf schemas matching:\n % ), %', v_one_of_errors, path`)}
336
340
 
337
341
  /* arrayOfType: { key_name: { type: "string" } } */
338
342
  ELSIF (schema ? 'arrayOf' OR schema ? 'arrayOfType') THEN
@@ -1,3 +1,4 @@
1
+ import { DATA_TYPES } from "prostgles-types";
1
2
  import { PubSubManager } from "../PubSubManager/PubSubManager";
2
3
 
3
4
 
@@ -10,6 +11,11 @@ END IF;
10
11
  `
11
12
 
12
13
  export const VALIDATE_SCHEMA_FUNCNAME = "validate_jsonb_schema" as const;
14
+ export const JSONB_DATA_TYPES = [
15
+ ...DATA_TYPES,
16
+ "Lookup","Lookup[]"
17
+ ] as const;
18
+
13
19
  export const validate_jsonb_schema_sql = `
14
20
 
15
21
  /*
@@ -32,12 +38,12 @@ DECLARE
32
38
  obj_key_val RECORD;
33
39
  schema JSONB;
34
40
  path text;
35
- allowed_types text[] = '{any,boolean,number,integer,string,Date,time,timestamp,Lookup,boolean[],number[],integer[],string[],any[],Date[],time[],timestamp[],Lookup[]}';
41
+ allowed_types text[] = '{${JSONB_DATA_TYPES.join(",")}}';
36
42
  typeStr TEXT = NULL;
37
43
  optional boolean;
38
44
  nullable boolean;
39
- colname TEXT = context->>'column';
40
- tablename TEXT = context->>'table';
45
+ colname TEXT = COALESCE(context->>'column', '');
46
+ tablename TEXT = COALESCE(context->>'table', '');
41
47
  oneof JSONB;
42
48
  arrayof JSONB;
43
49
  lookup_data_def_schema TEXT = $d$
@@ -82,7 +88,6 @@ BEGIN
82
88
  'Data: ' || data::TEXT,
83
89
  'JSONBSchema: ' || schema::TEXT
84
90
  );
85
- colname = COALESCE(checked_path[1], '');
86
91
 
87
92
  IF length(jsonb_schema) = 0 THEN
88
93
  ${raiseException(`'Empty schema. %', path`)}
@@ -245,7 +250,7 @@ BEGIN
245
250
  ) t);
246
251
 
247
252
  IF array_length(extra_keys, 1) > 0 THEN
248
- ${raiseException(`E'Object contains invalid keys: % \n %', array_to_string(extra_keys, ', '), path`)}
253
+ ${raiseException(`E'Object contains % invalid keys: [ % ] \n %', array_length(extra_keys)::TEXT, array_to_string(extra_keys, ', '), path`)}
249
254
  END IF;
250
255
 
251
256
  FOR sub_schema IN
@@ -315,7 +320,7 @@ BEGIN
315
320
  /* Ignore duplicate errors */
316
321
  IF v_one_of_errors IS NULL OR v_one_of_errors NOT ilike '%' || v_msg || '%' THEN
317
322
  v_one_of_errors = concat_ws(
318
- E'\n',
323
+ E'\n\n',
319
324
  v_one_of_errors,
320
325
  concat_ws(
321
326
  ', ',
@@ -332,7 +337,7 @@ BEGIN
332
337
 
333
338
  END LOOP;
334
339
 
335
- ${raiseException(`'No oneOf schemas matching ( % ), %', v_one_of_errors, path`)}
340
+ ${raiseException(`E'No oneOf schemas matching:\n % ), %', v_one_of_errors, path`)}
336
341
 
337
342
  /* arrayOfType: { key_name: { type: "string" } } */
338
343
  ELSIF (schema ? 'arrayOf' OR schema ? 'arrayOfType') THEN
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "prostgles-server",
3
- "version": "3.0.139",
3
+ "version": "3.0.141",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1 +1 @@
1
- 35347
1
+ 63739
@@ -21,7 +21,7 @@
21
21
  },
22
22
  "../..": {
23
23
  "name": "prostgles-server",
24
- "version": "3.0.138",
24
+ "version": "3.0.140",
25
25
  "license": "MIT",
26
26
  "dependencies": {
27
27
  "@aws-sdk/client-s3": "^3.272.0",