@elliemae/ds-query-builder 3.16.0 → 3.16.1
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/cjs/DSQueryBuilder.js +9 -5
- package/dist/cjs/DSQueryBuilder.js.map +2 -2
- package/dist/cjs/components/AndOrController/AndOrController.js +7 -3
- package/dist/cjs/components/AndOrController/AndOrController.js.map +2 -2
- package/dist/cjs/components/ConditionController/ConditionController.js +6 -2
- package/dist/cjs/components/ConditionController/ConditionController.js.map +2 -2
- package/dist/cjs/components/DisplayOutput/DisplayOutput.js +5 -1
- package/dist/cjs/components/DisplayOutput/DisplayOutput.js.map +2 -2
- package/dist/cjs/components/DragContainerController/DragContainerController.js +4 -0
- package/dist/cjs/components/DragContainerController/DragContainerController.js.map +1 -1
- package/dist/cjs/components/DragControllerRow/DragControllerRow.js +4 -0
- package/dist/cjs/components/DragControllerRow/DragControllerRow.js.map +1 -1
- package/dist/cjs/components/FieldControllerRow/FieldControllerRow.js +4 -0
- package/dist/cjs/components/FieldControllerRow/FieldControllerRow.js.map +1 -1
- package/dist/cjs/components/Nestable/Nestable.js +6 -2
- package/dist/cjs/components/Nestable/Nestable.js.map +2 -2
- package/dist/cjs/components/Nestable/NestableItem.js +10 -22
- package/dist/cjs/components/Nestable/NestableItem.js.map +2 -2
- package/dist/cjs/components/Nestable/actions/events.js +4 -0
- package/dist/cjs/components/Nestable/actions/events.js.map +1 -1
- package/dist/cjs/components/Nestable/actions/getItemOptions.js +4 -0
- package/dist/cjs/components/Nestable/actions/getItemOptions.js.map +1 -1
- package/dist/cjs/components/Nestable/actions/getPaths.js +4 -0
- package/dist/cjs/components/Nestable/actions/getPaths.js.map +2 -2
- package/dist/cjs/components/Nestable/actions/index.js +10 -6
- package/dist/cjs/components/Nestable/actions/index.js.map +2 -2
- package/dist/cjs/components/Nestable/actions/moveItem.js +4 -0
- package/dist/cjs/components/Nestable/actions/moveItem.js.map +1 -1
- package/dist/cjs/components/Nestable/actions/paths.js +4 -0
- package/dist/cjs/components/Nestable/actions/paths.js.map +2 -2
- package/dist/cjs/components/Nestable/actions/tryDecreaseDepth.js +4 -0
- package/dist/cjs/components/Nestable/actions/tryDecreaseDepth.js.map +1 -1
- package/dist/cjs/components/Nestable/actions/tryIncreaseDepth.js +5 -3
- package/dist/cjs/components/Nestable/actions/tryIncreaseDepth.js.map +2 -2
- package/dist/cjs/components/Nestable/index.js +5 -1
- package/dist/cjs/components/Nestable/index.js.map +2 -2
- package/dist/cjs/components/QueryBuilderContext/QueryBuilderContext.js +4 -0
- package/dist/cjs/components/QueryBuilderContext/QueryBuilderContext.js.map +1 -1
- package/dist/cjs/components/QueryBuilderImpl.js +27 -7
- package/dist/cjs/components/QueryBuilderImpl.js.map +2 -2
- package/dist/cjs/components/QueryBuilderItem/QueryBuilderItem.js +8 -4
- package/dist/cjs/components/QueryBuilderItem/QueryBuilderItem.js.map +2 -2
- package/dist/cjs/components/QueryBuilderRow/QueryBuilderRow.js +7 -3
- package/dist/cjs/components/QueryBuilderRow/QueryBuilderRow.js.map +2 -2
- package/dist/cjs/components/ToolBarAnimation/ToolBarAnimation.js +4 -0
- package/dist/cjs/components/ToolBarAnimation/ToolBarAnimation.js.map +1 -1
- package/dist/cjs/components/format/format.js +7 -3
- package/dist/cjs/components/format/format.js.map +2 -2
- package/dist/cjs/components/format/sqlFormat.js +5 -1
- package/dist/cjs/components/format/sqlFormat.js.map +2 -2
- package/dist/cjs/components/format/sqlSafeFormat.js +9 -2
- package/dist/cjs/components/format/sqlSafeFormat.js.map +2 -2
- package/dist/cjs/components/format/xmlFormat.js +7 -9
- package/dist/cjs/components/format/xmlFormat.js.map +2 -2
- package/dist/cjs/components/helpers/actions.js +9 -9
- package/dist/cjs/components/helpers/actions.js.map +2 -2
- package/dist/cjs/components/helpers/adapter.js +7 -3
- package/dist/cjs/components/helpers/adapter.js.map +2 -2
- package/dist/cjs/components/helpers/constants.js +4 -0
- package/dist/cjs/components/helpers/constants.js.map +1 -1
- package/dist/cjs/components/helpers/dependencies.js +7 -11
- package/dist/cjs/components/helpers/dependencies.js.map +2 -2
- package/dist/cjs/components/helpers/selectors.js +5 -1
- package/dist/cjs/components/helpers/selectors.js.map +2 -2
- package/dist/cjs/components/helpers/store.js +14 -2
- package/dist/cjs/components/helpers/store.js.map +2 -2
- package/dist/cjs/components/helpers/types.js +4 -0
- package/dist/cjs/components/helpers/types.js.map +1 -1
- package/dist/cjs/index.js +7 -3
- package/dist/cjs/index.js.map +2 -2
- package/dist/cjs/package.json +7 -0
- package/dist/cjs/propTypes.js +26 -1
- package/dist/cjs/propTypes.js.map +2 -2
- package/dist/esm/DSQueryBuilder.js +5 -5
- package/dist/esm/DSQueryBuilder.js.map +1 -1
- package/dist/esm/components/AndOrController/AndOrController.js +3 -3
- package/dist/esm/components/AndOrController/AndOrController.js.map +2 -2
- package/dist/esm/components/ConditionController/ConditionController.js +2 -2
- package/dist/esm/components/ConditionController/ConditionController.js.map +2 -2
- package/dist/esm/components/DisplayOutput/DisplayOutput.js +1 -1
- package/dist/esm/components/DisplayOutput/DisplayOutput.js.map +1 -1
- package/dist/esm/components/DragControllerRow/DragControllerRow.js.map +1 -1
- package/dist/esm/components/Nestable/Nestable.js +2 -2
- package/dist/esm/components/Nestable/Nestable.js.map +1 -1
- package/dist/esm/components/Nestable/NestableItem.js +6 -22
- package/dist/esm/components/Nestable/NestableItem.js.map +2 -2
- package/dist/esm/components/Nestable/actions/events.js.map +1 -1
- package/dist/esm/components/Nestable/actions/getPaths.js.map +2 -2
- package/dist/esm/components/Nestable/actions/index.js +6 -6
- package/dist/esm/components/Nestable/actions/index.js.map +1 -1
- package/dist/esm/components/Nestable/actions/paths.js.map +2 -2
- package/dist/esm/components/Nestable/actions/tryDecreaseDepth.js.map +1 -1
- package/dist/esm/components/Nestable/actions/tryIncreaseDepth.js +1 -3
- package/dist/esm/components/Nestable/actions/tryIncreaseDepth.js.map +2 -2
- package/dist/esm/components/Nestable/index.js +1 -1
- package/dist/esm/components/Nestable/index.js.map +1 -1
- package/dist/esm/components/QueryBuilderImpl.js +23 -7
- package/dist/esm/components/QueryBuilderImpl.js.map +2 -2
- package/dist/esm/components/QueryBuilderItem/QueryBuilderItem.js +4 -4
- package/dist/esm/components/QueryBuilderItem/QueryBuilderItem.js.map +2 -2
- package/dist/esm/components/QueryBuilderRow/QueryBuilderRow.js +3 -3
- package/dist/esm/components/QueryBuilderRow/QueryBuilderRow.js.map +2 -2
- package/dist/esm/components/format/format.js +3 -3
- package/dist/esm/components/format/format.js.map +2 -2
- package/dist/esm/components/format/sqlFormat.js +1 -1
- package/dist/esm/components/format/sqlFormat.js.map +2 -2
- package/dist/esm/components/format/sqlSafeFormat.js +5 -2
- package/dist/esm/components/format/sqlSafeFormat.js.map +2 -2
- package/dist/esm/components/format/xmlFormat.js +3 -9
- package/dist/esm/components/format/xmlFormat.js.map +2 -2
- package/dist/esm/components/helpers/actions.js +5 -13
- package/dist/esm/components/helpers/actions.js.map +2 -2
- package/dist/esm/components/helpers/adapter.js +3 -3
- package/dist/esm/components/helpers/adapter.js.map +2 -2
- package/dist/esm/components/helpers/dependencies.js +3 -11
- package/dist/esm/components/helpers/dependencies.js.map +2 -2
- package/dist/esm/components/helpers/selectors.js +1 -1
- package/dist/esm/components/helpers/selectors.js.map +1 -1
- package/dist/esm/components/helpers/store.js +10 -2
- package/dist/esm/components/helpers/store.js.map +2 -2
- package/dist/esm/index.js +3 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/package.json +7 -0
- package/dist/esm/propTypes.js +22 -1
- package/dist/esm/propTypes.js.map +2 -2
- package/dist/types/DSQueryBuilder.d.ts +28 -27
- package/dist/types/components/ConditionController/ConditionController.d.ts +1 -0
- package/dist/types/components/DragContainerController/DragContainerController.d.ts +1 -0
- package/dist/types/components/DragControllerRow/DragControllerRow.d.ts +1 -0
- package/dist/types/components/FieldControllerRow/FieldControllerRow.d.ts +1 -0
- package/dist/types/components/Nestable/NestableItem.d.ts +2 -1
- package/dist/types/components/Nestable/actions/index.d.ts +6 -6
- package/dist/types/components/Nestable/index.d.ts +1 -1
- package/dist/types/components/QueryBuilderImpl.d.ts +8 -0
- package/dist/types/components/QueryBuilderItem/QueryBuilderItem.d.ts +1 -0
- package/dist/types/components/ToolBarAnimation/ToolBarAnimation.d.ts +1 -0
- package/dist/types/components/helpers/store.d.ts +0 -11
- package/dist/types/index.d.ts +3 -3
- package/dist/types/propTypes.d.ts +23 -23
- package/package.json +15 -15
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import { QB_OPERATOR_TYPES } from "../helpers/types";
|
|
2
|
+
import { QB_OPERATOR_TYPES } from "../helpers/types.js";
|
|
3
3
|
const conditionSql = (condition, value) => {
|
|
4
4
|
const {
|
|
5
5
|
EQUAL,
|
|
@@ -43,16 +43,10 @@ const xmlFormat = ({ main, mapGroups, items }) => {
|
|
|
43
43
|
const groupXML = (item, idGroup) => {
|
|
44
44
|
if (idGroup === main) {
|
|
45
45
|
const groupCondition2 = mapGroups[idGroup].condition === true ? "AND" : "OR";
|
|
46
|
-
return `<group value="${groupCondition2}">${filterXML(
|
|
47
|
-
item,
|
|
48
|
-
groupCondition2
|
|
49
|
-
)}</group>`;
|
|
46
|
+
return `<group value="${groupCondition2}">${filterXML(item, groupCondition2)}</group>`;
|
|
50
47
|
}
|
|
51
48
|
const groupCondition = item.element.condition === true ? "AND" : "OR";
|
|
52
|
-
return `<group value="${groupCondition}">${filterXML(
|
|
53
|
-
item.children,
|
|
54
|
-
groupCondition
|
|
55
|
-
)}</group>`;
|
|
49
|
+
return `<group value="${groupCondition}">${filterXML(item.children, groupCondition)}</group>`;
|
|
56
50
|
};
|
|
57
51
|
const filterXML = (filters) => {
|
|
58
52
|
const filterGroup = filters.map((filter) => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/components/format/xmlFormat.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\nimport { QB_OPERATOR_TYPES } from '../helpers/types';\n\nconst conditionSql = (condition, value) => {\n const {\n EQUAL,\n NOT_EQUAL,\n GREATER_THAN,\n LESS_THAN,\n CONTAINS,\n NOT_CONTAINS,\n BETWEEN,\n GREATER_THAN_OR_EQUAL,\n LESS_THAN_OR_EQUAL,\n START_WITH,\n } = QB_OPERATOR_TYPES;\n\n if (condition === EQUAL)
|
|
5
|
-
"mappings": "AAAA,YAAY,WAAW;ACCvB,SAAS,yBAAyB;AAElC,MAAM,eAAe,CAAC,WAAW,UAAU;AACzC,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI;AAEJ,MAAI,cAAc;
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\nimport { QB_OPERATOR_TYPES } from '../helpers/types.js';\n\nconst conditionSql = (condition, value) => {\n const {\n EQUAL,\n NOT_EQUAL,\n GREATER_THAN,\n LESS_THAN,\n CONTAINS,\n NOT_CONTAINS,\n BETWEEN,\n GREATER_THAN_OR_EQUAL,\n LESS_THAN_OR_EQUAL,\n START_WITH,\n } = QB_OPERATOR_TYPES;\n\n if (condition === EQUAL) return `<condition>EQUAL</condition><value>${value}</value>`;\n if (condition === NOT_EQUAL) return `<condition>NOT_EQUAL</condition><value>${value}</value>`;\n if (condition === GREATER_THAN) return `<condition>GREATER_THAN</condition><value>${value}</value>`;\n if (condition === LESS_THAN) return `<condition>LESS_THAN</condition><value>${value}</value>`;\n if (condition === CONTAINS) return `<condition>LIKE</condition><value>${value}</value>`;\n if (condition === NOT_CONTAINS) return `<condition>NOT_LIKE</condition><value>${value}</value>`;\n if (condition === BETWEEN)\n return `<condition>NOT_LIKE</condition><value><from>${value[0]}</from><to>${value[1]}</to></value>`;\n if (condition === GREATER_THAN_OR_EQUAL) return `<condition>GREATER_THAN_OR_EQUAL</condition><value>${value}</value>`;\n if (condition === LESS_THAN_OR_EQUAL) return `<condition>LESS_THAN_OR_EQUAL</condition><value>${value}</value>`;\n if (condition === START_WITH) return `<condition>GREATER_THAN</condition><value>${value}</value>`;\n\n return condition;\n};\n\nconst renderFilterSQl = (filter) => {\n const { field, operator, value } = filter.element;\n\n return `<filter><field>${field}</field>${conditionSql(operator, value) || ''}</filter>`;\n};\nexport const xmlFormat = ({ main, mapGroups, items }) => {\n const groupXML = (item, idGroup) => {\n if (idGroup === main) {\n const groupCondition = mapGroups[idGroup].condition === true ? 'AND' : 'OR';\n return `<group value=\"${groupCondition}\">${filterXML(item, groupCondition)}</group>`; // eslint-disable-line\n }\n const groupCondition = item.element.condition === true ? 'AND' : 'OR';\n return `<group value=\"${groupCondition}\">${filterXML(item.children, groupCondition)}</group>`; // eslint-disable-line\n };\n const filterXML = (filters) => {\n const filterGroup = filters.map((filter) => {\n if (filter.element.type === 'filter') return `${renderFilterSQl(filter) || ''} `;\n return ` ${groupXML(filter)} `;\n });\n return filterGroup.join('');\n };\n\n const xml = `<xml><query>${groupXML(items, main) || ''}</query></xml>`;\n\n return xml;\n};\n"],
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACCvB,SAAS,yBAAyB;AAElC,MAAM,eAAe,CAAC,WAAW,UAAU;AACzC,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI;AAEJ,MAAI,cAAc;AAAO,WAAO,sCAAsC;AACtE,MAAI,cAAc;AAAW,WAAO,0CAA0C;AAC9E,MAAI,cAAc;AAAc,WAAO,6CAA6C;AACpF,MAAI,cAAc;AAAW,WAAO,0CAA0C;AAC9E,MAAI,cAAc;AAAU,WAAO,qCAAqC;AACxE,MAAI,cAAc;AAAc,WAAO,yCAAyC;AAChF,MAAI,cAAc;AAChB,WAAO,+CAA+C,MAAM,CAAC,eAAe,MAAM,CAAC;AACrF,MAAI,cAAc;AAAuB,WAAO,sDAAsD;AACtG,MAAI,cAAc;AAAoB,WAAO,mDAAmD;AAChG,MAAI,cAAc;AAAY,WAAO,6CAA6C;AAElF,SAAO;AACT;AAEA,MAAM,kBAAkB,CAAC,WAAW;AAClC,QAAM,EAAE,OAAO,UAAU,MAAM,IAAI,OAAO;AAE1C,SAAO,kBAAkB,gBAAgB,aAAa,UAAU,KAAK,KAAK;AAC5E;AACO,MAAM,YAAY,CAAC,EAAE,MAAM,WAAW,MAAM,MAAM;AACvD,QAAM,WAAW,CAAC,MAAM,YAAY;AAClC,QAAI,YAAY,MAAM;AACpB,YAAMA,kBAAiB,UAAU,OAAO,EAAE,cAAc,OAAO,QAAQ;AACvE,aAAO,iBAAiBA,oBAAmB,UAAU,MAAMA,eAAc;AAAA,IAC3E;AACA,UAAM,iBAAiB,KAAK,QAAQ,cAAc,OAAO,QAAQ;AACjE,WAAO,iBAAiB,mBAAmB,UAAU,KAAK,UAAU,cAAc;AAAA,EACpF;AACA,QAAM,YAAY,CAAC,YAAY;AAC7B,UAAM,cAAc,QAAQ,IAAI,CAAC,WAAW;AAC1C,UAAI,OAAO,QAAQ,SAAS;AAAU,eAAO,GAAG,gBAAgB,MAAM,KAAK;AAC3E,aAAO,IAAI,SAAS,MAAM;AAAA,IAC5B,CAAC;AACD,WAAO,YAAY,KAAK,EAAE;AAAA,EAC5B;AAEA,QAAM,MAAM,eAAe,SAAS,OAAO,IAAI,KAAK;AAEpD,SAAO;AACT;",
|
|
6
6
|
"names": ["groupCondition"]
|
|
7
7
|
}
|
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import {
|
|
3
|
-
QB_DRAG_TYPES,
|
|
4
|
-
QB_GROUP_CONDITION_TYPES,
|
|
5
|
-
QB_FIELD_SHARED_ACTIONS
|
|
6
|
-
} from "./types";
|
|
2
|
+
import { QB_DRAG_TYPES, QB_GROUP_CONDITION_TYPES, QB_FIELD_SHARED_ACTIONS } from "./types.js";
|
|
7
3
|
const createNewFilter = function(idGroup) {
|
|
8
|
-
const idFilter = `filter_${new Date().getTime()}_${Math.random().toString(36).substring(7)}`;
|
|
4
|
+
const idFilter = `filter_${(/* @__PURE__ */ new Date()).getTime()}_${Math.random().toString(36).substring(7)}`;
|
|
9
5
|
return {
|
|
10
6
|
idGroup,
|
|
11
7
|
field: "",
|
|
@@ -16,7 +12,7 @@ const createNewFilter = function(idGroup) {
|
|
|
16
12
|
};
|
|
17
13
|
};
|
|
18
14
|
const createNewGroup = function(parentIdGroup) {
|
|
19
|
-
const idGroup = `group_${new Date().getTime()}_${Math.random().toString(36).substring(7)}`;
|
|
15
|
+
const idGroup = `group_${(/* @__PURE__ */ new Date()).getTime()}_${Math.random().toString(36).substring(7)}`;
|
|
20
16
|
return {
|
|
21
17
|
parentIdGroup,
|
|
22
18
|
idGroup,
|
|
@@ -87,9 +83,7 @@ const findParentFilterById = function(filterId) {
|
|
|
87
83
|
const filterInChildren = function(childs, filterId, mainId) {
|
|
88
84
|
if (childs.children) {
|
|
89
85
|
childs.children = childs.children.filter(({ id }) => id !== filterId);
|
|
90
|
-
childs.children = childs.children.forEach(
|
|
91
|
-
(item) => filterInChildren(item.children, filterId)
|
|
92
|
-
);
|
|
86
|
+
childs.children = childs.children.forEach((item) => filterInChildren(item.children, filterId));
|
|
93
87
|
return childs;
|
|
94
88
|
}
|
|
95
89
|
if (childs.length > 1)
|
|
@@ -98,9 +92,7 @@ const filterInChildren = function(childs, filterId, mainId) {
|
|
|
98
92
|
const emptyFilter = createNewFilter.call(this, mainId);
|
|
99
93
|
addFilterToMainItem.call(this, childs, emptyFilter);
|
|
100
94
|
}
|
|
101
|
-
childs.forEach(
|
|
102
|
-
(item) => item.children = filterInChildren(item.children, filterId)
|
|
103
|
-
);
|
|
95
|
+
childs.forEach((item) => item.children = filterInChildren(item.children, filterId));
|
|
104
96
|
return childs;
|
|
105
97
|
};
|
|
106
98
|
const removeFilterItem = function(filterId) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/components/helpers/actions.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\nimport {
|
|
5
|
-
"mappings": "AAAA,YAAY,WAAW;ACCvB
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\nimport { QB_DRAG_TYPES, QB_GROUP_CONDITION_TYPES, QB_FIELD_SHARED_ACTIONS } from './types.js';\n\n/**\n * this is injected. instance of QBStore\n *\n * @param {*} idGroup: UUID\n * @param idGroup\n */\nexport const createNewFilter = function (idGroup) {\n const idFilter = `filter_${new Date().getTime()}_${Math.random().toString(36).substring(7)}`;\n return {\n idGroup,\n field: '',\n condition: '',\n value: '',\n idFilter,\n type: QB_DRAG_TYPES.FILTER,\n };\n};\n\n/**\n * this is injected. instance of QBStore\n *\n * @param {*} parentIdGroup: UUID\n * @param parentIdGroup\n */\nexport const createNewGroup = function (parentIdGroup) {\n const idGroup = `group_${new Date().getTime()}_${Math.random().toString(36).substring(7)}`;\n return {\n parentIdGroup,\n idGroup,\n condition: QB_GROUP_CONDITION_TYPES.AND,\n type: QB_DRAG_TYPES.GROUP,\n };\n};\n\n/**\n * this is injected. instance of QBStore\n *\n * @param {*} newFilter\n */\nexport const addFilterToMap = function (newFilter) {\n this.mapFilters = {\n ...this.mapFilters,\n [newFilter.idFilter]: newFilter,\n };\n};\n\n/**\n * this is injected. instance of QBStore\n *\n * @param {*} newFilter\n * @param newGroup\n */\nexport const addGroupToMap = function (newGroup) {\n this.mapGroups = {\n ...this.mapGroups,\n [newGroup.idGroup]: {\n ...newGroup,\n },\n };\n};\n\nexport const addFilterToItem = function (item, newFilter) {\n item.children.push({\n id: newFilter.idFilter,\n element: newFilter,\n children: [],\n });\n};\n\nexport const addFilterToMainItem = function (items, newFilter) {\n items.push({\n id: newFilter.idFilter,\n element: newFilter,\n children: [],\n });\n};\n\nexport const findInChilds = function (childs, filterId) {\n const found = childs.find(({ id }) => id === filterId);\n if (!found) {\n let findInChild;\n childs.forEach((item) => {\n if (!findInChild) findInChild = findInChilds(item.children, filterId);\n });\n if (findInChild) return findInChild;\n }\n return found;\n};\nexport const findItemFilterById = function (filterId) {\n return findInChilds(this.items, filterId);\n};\n\nexport const findParentWithFilterId = function (childs, filterId) {\n const found = childs.find(({ id }) => id === filterId);\n if (!found) {\n let findInChild;\n childs.forEach((item) => {\n if (!findInChild) findInChild = findParentWithFilterId(item.children, filterId);\n });\n if (findInChild) return findInChild;\n }\n return childs;\n};\nexport const findParentFilterById = function (filterId) {\n return findParentWithFilterId(this.items, filterId);\n};\n\nexport const filterInChildren = function (childs, filterId, mainId) {\n if (childs.children) {\n childs.children = childs.children.filter(({ id }) => id !== filterId);\n childs.children = childs.children.forEach((item) => filterInChildren(item.children, filterId));\n return childs;\n }\n // main\n if (childs.length > 1) childs = childs.filter(({ id }) => id !== filterId); // https://jira.elliemae.io/browse/PUI-1252\n if (childs.length === 0 && mainId) {\n const emptyFilter = createNewFilter.call(this, mainId);\n addFilterToMainItem.call(this, childs, emptyFilter);\n }\n childs.forEach((item) => (item.children = filterInChildren(item.children, filterId)));\n return childs;\n};\nexport const removeFilterItem = function (filterId) {\n this.items = filterInChildren(this.items, filterId, this.main);\n};\n\nexport const addGroupFilterToItem = function (idGroup, idFilter, newGroup) {\n const child = findItemFilterById.call(this, idFilter);\n const copy = {\n ...child,\n };\n if (copy.element.type === 'group') {\n copy.element.parentIdGroup = newGroup.idGroup;\n } else {\n copy.element.idGroup = newGroup.idGroup;\n }\n child.id = newGroup.idGroup;\n child.element = newGroup;\n child.children = [copy];\n};\n\nexport const unGroupFilterToItem = function (idGroup) {\n const group = findItemFilterById.call(this, idGroup);\n if (group.element.parentIdGroup === this.main) {\n const index = this.items.map((item) => item.id).indexOf(idGroup);\n const tmp = [];\n tmp.splice.apply(this.items, [index, 1].concat(group.children));\n this.items.forEach((item) => {\n if (item.element.type === 'group') {\n item.element.parentIdGroup = this.main;\n } else {\n item.element.idGroup = this.main;\n }\n });\n } else {\n const parent = findItemFilterById.call(this, group.element.parentIdGroup);\n const index = parent.children.map((item) => item.id).indexOf(idGroup);\n const tmp = [];\n tmp.splice.apply(parent.children, [index, 1].concat(group.children));\n parent.children.forEach((item) => {\n if (item.element.type === 'group') {\n item.element.parentIdGroup = parent.id;\n } else {\n item.element.idGroup = parent.id;\n }\n });\n }\n};\n\nexport const changeGroupOperator = function (idGroup, value) {\n const group = findItemFilterById.call(this, idGroup);\n if (idGroup !== this.main) {\n group.element.condition = value;\n }\n};\n\nexport const changeFilterItem = function ({\n idFilter,\n field,\n value,\n operator,\n additionalInfo,\n target,\n fieldsSharedActions: { onFieldChange, onOperatorChange, onValueChange },\n}) {\n const child = findItemFilterById.call(this, idFilter);\n if (field || field === '' || typeof field === 'boolean') child.element.field = field;\n if (operator) child.element.operator = operator;\n if (value || value === '' || typeof value === 'boolean') child.element.value = value;\n if (additionalInfo) child.element.additionalInfo = additionalInfo;\n\n // shared fields actions\n if (target === 'field') {\n onFieldChange.forEach(({ action }) => {\n if (action === QB_FIELD_SHARED_ACTIONS.RESET_FIELD) child.element.field = null;\n else if (action === QB_FIELD_SHARED_ACTIONS.RESET_OPERATOR) child.element.operator = null;\n else if (action === QB_FIELD_SHARED_ACTIONS.RESET_VALUE) child.element.value = null;\n });\n } else if (target === 'operator') {\n onOperatorChange.forEach(({ action }) => {\n if (action === QB_FIELD_SHARED_ACTIONS.RESET_FIELD) child.element.field = null;\n else if (action === QB_FIELD_SHARED_ACTIONS.RESET_OPERATOR) child.element.operator = null;\n else if (action === QB_FIELD_SHARED_ACTIONS.RESET_VALUE) child.element.value = null;\n });\n } else if (target === 'value') {\n onValueChange.forEach(({ action }) => {\n if (action === QB_FIELD_SHARED_ACTIONS.RESET_FIELD) child.element.field = null;\n else if (action === QB_FIELD_SHARED_ACTIONS.RESET_OPERATOR) child.element.operator = null;\n else if (action === QB_FIELD_SHARED_ACTIONS.RESET_VALUE) child.element.value = null;\n });\n }\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -5,11 +5,11 @@ const translateCondition = (logical) => {
|
|
|
5
5
|
return true;
|
|
6
6
|
if (logical === "or")
|
|
7
7
|
return false;
|
|
8
|
-
throw Error(
|
|
8
|
+
throw Error(`invalid logical: ${logical}`);
|
|
9
9
|
};
|
|
10
10
|
const isGroup = (item) => item.logical === "and" || item.logical === "or";
|
|
11
|
-
const createFieldId = (item) => `filter_${new Date().getTime()}_${Math.random().toString(36).substring(7)}`;
|
|
12
|
-
const createGroupId = (item) => `group_${new Date().getTime()}_${Math.random().toString(36).substring(7)}`;
|
|
11
|
+
const createFieldId = (item) => `filter_${(/* @__PURE__ */ new Date()).getTime()}_${Math.random().toString(36).substring(7)}`;
|
|
12
|
+
const createGroupId = (item) => `group_${(/* @__PURE__ */ new Date()).getTime()}_${Math.random().toString(36).substring(7)}`;
|
|
13
13
|
const getType = (item) => isGroup(item) ? "group" : "filter";
|
|
14
14
|
const adapterV2toV1 = (value) => {
|
|
15
15
|
const main = value[0];
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/components/helpers/adapter.ts"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "const translateCondition = (logical: string) => {\n console.log('logical', logical);\n if (logical === 'and') return true;\n if (logical === 'or') return false;\n throw Error(
|
|
5
|
-
"mappings": "AAAA,YAAY,WAAW;ACAvB,MAAM,qBAAqB,CAAC,YAAoB;AAC9C,UAAQ,IAAI,WAAW,OAAO;AAC9B,MAAI,YAAY;AAAO,WAAO;AAC9B,MAAI,YAAY;AAAM,WAAO;AAC7B,QAAM,MAAM,
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "const translateCondition = (logical: string) => {\n console.log('logical', logical);\n if (logical === 'and') return true;\n if (logical === 'or') return false;\n throw Error(`invalid logical: ${logical}`);\n};\nconst isGroup = (item: { logical: string }) => item.logical === 'and' || item.logical === 'or';\nconst createFieldId = (item: any) => `filter_${new Date().getTime()}_${Math.random().toString(36).substring(7)}`;\nconst createGroupId = (item: {}) => `group_${new Date().getTime()}_${Math.random().toString(36).substring(7)}`;\nconst getType = (item: any) => (isGroup(item) ? 'group' : 'filter');\n\nexport const adapterV2toV1 = (value: any[]) => {\n const main = value[0]; // QB1 only support a group as level 0\n const parseField = (\n currenNode: { fields: any[] },\n parentIdGroup: string,\n mapFilters: {\n [x: string]:\n | {\n parentIdGroup: any;\n idGroup: any;\n idFilter: string | undefined;\n field: any;\n condition: boolean | undefined;\n value: any;\n type: string;\n operator: any;\n target: string;\n }\n | undefined;\n },\n mapGroups: {\n [x: string]:\n | { condition: boolean; idGroup: string; parentIdGroup: any; type: string }\n | { parentIdGroup: string; idGroup: string; condition: boolean; type: string }\n | undefined;\n },\n items: {\n id: string;\n element: {\n parentIdGroup: any;\n idGroup: any;\n idFilter: string | undefined;\n field: any;\n condition: string | boolean;\n value: any;\n type: string;\n operator: any;\n };\n children: never[];\n }[],\n ) => {\n currenNode.fields.forEach(\n (element: {\n column: any;\n logical: string;\n value: any;\n operator: any;\n fields: string | any[];\n additionalInfo?: any;\n }) => {\n const isItGroup = isGroup(element);\n const id = isItGroup ? createGroupId(element) : createFieldId(element);\n const translation = {\n id,\n element: {\n parentIdGroup: isItGroup ? parentIdGroup : undefined,\n idGroup: isItGroup ? id : parentIdGroup,\n idFilter: isItGroup ? undefined : id,\n field: isItGroup ? undefined : element.column,\n condition: isItGroup ? translateCondition(element.logical) : '',\n value: isItGroup ? undefined : element.value,\n type: getType(element),\n operator: isItGroup ? undefined : element.operator,\n additionalInfo: element.additionalInfo,\n },\n children: [],\n };\n\n const mapGroupsTranslation = isItGroup\n ? {\n condition: translateCondition(element.logical),\n idGroup: id,\n parentIdGroup,\n type: getType(element),\n }\n : undefined;\n const mapFiltersTranslation = !isItGroup\n ? {\n parentIdGroup: isItGroup ? parentIdGroup : undefined,\n idGroup: isItGroup ? id : parentIdGroup,\n idFilter: isItGroup ? undefined : id,\n field: isItGroup ? undefined : element.column,\n condition: isItGroup ? translateCondition(element.logical) : undefined,\n value: isItGroup ? undefined : element.value,\n type: getType(element),\n operator: isItGroup ? undefined : element.operator,\n target: 'value',\n }\n : undefined;\n\n if (isItGroup) {\n mapGroups[id] = mapGroupsTranslation;\n } else mapFilters[id] = mapFiltersTranslation;\n items.push(translation);\n\n if (isItGroup && element.fields.length > 0) {\n parseField(element as any, id, mapFilters, mapGroups, translation.children);\n }\n },\n );\n };\n\n const mainGroup = createGroupId({});\n const mapFilters = {};\n const mapGroups = {\n [mainGroup]: {\n parentIdGroup: 'main',\n idGroup: mainGroup,\n condition: translateCondition(main.logical),\n type: 'group',\n },\n };\n const items: any = [];\n parseField(main, mainGroup, mapFilters, mapGroups, items);\n return {\n step: Math.round(Math.random() * 100) + 1,\n mapFilters,\n mapGroups,\n main: mainGroup,\n items,\n };\n};\n\nconst getConditionToLogical = (condition: any) => (condition ? 'and' : 'or');\n\nexport const adapterV1toV2 = (data: { main: any; mapGroups: { [x: string]: { condition: any } }; items: any }) => {\n const result = [];\n const mainGroup = data.main;\n const init = {\n logical: getConditionToLogical(data.mapGroups[mainGroup].condition),\n fields: [],\n };\n const parseItemsToFields = (\n items: any[],\n result: { column?: any; operator?: any; value?: any; logical?: string; fields?: never[] }[],\n ) => {\n items.forEach((item: { element: any; children: any }) => {\n const { element, children } = item;\n if (element.type === 'filter') {\n result.push({\n additionalInfo: element.additionalInfo,\n column: element.field,\n operator: element.operator,\n value: element.value,\n });\n } else {\n const group = {\n logical: getConditionToLogical(element.condition),\n fields: [],\n };\n parseItemsToFields(children, group.fields);\n result.push(group);\n }\n });\n };\n\n parseItemsToFields(data.items, init.fields);\n result.push(init);\n return result;\n};\n"],
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACAvB,MAAM,qBAAqB,CAAC,YAAoB;AAC9C,UAAQ,IAAI,WAAW,OAAO;AAC9B,MAAI,YAAY;AAAO,WAAO;AAC9B,MAAI,YAAY;AAAM,WAAO;AAC7B,QAAM,MAAM,oBAAoB,SAAS;AAC3C;AACA,MAAM,UAAU,CAAC,SAA8B,KAAK,YAAY,SAAS,KAAK,YAAY;AAC1F,MAAM,gBAAgB,CAAC,SAAc,WAAU,oBAAI,KAAK,GAAE,QAAQ,KAAK,KAAK,OAAO,EAAE,SAAS,EAAE,EAAE,UAAU,CAAC;AAC7G,MAAM,gBAAgB,CAAC,SAAa,UAAS,oBAAI,KAAK,GAAE,QAAQ,KAAK,KAAK,OAAO,EAAE,SAAS,EAAE,EAAE,UAAU,CAAC;AAC3G,MAAM,UAAU,CAAC,SAAe,QAAQ,IAAI,IAAI,UAAU;AAEnD,MAAM,gBAAgB,CAAC,UAAiB;AAC7C,QAAM,OAAO,MAAM,CAAC;AACpB,QAAM,aAAa,CACjB,YACA,eACAA,aAeAC,YAMAC,WAcG;AACH,eAAW,OAAO;AAAA,MAChB,CAAC,YAOK;AACJ,cAAM,YAAY,QAAQ,OAAO;AACjC,cAAM,KAAK,YAAY,cAAc,OAAO,IAAI,cAAc,OAAO;AACrE,cAAM,cAAc;AAAA,UAClB;AAAA,UACA,SAAS;AAAA,YACP,eAAe,YAAY,gBAAgB;AAAA,YAC3C,SAAS,YAAY,KAAK;AAAA,YAC1B,UAAU,YAAY,SAAY;AAAA,YAClC,OAAO,YAAY,SAAY,QAAQ;AAAA,YACvC,WAAW,YAAY,mBAAmB,QAAQ,OAAO,IAAI;AAAA,YAC7D,OAAO,YAAY,SAAY,QAAQ;AAAA,YACvC,MAAM,QAAQ,OAAO;AAAA,YACrB,UAAU,YAAY,SAAY,QAAQ;AAAA,YAC1C,gBAAgB,QAAQ;AAAA,UAC1B;AAAA,UACA,UAAU,CAAC;AAAA,QACb;AAEA,cAAM,uBAAuB,YACzB;AAAA,UACE,WAAW,mBAAmB,QAAQ,OAAO;AAAA,UAC7C,SAAS;AAAA,UACT;AAAA,UACA,MAAM,QAAQ,OAAO;AAAA,QACvB,IACA;AACJ,cAAM,wBAAwB,CAAC,YAC3B;AAAA,UACE,eAAe,YAAY,gBAAgB;AAAA,UAC3C,SAAS,YAAY,KAAK;AAAA,UAC1B,UAAU,YAAY,SAAY;AAAA,UAClC,OAAO,YAAY,SAAY,QAAQ;AAAA,UACvC,WAAW,YAAY,mBAAmB,QAAQ,OAAO,IAAI;AAAA,UAC7D,OAAO,YAAY,SAAY,QAAQ;AAAA,UACvC,MAAM,QAAQ,OAAO;AAAA,UACrB,UAAU,YAAY,SAAY,QAAQ;AAAA,UAC1C,QAAQ;AAAA,QACV,IACA;AAEJ,YAAI,WAAW;AACb,UAAAD,WAAU,EAAE,IAAI;AAAA,QAClB;AAAO,UAAAD,YAAW,EAAE,IAAI;AACxB,QAAAE,OAAM,KAAK,WAAW;AAEtB,YAAI,aAAa,QAAQ,OAAO,SAAS,GAAG;AAC1C,qBAAW,SAAgB,IAAIF,aAAYC,YAAW,YAAY,QAAQ;AAAA,QAC5E;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAEA,QAAM,YAAY,cAAc,CAAC,CAAC;AAClC,QAAM,aAAa,CAAC;AACpB,QAAM,YAAY;AAAA,IAChB,CAAC,SAAS,GAAG;AAAA,MACX,eAAe;AAAA,MACf,SAAS;AAAA,MACT,WAAW,mBAAmB,KAAK,OAAO;AAAA,MAC1C,MAAM;AAAA,IACR;AAAA,EACF;AACA,QAAM,QAAa,CAAC;AACpB,aAAW,MAAM,WAAW,YAAY,WAAW,KAAK;AACxD,SAAO;AAAA,IACL,MAAM,KAAK,MAAM,KAAK,OAAO,IAAI,GAAG,IAAI;AAAA,IACxC;AAAA,IACA;AAAA,IACA,MAAM;AAAA,IACN;AAAA,EACF;AACF;AAEA,MAAM,wBAAwB,CAAC,cAAoB,YAAY,QAAQ;AAEhE,MAAM,gBAAgB,CAAC,SAAoF;AAChH,QAAM,SAAS,CAAC;AAChB,QAAM,YAAY,KAAK;AACvB,QAAM,OAAO;AAAA,IACX,SAAS,sBAAsB,KAAK,UAAU,SAAS,EAAE,SAAS;AAAA,IAClE,QAAQ,CAAC;AAAA,EACX;AACA,QAAM,qBAAqB,CACzB,OACAE,YACG;AACH,UAAM,QAAQ,CAAC,SAA0C;AACvD,YAAM,EAAE,SAAS,SAAS,IAAI;AAC9B,UAAI,QAAQ,SAAS,UAAU;AAC7B,QAAAA,QAAO,KAAK;AAAA,UACV,gBAAgB,QAAQ;AAAA,UACxB,QAAQ,QAAQ;AAAA,UAChB,UAAU,QAAQ;AAAA,UAClB,OAAO,QAAQ;AAAA,QACjB,CAAC;AAAA,MACH,OAAO;AACL,cAAM,QAAQ;AAAA,UACZ,SAAS,sBAAsB,QAAQ,SAAS;AAAA,UAChD,QAAQ,CAAC;AAAA,QACX;AACA,2BAAmB,UAAU,MAAM,MAAM;AACzC,QAAAA,QAAO,KAAK,KAAK;AAAA,MACnB;AAAA,IACF,CAAC;AAAA,EACH;AAEA,qBAAmB,KAAK,OAAO,KAAK,MAAM;AAC1C,SAAO,KAAK,IAAI;AAChB,SAAO;AACT;",
|
|
6
6
|
"names": ["mapFilters", "mapGroups", "items", "result"]
|
|
7
7
|
}
|
|
@@ -1,28 +1,20 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import { get } from "lodash";
|
|
3
3
|
import * as operators from "@elliemae/ds-utilities/operators";
|
|
4
|
-
import { QB_GROUP_CONDITION_TYPES } from "./types";
|
|
4
|
+
import { QB_GROUP_CONDITION_TYPES } from "./types.js";
|
|
5
5
|
const resolveCondition = (condition, state, resolveBy = QB_GROUP_CONDITION_TYPES.AND) => {
|
|
6
6
|
if (condition.length === 0 || !condition)
|
|
7
7
|
return true;
|
|
8
8
|
if (resolveBy) {
|
|
9
9
|
return condition.every((rule) => {
|
|
10
|
-
const {
|
|
11
|
-
source: sourceRule,
|
|
12
|
-
operator: operatorRule,
|
|
13
|
-
value: valueRule
|
|
14
|
-
} = rule;
|
|
10
|
+
const { source: sourceRule, operator: operatorRule, value: valueRule } = rule;
|
|
15
11
|
if (typeof operatorRule === "function")
|
|
16
12
|
return operatorRule(get(state, sourceRule), valueRule);
|
|
17
13
|
return operators[operatorRule](get(state, sourceRule), valueRule);
|
|
18
14
|
});
|
|
19
15
|
}
|
|
20
16
|
return condition.some((rule) => {
|
|
21
|
-
const {
|
|
22
|
-
source: sourceRule,
|
|
23
|
-
operator: operatorRule,
|
|
24
|
-
value: valueRule
|
|
25
|
-
} = rule;
|
|
17
|
+
const { source: sourceRule, operator: operatorRule, value: valueRule } = rule;
|
|
26
18
|
return operators[operatorRule](state[sourceRule], valueRule);
|
|
27
19
|
});
|
|
28
20
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/components/helpers/dependencies.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { get } from 'lodash';\nimport * as operators from '@elliemae/ds-utilities/operators';\nimport { QB_GROUP_CONDITION_TYPES } from './types';\n\nconst resolveCondition = (
|
|
5
|
-
"mappings": "AAAA,YAAY,WAAW;ACAvB,SAAS,WAAW;AACpB,YAAY,eAAe;AAC3B,SAAS,gCAAgC;AAEzC,MAAM,mBAAmB,
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { get } from 'lodash';\nimport * as operators from '@elliemae/ds-utilities/operators';\nimport { QB_GROUP_CONDITION_TYPES } from './types.js';\n\nconst resolveCondition = (condition, state, resolveBy = QB_GROUP_CONDITION_TYPES.AND) => {\n if (condition.length === 0 || !condition) return true;\n // resolve by AND: all the conditions must be true\n if (resolveBy) {\n return condition.every((rule) => {\n const { source: sourceRule, operator: operatorRule, value: valueRule } = rule;\n if (typeof operatorRule === 'function') return operatorRule(get(state, sourceRule), valueRule);\n return operators[operatorRule](get(state, sourceRule), valueRule);\n });\n }\n // resolve by OR: at least one condition must be true\n return condition.some((rule) => {\n const { source: sourceRule, operator: operatorRule, value: valueRule } = rule;\n return operators[operatorRule](state[sourceRule], valueRule);\n });\n};\n\nexport const resolveDependencies = (state, fields) => {\n const fieldsToRender = fields.reduce(\n (result, { target, component, condition, resolveBy, validation, handleWidth }) => {\n if (resolveCondition(condition, state, resolveBy)) result.push({ target, component, validation, handleWidth });\n return result;\n },\n [],\n );\n return fieldsToRender;\n};\n"],
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACAvB,SAAS,WAAW;AACpB,YAAY,eAAe;AAC3B,SAAS,gCAAgC;AAEzC,MAAM,mBAAmB,CAAC,WAAW,OAAO,YAAY,yBAAyB,QAAQ;AACvF,MAAI,UAAU,WAAW,KAAK,CAAC;AAAW,WAAO;AAEjD,MAAI,WAAW;AACb,WAAO,UAAU,MAAM,CAAC,SAAS;AAC/B,YAAM,EAAE,QAAQ,YAAY,UAAU,cAAc,OAAO,UAAU,IAAI;AACzE,UAAI,OAAO,iBAAiB;AAAY,eAAO,aAAa,IAAI,OAAO,UAAU,GAAG,SAAS;AAC7F,aAAO,UAAU,YAAY,EAAE,IAAI,OAAO,UAAU,GAAG,SAAS;AAAA,IAClE,CAAC;AAAA,EACH;AAEA,SAAO,UAAU,KAAK,CAAC,SAAS;AAC9B,UAAM,EAAE,QAAQ,YAAY,UAAU,cAAc,OAAO,UAAU,IAAI;AACzE,WAAO,UAAU,YAAY,EAAE,MAAM,UAAU,GAAG,SAAS;AAAA,EAC7D,CAAC;AACH;AAEO,MAAM,sBAAsB,CAAC,OAAO,WAAW;AACpD,QAAM,iBAAiB,OAAO;AAAA,IAC5B,CAAC,QAAQ,EAAE,QAAQ,WAAW,WAAW,WAAW,YAAY,YAAY,MAAM;AAChF,UAAI,iBAAiB,WAAW,OAAO,SAAS;AAAG,eAAO,KAAK,EAAE,QAAQ,WAAW,YAAY,YAAY,CAAC;AAC7G,aAAO;AAAA,IACT;AAAA,IACA,CAAC;AAAA,EACH;AACA,SAAO;AACT;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/components/helpers/selectors.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { QB_OPERATOR_TYPES, QB_FIELD_TYPES } from './types';\n\nexport const QB_DEFAULT_VALUES_OPTIONS = [\n {\n label: 'Choose a Field',\n value: '',\n },\n];\nexport const QB_SUBJECT_VALUES_OPTIONS = [\n {\n label: 'Condominium',\n value: 'Condominium',\n },\n {\n label: 'Single Family Home',\n value: 'Single Family Home',\n },\n {\n label: 'Co-Operative',\n value: 'Co-Operative',\n },\n {\n label: 'Detached',\n value: 'Detached',\n },\n {\n label: 'High Rise Condominium',\n value: 'High Rise Condominium',\n },\n {\n label: 'Manufactured Housing',\n value: 'Manufactured Housing',\n },\n {\n label: 'Other',\n value: 'Other',\n },\n];\n\nexport const QB_LOAN_VALUES_OPTIONS = [\n {\n label: 'Conventional',\n value: 'Conventional',\n },\n {\n label: 'VA',\n value: 'VA',\n },\n {\n label: 'FHA',\n value: 'FHA',\n },\n {\n label: 'USAD-RHS',\n value: 'USAD-RHS',\n },\n {\n label: 'HELOC',\n value: 'HELOC',\n },\n {\n label: 'Other',\n value: 'Other',\n },\n];\n\nexport const QB_FIELD_OPTIONS = [\n {\n label: 'Select',\n value: '',\n },\n {\n label: 'Loan Type',\n value: QB_FIELD_TYPES.LOAN_VALUES,\n },\n {\n label: 'Loan To Value (LTV)',\n value: QB_FIELD_TYPES.LTV_VALUES,\n },\n {\n label: 'Subject Property Type',\n value: QB_FIELD_TYPES.SUBJECT_VALUES,\n },\n {\n label: 'Last Finished Milestone',\n value: QB_FIELD_TYPES.LAST_VALUES,\n },\n {\n label: 'Credit Score',\n value: QB_FIELD_TYPES.CREDIT_VALUES,\n },\n];\n\nexport const QB_OPERATOR_OPTIONS = [\n {\n label: 'Select',\n value: '',\n },\n {\n label: 'Is',\n value: QB_OPERATOR_TYPES.EQUAL,\n },\n {\n label: 'Is not',\n value: QB_OPERATOR_TYPES.NOT_EQUAL,\n },\n {\n label: 'Greater than',\n value: QB_OPERATOR_TYPES.GREATER_THAN,\n },\n {\n label: 'Less than',\n value: QB_OPERATOR_TYPES.LESS_THAN,\n },\n {\n label: 'Contains',\n value: QB_OPERATOR_TYPES.CONTAINS,\n },\n {\n label: \"Doesn't Contain\",\n value: QB_OPERATOR_TYPES.NOT_CONTAINS,\n },\n {\n label: 'Between',\n value: QB_OPERATOR_TYPES.BETWEEN,\n },\n];\n"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { QB_OPERATOR_TYPES, QB_FIELD_TYPES } from './types.js';\n\nexport const QB_DEFAULT_VALUES_OPTIONS = [\n {\n label: 'Choose a Field',\n value: '',\n },\n];\nexport const QB_SUBJECT_VALUES_OPTIONS = [\n {\n label: 'Condominium',\n value: 'Condominium',\n },\n {\n label: 'Single Family Home',\n value: 'Single Family Home',\n },\n {\n label: 'Co-Operative',\n value: 'Co-Operative',\n },\n {\n label: 'Detached',\n value: 'Detached',\n },\n {\n label: 'High Rise Condominium',\n value: 'High Rise Condominium',\n },\n {\n label: 'Manufactured Housing',\n value: 'Manufactured Housing',\n },\n {\n label: 'Other',\n value: 'Other',\n },\n];\n\nexport const QB_LOAN_VALUES_OPTIONS = [\n {\n label: 'Conventional',\n value: 'Conventional',\n },\n {\n label: 'VA',\n value: 'VA',\n },\n {\n label: 'FHA',\n value: 'FHA',\n },\n {\n label: 'USAD-RHS',\n value: 'USAD-RHS',\n },\n {\n label: 'HELOC',\n value: 'HELOC',\n },\n {\n label: 'Other',\n value: 'Other',\n },\n];\n\nexport const QB_FIELD_OPTIONS = [\n {\n label: 'Select',\n value: '',\n },\n {\n label: 'Loan Type',\n value: QB_FIELD_TYPES.LOAN_VALUES,\n },\n {\n label: 'Loan To Value (LTV)',\n value: QB_FIELD_TYPES.LTV_VALUES,\n },\n {\n label: 'Subject Property Type',\n value: QB_FIELD_TYPES.SUBJECT_VALUES,\n },\n {\n label: 'Last Finished Milestone',\n value: QB_FIELD_TYPES.LAST_VALUES,\n },\n {\n label: 'Credit Score',\n value: QB_FIELD_TYPES.CREDIT_VALUES,\n },\n];\n\nexport const QB_OPERATOR_OPTIONS = [\n {\n label: 'Select',\n value: '',\n },\n {\n label: 'Is',\n value: QB_OPERATOR_TYPES.EQUAL,\n },\n {\n label: 'Is not',\n value: QB_OPERATOR_TYPES.NOT_EQUAL,\n },\n {\n label: 'Greater than',\n value: QB_OPERATOR_TYPES.GREATER_THAN,\n },\n {\n label: 'Less than',\n value: QB_OPERATOR_TYPES.LESS_THAN,\n },\n {\n label: 'Contains',\n value: QB_OPERATOR_TYPES.CONTAINS,\n },\n {\n label: \"Doesn't Contain\",\n value: QB_OPERATOR_TYPES.NOT_CONTAINS,\n },\n {\n label: 'Between',\n value: QB_OPERATOR_TYPES.BETWEEN,\n },\n];\n"],
|
|
5
5
|
"mappings": "AAAA,YAAY,WAAW;ACAvB,SAAS,mBAAmB,sBAAsB;AAE3C,MAAM,4BAA4B;AAAA,EACvC;AAAA,IACE,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AACF;AACO,MAAM,4BAA4B;AAAA,EACvC;AAAA,IACE,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AACF;AAEO,MAAM,yBAAyB;AAAA,EACpC;AAAA,IACE,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AACF;AAEO,MAAM,mBAAmB;AAAA,EAC9B;AAAA,IACE,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO,eAAe;AAAA,EACxB;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO,eAAe;AAAA,EACxB;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO,eAAe;AAAA,EACxB;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO,eAAe;AAAA,EACxB;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO,eAAe;AAAA,EACxB;AACF;AAEO,MAAM,sBAAsB;AAAA,EACjC;AAAA,IACE,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO,kBAAkB;AAAA,EAC3B;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO,kBAAkB;AAAA,EAC3B;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO,kBAAkB;AAAA,EAC3B;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO,kBAAkB;AAAA,EAC3B;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO,kBAAkB;AAAA,EAC3B;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO,kBAAkB;AAAA,EAC3B;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,OAAO,kBAAkB;AAAA,EAC3B;AACF;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -12,8 +12,8 @@ import {
|
|
|
12
12
|
unGroupFilterToItem,
|
|
13
13
|
changeFilterItem,
|
|
14
14
|
changeGroupOperator
|
|
15
|
-
} from "./actions";
|
|
16
|
-
import QueryBuilderFormat from "../format/format";
|
|
15
|
+
} from "./actions.js";
|
|
16
|
+
import QueryBuilderFormat from "../format/format.js";
|
|
17
17
|
class QueryBuilderStore {
|
|
18
18
|
constructor(init, format) {
|
|
19
19
|
this.items = [];
|
|
@@ -29,6 +29,7 @@ class QueryBuilderStore {
|
|
|
29
29
|
this.items = items;
|
|
30
30
|
return this.getState();
|
|
31
31
|
};
|
|
32
|
+
// eslint-disable-next-line no-unused-vars
|
|
32
33
|
this.addFilterNextToFilterId = (idGroup, idFilter) => {
|
|
33
34
|
this.addFilter(idGroup);
|
|
34
35
|
return this.getState();
|
|
@@ -55,6 +56,13 @@ class QueryBuilderStore {
|
|
|
55
56
|
addGroupFilterToItem.call(this, idGroup, idFilter, newGroup);
|
|
56
57
|
return this.getState();
|
|
57
58
|
};
|
|
59
|
+
/**
|
|
60
|
+
* Group a filter inside a new Group
|
|
61
|
+
*
|
|
62
|
+
* @param idGroup
|
|
63
|
+
* @param idFilter
|
|
64
|
+
*/
|
|
65
|
+
// eslint-disable-next-line no-unused-vars
|
|
58
66
|
this.addRuleContainer = (idGroup, idFilter) => {
|
|
59
67
|
const newGroup = this.createNewGroup(idGroup);
|
|
60
68
|
addGroupToMap.call(this, newGroup);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/components/helpers/store.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\nimport {\n createNewFilter,\n createNewGroup,\n addFilterToMap,\n addGroupToMap,\n addFilterToItem, // new API\n addFilterToMainItem, // new API\n findItemFilterById, // new API\n removeFilterItem, // new API\n addGroupFilterToItem, // new API\n unGroupFilterToItem, // new API\n changeFilterItem, // new API\n changeGroupOperator, // new API\n} from './actions';\nimport QueryBuilderFormat from '../format/format';\n/**\n * Fluent interface: https://en.wikipedia.org/wiki/Fluent_interface\n *\n * @param idGroup\n * @param parentIdGroup\n * @param items\n * @param idFilter\n * @param value\n * @param data\n * @class QueryBuilderStore\n */\nclass QueryBuilderStore {\n items = [];\n\n step = 0;\n\n steps = {};\n\n mapFilters = {};\n\n mapGroups = {};\n\n main = null;\n\n format = null;\n\n constructor(init, format) {\n this.firstLoad = true;\n this.format = format;\n if (init) return this.initSetupUp(init);\n const mainGroup = this.createNewGroup('main');\n this.mapGroups = {\n [mainGroup.idGroup]: mainGroup,\n };\n this.main = mainGroup.idGroup;\n this.addFilter(mainGroup.idGroup);\n\n this.initSetupUp = this.initSetupUp.bind(this);\n }\n\n initSetupUp(init) {\n this.step = init.step || 1;\n Object.keys(init).forEach((key) => {\n if (init[key] && this[key] !== undefined) this[key] = init[key];\n });\n }\n\n createNewFilter = (idGroup) => createNewFilter.call(this, idGroup);\n\n createNewGroup = (parentIdGroup) => createNewGroup.call(this, parentIdGroup);\n\n onOrderDragAndDrop = (items) => {\n this.items = items;\n return this.getState();\n };\n\n // eslint-disable-next-line no-unused-vars\n addFilterNextToFilterId = (idGroup, idFilter) => {\n // eslint-disable-line\n this.addFilter(idGroup);\n return this.getState();\n };\n\n addFilter = (idGroup) => {\n const newFilter = this.createNewFilter(idGroup);\n addFilterToMap.call(this, newFilter);\n // new API\n if (this.main === idGroup) {\n addFilterToMainItem.call(this, this.items, newFilter);\n } else {\n const foundInItems = findItemFilterById.call(this, idGroup);\n if (foundInItems) {\n addFilterToItem.call(this, foundInItems, newFilter);\n }\n }\n return this.getState();\n };\n\n onRemoveFilter = (idFilter) => {\n // new API\n removeFilterItem.call(this, idFilter);\n return this.getState();\n };\n\n addRuleContainerInPlace = (idGroup, idFilter) => {\n // Create a new group\n const newGroup = this.createNewGroup(idGroup);\n addGroupFilterToItem.call(this, idGroup, idFilter, newGroup);\n return this.getState();\n };\n\n /**\n * Group a filter inside a new Group\n *\n * @param idGroup\n * @param idFilter\n */\n // eslint-disable-next-line no-unused-vars\n addRuleContainer = (idGroup, idFilter) => {\n // eslint-disable-line\n const newGroup = this.createNewGroup(idGroup);\n addGroupToMap.call(this, newGroup);\n if (this.main === idGroup) {\n addFilterToMainItem.call(this, this.items, newGroup);\n } else {\n const foundInItems = findItemFilterById.call(this, idGroup);\n if (foundInItems) {\n addFilterToItem.call(this, foundInItems, newGroup);\n }\n }\n return this.getState();\n };\n\n unGroup = (idGroup) => {\n unGroupFilterToItem.call(this, idGroup);\n return this.getState();\n };\n\n changeGroupOperator = (idGroup, value) => {\n this.getGroupById(idGroup).condition = value;\n changeGroupOperator.call(this, idGroup, value);\n return this.getState();\n };\n\n changeFilter = (data) => {\n const { idFilter } = data;\n this.mapFilters[idFilter] = {\n ...this.mapFilters[idFilter],\n ...data,\n };\n changeFilterItem.call(this, data);\n return this.getState();\n };\n\n getGroupById = (idGroup) => this.mapGroups[idGroup] || {};\n\n getFilterById = (idFilter) => this.mapFilters[idFilter];\n\n getInitialState = () => {\n const newFilters = {\n step: this.step,\n mapFilters: { ...this.mapFilters },\n mapGroups: { ...this.mapGroups },\n main: this.main,\n items: this.items,\n };\n const format = QueryBuilderFormat.run(newFilters, this.format);\n return {\n ...newFilters,\n format,\n };\n };\n\n getState = () => {\n this.step += 1;\n const newFilters = {\n step: this.step,\n mapFilters: { ...this.mapFilters },\n mapGroups: { ...this.mapGroups },\n main: this.main,\n items: this.items,\n };\n const format = QueryBuilderFormat.run(newFilters, this.format);\n return {\n ...newFilters,\n format,\n };\n };\n}\n\nexport default QueryBuilderStore;\n"],
|
|
5
|
-
"mappings": "AAAA,YAAY,WAAW;ACCvB;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,OAAO,wBAAwB;AAY/B,MAAM,kBAAkB;AAAA,EAetB,YAAY,MAAM,QAAQ;AAd1B,iBAAQ,CAAC;AAET,gBAAO;AAEP,iBAAQ,CAAC;AAET,sBAAa,CAAC;AAEd,qBAAY,CAAC;AAEb,gBAAO;AAEP,kBAAS;AAuBT,2BAAkB,CAAC,YAAY,gBAAgB,KAAK,MAAM,OAAO;AAEjE,0BAAiB,CAAC,kBAAkB,eAAe,KAAK,MAAM,aAAa;AAE3E,8BAAqB,CAAC,UAAU;AAC9B,WAAK,QAAQ;AACb,aAAO,KAAK,SAAS;AAAA,IACvB;AAGA,mCAA0B,CAAC,SAAS,aAAa;AAE/C,WAAK,UAAU,OAAO;AACtB,aAAO,KAAK,SAAS;AAAA,IACvB;AAEA,qBAAY,CAAC,YAAY;AACvB,YAAM,YAAY,KAAK,gBAAgB,OAAO;AAC9C,qBAAe,KAAK,MAAM,SAAS;AAEnC,UAAI,KAAK,SAAS,SAAS;AACzB,4BAAoB,KAAK,MAAM,KAAK,OAAO,SAAS;AAAA,MACtD,OAAO;AACL,cAAM,eAAe,mBAAmB,KAAK,MAAM,OAAO;AAC1D,YAAI,cAAc;AAChB,0BAAgB,KAAK,MAAM,cAAc,SAAS;AAAA,QACpD;AAAA,MACF;AACA,aAAO,KAAK,SAAS;AAAA,IACvB;AAEA,0BAAiB,CAAC,aAAa;AAE7B,uBAAiB,KAAK,MAAM,QAAQ;AACpC,aAAO,KAAK,SAAS;AAAA,IACvB;AAEA,mCAA0B,CAAC,SAAS,aAAa;AAE/C,YAAM,WAAW,KAAK,eAAe,OAAO;AAC5C,2BAAqB,KAAK,MAAM,SAAS,UAAU,QAAQ;AAC3D,aAAO,KAAK,SAAS;AAAA,IACvB;AASA,4BAAmB,CAAC,SAAS,aAAa;AAExC,YAAM,WAAW,KAAK,eAAe,OAAO;AAC5C,oBAAc,KAAK,MAAM,QAAQ;AACjC,UAAI,KAAK,SAAS,SAAS;AACzB,4BAAoB,KAAK,MAAM,KAAK,OAAO,QAAQ;AAAA,MACrD,OAAO;AACL,cAAM,eAAe,mBAAmB,KAAK,MAAM,OAAO;AAC1D,YAAI,cAAc;AAChB,0BAAgB,KAAK,MAAM,cAAc,QAAQ;AAAA,QACnD;AAAA,MACF;AACA,aAAO,KAAK,SAAS;AAAA,IACvB;AAEA,mBAAU,CAAC,YAAY;AACrB,0BAAoB,KAAK,MAAM,OAAO;AACtC,aAAO,KAAK,SAAS;AAAA,IACvB;AAEA,+BAAsB,CAAC,SAAS,UAAU;AACxC,WAAK,aAAa,OAAO,EAAE,YAAY;AACvC,0BAAoB,KAAK,MAAM,SAAS,KAAK;AAC7C,aAAO,KAAK,SAAS;AAAA,IACvB;AAEA,wBAAe,CAAC,SAAS;AACvB,YAAM,EAAE,SAAS,IAAI;AACrB,WAAK,WAAW,
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\nimport {\n createNewFilter,\n createNewGroup,\n addFilterToMap,\n addGroupToMap,\n addFilterToItem, // new API\n addFilterToMainItem, // new API\n findItemFilterById, // new API\n removeFilterItem, // new API\n addGroupFilterToItem, // new API\n unGroupFilterToItem, // new API\n changeFilterItem, // new API\n changeGroupOperator, // new API\n} from './actions.js';\nimport QueryBuilderFormat from '../format/format.js';\n/**\n * Fluent interface: https://en.wikipedia.org/wiki/Fluent_interface\n *\n * @param idGroup\n * @param parentIdGroup\n * @param items\n * @param idFilter\n * @param value\n * @param data\n * @class QueryBuilderStore\n */\nclass QueryBuilderStore {\n items = [];\n\n step = 0;\n\n steps = {};\n\n mapFilters = {};\n\n mapGroups = {};\n\n main = null;\n\n format = null;\n\n constructor(init, format) {\n this.firstLoad = true;\n this.format = format;\n if (init) return this.initSetupUp(init);\n const mainGroup = this.createNewGroup('main');\n this.mapGroups = {\n [mainGroup.idGroup]: mainGroup,\n };\n this.main = mainGroup.idGroup;\n this.addFilter(mainGroup.idGroup);\n\n this.initSetupUp = this.initSetupUp.bind(this);\n }\n\n initSetupUp(init) {\n this.step = init.step || 1;\n Object.keys(init).forEach((key) => {\n if (init[key] && this[key] !== undefined) this[key] = init[key];\n });\n }\n\n createNewFilter = (idGroup) => createNewFilter.call(this, idGroup);\n\n createNewGroup = (parentIdGroup) => createNewGroup.call(this, parentIdGroup);\n\n onOrderDragAndDrop = (items) => {\n this.items = items;\n return this.getState();\n };\n\n // eslint-disable-next-line no-unused-vars\n addFilterNextToFilterId = (idGroup, idFilter) => {\n // eslint-disable-line\n this.addFilter(idGroup);\n return this.getState();\n };\n\n addFilter = (idGroup) => {\n const newFilter = this.createNewFilter(idGroup);\n addFilterToMap.call(this, newFilter);\n // new API\n if (this.main === idGroup) {\n addFilterToMainItem.call(this, this.items, newFilter);\n } else {\n const foundInItems = findItemFilterById.call(this, idGroup);\n if (foundInItems) {\n addFilterToItem.call(this, foundInItems, newFilter);\n }\n }\n return this.getState();\n };\n\n onRemoveFilter = (idFilter) => {\n // new API\n removeFilterItem.call(this, idFilter);\n return this.getState();\n };\n\n addRuleContainerInPlace = (idGroup, idFilter) => {\n // Create a new group\n const newGroup = this.createNewGroup(idGroup);\n addGroupFilterToItem.call(this, idGroup, idFilter, newGroup);\n return this.getState();\n };\n\n /**\n * Group a filter inside a new Group\n *\n * @param idGroup\n * @param idFilter\n */\n // eslint-disable-next-line no-unused-vars\n addRuleContainer = (idGroup, idFilter) => {\n // eslint-disable-line\n const newGroup = this.createNewGroup(idGroup);\n addGroupToMap.call(this, newGroup);\n if (this.main === idGroup) {\n addFilterToMainItem.call(this, this.items, newGroup);\n } else {\n const foundInItems = findItemFilterById.call(this, idGroup);\n if (foundInItems) {\n addFilterToItem.call(this, foundInItems, newGroup);\n }\n }\n return this.getState();\n };\n\n unGroup = (idGroup) => {\n unGroupFilterToItem.call(this, idGroup);\n return this.getState();\n };\n\n changeGroupOperator = (idGroup, value) => {\n this.getGroupById(idGroup).condition = value;\n changeGroupOperator.call(this, idGroup, value);\n return this.getState();\n };\n\n changeFilter = (data) => {\n const { idFilter } = data;\n this.mapFilters[idFilter] = {\n ...this.mapFilters[idFilter],\n ...data,\n };\n changeFilterItem.call(this, data);\n return this.getState();\n };\n\n getGroupById = (idGroup) => this.mapGroups[idGroup] || {};\n\n getFilterById = (idFilter) => this.mapFilters[idFilter];\n\n getInitialState = () => {\n const newFilters = {\n step: this.step,\n mapFilters: { ...this.mapFilters },\n mapGroups: { ...this.mapGroups },\n main: this.main,\n items: this.items,\n };\n const format = QueryBuilderFormat.run(newFilters, this.format);\n return {\n ...newFilters,\n format,\n };\n };\n\n getState = () => {\n this.step += 1;\n const newFilters = {\n step: this.step,\n mapFilters: { ...this.mapFilters },\n mapGroups: { ...this.mapGroups },\n main: this.main,\n items: this.items,\n };\n const format = QueryBuilderFormat.run(newFilters, this.format);\n return {\n ...newFilters,\n format,\n };\n };\n}\n\nexport default QueryBuilderStore;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/dist/esm/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import { default as default2 } from "./DSQueryBuilder";
|
|
3
|
-
export * from "./DSQueryBuilder";
|
|
4
|
-
import { adapterV2toV1, adapterV1toV2 } from "./components/helpers/adapter";
|
|
2
|
+
import { default as default2 } from "./DSQueryBuilder.js";
|
|
3
|
+
export * from "./DSQueryBuilder.js";
|
|
4
|
+
import { adapterV2toV1, adapterV1toV2 } from "./components/helpers/adapter.js";
|
|
5
5
|
export {
|
|
6
6
|
adapterV1toV2,
|
|
7
7
|
adapterV2toV1,
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/index.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export { default } from './DSQueryBuilder';\nexport * from './DSQueryBuilder';\nexport { adapterV2toV1, adapterV1toV2 } from './components/helpers/adapter'"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export { default } from './DSQueryBuilder.js';\nexport * from './DSQueryBuilder.js';\nexport { adapterV2toV1, adapterV1toV2 } from './components/helpers/adapter.js';\n"],
|
|
5
5
|
"mappings": "AAAA,YAAY,WAAW;ACAvB,SAAS,WAAAA,gBAAe;AACxB,cAAc;AACd,SAAS,eAAe,qBAAqB;",
|
|
6
6
|
"names": ["default"]
|
|
7
7
|
}
|
package/dist/esm/propTypes.js
CHANGED
|
@@ -1,17 +1,22 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import { PropTypes } from "@elliemae/ds-props-helpers";
|
|
3
|
-
import { QB_ADD_FILTER_METHOD_TYPES } from "./components/helpers/types";
|
|
3
|
+
import { QB_ADD_FILTER_METHOD_TYPES } from "./components/helpers/types.js";
|
|
4
4
|
const props = {
|
|
5
|
+
/** inpect props to component wrapper */
|
|
5
6
|
containerProps: PropTypes.object.description("inject props to component wrapper"),
|
|
7
|
+
/** add filter strategy */
|
|
6
8
|
addFilterMethod: PropTypes.oneOf([
|
|
7
9
|
QB_ADD_FILTER_METHOD_TYPES.APPEND,
|
|
8
10
|
QB_ADD_FILTER_METHOD_TYPES.IN_PLACE
|
|
9
11
|
]).description("add filter strategy"),
|
|
12
|
+
/** group filter strategy */
|
|
10
13
|
groupFilterMethod: PropTypes.oneOf([
|
|
11
14
|
QB_ADD_FILTER_METHOD_TYPES.APPEND,
|
|
12
15
|
QB_ADD_FILTER_METHOD_TYPES.IN_PLACE
|
|
13
16
|
]).description("group filter strategy"),
|
|
17
|
+
/** change callback */
|
|
14
18
|
onChange: PropTypes.func.description("change callback"),
|
|
19
|
+
/** fields to query */
|
|
15
20
|
fields: PropTypes.arrayOf(
|
|
16
21
|
PropTypes.shape({
|
|
17
22
|
target: PropTypes.oneOf(["operator", "field", "value"]),
|
|
@@ -39,12 +44,15 @@ const props = {
|
|
|
39
44
|
)
|
|
40
45
|
})
|
|
41
46
|
).description("fields to query"),
|
|
47
|
+
/** fields actions */
|
|
42
48
|
fieldsSharedActions: PropTypes.shape({
|
|
43
49
|
onFieldChange: PropTypes.arrayOf(PropTypes.func),
|
|
44
50
|
onOperatorChange: PropTypes.arrayOf(PropTypes.func),
|
|
45
51
|
onValueChange: PropTypes.arrayOf(PropTypes.func)
|
|
46
52
|
}).description("fields actions"),
|
|
53
|
+
/** query builder format */
|
|
47
54
|
format: PropTypes.string.description("query builder format"),
|
|
55
|
+
/** initial values */
|
|
48
56
|
init: PropTypes.shape({
|
|
49
57
|
step: PropTypes.number,
|
|
50
58
|
mapFilters: PropTypes.object,
|
|
@@ -52,27 +60,40 @@ const props = {
|
|
|
52
60
|
main: PropTypes.string,
|
|
53
61
|
items: PropTypes.arrayOf(PropTypes.object)
|
|
54
62
|
}).description("initial values"),
|
|
63
|
+
/** class for rule container */
|
|
55
64
|
ruleContainerClassName: PropTypes.string.description("class for rule container"),
|
|
65
|
+
/** handle field change */
|
|
56
66
|
handleDrop: PropTypes.func.description("handle field change"),
|
|
67
|
+
/** handle field change drop */
|
|
57
68
|
handleDropFilter: PropTypes.func.description("handle field change drop"),
|
|
69
|
+
/** handle field group change */
|
|
58
70
|
handleDropGroup: PropTypes.func.description("handle field group change"),
|
|
71
|
+
/** handle field change */
|
|
59
72
|
handleFieldChange: PropTypes.func.description("handle field change"),
|
|
73
|
+
/** handle rule container operator change */
|
|
60
74
|
handleRuleContainerOperator: PropTypes.func.description("handle rule container operator change"),
|
|
75
|
+
/** handle rule container grouping change */
|
|
61
76
|
handleRuleContainerUnGroup: PropTypes.func.description("handle rule container grouping change"),
|
|
77
|
+
/** filter add callback */
|
|
62
78
|
onAddFilter: PropTypes.func.description("filter add callback"),
|
|
79
|
+
/** rule container add callback */
|
|
63
80
|
onAddRuleContainer: PropTypes.func.description("rule container add callback"),
|
|
81
|
+
/** remove filter callback */
|
|
64
82
|
onRemoveFilter: PropTypes.func.description("remove filter callback"),
|
|
65
83
|
displayFixedOutput: PropTypes.string.description(
|
|
66
84
|
`Label for fixed output.Using this props it will ignore 'displayOutput' and 'displayOutputLabel'
|
|
67
85
|
and it will always render the output without the ability to close it.
|
|
68
86
|
`
|
|
69
87
|
).defaultValue(""),
|
|
88
|
+
/** show output */
|
|
70
89
|
displayOutput: PropTypes.bool.description("show output"),
|
|
90
|
+
/** show output label */
|
|
71
91
|
displayOutputLabel: PropTypes.shape({
|
|
72
92
|
show: PropTypes.string,
|
|
73
93
|
hide: PropTypes.string,
|
|
74
94
|
open: PropTypes.bool
|
|
75
95
|
}).description("show output label"),
|
|
96
|
+
/** one or multiple rows for query */
|
|
76
97
|
singleRow: PropTypes.bool.description("one or multiple rows for query"),
|
|
77
98
|
toolTipZIndex: PropTypes.number.description("ZIndex for action controls").defaultValue(110)
|
|
78
99
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/propTypes.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "
|
|
5
|
-
"mappings": "AAAA,YAAY,WAAW;
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { PropTypes } from '@elliemae/ds-props-helpers';\nimport { QB_ADD_FILTER_METHOD_TYPES } from './components/helpers/types.js';\n\nexport const props = {\n /** inpect props to component wrapper */\n containerProps: PropTypes.object.description('inject props to component wrapper'),\n /** add filter strategy */\n addFilterMethod: PropTypes.oneOf([\n QB_ADD_FILTER_METHOD_TYPES.APPEND,\n QB_ADD_FILTER_METHOD_TYPES.IN_PLACE,\n ]).description('add filter strategy'),\n /** group filter strategy */\n groupFilterMethod: PropTypes.oneOf([\n QB_ADD_FILTER_METHOD_TYPES.APPEND,\n QB_ADD_FILTER_METHOD_TYPES.IN_PLACE,\n ]).description('group filter strategy'),\n /** change callback */\n onChange: PropTypes.func.description('change callback'),\n /** fields to query */\n fields: PropTypes.arrayOf(\n PropTypes.shape({\n target: PropTypes.oneOf(['operator', 'field', 'value']),\n component: PropTypes.element,\n condition: PropTypes.arrayOf(\n PropTypes.shape({\n source: PropTypes.oneOf(['operator', 'field', 'value']),\n operator: PropTypes.oneOf([\n 'checkNotEmpty',\n 'greaterThan',\n 'greaterThanOrEquals',\n 'lessThanOrEquals',\n 'startsWith',\n 'contains',\n 'validDate',\n 'equal',\n 'notEqual',\n 'isNull',\n 'isNotNull',\n 'isIn',\n 'isNotIn',\n ]),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n }),\n ),\n }),\n ).description('fields to query'),\n /** fields actions */\n fieldsSharedActions: PropTypes.shape({\n onFieldChange: PropTypes.arrayOf(PropTypes.func),\n onOperatorChange: PropTypes.arrayOf(PropTypes.func),\n onValueChange: PropTypes.arrayOf(PropTypes.func),\n }).description('fields actions'),\n /** query builder format */\n format: PropTypes.string.description('query builder format'),\n /** initial values */\n init: PropTypes.shape({\n step: PropTypes.number,\n mapFilters: PropTypes.object,\n mapGroups: PropTypes.object,\n main: PropTypes.string,\n items: PropTypes.arrayOf(PropTypes.object),\n }).description('initial values'),\n /** class for rule container */\n ruleContainerClassName: PropTypes.string.description('class for rule container'),\n /** handle field change */\n handleDrop: PropTypes.func.description('handle field change'),\n /** handle field change drop */\n handleDropFilter: PropTypes.func.description('handle field change drop'),\n /** handle field group change */\n handleDropGroup: PropTypes.func.description('handle field group change'),\n /** handle field change */\n handleFieldChange: PropTypes.func.description('handle field change'),\n /** handle rule container operator change */\n handleRuleContainerOperator: PropTypes.func.description('handle rule container operator change'),\n /** handle rule container grouping change */\n handleRuleContainerUnGroup: PropTypes.func.description('handle rule container grouping change'),\n /** filter add callback */\n onAddFilter: PropTypes.func.description('filter add callback'),\n /** rule container add callback */\n onAddRuleContainer: PropTypes.func.description('rule container add callback'),\n /** remove filter callback */\n onRemoveFilter: PropTypes.func.description('remove filter callback'),\n displayFixedOutput: PropTypes.string\n .description(\n `Label for fixed output.Using this props it will ignore 'displayOutput' and 'displayOutputLabel' \n and it will always render the output without the ability to close it. \n `,\n )\n .defaultValue(''),\n /** show output */\n displayOutput: PropTypes.bool.description('show output'),\n /** show output label */\n displayOutputLabel: PropTypes.shape({\n show: PropTypes.string,\n hide: PropTypes.string,\n open: PropTypes.bool,\n }).description('show output label'),\n /** one or multiple rows for query */\n singleRow: PropTypes.bool.description('one or multiple rows for query'),\n toolTipZIndex: PropTypes.number.description('ZIndex for action controls').defaultValue(110),\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|