@briza/illogical 1.7.4 → 2.0.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.
Files changed (40) hide show
  1. package/{types → lib/types}/common/evaluable.d.ts +2 -2
  2. package/{types → lib/types}/common/type-check.d.ts +1 -1
  3. package/{types → lib/types}/common/util.d.ts +1 -1
  4. package/{types → lib/types}/expression/arithmetic/divide.d.ts +2 -2
  5. package/{types → lib/types}/expression/arithmetic/index.d.ts +4 -4
  6. package/{types → lib/types}/expression/arithmetic/isSimplifiedArithmeticExpression.d.ts +2 -2
  7. package/{types → lib/types}/expression/arithmetic/multiply.d.ts +2 -2
  8. package/{types → lib/types}/expression/arithmetic/subtract.d.ts +2 -2
  9. package/{types → lib/types}/expression/arithmetic/sum.d.ts +2 -2
  10. package/{types → lib/types}/expression/comparison/eq.d.ts +2 -2
  11. package/{types → lib/types}/expression/comparison/ge.d.ts +2 -2
  12. package/{types → lib/types}/expression/comparison/gt.d.ts +2 -2
  13. package/{types → lib/types}/expression/comparison/in.d.ts +2 -2
  14. package/{types → lib/types}/expression/comparison/index.d.ts +4 -4
  15. package/{types → lib/types}/expression/comparison/le.d.ts +2 -2
  16. package/{types → lib/types}/expression/comparison/lt.d.ts +2 -2
  17. package/{types → lib/types}/expression/comparison/ne.d.ts +2 -2
  18. package/{types → lib/types}/expression/comparison/not-in.d.ts +2 -2
  19. package/{types → lib/types}/expression/comparison/overlap.d.ts +2 -2
  20. package/{types → lib/types}/expression/comparison/prefix.d.ts +2 -2
  21. package/{types → lib/types}/expression/comparison/present.d.ts +4 -4
  22. package/{types → lib/types}/expression/comparison/suffix.d.ts +2 -2
  23. package/{types → lib/types}/expression/comparison/undefined.d.ts +4 -4
  24. package/{types → lib/types}/expression/logical/and.d.ts +2 -2
  25. package/{types → lib/types}/expression/logical/index.d.ts +3 -3
  26. package/{types → lib/types}/expression/logical/nor.d.ts +2 -2
  27. package/{types → lib/types}/expression/logical/not.d.ts +2 -2
  28. package/{types → lib/types}/expression/logical/or.d.ts +2 -2
  29. package/{types → lib/types}/expression/logical/xor.d.ts +2 -2
  30. package/{types → lib/types}/index.d.ts +28 -28
  31. package/{types → lib/types}/operand/collection.d.ts +6 -6
  32. package/{types → lib/types}/operand/index.d.ts +3 -3
  33. package/{types → lib/types}/operand/reference.d.ts +3 -3
  34. package/{types → lib/types}/operand/value.d.ts +3 -3
  35. package/{types → lib/types}/parser/index.d.ts +2 -2
  36. package/package.json +7 -11
  37. package/changelog.md +0 -159
  38. /package/lib/{illogical.js → illogical.cjs} +0 -0
  39. /package/{types → lib/types}/expression/arithmetic/operateWithExpectedDecimals.d.ts +0 -0
  40. /package/{types → lib/types}/parser/options.d.ts +0 -0
@@ -1,5 +1,5 @@
1
- import { Input } from '../parser';
2
- import { Options } from '../parser/options';
1
+ import { Input } from '../parser/index.js';
2
+ import { Options } from '../parser/options.js';
3
3
  /**
4
4
  * Valid types for context members
5
5
  */
@@ -1,4 +1,4 @@
1
- import { Evaluable, Result } from './evaluable';
1
+ import { Evaluable, Result } from './evaluable.js';
2
2
  /**
3
3
  * Is number predicate.
4
4
  * @param value Tested value.
@@ -1,4 +1,4 @@
1
- import { Result } from './evaluable';
1
+ import { Result } from './evaluable.js';
2
2
  /**
3
3
  * Convert a value to number if possible, otherwise return undefined
4
4
  * @param value value to be converted to number
@@ -1,5 +1,5 @@
1
- import { Evaluable, Result } from '../../common/evaluable';
2
- import { Arithmetic } from '.';
1
+ import { Evaluable, Result } from '../../common/evaluable.js';
2
+ import { Arithmetic } from './index.js';
3
3
  export declare const OPERATOR: unique symbol;
4
4
  /**
5
5
  * Divide operation expression
@@ -1,7 +1,7 @@
1
- import { Context, Evaluable, EvaluableType, Result, SimplifyArgs } from '../../common/evaluable';
2
- import { Operand } from '../../operand';
3
- import { ExpressionInput } from '../../parser';
4
- import { Options } from '../../parser/options';
1
+ import { Context, Evaluable, EvaluableType, Result, SimplifyArgs } from '../../common/evaluable.js';
2
+ import { Operand } from '../../operand/index.js';
3
+ import { ExpressionInput } from '../../parser/index.js';
4
+ import { Options } from '../../parser/options.js';
5
5
  /**
6
6
  * Abstract arithmetic expression
7
7
  */
@@ -1,3 +1,3 @@
1
- import { Evaluable, Result } from '../../common/evaluable';
2
- import { Operand } from '../../operand';
1
+ import { Evaluable, Result } from '../../common/evaluable.js';
2
+ import { Operand } from '../../operand/index.js';
3
3
  export declare const isSimplifiedArithmeticExpression: (operand: Operand, result: Result | Evaluable) => result is Result;
@@ -1,5 +1,5 @@
1
- import { Evaluable, Result } from '../../common/evaluable';
2
- import { Arithmetic } from '.';
1
+ import { Evaluable, Result } from '../../common/evaluable.js';
2
+ import { Arithmetic } from './index.js';
3
3
  export declare const OPERATOR: unique symbol;
4
4
  /**
5
5
  * Multiply operation expression
@@ -1,5 +1,5 @@
1
- import { Evaluable, Result } from '../../common/evaluable';
2
- import { Arithmetic } from '.';
1
+ import { Evaluable, Result } from '../../common/evaluable.js';
2
+ import { Arithmetic } from './index.js';
3
3
  export declare const OPERATOR: unique symbol;
4
4
  /**
5
5
  * Subtract operation expression
@@ -1,5 +1,5 @@
1
- import { Evaluable, Result } from '../../common/evaluable';
2
- import { Arithmetic } from '.';
1
+ import { Evaluable, Result } from '../../common/evaluable.js';
2
+ import { Arithmetic } from './index.js';
3
3
  export declare const OPERATOR: unique symbol;
4
4
  /**
5
5
  * Sum operation expression
@@ -1,5 +1,5 @@
1
- import { Evaluable, Result } from '../../common/evaluable';
2
- import { Comparison } from '../comparison';
1
+ import { Evaluable, Result } from '../../common/evaluable.js';
2
+ import { Comparison } from '../comparison/index.js';
3
3
  export declare const OPERATOR: unique symbol;
4
4
  /**
5
5
  * Equal comparison expression
@@ -1,5 +1,5 @@
1
- import { Evaluable, Result } from '../../common/evaluable';
2
- import { Comparison } from '../comparison';
1
+ import { Evaluable, Result } from '../../common/evaluable.js';
2
+ import { Comparison } from '../comparison/index.js';
3
3
  export declare const OPERATOR: unique symbol;
4
4
  /**
5
5
  * Greater than or equal comparison expression
@@ -1,5 +1,5 @@
1
- import { Evaluable, Result } from '../../common/evaluable';
2
- import { Comparison } from '../comparison';
1
+ import { Evaluable, Result } from '../../common/evaluable.js';
2
+ import { Comparison } from '../comparison/index.js';
3
3
  export declare const OPERATOR: unique symbol;
4
4
  /**
5
5
  * Greater than comparison expression
@@ -1,5 +1,5 @@
1
- import { Evaluable, Result } from '../../common/evaluable';
2
- import { Comparison } from '../comparison';
1
+ import { Evaluable, Result } from '../../common/evaluable.js';
2
+ import { Comparison } from '../comparison/index.js';
3
3
  export declare const OPERATOR: unique symbol;
4
4
  /**
5
5
  * In comparison expression
@@ -1,7 +1,7 @@
1
- import { Context, Evaluable, EvaluableType, Result, SimplifyArgs } from '../../common/evaluable';
2
- import { Operand } from '../../operand';
3
- import { ExpressionInput } from '../../parser';
4
- import { Options } from '../../parser/options';
1
+ import { Context, Evaluable, EvaluableType, Result, SimplifyArgs } from '../../common/evaluable.js';
2
+ import { Operand } from '../../operand/index.js';
3
+ import { ExpressionInput } from '../../parser/index.js';
4
+ import { Options } from '../../parser/options.js';
5
5
  /**
6
6
  * Abstract comparison expression
7
7
  */
@@ -1,5 +1,5 @@
1
- import { Evaluable, Result } from '../../common/evaluable';
2
- import { Comparison } from '../comparison';
1
+ import { Evaluable, Result } from '../../common/evaluable.js';
2
+ import { Comparison } from '../comparison/index.js';
3
3
  export declare const OPERATOR: unique symbol;
4
4
  /**
5
5
  * Less than or equal comparison expression
@@ -1,5 +1,5 @@
1
- import { Evaluable, Result } from '../../common/evaluable';
2
- import { Comparison } from '../comparison';
1
+ import { Evaluable, Result } from '../../common/evaluable.js';
2
+ import { Comparison } from '../comparison/index.js';
3
3
  export declare const OPERATOR: unique symbol;
4
4
  /**
5
5
  * Less than comparison expression
@@ -1,5 +1,5 @@
1
- import { Evaluable, Result } from '../../common/evaluable';
2
- import { Comparison } from '../comparison';
1
+ import { Evaluable, Result } from '../../common/evaluable.js';
2
+ import { Comparison } from '../comparison/index.js';
3
3
  export declare const OPERATOR: unique symbol;
4
4
  /**
5
5
  * Not equal comparison expression
@@ -1,5 +1,5 @@
1
- import { Evaluable, Result } from '../../common/evaluable';
2
- import { Comparison } from '../comparison';
1
+ import { Evaluable, Result } from '../../common/evaluable.js';
2
+ import { Comparison } from '../comparison/index.js';
3
3
  export declare const OPERATOR: unique symbol;
4
4
  /**
5
5
  * Not in comparison expression
@@ -1,5 +1,5 @@
1
- import { Evaluable, Result } from '../../common/evaluable';
2
- import { Comparison } from '../comparison';
1
+ import { Evaluable, Result } from '../../common/evaluable.js';
2
+ import { Comparison } from '../comparison/index.js';
3
3
  export declare const OPERATOR: unique symbol;
4
4
  /**
5
5
  * Overlap comparison expression
@@ -1,5 +1,5 @@
1
- import { Evaluable, Result } from '../../common/evaluable';
2
- import { Comparison } from '../comparison';
1
+ import { Evaluable, Result } from '../../common/evaluable.js';
2
+ import { Comparison } from '../comparison/index.js';
3
3
  export declare const OPERATOR: unique symbol;
4
4
  /**
5
5
  * Prefix comparison expression
@@ -1,7 +1,7 @@
1
- import { Evaluable, Result } from '../../common/evaluable';
2
- import { ExpressionInput } from '../../parser';
3
- import { Options } from '../../parser/options';
4
- import { Comparison } from './index';
1
+ import { Evaluable, Result } from '../../common/evaluable.js';
2
+ import { ExpressionInput } from '../../parser/index.js';
3
+ import { Options } from '../../parser/options.js';
4
+ import { Comparison } from './index.js';
5
5
  export declare const OPERATOR: unique symbol;
6
6
  /**
7
7
  * Present comparison expression
@@ -1,5 +1,5 @@
1
- import { Evaluable, Result } from '../../common/evaluable';
2
- import { Comparison } from '../comparison';
1
+ import { Evaluable, Result } from '../../common/evaluable.js';
2
+ import { Comparison } from '../comparison/index.js';
3
3
  export declare const OPERATOR: unique symbol;
4
4
  /**
5
5
  * Suffix comparison expression
@@ -1,7 +1,7 @@
1
- import { Evaluable, Result } from '../../common/evaluable';
2
- import { ExpressionInput } from '../../parser';
3
- import { Options } from '../../parser/options';
4
- import { Comparison } from '../comparison';
1
+ import { Evaluable, Result } from '../../common/evaluable.js';
2
+ import { ExpressionInput } from '../../parser/index.js';
3
+ import { Options } from '../../parser/options.js';
4
+ import { Comparison } from '../comparison/index.js';
5
5
  export declare const OPERATOR: unique symbol;
6
6
  /**
7
7
  * Undefined comparison expression
@@ -1,5 +1,5 @@
1
- import { Context, Evaluable, Result, SimplifyArgs } from '../../common/evaluable';
2
- import { Logical } from '../logical';
1
+ import { Context, Evaluable, Result, SimplifyArgs } from '../../common/evaluable.js';
2
+ import { Logical } from '../logical/index.js';
3
3
  export declare const OPERATOR: unique symbol;
4
4
  /**
5
5
  * And logical expression
@@ -1,6 +1,6 @@
1
- import { Context, Evaluable, EvaluableType, Result } from '../../common/evaluable';
2
- import { ExpressionInput } from '../../parser';
3
- import { Options } from '../../parser/options';
1
+ import { Context, Evaluable, EvaluableType, Result } from '../../common/evaluable.js';
2
+ import { ExpressionInput } from '../../parser/index.js';
3
+ import { Options } from '../../parser/options.js';
4
4
  /**
5
5
  * Abstract logical expression
6
6
  */
@@ -1,5 +1,5 @@
1
- import { Context, Evaluable, Result, SimplifyArgs } from '../../common/evaluable';
2
- import { Logical } from '../logical';
1
+ import { Context, Evaluable, Result, SimplifyArgs } from '../../common/evaluable.js';
2
+ import { Logical } from '../logical/index.js';
3
3
  export declare const OPERATOR: unique symbol;
4
4
  /**
5
5
  * Nor logical expression
@@ -1,5 +1,5 @@
1
- import { Context, Evaluable, Result, SimplifyArgs } from '../../common/evaluable';
2
- import { Logical } from '.';
1
+ import { Context, Evaluable, Result, SimplifyArgs } from '../../common/evaluable.js';
2
+ import { Logical } from './index.js';
3
3
  export declare const OPERATOR: unique symbol;
4
4
  /**
5
5
  * Not logical expression
@@ -1,5 +1,5 @@
1
- import { Context, Evaluable, Result, SimplifyArgs } from '../../common/evaluable';
2
- import { Logical } from '../logical';
1
+ import { Context, Evaluable, Result, SimplifyArgs } from '../../common/evaluable.js';
2
+ import { Logical } from '../logical/index.js';
3
3
  export declare const OPERATOR: unique symbol;
4
4
  /**
5
5
  * Or logical expression
@@ -1,5 +1,5 @@
1
- import { Context, Evaluable, Result, SimplifyArgs } from '../../common/evaluable';
2
- import { Logical } from '../logical';
1
+ import { Context, Evaluable, Result, SimplifyArgs } from '../../common/evaluable.js';
2
+ import { Logical } from '../logical/index.js';
3
3
  export declare const OPERATOR: unique symbol;
4
4
  /**
5
5
  * Xor logical expression
@@ -2,35 +2,35 @@
2
2
  * Main module.
3
3
  * @module illogical
4
4
  */
5
- import { Context, Evaluable } from './common/evaluable';
6
- import { isEvaluable } from './common/type-check';
7
- import { OPERATOR as OPERATOR_DIVIDE } from './expression/arithmetic/divide';
8
- import { OPERATOR as OPERATOR_MULTIPLY } from './expression/arithmetic/multiply';
9
- import { OPERATOR as OPERATOR_SUBTRACT } from './expression/arithmetic/subtract';
10
- import { OPERATOR as OPERATOR_SUM } from './expression/arithmetic/sum';
11
- import { OPERATOR as OPERATOR_EQ } from './expression/comparison/eq';
12
- import { OPERATOR as OPERATOR_GE } from './expression/comparison/ge';
13
- import { OPERATOR as OPERATOR_GT } from './expression/comparison/gt';
14
- import { OPERATOR as OPERATOR_IN } from './expression/comparison/in';
15
- import { OPERATOR as OPERATOR_LE } from './expression/comparison/le';
16
- import { OPERATOR as OPERATOR_LT } from './expression/comparison/lt';
17
- import { OPERATOR as OPERATOR_NE } from './expression/comparison/ne';
18
- import { OPERATOR as OPERATOR_NOT_IN } from './expression/comparison/not-in';
19
- import { OPERATOR as OPERATOR_OVERLAP } from './expression/comparison/overlap';
20
- import { OPERATOR as OPERATOR_PREFIX } from './expression/comparison/prefix';
21
- import { OPERATOR as OPERATOR_PRESENT } from './expression/comparison/present';
22
- import { OPERATOR as OPERATOR_SUFFIX } from './expression/comparison/suffix';
23
- import { OPERATOR as OPERATOR_UNDEFINED } from './expression/comparison/undefined';
24
- import { OPERATOR as OPERATOR_AND } from './expression/logical/and';
25
- import { OPERATOR as OPERATOR_NOR } from './expression/logical/nor';
26
- import { OPERATOR as OPERATOR_NOT } from './expression/logical/not';
27
- import { OPERATOR as OPERATOR_OR } from './expression/logical/or';
28
- import { OPERATOR as OPERATOR_XOR } from './expression/logical/xor';
29
- import { ExpressionInput, Input } from './parser';
30
- import { Options } from './parser/options';
31
- export { defaultOptions } from './parser/options';
5
+ import { Context, Evaluable } from './common/evaluable.js';
6
+ import { isEvaluable } from './common/type-check.js';
7
+ import { OPERATOR as OPERATOR_DIVIDE } from './expression/arithmetic/divide.js';
8
+ import { OPERATOR as OPERATOR_MULTIPLY } from './expression/arithmetic/multiply.js';
9
+ import { OPERATOR as OPERATOR_SUBTRACT } from './expression/arithmetic/subtract.js';
10
+ import { OPERATOR as OPERATOR_SUM } from './expression/arithmetic/sum.js';
11
+ import { OPERATOR as OPERATOR_EQ } from './expression/comparison/eq.js';
12
+ import { OPERATOR as OPERATOR_GE } from './expression/comparison/ge.js';
13
+ import { OPERATOR as OPERATOR_GT } from './expression/comparison/gt.js';
14
+ import { OPERATOR as OPERATOR_IN } from './expression/comparison/in.js';
15
+ import { OPERATOR as OPERATOR_LE } from './expression/comparison/le.js';
16
+ import { OPERATOR as OPERATOR_LT } from './expression/comparison/lt.js';
17
+ import { OPERATOR as OPERATOR_NE } from './expression/comparison/ne.js';
18
+ import { OPERATOR as OPERATOR_NOT_IN } from './expression/comparison/not-in.js';
19
+ import { OPERATOR as OPERATOR_OVERLAP } from './expression/comparison/overlap.js';
20
+ import { OPERATOR as OPERATOR_PREFIX } from './expression/comparison/prefix.js';
21
+ import { OPERATOR as OPERATOR_PRESENT } from './expression/comparison/present.js';
22
+ import { OPERATOR as OPERATOR_SUFFIX } from './expression/comparison/suffix.js';
23
+ import { OPERATOR as OPERATOR_UNDEFINED } from './expression/comparison/undefined.js';
24
+ import { OPERATOR as OPERATOR_AND } from './expression/logical/and.js';
25
+ import { OPERATOR as OPERATOR_NOR } from './expression/logical/nor.js';
26
+ import { OPERATOR as OPERATOR_NOT } from './expression/logical/not.js';
27
+ import { OPERATOR as OPERATOR_OR } from './expression/logical/or.js';
28
+ import { OPERATOR as OPERATOR_XOR } from './expression/logical/xor.js';
29
+ import { ExpressionInput, Input } from './parser/index.js';
30
+ import { Options } from './parser/options.js';
31
+ export { defaultOptions } from './parser/options.js';
32
32
  export { isEvaluable, OPERATOR_EQ, OPERATOR_NE, OPERATOR_GT, OPERATOR_GE, OPERATOR_LT, OPERATOR_LE, OPERATOR_IN, OPERATOR_NOT_IN, OPERATOR_PREFIX, OPERATOR_SUFFIX, OPERATOR_OVERLAP, OPERATOR_UNDEFINED, OPERATOR_PRESENT, OPERATOR_AND, OPERATOR_OR, OPERATOR_NOR, OPERATOR_XOR, OPERATOR_NOT, OPERATOR_DIVIDE, OPERATOR_MULTIPLY, OPERATOR_SUBTRACT, OPERATOR_SUM, };
33
- export type { Context, ExpressionInput };
33
+ export type { Context, Evaluable, ExpressionInput };
34
34
  /**
35
35
  * Condition engine
36
36
  */
@@ -1,9 +1,9 @@
1
- import { Context, Evaluable, Result, SimplifyArgs } from '../common/evaluable';
2
- import { Input } from '../parser';
3
- import { Options } from '../parser/options';
4
- import { Operand } from '.';
5
- import { Reference } from './reference';
6
- import { Value } from './value';
1
+ import { Context, Evaluable, Result, SimplifyArgs } from '../common/evaluable.js';
2
+ import { Input } from '../parser/index.js';
3
+ import { Options } from '../parser/options.js';
4
+ import { Operand } from './index.js';
5
+ import { Reference } from './reference.js';
6
+ import { Value } from './value.js';
7
7
  /**
8
8
  * Collection operand resolved containing mixture of value and references.
9
9
  */
@@ -1,6 +1,6 @@
1
- import { Context, Evaluable, EvaluableType, Result } from '../common/evaluable';
2
- import { Input } from '../parser';
3
- import { Options } from '../parser/options';
1
+ import { Context, Evaluable, EvaluableType, Result } from '../common/evaluable.js';
2
+ import { Input } from '../parser/index.js';
3
+ import { Options } from '../parser/options.js';
4
4
  /**
5
5
  * Abstract operand
6
6
  */
@@ -1,6 +1,6 @@
1
- import { Context, Evaluable, Result } from '../common/evaluable';
2
- import { Options } from '../parser/options';
3
- import { Operand } from '.';
1
+ import { Context, Evaluable, Result } from '../common/evaluable.js';
2
+ import { Options } from '../parser/options.js';
3
+ import { Operand } from './index.js';
4
4
  export declare enum DataType {
5
5
  Number = "Number",
6
6
  String = "String"
@@ -1,6 +1,6 @@
1
- import { Result } from '../common/evaluable';
2
- import { Input } from '../parser';
3
- import { Operand } from '.';
1
+ import { Result } from '../common/evaluable.js';
2
+ import { Input } from '../parser/index.js';
3
+ import { Operand } from './index.js';
4
4
  /**
5
5
  * Static value operand
6
6
  */
@@ -1,5 +1,5 @@
1
- import { Evaluable } from '../common/evaluable';
2
- import { Options } from './options';
1
+ import { Evaluable } from '../common/evaluable.js';
2
+ import { Options } from './options.js';
3
3
  export type Input = string | number | boolean | null | Input[] | [string, ...Input[]] | Record<string, unknown>;
4
4
  export type ArrayInput = Input[];
5
5
  export type ExpressionInput = [string, ...Input[]];
package/package.json CHANGED
@@ -1,21 +1,17 @@
1
1
  {
2
2
  "name": "@briza/illogical",
3
- "version": "1.7.4",
3
+ "version": "2.0.0",
4
4
  "description": "A micro conditional javascript engine used to parse the raw logical and comparison expressions, evaluate the expression in the given data context, and provide access to a text form of the given expressions.",
5
- "main": "./lib/illogical.js",
6
- "module": "./lib/illogical.esm.js",
5
+ "type": "module",
6
+ "main": "./lib/illogical.cjs",
7
7
  "types": "./types/index.d.ts",
8
8
  "exports": {
9
- ".": {
10
- "types": "./types/index.d.ts",
11
- "require": "./lib/illogical.js",
12
- "import": "./lib/illogical.esm.js"
13
- }
9
+ "types": "./types/index.d.ts",
10
+ "import": "./lib/illogical.esm.js",
11
+ "require": "./lib/illogical.cjs"
14
12
  },
15
13
  "files": [
16
- "/lib",
17
- "/types",
18
- "changelog.md"
14
+ "lib/"
19
15
  ],
20
16
  "author": {
21
17
  "name": "David Horak",
package/changelog.md DELETED
@@ -1,159 +0,0 @@
1
- # illogical changelog
2
-
3
- ## 1.7.3
4
-
5
- - Updating tsconfig and other dependencies.
6
-
7
- ## 1.7.2
8
-
9
- - Resolving performance issues on simplify and removing unnecessary unsafeSimplify.
10
-
11
- ## 1.7.1
12
-
13
- - Adding Reference cache and other performance improvements to condition parsing.
14
-
15
- ## 1.7.0
16
-
17
- - Introducing unsafeSimplify which simplifies the condition without fully parsing it beforehand.
18
- Useful when processing complex conditions that have been previously parsed. Should be faster
19
- compared to the standard simplify when it can short circuit logical expressions.
20
-
21
- ## 1.6.1
22
-
23
- - Bugfix on Arithmetic evaluate. Returns false when ContextValue is not present in the Context.
24
-
25
- ## 1.6.0
26
-
27
- - Added support for Arithmetic expressions within other Comparison expressions. This allows for
28
- more complex and dynamic comparisons to be made. Now, you can perform mathematical operations
29
- within your conditional expressions, making them even more powerful and flexible. Whether you need
30
- to calculate sums, differences, products, or divisions, the new Arithmetic expression feature has
31
- got you covered. There are no breaking changes if this new kind of expression isn't being used.
32
-
33
- ## 1.5.9
34
-
35
- - Modify OVERLAP expression such that the OVERLAP of two empty arrays returns true
36
-
37
- ## 1.5.8
38
-
39
- - Introduce the backtick syntax for condition referencing keys that contain dot delimiters
40
-
41
- ## 1.5.7
42
-
43
- - Update documentation to include example of comparison operator with two references
44
- - Fix linting issues
45
-
46
- ## 1.5.6
47
-
48
- - Comparison Expressions updated to support string comparison for ISO-8601 formatted dates.
49
-
50
- ## 1.5.5
51
-
52
- - Expose default options for parser
53
- - Expose isEvaluable
54
- - Performance improvements in references
55
-
56
- ## 1.5.4
57
-
58
- - Update dependencies.
59
-
60
- ## 1.5.3
61
-
62
- - Fixed an issue where conditions with object data were not being simplified correctly.
63
-
64
- ## 1.5.2
65
-
66
- - Update dependencies.
67
-
68
- ## 1.5.1
69
-
70
- - Fix issue with nested conditions not being completely simplified.
71
-
72
- ## 1.5.0
73
-
74
- - Add simplify capability to strictly evaluate the expression for all referred values
75
- not present in the context except for a specified list of optional keys
76
-
77
- ## 1.4.3
78
-
79
- - Prevent unexpected parsing of any expression used as an operand in a comparison expression
80
-
81
- ## 1.4.2
82
-
83
- - Change `@babel/env` preset target to `> 1%, node 12`
84
-
85
- ## 1.4.0
86
-
87
- - Add support for reference variable data type casting before expression evaluation
88
-
89
- ## 1.3.0
90
-
91
- - Add simplify method in the engine to simplify expressions
92
-
93
- ## 1.2.4
94
-
95
- - Add support for array element targeting within reference operand key
96
- - Add support for array element targeting via reference within reference operand key
97
- - Add support for nested key resolution within reference operand key
98
- - Add support for composite key resolution within reference operand key
99
-
100
- ## 1.2.3
101
-
102
- - Add support for null and undefined in isObject() method
103
-
104
- ## 1.2.2
105
-
106
- - Add Present comparison expression.
107
-
108
- ## 1.2.1
109
-
110
- - Allow zero argument logical expressions to be treated as a collection.
111
- - Allow logical expressions without any inner expressions to be treated as a collection.
112
-
113
- ## 1.2.0
114
-
115
- - Simplification of the codebase.
116
- - Add Not logical expression.
117
- - Breaking change: removed parser strict mode.
118
-
119
- ## 1.1.5
120
-
121
- - Operand of array value now correctly resolves references.
122
-
123
- ## 1.1.4
124
-
125
- - Add Overlap comparison expression.
126
-
127
- ## 1.1.3
128
-
129
- - Add predicate expression types.
130
- - Add Undefined predicate expression.
131
-
132
- ## 1.1.2
133
-
134
- - Value operand supports null and undefined as values.
135
-
136
- ## 1.1.1
137
-
138
- - Invalid logical/comparison expression throw exception.
139
-
140
- ## 1.1.0
141
-
142
- - Add Prefix comparison operator.
143
- - Add Suffix comparison operator.
144
-
145
- ## 1.0.3
146
-
147
- - Update readme.
148
-
149
- ## 1.0.2
150
-
151
- - Add support for nested data context.
152
-
153
- ## 1.0.1
154
-
155
- - Add typescript types path into package.json.
156
-
157
- ## 1.0.0
158
-
159
- - Initial release.
File without changes
File without changes