@legalplace/lplogic 2.0.0 → 2.0.2
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/LpLogic.js +38 -4
- package/package.json +1 -1
package/dist/LpLogic.js
CHANGED
|
@@ -4,18 +4,30 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
var json_logic_js_1 = __importDefault(require("@legalplace/json-logic-js"));
|
|
7
|
+
var safeEqual = function (value, comparator) {
|
|
8
|
+
if (!isNaN(comparator)) {
|
|
9
|
+
if (!isNaN(value)) {
|
|
10
|
+
return parseFloat(value) === parseFloat(comparator);
|
|
11
|
+
}
|
|
12
|
+
return false;
|
|
13
|
+
}
|
|
14
|
+
if (!isNaN(value)) {
|
|
15
|
+
return false;
|
|
16
|
+
}
|
|
17
|
+
return value === comparator;
|
|
18
|
+
};
|
|
7
19
|
json_logic_js_1.default.add_operation("=", function (value, comparator) {
|
|
8
20
|
if (!Array.isArray(value)) {
|
|
9
|
-
return value
|
|
21
|
+
return safeEqual(value, comparator);
|
|
10
22
|
}
|
|
11
|
-
var filter = value.filter(function (_value) { return _value
|
|
23
|
+
var filter = value.filter(function (_value) { return safeEqual(_value, comparator); });
|
|
12
24
|
return value.length === filter.length;
|
|
13
25
|
});
|
|
14
26
|
json_logic_js_1.default.add_operation("<>", function (value, comparator) {
|
|
15
27
|
if (!Array.isArray(value)) {
|
|
16
|
-
return value
|
|
28
|
+
return !safeEqual(value, comparator);
|
|
17
29
|
}
|
|
18
|
-
var filter = value.filter(function (_value) { return _value
|
|
30
|
+
var filter = value.filter(function (_value) { return !safeEqual(_value, comparator); });
|
|
19
31
|
return value.length === filter.length;
|
|
20
32
|
});
|
|
21
33
|
json_logic_js_1.default.add_operation("==", function (value, comparator) {
|
|
@@ -98,5 +110,27 @@ json_logic_js_1.default.add_operation("does-not-contain", function (value, compa
|
|
|
98
110
|
var filter = value.filter(function (_value) { return _value !== comparator; });
|
|
99
111
|
return value.length === filter.length;
|
|
100
112
|
});
|
|
113
|
+
json_logic_js_1.default.add_operation("empty", function (value) {
|
|
114
|
+
if (!Array.isArray(value)) {
|
|
115
|
+
var stringValue = typeof value === "number" ? value.toString() : value;
|
|
116
|
+
return stringValue.trim().length === 0;
|
|
117
|
+
}
|
|
118
|
+
var filter = value.filter(function (_value) {
|
|
119
|
+
var stringValue = typeof _value === "number" ? _value.toString() : _value;
|
|
120
|
+
return stringValue.trim().length === 0;
|
|
121
|
+
});
|
|
122
|
+
return value.length === filter.length;
|
|
123
|
+
});
|
|
124
|
+
json_logic_js_1.default.add_operation("not-empty", function (value) {
|
|
125
|
+
if (!Array.isArray(value)) {
|
|
126
|
+
var stringValue = typeof value === "number" ? value.toString() : value;
|
|
127
|
+
return stringValue.trim().length > 0;
|
|
128
|
+
}
|
|
129
|
+
var filter = value.filter(function (_value) {
|
|
130
|
+
var stringValue = typeof _value === "number" ? _value.toString() : _value;
|
|
131
|
+
return stringValue.trim().length > 0;
|
|
132
|
+
});
|
|
133
|
+
return value.length === filter.length;
|
|
134
|
+
});
|
|
101
135
|
var LpLogic = json_logic_js_1.default.apply;
|
|
102
136
|
exports.default = LpLogic;
|