prostgles-server 4.2.312 → 4.2.314
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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"JSONBValidation.d.ts","sourceRoot":"","sources":["../../lib/JSONBValidation/JSONBValidation.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"JSONBValidation.d.ts","sourceRoot":"","sources":["../../lib/JSONBValidation/JSONBValidation.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2D,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAEjG,eAAO,MAAM,eAAe,iBAAkB,MAAM,SAAS,KAAG,MAAM,YAIrE,CAAC;AA0MF,eAAO,MAAM,mCAAmC;;mBAEzC,GAAG,WACC,MAAM;WAEL,MAAM;WAAS,SAAS;;YAAe,SAAS;;CAY3D,CAAC;AACF,eAAO,MAAM,gCAAgC;;mBAEtC,GAAG,WACC,MAAM,sDAKhB,CAAC;AACF,eAAO,MAAM,8BAA8B;;mBAEpC,GAAG,WACC,MAAM,8DAOhB,CAAC"}
|
|
@@ -88,6 +88,21 @@ const getPropertyValidationError = (value, rawFieldType, path = []) => {
|
|
|
88
88
|
return err;
|
|
89
89
|
return;
|
|
90
90
|
}
|
|
91
|
+
const arrayOf = fieldType.arrayOf ?? (fieldType.arrayOfType ? { type: fieldType.arrayOfType } : undefined);
|
|
92
|
+
if (arrayOf) {
|
|
93
|
+
if (!Array.isArray(value)) {
|
|
94
|
+
return err + " to be an array";
|
|
95
|
+
}
|
|
96
|
+
const error = value
|
|
97
|
+
.map((element, i) => {
|
|
98
|
+
return getPropertyValidationError(element, arrayOf, [...path, `${i}`]);
|
|
99
|
+
})
|
|
100
|
+
.filter(prostgles_types_1.isDefined)[0];
|
|
101
|
+
if (error !== undefined) {
|
|
102
|
+
return `${err}. Error at index ${path.length > 0 ? path.join(".") + "." : ""}\n\n${error}`;
|
|
103
|
+
}
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
91
106
|
const oneOf = fieldType.oneOf ?? fieldType.oneOfType?.map((type) => ({ type }));
|
|
92
107
|
if (oneOf) {
|
|
93
108
|
if (!oneOf.length) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"JSONBValidation.js","sourceRoot":"","sources":["../../lib/JSONBValidation/JSONBValidation.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"JSONBValidation.js","sourceRoot":"","sources":["../../lib/JSONBValidation/JSONBValidation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { getKeys, getObjectEntries, isEmpty, isObject, JSONB } from "prostgles-types";
|
|
1
|
+
import { getKeys, getObjectEntries, isDefined, isEmpty, isObject, JSONB } from "prostgles-types";
|
|
2
2
|
|
|
3
3
|
export const getFieldTypeObj = (rawFieldType: JSONB.FieldType): JSONB.FieldTypeObj => {
|
|
4
4
|
if (typeof rawFieldType === "string") return { type: rawFieldType };
|
|
@@ -96,6 +96,23 @@ const getPropertyValidationError = (
|
|
|
96
96
|
return;
|
|
97
97
|
}
|
|
98
98
|
|
|
99
|
+
const arrayOf =
|
|
100
|
+
fieldType.arrayOf ?? (fieldType.arrayOfType ? { type: fieldType.arrayOfType } : undefined);
|
|
101
|
+
if (arrayOf) {
|
|
102
|
+
if (!Array.isArray(value)) {
|
|
103
|
+
return err + " to be an array";
|
|
104
|
+
}
|
|
105
|
+
const error = value
|
|
106
|
+
.map((element, i) => {
|
|
107
|
+
return getPropertyValidationError(element, arrayOf, [...path, `${i}`]);
|
|
108
|
+
})
|
|
109
|
+
.filter(isDefined)[0];
|
|
110
|
+
if (error !== undefined) {
|
|
111
|
+
return `${err}. Error at index ${path.length > 0 ? path.join(".") + "." : ""}\n\n${error}`;
|
|
112
|
+
}
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
|
|
99
116
|
const oneOf = fieldType.oneOf ?? fieldType.oneOfType?.map((type) => ({ type }));
|
|
100
117
|
if (oneOf) {
|
|
101
118
|
if (!oneOf.length) {
|