inibase 1.3.0 → 1.4.1
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/index.js +4 -2
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -443,7 +443,9 @@ export default class Inibase {
|
|
|
443
443
|
data[field.key] = data[field.key].id;
|
|
444
444
|
if (field.regex) {
|
|
445
445
|
const regex = UtilsServer.getCachedRegex(field.regex);
|
|
446
|
-
if (
|
|
446
|
+
if ((Array.isArray(data[field.key]) &&
|
|
447
|
+
!data[field.key].every((v) => regex.test(String(v)))) ||
|
|
448
|
+
!regex.test(String(data[field.key])))
|
|
447
449
|
throw this.createError("INVALID_REGEX_MATCH", [field.key]);
|
|
448
450
|
}
|
|
449
451
|
if (field.unique) {
|
|
@@ -1088,7 +1090,7 @@ export default class Inibase {
|
|
|
1088
1090
|
const searchResult = await this.applyCriteria(tableName, options, criteriaAND, true, searchIn);
|
|
1089
1091
|
if (searchResult) {
|
|
1090
1092
|
searchIn = new Set(Object.keys(searchResult).map(Number));
|
|
1091
|
-
RETURN = Utils.deepMerge(RETURN, Object.fromEntries(Object.entries(searchResult).filter(([_k, v], _i) => Object.keys(v).filter((key) => Object.keys(criteriaAND).
|
|
1093
|
+
RETURN = Utils.deepMerge(RETURN, Object.fromEntries(Object.entries(searchResult).filter(([_k, v], _i) => Object.keys(v).filter((key) => Object.keys(criteriaAND).find((criteriaKey) => criteriaKey === key || criteriaKey.startsWith(`${key}.`))).length)));
|
|
1092
1094
|
}
|
|
1093
1095
|
else
|
|
1094
1096
|
return null;
|