@legalplace/lplogic 2.1.6 → 2.3.0
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/.gitlab-ci.yml +14 -3
- package/CHANGELOG.md +25 -0
- package/dist/LpLogic.js +24 -0
- package/dist/Parser.js +1 -1
- package/dist/index.js +1 -0
- package/package.json +25 -15
- package/yarn.lock +0 -5050
package/.gitlab-ci.yml
CHANGED
|
@@ -1,17 +1,28 @@
|
|
|
1
|
-
image:
|
|
1
|
+
image: 148253454541.dkr.ecr.eu-west-1.amazonaws.com/deploydock:node20
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
stages:
|
|
5
5
|
- deploy
|
|
6
|
+
- build
|
|
6
7
|
|
|
7
8
|
before_script:
|
|
8
9
|
- export PATH=$PATH:./node_modules/.bin/
|
|
10
|
+
- echo -e "//registry.npmjs.org/:_authToken=${NPM_TOKEN}" > ~/.npmrc
|
|
11
|
+
|
|
9
12
|
|
|
10
13
|
variables:
|
|
11
14
|
DOCKER_DRIVER: overlay2
|
|
12
15
|
|
|
16
|
+
build:
|
|
17
|
+
stage: build
|
|
18
|
+
script:
|
|
19
|
+
- export PATH=$PATH:./node_modules/.bin/
|
|
20
|
+
- yarn install
|
|
21
|
+
- yarn build
|
|
22
|
+
except:
|
|
23
|
+
- master # Excludes the master branch
|
|
24
|
+
|
|
13
25
|
publish:
|
|
14
|
-
image: node:11-alpine
|
|
15
26
|
stage: deploy
|
|
16
27
|
except:
|
|
17
28
|
variables:
|
|
@@ -25,4 +36,4 @@ publish:
|
|
|
25
36
|
environment:
|
|
26
37
|
name: development
|
|
27
38
|
only:
|
|
28
|
-
- master
|
|
39
|
+
- master
|
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
|
+
|
|
5
|
+
## [2.3.0](https://git.legalplace.eu/legalplace/lplogic/compare/v2.2.0...v2.3.0) (2024-01-09)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
* adding new job build for non master branches ([95e101f](https://git.legalplace.eu/legalplace/lplogic/commit/95e101fe9a9199b06557731d7b753a3d067c82dc))
|
|
11
|
+
* adding new stage ([f3446a4](https://git.legalplace.eu/legalplace/lplogic/commit/f3446a441c640e7c88559ac8a4e92c3d990a08f3))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
### Bug Fixes
|
|
15
|
+
|
|
16
|
+
* add build files ([a54b21a](https://git.legalplace.eu/legalplace/lplogic/commit/a54b21a1177396622ccce8f2c98cee9d348bcdc7))
|
|
17
|
+
* update package.json ([116d9c2](https://git.legalplace.eu/legalplace/lplogic/commit/116d9c24bdecdce09cea4ca15017f8c6e6fef8be))
|
|
18
|
+
* update version node from 11 to 18 ([5570198](https://git.legalplace.eu/legalplace/lplogic/commit/5570198c2c75aba1c3d1b993823a95c0eb6ab157))
|
|
19
|
+
|
|
20
|
+
## [2.2.0](https://git.legalplace.eu/legalplace/lplogic/compare/v2.0.1...v2.2.0) (2024-01-09)
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
### Features
|
|
24
|
+
|
|
25
|
+
* adding new operator regex-match ([d6e31b3](https://git.legalplace.eu/legalplace/lplogic/commit/d6e31b3393fbddf4e79b9181acefda099aff5e0e))
|
package/dist/LpLogic.js
CHANGED
|
@@ -202,5 +202,29 @@ var notLike = function (values, comparator, parents) {
|
|
|
202
202
|
return reducedValues.length === filter.length;
|
|
203
203
|
};
|
|
204
204
|
json_logic_js_1.default.add_operation("not-like", notLike);
|
|
205
|
+
var regexMatch = function (values, comparator, parents) {
|
|
206
|
+
var reducedValues = reduceValues(values, parents, function (value, parent) {
|
|
207
|
+
var cleanValue = typeof value === "number" ? value.toString() : value.trim();
|
|
208
|
+
var regex;
|
|
209
|
+
if (typeof comparator === 'string') {
|
|
210
|
+
try {
|
|
211
|
+
regex = new RegExp(comparator);
|
|
212
|
+
}
|
|
213
|
+
catch (error) {
|
|
214
|
+
return false;
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
else {
|
|
218
|
+
if (!(comparator instanceof RegExp)) {
|
|
219
|
+
return false;
|
|
220
|
+
}
|
|
221
|
+
regex = comparator;
|
|
222
|
+
}
|
|
223
|
+
return regex.test(cleanValue) && parent;
|
|
224
|
+
});
|
|
225
|
+
var filter = reducedValues.filter(function (value) { return value === true; });
|
|
226
|
+
return reducedValues.length === filter.length;
|
|
227
|
+
};
|
|
228
|
+
json_logic_js_1.default.add_operation("regex-match", regexMatch);
|
|
205
229
|
var LpLogic = json_logic_js_1.default.apply;
|
|
206
230
|
exports.default = LpLogic;
|
package/dist/Parser.js
CHANGED
|
@@ -14,7 +14,7 @@ var Parser = (function () {
|
|
|
14
14
|
return this.logic;
|
|
15
15
|
};
|
|
16
16
|
Parser.prototype.validateCondition = function (condition) {
|
|
17
|
-
var result = jsonschema_1.validate(condition, condition_v1_schema_1.default);
|
|
17
|
+
var result = (0, jsonschema_1.validate)(condition, condition_v1_schema_1.default);
|
|
18
18
|
if (result.errors.length > 0) {
|
|
19
19
|
throw new Error(JSON.stringify(condition) + " is not a valid condition");
|
|
20
20
|
}
|
package/dist/index.js
CHANGED
|
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.Parser = void 0;
|
|
6
7
|
var LpLogic_1 = __importDefault(require("./LpLogic"));
|
|
7
8
|
var Parser_1 = __importDefault(require("./Parser"));
|
|
8
9
|
exports.Parser = Parser_1.default;
|
package/package.json
CHANGED
|
@@ -1,37 +1,47 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@legalplace/lplogic",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.3.0",
|
|
4
4
|
"description": "LegalPlace LpLogic",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
|
-
"types": "dist/index.d.ts",
|
|
7
6
|
"scripts": {
|
|
8
7
|
"test": "npx jest",
|
|
9
|
-
"build": "npx tsc"
|
|
8
|
+
"build": "npx tsc",
|
|
9
|
+
"release": "standard-version -a --no-verify"
|
|
10
10
|
},
|
|
11
11
|
"outDir": "./dist",
|
|
12
12
|
"author": "Moncef Hammou <moncef@legalplace.fr>",
|
|
13
13
|
"license": "ISC",
|
|
14
|
+
"dependencies": {
|
|
15
|
+
"@legalplace/models-v3-types": "5.1.24",
|
|
16
|
+
"@legalplace/json-logic-js": "^1.2.3",
|
|
17
|
+
"jsonschema": "^1.2.4"
|
|
18
|
+
},
|
|
14
19
|
"devDependencies": {
|
|
15
20
|
"@babel/core": "^7.7.2",
|
|
16
21
|
"@babel/preset-typescript": "^7.7.2",
|
|
17
|
-
"@
|
|
18
|
-
"@types/jest": "^24.0.15",
|
|
19
|
-
"@types/node": "^12.6.1",
|
|
22
|
+
"@types/node": "^12.12.6",
|
|
20
23
|
"@typescript-eslint/eslint-plugin": "^2.6.1",
|
|
21
24
|
"@typescript-eslint/parser": "^2.6.1",
|
|
22
25
|
"airbnb-standard": "^1.0.0",
|
|
23
26
|
"eslint": "^6.6.0",
|
|
24
27
|
"eslint-config-airbnb-base": "^14.0.0",
|
|
25
|
-
"eslint-config-prettier": "^6.5.0",
|
|
26
28
|
"eslint-plugin-import": "^2.18.2",
|
|
27
|
-
"
|
|
28
|
-
"
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"
|
|
29
|
+
"typescript": "4.4.3",
|
|
30
|
+
"semantic-release": "^17.1.1",
|
|
31
|
+
"husky": "^4.2.5",
|
|
32
|
+
"@commitlint/cli": "^9.0.1",
|
|
33
|
+
"@commitlint/config-conventional": "^9.0.1",
|
|
34
|
+
"standard-version": "^8.0.0"
|
|
32
35
|
},
|
|
33
|
-
"
|
|
34
|
-
"
|
|
35
|
-
|
|
36
|
+
"husky": {
|
|
37
|
+
"hooks": {
|
|
38
|
+
"pre-commit": "CI=true",
|
|
39
|
+
"commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
"commitlint": {
|
|
43
|
+
"extends": [
|
|
44
|
+
"@commitlint/config-conventional"
|
|
45
|
+
]
|
|
36
46
|
}
|
|
37
47
|
}
|