@o3r/rules-engine 14.0.0-next.8 → 14.0.0-next.9

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@o3r/rules-engine",
3
- "version": "14.0.0-next.8",
3
+ "version": "14.0.0-next.9",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -50,10 +50,10 @@
50
50
  "@ngrx/entity": "^20.0.0",
51
51
  "@ngrx/store": "^20.0.0",
52
52
  "@ngx-translate/core": "^15.0.0 || ~16.0.4",
53
- "@o3r/core": "~14.0.0-next.8",
54
- "@o3r/extractors": "~14.0.0-next.8",
55
- "@o3r/logger": "~14.0.0-next.8",
56
- "@o3r/schematics": "~14.0.0-next.8",
53
+ "@o3r/core": "~14.0.0-next.9",
54
+ "@o3r/extractors": "~14.0.0-next.9",
55
+ "@o3r/logger": "~14.0.0-next.9",
56
+ "@o3r/schematics": "~14.0.0-next.9",
57
57
  "@schematics/angular": "^20.0.0",
58
58
  "@types/json-schema": "^7.0.15",
59
59
  "globby": "^11.1.0",
@@ -104,7 +104,7 @@
104
104
  }
105
105
  },
106
106
  "dependencies": {
107
- "@o3r/schematics": "~14.0.0-next.8",
107
+ "@o3r/schematics": "~14.0.0-next.9",
108
108
  "tslib": "^2.6.2"
109
109
  },
110
110
  "engines": {
@@ -1,3 +1,869 @@
1
1
  {
2
- "operators": []
2
+ "operators": [
3
+ {
4
+ "id": "arrayContains",
5
+ "description": "Check if any of the variable's value is equal to a specific value",
6
+ "display": "contains",
7
+ "leftOperand": {
8
+ "types": [
9
+ "string",
10
+ "number",
11
+ "date",
12
+ "boolean"
13
+ ],
14
+ "nbValues": -1
15
+ },
16
+ "rightOperand": {
17
+ "types": [
18
+ "string",
19
+ "number",
20
+ "date",
21
+ "boolean"
22
+ ],
23
+ "nbValues": 1
24
+ }
25
+ },
26
+ {
27
+ "id": "stringContains",
28
+ "description": "Check if the specified text value is included in the text variable",
29
+ "display": "contains",
30
+ "leftOperand": {
31
+ "types": [
32
+ "string"
33
+ ],
34
+ "nbValues": 1
35
+ },
36
+ "rightOperand": {
37
+ "types": [
38
+ "string"
39
+ ],
40
+ "nbValues": 1
41
+ }
42
+ },
43
+ {
44
+ "id": "notArrayContains",
45
+ "description": "Check if every value of the variable is different from a specific value",
46
+ "display": "does not contain",
47
+ "leftOperand": {
48
+ "types": [
49
+ "string",
50
+ "number",
51
+ "date",
52
+ "boolean"
53
+ ],
54
+ "nbValues": -1
55
+ },
56
+ "rightOperand": {
57
+ "types": [
58
+ "string",
59
+ "number",
60
+ "date",
61
+ "boolean"
62
+ ],
63
+ "nbValues": 1
64
+ }
65
+ },
66
+ {
67
+ "id": "notStringContains",
68
+ "description": "Check if the specified text value is not included in the text variable",
69
+ "display": "does not contain",
70
+ "leftOperand": {
71
+ "types": [
72
+ "string"
73
+ ],
74
+ "nbValues": 1
75
+ },
76
+ "rightOperand": {
77
+ "types": [
78
+ "string"
79
+ ],
80
+ "nbValues": 1
81
+ }
82
+ },
83
+ {
84
+ "id": "allEqual",
85
+ "description": "Check if every value of the variable equals a specific value",
86
+ "display": "all equal to",
87
+ "leftOperand": {
88
+ "types": [
89
+ "string",
90
+ "number",
91
+ "date",
92
+ "boolean"
93
+ ],
94
+ "nbValues": -1
95
+ },
96
+ "rightOperand": {
97
+ "types": [
98
+ "string",
99
+ "number",
100
+ "date",
101
+ "boolean"
102
+ ],
103
+ "nbValues": 1
104
+ }
105
+ },
106
+ {
107
+ "id": "allGreater",
108
+ "description": "Check if every numerical value of the variable is greater than a specific value",
109
+ "display": "all >",
110
+ "leftOperand": {
111
+ "types": [
112
+ "string",
113
+ "number",
114
+ "date",
115
+ "boolean"
116
+ ],
117
+ "nbValues": -1
118
+ },
119
+ "rightOperand": {
120
+ "types": [
121
+ "number",
122
+ "string"
123
+ ],
124
+ "nbValues": 1
125
+ }
126
+ },
127
+ {
128
+ "id": "allIn",
129
+ "description": "Check if every value of the variable is in a specific list",
130
+ "display": "all in",
131
+ "leftOperand": {
132
+ "types": [
133
+ "string",
134
+ "number",
135
+ "date",
136
+ "boolean"
137
+ ],
138
+ "nbValues": -1
139
+ },
140
+ "rightOperand": {
141
+ "types": [
142
+ "string",
143
+ "number",
144
+ "date",
145
+ "boolean"
146
+ ],
147
+ "nbValues": -1
148
+ }
149
+ },
150
+ {
151
+ "id": "allNotIn",
152
+ "description": "Check if every value of the variable is not in a specific list",
153
+ "display": "none in",
154
+ "leftOperand": {
155
+ "types": [
156
+ "string",
157
+ "number",
158
+ "date",
159
+ "boolean"
160
+ ],
161
+ "nbValues": -1
162
+ },
163
+ "rightOperand": {
164
+ "types": [
165
+ "string",
166
+ "number",
167
+ "date",
168
+ "boolean"
169
+ ],
170
+ "nbValues": -1
171
+ }
172
+ },
173
+ {
174
+ "id": "allLower",
175
+ "description": "Check if every numerical value of the variable is lower than a specific value",
176
+ "display": "all <",
177
+ "leftOperand": {
178
+ "types": [
179
+ "number"
180
+ ],
181
+ "nbValues": -1
182
+ },
183
+ "rightOperand": {
184
+ "types": [
185
+ "number",
186
+ "string"
187
+ ],
188
+ "nbValues": 1
189
+ }
190
+ },
191
+ {
192
+ "id": "allMatch",
193
+ "description": "Check if every string value of the variable matches a specific pattern",
194
+ "display": "all match",
195
+ "leftOperand": {
196
+ "types": [
197
+ "string"
198
+ ],
199
+ "nbValues": -1
200
+ },
201
+ "rightOperand": {
202
+ "types": [
203
+ "string"
204
+ ],
205
+ "nbValues": 1
206
+ }
207
+ },
208
+ {
209
+ "id": "allRangeNumber",
210
+ "description": "Check if every value of the variable is included in a specified range",
211
+ "display": "all between",
212
+ "leftOperand": {
213
+ "types": [
214
+ "number"
215
+ ],
216
+ "nbValues": -1
217
+ },
218
+ "rightOperand": {
219
+ "types": [
220
+ "number",
221
+ "string"
222
+ ],
223
+ "nbValues": 2
224
+ }
225
+ },
226
+ {
227
+ "id": "oneEquals",
228
+ "description": "Check if at least one of the values of the variable equals a specific value",
229
+ "display": "one equal to",
230
+ "leftOperand": {
231
+ "types": [
232
+ "string",
233
+ "number",
234
+ "date",
235
+ "boolean"
236
+ ],
237
+ "nbValues": -1
238
+ },
239
+ "rightOperand": {
240
+ "types": [
241
+ "string",
242
+ "number",
243
+ "date",
244
+ "boolean"
245
+ ],
246
+ "nbValues": 1
247
+ }
248
+ },
249
+ {
250
+ "id": "oneGreater",
251
+ "description": "Check if one of the values of the variable is greater than a specific value",
252
+ "display": "one >",
253
+ "leftOperand": {
254
+ "types": [
255
+ "number"
256
+ ],
257
+ "nbValues": -1
258
+ },
259
+ "rightOperand": {
260
+ "types": [
261
+ "number",
262
+ "string"
263
+ ],
264
+ "nbValues": 1
265
+ }
266
+ },
267
+ {
268
+ "id": "oneIn",
269
+ "description": "Check if at least one of the values of the variable is equal to one in a specified list",
270
+ "display": "one in",
271
+ "leftOperand": {
272
+ "types": [
273
+ "string",
274
+ "number",
275
+ "date",
276
+ "boolean"
277
+ ],
278
+ "nbValues": -1
279
+ },
280
+ "rightOperand": {
281
+ "types": [
282
+ "string",
283
+ "number",
284
+ "date",
285
+ "boolean"
286
+ ],
287
+ "nbValues": -1
288
+ }
289
+ },
290
+ {
291
+ "id": "oneLower",
292
+ "description": "Check if one of the values of the variable is lower than a specific value",
293
+ "display": "one <",
294
+ "leftOperand": {
295
+ "types": [
296
+ "number"
297
+ ],
298
+ "nbValues": -1
299
+ },
300
+ "rightOperand": {
301
+ "types": [
302
+ "number",
303
+ "string"
304
+ ],
305
+ "nbValues": 1
306
+ }
307
+ },
308
+ {
309
+ "id": "oneMatches",
310
+ "description": "Check if one of the values of the variable matches a specific pattern",
311
+ "display": "one matches",
312
+ "leftOperand": {
313
+ "types": [
314
+ "string"
315
+ ],
316
+ "nbValues": -1
317
+ },
318
+ "rightOperand": {
319
+ "types": [
320
+ "string"
321
+ ],
322
+ "nbValues": 1
323
+ }
324
+ },
325
+ {
326
+ "id": "oneRangeNumber",
327
+ "description": "Check if one of the values of the variable is included in a specified range",
328
+ "display": "one between",
329
+ "leftOperand": {
330
+ "types": [
331
+ "number"
332
+ ],
333
+ "nbValues": -1
334
+ },
335
+ "rightOperand": {
336
+ "types": [
337
+ "number",
338
+ "string"
339
+ ],
340
+ "nbValues": 2
341
+ }
342
+ },
343
+ {
344
+ "id": "lengthEquals",
345
+ "description": "Check if the number of values of the variable is equal to a specific value",
346
+ "display": "number of =",
347
+ "leftOperand": {
348
+ "types": [
349
+ "string",
350
+ "number",
351
+ "date",
352
+ "boolean",
353
+ "object"
354
+ ],
355
+ "nbValues": -1
356
+ },
357
+ "rightOperand": {
358
+ "types": [
359
+ "number",
360
+ "string"
361
+ ],
362
+ "nbValues": 1
363
+ }
364
+ },
365
+ {
366
+ "id": "lengthNotEquals",
367
+ "description": "Check if the number of values of the variable is different from a specific value",
368
+ "display": "number of ≠",
369
+ "leftOperand": {
370
+ "types": [
371
+ "string",
372
+ "number",
373
+ "date",
374
+ "boolean",
375
+ "object"
376
+ ],
377
+ "nbValues": -1
378
+ },
379
+ "rightOperand": {
380
+ "types": [
381
+ "number",
382
+ "string"
383
+ ],
384
+ "nbValues": 1
385
+ }
386
+ },
387
+ {
388
+ "id": "lengthLessThanOrEquals",
389
+ "description": "Check if the number of values of the variable is lower or equal to a specific value",
390
+ "display": "number of ≤",
391
+ "leftOperand": {
392
+ "types": [
393
+ "string",
394
+ "number",
395
+ "date",
396
+ "boolean",
397
+ "object"
398
+ ],
399
+ "nbValues": -1
400
+ },
401
+ "rightOperand": {
402
+ "types": [
403
+ "number",
404
+ "string"
405
+ ],
406
+ "nbValues": 1
407
+ }
408
+ },
409
+ {
410
+ "id": "lengthLessThan",
411
+ "description": "Check if the number of values of the variable is lower than a specific value",
412
+ "display": "number of <",
413
+ "leftOperand": {
414
+ "types": [
415
+ "string",
416
+ "number",
417
+ "date",
418
+ "boolean",
419
+ "object"
420
+ ],
421
+ "nbValues": -1
422
+ },
423
+ "rightOperand": {
424
+ "types": [
425
+ "number",
426
+ "string"
427
+ ],
428
+ "nbValues": 1
429
+ }
430
+ },
431
+ {
432
+ "id": "lengthGreaterThanOrEquals",
433
+ "description": "Check if the number of values of the variable is greater or equal to a specific value",
434
+ "display": "number of ≥",
435
+ "leftOperand": {
436
+ "types": [
437
+ "string",
438
+ "number",
439
+ "date",
440
+ "boolean",
441
+ "object"
442
+ ],
443
+ "nbValues": -1
444
+ },
445
+ "rightOperand": {
446
+ "types": [
447
+ "number",
448
+ "string"
449
+ ],
450
+ "nbValues": 1
451
+ }
452
+ },
453
+ {
454
+ "id": "lengthGreaterThan",
455
+ "description": "Check if the number of values of the variable is greater than a specific value",
456
+ "display": "number of >",
457
+ "leftOperand": {
458
+ "types": [
459
+ "string",
460
+ "number",
461
+ "date",
462
+ "boolean",
463
+ "object"
464
+ ],
465
+ "nbValues": -1
466
+ },
467
+ "rightOperand": {
468
+ "types": [
469
+ "number",
470
+ "string"
471
+ ],
472
+ "nbValues": 1
473
+ }
474
+ },
475
+ {
476
+ "id": "equals",
477
+ "description": "Check if a variable is equal to a specific value",
478
+ "display": "is equal to",
479
+ "leftOperand": {
480
+ "types": [
481
+ "string",
482
+ "number",
483
+ "date",
484
+ "boolean"
485
+ ],
486
+ "nbValues": 1
487
+ },
488
+ "rightOperand": {
489
+ "types": [
490
+ "string",
491
+ "number",
492
+ "date",
493
+ "boolean"
494
+ ],
495
+ "nbValues": 1
496
+ }
497
+ },
498
+ {
499
+ "id": "notEquals",
500
+ "description": "Check if a variable is different from a specific value",
501
+ "display": "is not equal to",
502
+ "leftOperand": {
503
+ "types": [
504
+ "string",
505
+ "number",
506
+ "date",
507
+ "boolean"
508
+ ],
509
+ "nbValues": 1
510
+ },
511
+ "rightOperand": {
512
+ "types": [
513
+ "string",
514
+ "number",
515
+ "date",
516
+ "boolean"
517
+ ],
518
+ "nbValues": 1
519
+ }
520
+ },
521
+ {
522
+ "id": "inArray",
523
+ "description": "Check if the variable's value is included in a specified list",
524
+ "display": "is in",
525
+ "leftOperand": {
526
+ "types": [
527
+ "string",
528
+ "number",
529
+ "date",
530
+ "boolean"
531
+ ],
532
+ "nbValues": 1
533
+ },
534
+ "rightOperand": {
535
+ "types": [
536
+ "string",
537
+ "number",
538
+ "date",
539
+ "boolean"
540
+ ],
541
+ "nbValues": -1
542
+ }
543
+ },
544
+ {
545
+ "id": "notInArray",
546
+ "description": "Check if the variable's value is not included in the value list",
547
+ "display": "is not in",
548
+ "leftOperand": {
549
+ "types": [
550
+ "string",
551
+ "number",
552
+ "date",
553
+ "boolean"
554
+ ],
555
+ "nbValues": 1
556
+ },
557
+ "rightOperand": {
558
+ "types": [
559
+ "string",
560
+ "number",
561
+ "date",
562
+ "boolean"
563
+ ],
564
+ "nbValues": -1
565
+ }
566
+ },
567
+ {
568
+ "id": "inString",
569
+ "description": "Check if the text variable is part of the specified value",
570
+ "display": "within",
571
+ "leftOperand": {
572
+ "types": [
573
+ "string"
574
+ ],
575
+ "nbValues": 1
576
+ },
577
+ "rightOperand": {
578
+ "types": [
579
+ "string"
580
+ ],
581
+ "nbValues": 1
582
+ }
583
+ },
584
+ {
585
+ "id": "notInString",
586
+ "description": "Check if the text variable is not part of the specified value",
587
+ "display": "not within",
588
+ "leftOperand": {
589
+ "types": [
590
+ "string"
591
+ ],
592
+ "nbValues": 1
593
+ },
594
+ "rightOperand": {
595
+ "types": [
596
+ "string"
597
+ ],
598
+ "nbValues": 1
599
+ }
600
+ },
601
+ {
602
+ "id": "isDefined",
603
+ "description": "Check if the variable and its value are defined",
604
+ "display": "is defined",
605
+ "leftOperand": {
606
+ "types": [
607
+ "string",
608
+ "number",
609
+ "date",
610
+ "boolean",
611
+ "object"
612
+ ],
613
+ "nbValues": 0
614
+ }
615
+ },
616
+ {
617
+ "id": "isUndefined",
618
+ "description": "Check if the variable and its value are undefined",
619
+ "display": "is not defined",
620
+ "leftOperand": {
621
+ "types": [
622
+ "string",
623
+ "number",
624
+ "date",
625
+ "boolean",
626
+ "object"
627
+ ],
628
+ "nbValues": 0
629
+ }
630
+ },
631
+ {
632
+ "id": "matchesPattern",
633
+ "description": "Check if the text variable matches the specified RegExp pattern",
634
+ "display": "matches the pattern",
635
+ "leftOperand": {
636
+ "types": [
637
+ "string"
638
+ ],
639
+ "nbValues": 1
640
+ },
641
+ "rightOperand": {
642
+ "types": [
643
+ "string"
644
+ ],
645
+ "nbValues": 1
646
+ }
647
+ },
648
+ {
649
+ "id": "inRangeDate",
650
+ "description": "Check if a date variable is in a specified date range",
651
+ "display": "is between",
652
+ "leftOperand": {
653
+ "types": [
654
+ "date"
655
+ ],
656
+ "nbValues": 1
657
+ },
658
+ "rightOperand": {
659
+ "types": [
660
+ "date",
661
+ "string",
662
+ "number"
663
+ ],
664
+ "nbValues": 2
665
+ }
666
+ },
667
+ {
668
+ "id": "dateInNextMinutes",
669
+ "description": "Check if the value of the variable is in the next x minutes",
670
+ "display": "is in next minutes",
671
+ "leftOperand": {
672
+ "types": [
673
+ "date"
674
+ ],
675
+ "nbValues": 1
676
+ },
677
+ "factImplicitDependencies": [
678
+ "o3rCurrentTime"
679
+ ],
680
+ "rightOperand": {
681
+ "types": [
682
+ "number"
683
+ ],
684
+ "nbValues": 1
685
+ }
686
+ },
687
+ {
688
+ "id": "dateNotInNextMinutes",
689
+ "description": "Check if the value of the variable is not in the next x minutes",
690
+ "display": "is not in next minutes",
691
+ "leftOperand": {
692
+ "types": [
693
+ "date"
694
+ ],
695
+ "nbValues": 1
696
+ },
697
+ "factImplicitDependencies": [
698
+ "o3rCurrentTime"
699
+ ],
700
+ "rightOperand": {
701
+ "types": [
702
+ "number"
703
+ ],
704
+ "nbValues": 1
705
+ }
706
+ },
707
+ {
708
+ "id": "dateBefore",
709
+ "description": "Check if a date variable is prior than a specified date",
710
+ "display": "is before",
711
+ "leftOperand": {
712
+ "types": [
713
+ "date"
714
+ ],
715
+ "nbValues": 1
716
+ },
717
+ "rightOperand": {
718
+ "types": [
719
+ "date",
720
+ "string",
721
+ "number"
722
+ ],
723
+ "nbValues": 1
724
+ }
725
+ },
726
+ {
727
+ "id": "dateAfter",
728
+ "description": "Check if a date variable is posterior than a specified date",
729
+ "display": "is after",
730
+ "leftOperand": {
731
+ "types": [
732
+ "date"
733
+ ],
734
+ "nbValues": 1
735
+ },
736
+ "rightOperand": {
737
+ "types": [
738
+ "date",
739
+ "string",
740
+ "number"
741
+ ],
742
+ "nbValues": 1
743
+ }
744
+ },
745
+ {
746
+ "id": "dateEquals",
747
+ "description": "Check if a date variable is the same as a specified date",
748
+ "display": "is equal to",
749
+ "leftOperand": {
750
+ "types": [
751
+ "date"
752
+ ],
753
+ "nbValues": 1
754
+ },
755
+ "rightOperand": {
756
+ "types": [
757
+ "date",
758
+ "string",
759
+ "number"
760
+ ],
761
+ "nbValues": 1
762
+ }
763
+ },
764
+ {
765
+ "id": "dateNotEquals",
766
+ "description": "Check if a date variable is different from a specified date",
767
+ "display": "is not equal",
768
+ "leftOperand": {
769
+ "types": [
770
+ "date"
771
+ ],
772
+ "nbValues": 1
773
+ },
774
+ "rightOperand": {
775
+ "types": [
776
+ "date",
777
+ "string",
778
+ "number"
779
+ ],
780
+ "nbValues": 1
781
+ }
782
+ },
783
+ {
784
+ "id": "greaterThanOrEqual",
785
+ "description": "Check if the number variable is greater or equal to a specific value",
786
+ "display": "≥",
787
+ "leftOperand": {
788
+ "types": [
789
+ "number"
790
+ ],
791
+ "nbValues": 1
792
+ },
793
+ "rightOperand": {
794
+ "types": [
795
+ "number"
796
+ ],
797
+ "nbValues": 1
798
+ }
799
+ },
800
+ {
801
+ "id": "greaterThan",
802
+ "description": "Check if the number variable is greater than a specific value",
803
+ "display": ">",
804
+ "leftOperand": {
805
+ "types": [
806
+ "number"
807
+ ],
808
+ "nbValues": 1
809
+ },
810
+ "rightOperand": {
811
+ "types": [
812
+ "number"
813
+ ],
814
+ "nbValues": 1
815
+ }
816
+ },
817
+ {
818
+ "id": "lessOrEqual",
819
+ "description": "Check if the number variable is lower or equal to a specific value",
820
+ "display": "≤",
821
+ "leftOperand": {
822
+ "types": [
823
+ "number"
824
+ ],
825
+ "nbValues": 1
826
+ },
827
+ "rightOperand": {
828
+ "types": [
829
+ "number"
830
+ ],
831
+ "nbValues": 1
832
+ }
833
+ },
834
+ {
835
+ "id": "lessThan",
836
+ "description": "Check if the number variable is lower than a specific value",
837
+ "display": "<",
838
+ "leftOperand": {
839
+ "types": [
840
+ "number"
841
+ ],
842
+ "nbValues": 1
843
+ },
844
+ "rightOperand": {
845
+ "types": [
846
+ "number"
847
+ ],
848
+ "nbValues": 1
849
+ }
850
+ },
851
+ {
852
+ "id": "inRangeTime",
853
+ "description": "Check if the time variable is between the specified start and end times. This method also supports time ranges that cross midnight. For example, a range from \"23:00\" to \"02:00\" will be true for an input like \"00:30\".",
854
+ "display": "is between",
855
+ "leftOperand": {
856
+ "types": [
857
+ "string"
858
+ ],
859
+ "nbValues": 1
860
+ },
861
+ "rightOperand": {
862
+ "types": [
863
+ "string"
864
+ ],
865
+ "nbValues": 2
866
+ }
867
+ }
868
+ ]
3
869
  }