@qrvey/utils 1.17.3 → 1.17.4

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/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # [@qrvey/utils](https://bitbucket.org/qrvey/qrvey_utils/wiki/Home) *1.17.3*
1
+ # [@qrvey/utils](https://bitbucket.org/qrvey/qrvey_utils/wiki/Home) *1.17.4*
2
2
 
3
3
  > Helper, Utils for all Qrvey Projects
4
4
 
@@ -15,9 +15,16 @@ function getAggFilters(logics = [], summaries = []) {
15
15
  root: logic[0].filters,
16
16
  getChildren: (node) => node.expressions,
17
17
  isLeaf: (node) => !("operator" in node),
18
- onLeaf: (expression) => {
18
+ onLeaf: (expression, parent) => {
19
19
  const { enabled, validationType, value } = expression;
20
20
  const summaryIndex = getIndexByExpression(expression, summaries);
21
+ if (summaryIndex < 0) {
22
+ if (parent && parent.expressions) {
23
+ const parentFilter = parent;
24
+ parentFilter.expressions = parentFilter.expressions.filter((e) => e !== expression);
25
+ }
26
+ return;
27
+ }
21
28
  Object.keys(expression).forEach((key) => {
22
29
  delete expression[key];
23
30
  });
@@ -27,7 +34,8 @@ function getAggFilters(logics = [], summaries = []) {
27
34
  expression.value = value;
28
35
  },
29
36
  });
30
- return logic[0].filters[0];
37
+ const filters = logic[0].filters[0];
38
+ return (0, isEmpty_1.isEmpty)(filters.expressions) ? undefined : filters;
31
39
  }
32
40
  function getAggregateFilters(logics = []) {
33
41
  const _logics = (0, objectCopy_1.objectCopy)(logics);
@@ -12,9 +12,16 @@ export function getAggFilters(logics = [], summaries = []) {
12
12
  root: logic[0].filters,
13
13
  getChildren: (node) => node.expressions,
14
14
  isLeaf: (node) => !("operator" in node),
15
- onLeaf: (expression) => {
15
+ onLeaf: (expression, parent) => {
16
16
  const { enabled, validationType, value } = expression;
17
17
  const summaryIndex = getIndexByExpression(expression, summaries);
18
+ if (summaryIndex < 0) {
19
+ if (parent && parent.expressions) {
20
+ const parentFilter = parent;
21
+ parentFilter.expressions = parentFilter.expressions.filter((e) => e !== expression);
22
+ }
23
+ return;
24
+ }
18
25
  Object.keys(expression).forEach((key) => {
19
26
  delete expression[key];
20
27
  });
@@ -24,7 +31,8 @@ export function getAggFilters(logics = [], summaries = []) {
24
31
  expression.value = value;
25
32
  },
26
33
  });
27
- return logic[0].filters[0];
34
+ const filters = logic[0].filters[0];
35
+ return isEmpty(filters.expressions) ? undefined : filters;
28
36
  }
29
37
  function getAggregateFilters(logics = []) {
30
38
  const _logics = objectCopy(logics);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qrvey/utils",
3
- "version": "1.17.3",
3
+ "version": "1.17.4",
4
4
  "description": "Helper, Utils for all Qrvey Projects",
5
5
  "homepage": "https://bitbucket.org/qrvey/qrvey_utils/wiki/Home",
6
6
  "main": "dist/cjs/index.js",