@elliemae/ds-query-builder 3.52.0-rc.8 → 3.52.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/Nestable/Nestable.js +2 -2
- package/dist/cjs/components/Nestable/Nestable.js.map +2 -2
- package/dist/cjs/components/helpers/dependencies.js +3 -3
- package/dist/cjs/components/helpers/dependencies.js.map +2 -2
- package/dist/cjs/components/helpers/operators.js +3 -3
- package/dist/cjs/components/helpers/operators.js.map +2 -2
- package/dist/esm/components/Nestable/Nestable.js +1 -1
- package/dist/esm/components/Nestable/Nestable.js.map +1 -1
- package/dist/esm/components/helpers/dependencies.js +1 -1
- package/dist/esm/components/helpers/dependencies.js.map +1 -1
- package/dist/esm/components/helpers/operators.js +1 -1
- package/dist/esm/components/helpers/operators.js.map +1 -1
- package/package.json +15 -15
|
@@ -37,10 +37,10 @@ var import_react = require("react");
|
|
|
37
37
|
var import_prop_types = __toESM(require("prop-types"));
|
|
38
38
|
var import_classnames = __toESM(require("classnames"));
|
|
39
39
|
var import_ds_shared = require("@elliemae/ds-shared");
|
|
40
|
-
var
|
|
40
|
+
var import_lodash_es = require("lodash-es");
|
|
41
41
|
var import_actions = require("./actions/index.js");
|
|
42
42
|
var import_NestableItem = __toESM(require("./NestableItem.js"));
|
|
43
|
-
const shallowCompare = (instance, nextProps, nextState) => !(0,
|
|
43
|
+
const shallowCompare = (instance, nextProps, nextState) => !(0, import_lodash_es.isEqualWith)(instance.props, nextProps) || !(0, import_lodash_es.isEqualWith)(instance.state, nextState);
|
|
44
44
|
class Nestable extends import_react.Component {
|
|
45
45
|
constructor(props) {
|
|
46
46
|
super(props);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/components/Nestable/Nestable.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
-
"sourcesContent": ["/* eslint-disable no-bitwise, max-lines */\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport cn from 'classnames';\nimport { listWithChildren } from '@elliemae/ds-shared';\nimport { isEqualWith } from 'lodash';\nimport {\n tryIncreaseDepth,\n tryDecreaseDepth,\n moveItem,\n getItemOptions,\n getRealNextPath,\n getPathById,\n getItemByPath,\n getItemDepth,\n getSplicePath,\n onDragStart,\n onDragEnd,\n onMouseMove,\n onMouseEnter,\n onToggleCollapse,\n onKeyDown,\n} from './actions/index.js';\nimport NestableItem from './NestableItem.js';\n\nconst shallowCompare = (instance, nextProps, nextState) =>\n !isEqualWith(instance.props, nextProps) || !isEqualWith(instance.state, nextState);\n\nclass Nestable extends Component {\n constructor(props) {\n super(props);\n this.state = {\n items: [],\n itemsOld: null,\n dragItem: null,\n isDirty: false,\n collapsedGroups: [],\n stopTrackingMouse: this.stopTrackMouse.bind(this),\n oldProps: props,\n };\n\n this.el = null;\n this.elCopyStyles = null;\n this.mouse = {\n last: { x: 0 },\n shift: { x: 0 },\n };\n\n this.dragApply = this.dragApply.bind(this);\n this.renderDragLayer = this.renderDragLayer.bind(this);\n }\n\n componentDidMount() {\n const { childrenProp } = this.props;\n let { items } = this.props;\n // make sure every item has property 'children'\n items = listWithChildren(items, childrenProp);\n this.setState({ items });\n }\n\n componentWillUnmount() {\n this.stopTrackMouse();\n }\n\n static getDerivedStateFromProps(props, state) {\n const { items: itemsNew, childrenProp } = props;\n const { stopTrackingMouse, oldProps } = state;\n\n if (shallowCompare({ props: oldProps, state: {} }, props, {})) {\n stopTrackingMouse();\n const extra = {};\n if (oldProps.collapsed !== props.collapsed) {\n extra.collapsedGroups = [];\n }\n return {\n items: listWithChildren(itemsNew, childrenProp),\n dragItem: null,\n isDirty: false,\n oldProps: props,\n ...extra,\n };\n }\n return null;\n }\n\n onDragStart = (e, item) => {\n onDragStart.call(this, e, item);\n };\n\n onDragEnd = (e, isCancel) => onDragEnd.call(this, e, isCancel);\n\n onMouseMove = (e) => onMouseMove.call(this, e);\n\n onMouseEnter = (e, item) => onMouseEnter.call(this, e, item);\n\n onToggleCollapse = (item, isGetter) => onToggleCollapse.call(this, item, isGetter);\n\n onKeyDown = (e) => onKeyDown.call(this, e);\n\n getDefaultItems = () => {\n const { items } = this.state;\n return items;\n };\n\n getPathById(id, items = this.getDefaultItems()) {\n return getPathById.call(this, id, items);\n }\n\n getItemByPath(path, items = this.getDefaultItems()) {\n return getItemByPath.call(this, path, items);\n }\n\n getItemDepth = (item) => getItemDepth.call(this, item);\n\n getSplicePath(path, options = {}) {\n return getSplicePath.call(this, path, options);\n }\n\n getRealNextPath(prevPath, nextPath) {\n return getRealNextPath.call(this, prevPath, nextPath);\n }\n\n getItemOptions() {\n return getItemOptions.call(this);\n }\n\n startTrackMouse = () => {\n document.addEventListener('mousemove', this.onMouseMove);\n document.addEventListener('mouseup', this.onDragEnd);\n document.addEventListener('keydown', this.onKeyDown);\n };\n\n stopTrackMouse = () => {\n document.removeEventListener('mousemove', this.onMouseMove);\n document.removeEventListener('mouseup', this.onDragEnd);\n document.removeEventListener('keydown', this.onKeyDown);\n this.elCopyStyles = null;\n };\n\n isCollapsed = (item) => {\n const { collapsed } = this.props;\n const { collapsedGroups } = this.state;\n return !!((collapsedGroups.indexOf(item.id) > -1) ^ collapsed);\n };\n\n checkFilterChildren = (items) =>\n items.find((current) => {\n const {\n element: { type },\n children,\n } = current;\n if (type === 'filter' && children.length > 0) return true;\n return this.checkFilterChildren(children);\n });\n\n dragRevert = () => {\n const { itemsOld } = this.state;\n\n this.setState({\n items: itemsOld,\n itemsOld: null,\n dragItem: null,\n isDirty: false,\n });\n };\n\n dragApply() {\n const { onChange } = this.props;\n const { items, isDirty, dragItem } = this.state;\n\n this.setState({\n itemsOld: null,\n dragItem: null,\n isDirty: false,\n });\n\n if (onChange && isDirty) onChange(items, dragItem);\n }\n\n tryIncreaseDepth(dragItem) {\n tryIncreaseDepth.call(this, dragItem);\n }\n\n tryDecreaseDepth(dragItem) {\n tryDecreaseDepth.call(this, dragItem);\n }\n\n moveItem({ dragItem, pathFrom, pathTo }, extraProps = {}) {\n moveItem.call(this, { dragItem, pathFrom, pathTo }, extraProps);\n }\n\n renderDragLayer() {\n const { group } = this.props;\n const { dragItem } = this.state;\n const el = document.querySelector(`.nestable-${group} .nestable-item-${dragItem.id}`);\n\n let listStyles = {};\n if (el) {\n listStyles.width = el.clientWidth;\n }\n if (this.elCopyStyles) {\n listStyles = {\n ...listStyles,\n ...this.elCopyStyles,\n };\n }\n\n const options = this.getItemOptions();\n\n return (\n <div className=\"nestable-drag-layer\">\n <ol className=\"nestable-list\" style={listStyles}>\n <NestableItem isCopy item={dragItem} options={options} />\n </ol>\n </div>\n );\n }\n\n render() {\n const { items, dragItem } = this.state;\n const { group, isAndItem, isOrItem, isDraggableItem, setDraggableItems, singleRow } = this.props;\n const options = this.getItemOptions();\n const childLength = items.length;\n let childClass = 'single';\n if (childLength === 0) childClass = 'empty';\n else if (childLength > 1) childClass = 'multiple';\n\n return (\n <div\n className={cn('nestable', `nestable-${group}`, {\n 'is-drag-active': dragItem,\n })}\n >\n <ol className={`nestable-list nestable-group nestable-child-count-${childClass}`}>\n {items.map((item, i) => (\n <NestableItem\n key={item.id}\n index={i}\n isAndItem={isAndItem}\n isDraggableItem={isDraggableItem}\n isOrItem={isOrItem}\n item={item}\n options={options}\n setDraggableItems={setDraggableItems}\n singleRow={singleRow}\n />\n ))}\n </ol>\n {dragItem && this.renderDragLayer()}\n </div>\n );\n }\n}\n\nNestable.defaultProps = {\n items: [],\n collapsed: false,\n group: Math.random().toString(36).slice(2),\n childrenProp: 'children',\n onChange: () => {},\n};\n\nNestable.propTypes = {\n childrenProp: PropTypes.string,\n group: PropTypes.string,\n items: PropTypes.arrayOf(PropTypes.shape({})),\n collapsed: PropTypes.bool,\n onChange: PropTypes.func,\n isAndItem: PropTypes.bool,\n isOrItem: PropTypes.bool,\n isDraggableItem: PropTypes.bool,\n setDraggableItems: PropTypes.func,\n singleRow: PropTypes.bool,\n};\n\nexport default Nestable;\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADoNb;AAnNV,mBAAiC;AACjC,wBAAsB;AACtB,wBAAe;AACf,uBAAiC;AACjC,
|
|
4
|
+
"sourcesContent": ["/* eslint-disable no-bitwise, max-lines */\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport cn from 'classnames';\nimport { listWithChildren } from '@elliemae/ds-shared';\nimport { isEqualWith } from 'lodash-es';\nimport {\n tryIncreaseDepth,\n tryDecreaseDepth,\n moveItem,\n getItemOptions,\n getRealNextPath,\n getPathById,\n getItemByPath,\n getItemDepth,\n getSplicePath,\n onDragStart,\n onDragEnd,\n onMouseMove,\n onMouseEnter,\n onToggleCollapse,\n onKeyDown,\n} from './actions/index.js';\nimport NestableItem from './NestableItem.js';\n\nconst shallowCompare = (instance, nextProps, nextState) =>\n !isEqualWith(instance.props, nextProps) || !isEqualWith(instance.state, nextState);\n\nclass Nestable extends Component {\n constructor(props) {\n super(props);\n this.state = {\n items: [],\n itemsOld: null,\n dragItem: null,\n isDirty: false,\n collapsedGroups: [],\n stopTrackingMouse: this.stopTrackMouse.bind(this),\n oldProps: props,\n };\n\n this.el = null;\n this.elCopyStyles = null;\n this.mouse = {\n last: { x: 0 },\n shift: { x: 0 },\n };\n\n this.dragApply = this.dragApply.bind(this);\n this.renderDragLayer = this.renderDragLayer.bind(this);\n }\n\n componentDidMount() {\n const { childrenProp } = this.props;\n let { items } = this.props;\n // make sure every item has property 'children'\n items = listWithChildren(items, childrenProp);\n this.setState({ items });\n }\n\n componentWillUnmount() {\n this.stopTrackMouse();\n }\n\n static getDerivedStateFromProps(props, state) {\n const { items: itemsNew, childrenProp } = props;\n const { stopTrackingMouse, oldProps } = state;\n\n if (shallowCompare({ props: oldProps, state: {} }, props, {})) {\n stopTrackingMouse();\n const extra = {};\n if (oldProps.collapsed !== props.collapsed) {\n extra.collapsedGroups = [];\n }\n return {\n items: listWithChildren(itemsNew, childrenProp),\n dragItem: null,\n isDirty: false,\n oldProps: props,\n ...extra,\n };\n }\n return null;\n }\n\n onDragStart = (e, item) => {\n onDragStart.call(this, e, item);\n };\n\n onDragEnd = (e, isCancel) => onDragEnd.call(this, e, isCancel);\n\n onMouseMove = (e) => onMouseMove.call(this, e);\n\n onMouseEnter = (e, item) => onMouseEnter.call(this, e, item);\n\n onToggleCollapse = (item, isGetter) => onToggleCollapse.call(this, item, isGetter);\n\n onKeyDown = (e) => onKeyDown.call(this, e);\n\n getDefaultItems = () => {\n const { items } = this.state;\n return items;\n };\n\n getPathById(id, items = this.getDefaultItems()) {\n return getPathById.call(this, id, items);\n }\n\n getItemByPath(path, items = this.getDefaultItems()) {\n return getItemByPath.call(this, path, items);\n }\n\n getItemDepth = (item) => getItemDepth.call(this, item);\n\n getSplicePath(path, options = {}) {\n return getSplicePath.call(this, path, options);\n }\n\n getRealNextPath(prevPath, nextPath) {\n return getRealNextPath.call(this, prevPath, nextPath);\n }\n\n getItemOptions() {\n return getItemOptions.call(this);\n }\n\n startTrackMouse = () => {\n document.addEventListener('mousemove', this.onMouseMove);\n document.addEventListener('mouseup', this.onDragEnd);\n document.addEventListener('keydown', this.onKeyDown);\n };\n\n stopTrackMouse = () => {\n document.removeEventListener('mousemove', this.onMouseMove);\n document.removeEventListener('mouseup', this.onDragEnd);\n document.removeEventListener('keydown', this.onKeyDown);\n this.elCopyStyles = null;\n };\n\n isCollapsed = (item) => {\n const { collapsed } = this.props;\n const { collapsedGroups } = this.state;\n return !!((collapsedGroups.indexOf(item.id) > -1) ^ collapsed);\n };\n\n checkFilterChildren = (items) =>\n items.find((current) => {\n const {\n element: { type },\n children,\n } = current;\n if (type === 'filter' && children.length > 0) return true;\n return this.checkFilterChildren(children);\n });\n\n dragRevert = () => {\n const { itemsOld } = this.state;\n\n this.setState({\n items: itemsOld,\n itemsOld: null,\n dragItem: null,\n isDirty: false,\n });\n };\n\n dragApply() {\n const { onChange } = this.props;\n const { items, isDirty, dragItem } = this.state;\n\n this.setState({\n itemsOld: null,\n dragItem: null,\n isDirty: false,\n });\n\n if (onChange && isDirty) onChange(items, dragItem);\n }\n\n tryIncreaseDepth(dragItem) {\n tryIncreaseDepth.call(this, dragItem);\n }\n\n tryDecreaseDepth(dragItem) {\n tryDecreaseDepth.call(this, dragItem);\n }\n\n moveItem({ dragItem, pathFrom, pathTo }, extraProps = {}) {\n moveItem.call(this, { dragItem, pathFrom, pathTo }, extraProps);\n }\n\n renderDragLayer() {\n const { group } = this.props;\n const { dragItem } = this.state;\n const el = document.querySelector(`.nestable-${group} .nestable-item-${dragItem.id}`);\n\n let listStyles = {};\n if (el) {\n listStyles.width = el.clientWidth;\n }\n if (this.elCopyStyles) {\n listStyles = {\n ...listStyles,\n ...this.elCopyStyles,\n };\n }\n\n const options = this.getItemOptions();\n\n return (\n <div className=\"nestable-drag-layer\">\n <ol className=\"nestable-list\" style={listStyles}>\n <NestableItem isCopy item={dragItem} options={options} />\n </ol>\n </div>\n );\n }\n\n render() {\n const { items, dragItem } = this.state;\n const { group, isAndItem, isOrItem, isDraggableItem, setDraggableItems, singleRow } = this.props;\n const options = this.getItemOptions();\n const childLength = items.length;\n let childClass = 'single';\n if (childLength === 0) childClass = 'empty';\n else if (childLength > 1) childClass = 'multiple';\n\n return (\n <div\n className={cn('nestable', `nestable-${group}`, {\n 'is-drag-active': dragItem,\n })}\n >\n <ol className={`nestable-list nestable-group nestable-child-count-${childClass}`}>\n {items.map((item, i) => (\n <NestableItem\n key={item.id}\n index={i}\n isAndItem={isAndItem}\n isDraggableItem={isDraggableItem}\n isOrItem={isOrItem}\n item={item}\n options={options}\n setDraggableItems={setDraggableItems}\n singleRow={singleRow}\n />\n ))}\n </ol>\n {dragItem && this.renderDragLayer()}\n </div>\n );\n }\n}\n\nNestable.defaultProps = {\n items: [],\n collapsed: false,\n group: Math.random().toString(36).slice(2),\n childrenProp: 'children',\n onChange: () => {},\n};\n\nNestable.propTypes = {\n childrenProp: PropTypes.string,\n group: PropTypes.string,\n items: PropTypes.arrayOf(PropTypes.shape({})),\n collapsed: PropTypes.bool,\n onChange: PropTypes.func,\n isAndItem: PropTypes.bool,\n isOrItem: PropTypes.bool,\n isDraggableItem: PropTypes.bool,\n setDraggableItems: PropTypes.func,\n singleRow: PropTypes.bool,\n};\n\nexport default Nestable;\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["NestableItem", "cn", "PropTypes"]
|
|
7
7
|
}
|
|
@@ -32,7 +32,7 @@ __export(dependencies_exports, {
|
|
|
32
32
|
});
|
|
33
33
|
module.exports = __toCommonJS(dependencies_exports);
|
|
34
34
|
var React = __toESM(require("react"));
|
|
35
|
-
var
|
|
35
|
+
var import_lodash_es = require("lodash-es");
|
|
36
36
|
var operators = __toESM(require("./operators.js"));
|
|
37
37
|
var import_types = require("./types.js");
|
|
38
38
|
const resolveCondition = (condition, state, resolveBy = import_types.QB_GROUP_CONDITION_TYPES.AND) => {
|
|
@@ -40,8 +40,8 @@ const resolveCondition = (condition, state, resolveBy = import_types.QB_GROUP_CO
|
|
|
40
40
|
if (resolveBy) {
|
|
41
41
|
return condition.every((rule) => {
|
|
42
42
|
const { source: sourceRule, operator: operatorRule, value: valueRule } = rule;
|
|
43
|
-
if (typeof operatorRule === "function") return operatorRule((0,
|
|
44
|
-
return operators[operatorRule]((0,
|
|
43
|
+
if (typeof operatorRule === "function") return operatorRule((0, import_lodash_es.get)(state, sourceRule), valueRule);
|
|
44
|
+
return operators[operatorRule]((0, import_lodash_es.get)(state, sourceRule), valueRule);
|
|
45
45
|
});
|
|
46
46
|
}
|
|
47
47
|
return condition.some((rule) => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/components/helpers/dependencies.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
-
"sourcesContent": ["import { get } from 'lodash';\nimport * as operators from './operators.js';\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", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,
|
|
4
|
+
"sourcesContent": ["import { get } from 'lodash-es';\nimport * as operators from './operators.js';\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", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,uBAAoB;AACpB,gBAA2B;AAC3B,mBAAyC;AAEzC,MAAM,mBAAmB,CAAC,WAAW,OAAO,YAAY,sCAAyB,QAAQ;AACvF,MAAI,UAAU,WAAW,KAAK,CAAC,UAAW,QAAO;AAEjD,MAAI,WAAW;AACb,WAAO,UAAU,MAAM,CAAC,SAAS;AAC/B,YAAM,EAAE,QAAQ,YAAY,UAAU,cAAc,OAAO,UAAU,IAAI;AACzE,UAAI,OAAO,iBAAiB,WAAY,QAAO,iBAAa,sBAAI,OAAO,UAAU,GAAG,SAAS;AAC7F,aAAO,UAAU,YAAY,MAAE,sBAAI,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,EAAG,QAAO,KAAK,EAAE,QAAQ,WAAW,YAAY,YAAY,CAAC;AAC7G,aAAO;AAAA,IACT;AAAA,IACA,CAAC;AAAA,EACH;AACA,SAAO;AACT;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -45,12 +45,12 @@ __export(operators_exports, {
|
|
|
45
45
|
});
|
|
46
46
|
module.exports = __toCommonJS(operators_exports);
|
|
47
47
|
var React = __toESM(require("react"));
|
|
48
|
-
var
|
|
48
|
+
var import_lodash_es = require("lodash-es");
|
|
49
49
|
const checkNotEmpty = (value) => (
|
|
50
50
|
// eslint-disable-next-line eqeqeq
|
|
51
|
-
value === "" || value === void 0 || value === null || (0,
|
|
51
|
+
value === "" || value === void 0 || value === null || (0, import_lodash_es.isEmpty)(value)
|
|
52
52
|
);
|
|
53
|
-
const checkEmpty = (value) => !(0,
|
|
53
|
+
const checkEmpty = (value) => !(0, import_lodash_es.isEmpty)(value);
|
|
54
54
|
const greaterThan = (value, comparator) => value > comparator;
|
|
55
55
|
const validDate = (value) => {
|
|
56
56
|
const dateValidationRegex = /^\d{1,2}\/\d{1,2}\/\d{4}$/;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/components/helpers/operators.ts", "../../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
-
"sourcesContent": ["import { isEmpty } from 'lodash';\n\n// Check if the value is empty\nexport const checkNotEmpty = (value: unknown) =>\n // eslint-disable-next-line eqeqeq\n value === '' || value === undefined || value === null || isEmpty(value);\n\n// Check if the value is not empty\nexport const checkEmpty = (value: unknown) => !isEmpty(value);\n\nexport const greaterThan = (value: number, comparator: number) => value > comparator;\n\n// Check if a valid date with format MM/DD/YYYY\nexport const validDate = (value: string) => {\n const dateValidationRegex = /^\\d{1,2}\\/\\d{1,2}\\/\\d{4}$/;\n if (!dateValidationRegex.test(value)) return false;\n const [m, d, y] = value.split('/').map((n) => Number(n));\n return m === Number(new Date(y, m - 1, d).getMonth()) + 1 && d === Number(new Date(y, m - 1, d).getDate());\n};\n\nexport const equal = (a: unknown, b: unknown) => a === b;\n\nexport const notEqual = (a: unknown, b: unknown) => !equal(a, b);\n\nexport const isNull = (a: unknown) => checkNotEmpty(a);\n\nexport const isNotNull = (a: unknown) => !isNull(a);\n\nexport const isIn = <T>(a: T, b: T[]) => b.indexOf(a) > -1;\n\nexport const isNotIn = <T>(a: T, b: T[]) => !isIn(a, b);\n\nexport const greaterThanOrEquals = (value: number, comparator: number) => value >= comparator;\nexport const lessThanOrEquals = (value: number, comparator: number) => value <= comparator;\nexport const startsWith = (value: unknown, comparator: string) => String(value).startsWith(comparator);\nexport const contains = (value: unknown, comparator: string) => String(value).includes(comparator);\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,
|
|
4
|
+
"sourcesContent": ["import { isEmpty } from 'lodash-es';\n\n// Check if the value is empty\nexport const checkNotEmpty = (value: unknown) =>\n // eslint-disable-next-line eqeqeq\n value === '' || value === undefined || value === null || isEmpty(value);\n\n// Check if the value is not empty\nexport const checkEmpty = (value: unknown) => !isEmpty(value);\n\nexport const greaterThan = (value: number, comparator: number) => value > comparator;\n\n// Check if a valid date with format MM/DD/YYYY\nexport const validDate = (value: string) => {\n const dateValidationRegex = /^\\d{1,2}\\/\\d{1,2}\\/\\d{4}$/;\n if (!dateValidationRegex.test(value)) return false;\n const [m, d, y] = value.split('/').map((n) => Number(n));\n return m === Number(new Date(y, m - 1, d).getMonth()) + 1 && d === Number(new Date(y, m - 1, d).getDate());\n};\n\nexport const equal = (a: unknown, b: unknown) => a === b;\n\nexport const notEqual = (a: unknown, b: unknown) => !equal(a, b);\n\nexport const isNull = (a: unknown) => checkNotEmpty(a);\n\nexport const isNotNull = (a: unknown) => !isNull(a);\n\nexport const isIn = <T>(a: T, b: T[]) => b.indexOf(a) > -1;\n\nexport const isNotIn = <T>(a: T, b: T[]) => !isIn(a, b);\n\nexport const greaterThanOrEquals = (value: number, comparator: number) => value >= comparator;\nexport const lessThanOrEquals = (value: number, comparator: number) => value <= comparator;\nexport const startsWith = (value: unknown, comparator: string) => String(value).startsWith(comparator);\nexport const contains = (value: unknown, comparator: string) => String(value).includes(comparator);\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,uBAAwB;AAGjB,MAAM,gBAAgB,CAAC;AAAA;AAAA,EAE5B,UAAU,MAAM,UAAU,UAAa,UAAU,YAAQ,0BAAQ,KAAK;AAAA;AAGjE,MAAM,aAAa,CAAC,UAAmB,KAAC,0BAAQ,KAAK;AAErD,MAAM,cAAc,CAAC,OAAe,eAAuB,QAAQ;AAGnE,MAAM,YAAY,CAAC,UAAkB;AAC1C,QAAM,sBAAsB;AAC5B,MAAI,CAAC,oBAAoB,KAAK,KAAK,EAAG,QAAO;AAC7C,QAAM,CAAC,GAAG,GAAG,CAAC,IAAI,MAAM,MAAM,GAAG,EAAE,IAAI,CAAC,MAAM,OAAO,CAAC,CAAC;AACvD,SAAO,MAAM,OAAO,IAAI,KAAK,GAAG,IAAI,GAAG,CAAC,EAAE,SAAS,CAAC,IAAI,KAAK,MAAM,OAAO,IAAI,KAAK,GAAG,IAAI,GAAG,CAAC,EAAE,QAAQ,CAAC;AAC3G;AAEO,MAAM,QAAQ,CAAC,GAAY,MAAe,MAAM;AAEhD,MAAM,WAAW,CAAC,GAAY,MAAe,CAAC,MAAM,GAAG,CAAC;AAExD,MAAM,SAAS,CAAC,MAAe,cAAc,CAAC;AAE9C,MAAM,YAAY,CAAC,MAAe,CAAC,OAAO,CAAC;AAE3C,MAAM,OAAO,CAAI,GAAM,MAAW,EAAE,QAAQ,CAAC,IAAI;AAEjD,MAAM,UAAU,CAAI,GAAM,MAAW,CAAC,KAAK,GAAG,CAAC;AAE/C,MAAM,sBAAsB,CAAC,OAAe,eAAuB,SAAS;AAC5E,MAAM,mBAAmB,CAAC,OAAe,eAAuB,SAAS;AACzE,MAAM,aAAa,CAAC,OAAgB,eAAuB,OAAO,KAAK,EAAE,WAAW,UAAU;AAC9F,MAAM,WAAW,CAAC,OAAgB,eAAuB,OAAO,KAAK,EAAE,SAAS,UAAU;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -4,7 +4,7 @@ import { Component } from "react";
|
|
|
4
4
|
import PropTypes from "prop-types";
|
|
5
5
|
import cn from "classnames";
|
|
6
6
|
import { listWithChildren } from "@elliemae/ds-shared";
|
|
7
|
-
import { isEqualWith } from "lodash";
|
|
7
|
+
import { isEqualWith } from "lodash-es";
|
|
8
8
|
import {
|
|
9
9
|
tryIncreaseDepth,
|
|
10
10
|
tryDecreaseDepth,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/components/Nestable/Nestable.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable no-bitwise, max-lines */\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport cn from 'classnames';\nimport { listWithChildren } from '@elliemae/ds-shared';\nimport { isEqualWith } from 'lodash';\nimport {\n tryIncreaseDepth,\n tryDecreaseDepth,\n moveItem,\n getItemOptions,\n getRealNextPath,\n getPathById,\n getItemByPath,\n getItemDepth,\n getSplicePath,\n onDragStart,\n onDragEnd,\n onMouseMove,\n onMouseEnter,\n onToggleCollapse,\n onKeyDown,\n} from './actions/index.js';\nimport NestableItem from './NestableItem.js';\n\nconst shallowCompare = (instance, nextProps, nextState) =>\n !isEqualWith(instance.props, nextProps) || !isEqualWith(instance.state, nextState);\n\nclass Nestable extends Component {\n constructor(props) {\n super(props);\n this.state = {\n items: [],\n itemsOld: null,\n dragItem: null,\n isDirty: false,\n collapsedGroups: [],\n stopTrackingMouse: this.stopTrackMouse.bind(this),\n oldProps: props,\n };\n\n this.el = null;\n this.elCopyStyles = null;\n this.mouse = {\n last: { x: 0 },\n shift: { x: 0 },\n };\n\n this.dragApply = this.dragApply.bind(this);\n this.renderDragLayer = this.renderDragLayer.bind(this);\n }\n\n componentDidMount() {\n const { childrenProp } = this.props;\n let { items } = this.props;\n // make sure every item has property 'children'\n items = listWithChildren(items, childrenProp);\n this.setState({ items });\n }\n\n componentWillUnmount() {\n this.stopTrackMouse();\n }\n\n static getDerivedStateFromProps(props, state) {\n const { items: itemsNew, childrenProp } = props;\n const { stopTrackingMouse, oldProps } = state;\n\n if (shallowCompare({ props: oldProps, state: {} }, props, {})) {\n stopTrackingMouse();\n const extra = {};\n if (oldProps.collapsed !== props.collapsed) {\n extra.collapsedGroups = [];\n }\n return {\n items: listWithChildren(itemsNew, childrenProp),\n dragItem: null,\n isDirty: false,\n oldProps: props,\n ...extra,\n };\n }\n return null;\n }\n\n onDragStart = (e, item) => {\n onDragStart.call(this, e, item);\n };\n\n onDragEnd = (e, isCancel) => onDragEnd.call(this, e, isCancel);\n\n onMouseMove = (e) => onMouseMove.call(this, e);\n\n onMouseEnter = (e, item) => onMouseEnter.call(this, e, item);\n\n onToggleCollapse = (item, isGetter) => onToggleCollapse.call(this, item, isGetter);\n\n onKeyDown = (e) => onKeyDown.call(this, e);\n\n getDefaultItems = () => {\n const { items } = this.state;\n return items;\n };\n\n getPathById(id, items = this.getDefaultItems()) {\n return getPathById.call(this, id, items);\n }\n\n getItemByPath(path, items = this.getDefaultItems()) {\n return getItemByPath.call(this, path, items);\n }\n\n getItemDepth = (item) => getItemDepth.call(this, item);\n\n getSplicePath(path, options = {}) {\n return getSplicePath.call(this, path, options);\n }\n\n getRealNextPath(prevPath, nextPath) {\n return getRealNextPath.call(this, prevPath, nextPath);\n }\n\n getItemOptions() {\n return getItemOptions.call(this);\n }\n\n startTrackMouse = () => {\n document.addEventListener('mousemove', this.onMouseMove);\n document.addEventListener('mouseup', this.onDragEnd);\n document.addEventListener('keydown', this.onKeyDown);\n };\n\n stopTrackMouse = () => {\n document.removeEventListener('mousemove', this.onMouseMove);\n document.removeEventListener('mouseup', this.onDragEnd);\n document.removeEventListener('keydown', this.onKeyDown);\n this.elCopyStyles = null;\n };\n\n isCollapsed = (item) => {\n const { collapsed } = this.props;\n const { collapsedGroups } = this.state;\n return !!((collapsedGroups.indexOf(item.id) > -1) ^ collapsed);\n };\n\n checkFilterChildren = (items) =>\n items.find((current) => {\n const {\n element: { type },\n children,\n } = current;\n if (type === 'filter' && children.length > 0) return true;\n return this.checkFilterChildren(children);\n });\n\n dragRevert = () => {\n const { itemsOld } = this.state;\n\n this.setState({\n items: itemsOld,\n itemsOld: null,\n dragItem: null,\n isDirty: false,\n });\n };\n\n dragApply() {\n const { onChange } = this.props;\n const { items, isDirty, dragItem } = this.state;\n\n this.setState({\n itemsOld: null,\n dragItem: null,\n isDirty: false,\n });\n\n if (onChange && isDirty) onChange(items, dragItem);\n }\n\n tryIncreaseDepth(dragItem) {\n tryIncreaseDepth.call(this, dragItem);\n }\n\n tryDecreaseDepth(dragItem) {\n tryDecreaseDepth.call(this, dragItem);\n }\n\n moveItem({ dragItem, pathFrom, pathTo }, extraProps = {}) {\n moveItem.call(this, { dragItem, pathFrom, pathTo }, extraProps);\n }\n\n renderDragLayer() {\n const { group } = this.props;\n const { dragItem } = this.state;\n const el = document.querySelector(`.nestable-${group} .nestable-item-${dragItem.id}`);\n\n let listStyles = {};\n if (el) {\n listStyles.width = el.clientWidth;\n }\n if (this.elCopyStyles) {\n listStyles = {\n ...listStyles,\n ...this.elCopyStyles,\n };\n }\n\n const options = this.getItemOptions();\n\n return (\n <div className=\"nestable-drag-layer\">\n <ol className=\"nestable-list\" style={listStyles}>\n <NestableItem isCopy item={dragItem} options={options} />\n </ol>\n </div>\n );\n }\n\n render() {\n const { items, dragItem } = this.state;\n const { group, isAndItem, isOrItem, isDraggableItem, setDraggableItems, singleRow } = this.props;\n const options = this.getItemOptions();\n const childLength = items.length;\n let childClass = 'single';\n if (childLength === 0) childClass = 'empty';\n else if (childLength > 1) childClass = 'multiple';\n\n return (\n <div\n className={cn('nestable', `nestable-${group}`, {\n 'is-drag-active': dragItem,\n })}\n >\n <ol className={`nestable-list nestable-group nestable-child-count-${childClass}`}>\n {items.map((item, i) => (\n <NestableItem\n key={item.id}\n index={i}\n isAndItem={isAndItem}\n isDraggableItem={isDraggableItem}\n isOrItem={isOrItem}\n item={item}\n options={options}\n setDraggableItems={setDraggableItems}\n singleRow={singleRow}\n />\n ))}\n </ol>\n {dragItem && this.renderDragLayer()}\n </div>\n );\n }\n}\n\nNestable.defaultProps = {\n items: [],\n collapsed: false,\n group: Math.random().toString(36).slice(2),\n childrenProp: 'children',\n onChange: () => {},\n};\n\nNestable.propTypes = {\n childrenProp: PropTypes.string,\n group: PropTypes.string,\n items: PropTypes.arrayOf(PropTypes.shape({})),\n collapsed: PropTypes.bool,\n onChange: PropTypes.func,\n isAndItem: PropTypes.bool,\n isOrItem: PropTypes.bool,\n isDraggableItem: PropTypes.bool,\n setDraggableItems: PropTypes.func,\n singleRow: PropTypes.bool,\n};\n\nexport default Nestable;\n"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable no-bitwise, max-lines */\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport cn from 'classnames';\nimport { listWithChildren } from '@elliemae/ds-shared';\nimport { isEqualWith } from 'lodash-es';\nimport {\n tryIncreaseDepth,\n tryDecreaseDepth,\n moveItem,\n getItemOptions,\n getRealNextPath,\n getPathById,\n getItemByPath,\n getItemDepth,\n getSplicePath,\n onDragStart,\n onDragEnd,\n onMouseMove,\n onMouseEnter,\n onToggleCollapse,\n onKeyDown,\n} from './actions/index.js';\nimport NestableItem from './NestableItem.js';\n\nconst shallowCompare = (instance, nextProps, nextState) =>\n !isEqualWith(instance.props, nextProps) || !isEqualWith(instance.state, nextState);\n\nclass Nestable extends Component {\n constructor(props) {\n super(props);\n this.state = {\n items: [],\n itemsOld: null,\n dragItem: null,\n isDirty: false,\n collapsedGroups: [],\n stopTrackingMouse: this.stopTrackMouse.bind(this),\n oldProps: props,\n };\n\n this.el = null;\n this.elCopyStyles = null;\n this.mouse = {\n last: { x: 0 },\n shift: { x: 0 },\n };\n\n this.dragApply = this.dragApply.bind(this);\n this.renderDragLayer = this.renderDragLayer.bind(this);\n }\n\n componentDidMount() {\n const { childrenProp } = this.props;\n let { items } = this.props;\n // make sure every item has property 'children'\n items = listWithChildren(items, childrenProp);\n this.setState({ items });\n }\n\n componentWillUnmount() {\n this.stopTrackMouse();\n }\n\n static getDerivedStateFromProps(props, state) {\n const { items: itemsNew, childrenProp } = props;\n const { stopTrackingMouse, oldProps } = state;\n\n if (shallowCompare({ props: oldProps, state: {} }, props, {})) {\n stopTrackingMouse();\n const extra = {};\n if (oldProps.collapsed !== props.collapsed) {\n extra.collapsedGroups = [];\n }\n return {\n items: listWithChildren(itemsNew, childrenProp),\n dragItem: null,\n isDirty: false,\n oldProps: props,\n ...extra,\n };\n }\n return null;\n }\n\n onDragStart = (e, item) => {\n onDragStart.call(this, e, item);\n };\n\n onDragEnd = (e, isCancel) => onDragEnd.call(this, e, isCancel);\n\n onMouseMove = (e) => onMouseMove.call(this, e);\n\n onMouseEnter = (e, item) => onMouseEnter.call(this, e, item);\n\n onToggleCollapse = (item, isGetter) => onToggleCollapse.call(this, item, isGetter);\n\n onKeyDown = (e) => onKeyDown.call(this, e);\n\n getDefaultItems = () => {\n const { items } = this.state;\n return items;\n };\n\n getPathById(id, items = this.getDefaultItems()) {\n return getPathById.call(this, id, items);\n }\n\n getItemByPath(path, items = this.getDefaultItems()) {\n return getItemByPath.call(this, path, items);\n }\n\n getItemDepth = (item) => getItemDepth.call(this, item);\n\n getSplicePath(path, options = {}) {\n return getSplicePath.call(this, path, options);\n }\n\n getRealNextPath(prevPath, nextPath) {\n return getRealNextPath.call(this, prevPath, nextPath);\n }\n\n getItemOptions() {\n return getItemOptions.call(this);\n }\n\n startTrackMouse = () => {\n document.addEventListener('mousemove', this.onMouseMove);\n document.addEventListener('mouseup', this.onDragEnd);\n document.addEventListener('keydown', this.onKeyDown);\n };\n\n stopTrackMouse = () => {\n document.removeEventListener('mousemove', this.onMouseMove);\n document.removeEventListener('mouseup', this.onDragEnd);\n document.removeEventListener('keydown', this.onKeyDown);\n this.elCopyStyles = null;\n };\n\n isCollapsed = (item) => {\n const { collapsed } = this.props;\n const { collapsedGroups } = this.state;\n return !!((collapsedGroups.indexOf(item.id) > -1) ^ collapsed);\n };\n\n checkFilterChildren = (items) =>\n items.find((current) => {\n const {\n element: { type },\n children,\n } = current;\n if (type === 'filter' && children.length > 0) return true;\n return this.checkFilterChildren(children);\n });\n\n dragRevert = () => {\n const { itemsOld } = this.state;\n\n this.setState({\n items: itemsOld,\n itemsOld: null,\n dragItem: null,\n isDirty: false,\n });\n };\n\n dragApply() {\n const { onChange } = this.props;\n const { items, isDirty, dragItem } = this.state;\n\n this.setState({\n itemsOld: null,\n dragItem: null,\n isDirty: false,\n });\n\n if (onChange && isDirty) onChange(items, dragItem);\n }\n\n tryIncreaseDepth(dragItem) {\n tryIncreaseDepth.call(this, dragItem);\n }\n\n tryDecreaseDepth(dragItem) {\n tryDecreaseDepth.call(this, dragItem);\n }\n\n moveItem({ dragItem, pathFrom, pathTo }, extraProps = {}) {\n moveItem.call(this, { dragItem, pathFrom, pathTo }, extraProps);\n }\n\n renderDragLayer() {\n const { group } = this.props;\n const { dragItem } = this.state;\n const el = document.querySelector(`.nestable-${group} .nestable-item-${dragItem.id}`);\n\n let listStyles = {};\n if (el) {\n listStyles.width = el.clientWidth;\n }\n if (this.elCopyStyles) {\n listStyles = {\n ...listStyles,\n ...this.elCopyStyles,\n };\n }\n\n const options = this.getItemOptions();\n\n return (\n <div className=\"nestable-drag-layer\">\n <ol className=\"nestable-list\" style={listStyles}>\n <NestableItem isCopy item={dragItem} options={options} />\n </ol>\n </div>\n );\n }\n\n render() {\n const { items, dragItem } = this.state;\n const { group, isAndItem, isOrItem, isDraggableItem, setDraggableItems, singleRow } = this.props;\n const options = this.getItemOptions();\n const childLength = items.length;\n let childClass = 'single';\n if (childLength === 0) childClass = 'empty';\n else if (childLength > 1) childClass = 'multiple';\n\n return (\n <div\n className={cn('nestable', `nestable-${group}`, {\n 'is-drag-active': dragItem,\n })}\n >\n <ol className={`nestable-list nestable-group nestable-child-count-${childClass}`}>\n {items.map((item, i) => (\n <NestableItem\n key={item.id}\n index={i}\n isAndItem={isAndItem}\n isDraggableItem={isDraggableItem}\n isOrItem={isOrItem}\n item={item}\n options={options}\n setDraggableItems={setDraggableItems}\n singleRow={singleRow}\n />\n ))}\n </ol>\n {dragItem && this.renderDragLayer()}\n </div>\n );\n }\n}\n\nNestable.defaultProps = {\n items: [],\n collapsed: false,\n group: Math.random().toString(36).slice(2),\n childrenProp: 'children',\n onChange: () => {},\n};\n\nNestable.propTypes = {\n childrenProp: PropTypes.string,\n group: PropTypes.string,\n items: PropTypes.arrayOf(PropTypes.shape({})),\n collapsed: PropTypes.bool,\n onChange: PropTypes.func,\n isAndItem: PropTypes.bool,\n isOrItem: PropTypes.bool,\n isDraggableItem: PropTypes.bool,\n setDraggableItems: PropTypes.func,\n singleRow: PropTypes.bool,\n};\n\nexport default Nestable;\n"],
|
|
5
5
|
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import { get } from "lodash";
|
|
2
|
+
import { get } from "lodash-es";
|
|
3
3
|
import * as operators from "./operators.js";
|
|
4
4
|
import { QB_GROUP_CONDITION_TYPES } from "./types.js";
|
|
5
5
|
const resolveCondition = (condition, state, resolveBy = QB_GROUP_CONDITION_TYPES.AND) => {
|
|
@@ -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 './operators.js';\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"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { get } from 'lodash-es';\nimport * as operators from './operators.js';\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
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,UAAW,QAAO;AAEjD,MAAI,WAAW;AACb,WAAO,UAAU,MAAM,CAAC,SAAS;AAC/B,YAAM,EAAE,QAAQ,YAAY,UAAU,cAAc,OAAO,UAAU,IAAI;AACzE,UAAI,OAAO,iBAAiB,WAAY,QAAO,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,EAAG,QAAO,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/operators.ts"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { isEmpty } from 'lodash';\n\n// Check if the value is empty\nexport const checkNotEmpty = (value: unknown) =>\n // eslint-disable-next-line eqeqeq\n value === '' || value === undefined || value === null || isEmpty(value);\n\n// Check if the value is not empty\nexport const checkEmpty = (value: unknown) => !isEmpty(value);\n\nexport const greaterThan = (value: number, comparator: number) => value > comparator;\n\n// Check if a valid date with format MM/DD/YYYY\nexport const validDate = (value: string) => {\n const dateValidationRegex = /^\\d{1,2}\\/\\d{1,2}\\/\\d{4}$/;\n if (!dateValidationRegex.test(value)) return false;\n const [m, d, y] = value.split('/').map((n) => Number(n));\n return m === Number(new Date(y, m - 1, d).getMonth()) + 1 && d === Number(new Date(y, m - 1, d).getDate());\n};\n\nexport const equal = (a: unknown, b: unknown) => a === b;\n\nexport const notEqual = (a: unknown, b: unknown) => !equal(a, b);\n\nexport const isNull = (a: unknown) => checkNotEmpty(a);\n\nexport const isNotNull = (a: unknown) => !isNull(a);\n\nexport const isIn = <T>(a: T, b: T[]) => b.indexOf(a) > -1;\n\nexport const isNotIn = <T>(a: T, b: T[]) => !isIn(a, b);\n\nexport const greaterThanOrEquals = (value: number, comparator: number) => value >= comparator;\nexport const lessThanOrEquals = (value: number, comparator: number) => value <= comparator;\nexport const startsWith = (value: unknown, comparator: string) => String(value).startsWith(comparator);\nexport const contains = (value: unknown, comparator: string) => String(value).includes(comparator);\n"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { isEmpty } from 'lodash-es';\n\n// Check if the value is empty\nexport const checkNotEmpty = (value: unknown) =>\n // eslint-disable-next-line eqeqeq\n value === '' || value === undefined || value === null || isEmpty(value);\n\n// Check if the value is not empty\nexport const checkEmpty = (value: unknown) => !isEmpty(value);\n\nexport const greaterThan = (value: number, comparator: number) => value > comparator;\n\n// Check if a valid date with format MM/DD/YYYY\nexport const validDate = (value: string) => {\n const dateValidationRegex = /^\\d{1,2}\\/\\d{1,2}\\/\\d{4}$/;\n if (!dateValidationRegex.test(value)) return false;\n const [m, d, y] = value.split('/').map((n) => Number(n));\n return m === Number(new Date(y, m - 1, d).getMonth()) + 1 && d === Number(new Date(y, m - 1, d).getDate());\n};\n\nexport const equal = (a: unknown, b: unknown) => a === b;\n\nexport const notEqual = (a: unknown, b: unknown) => !equal(a, b);\n\nexport const isNull = (a: unknown) => checkNotEmpty(a);\n\nexport const isNotNull = (a: unknown) => !isNull(a);\n\nexport const isIn = <T>(a: T, b: T[]) => b.indexOf(a) > -1;\n\nexport const isNotIn = <T>(a: T, b: T[]) => !isIn(a, b);\n\nexport const greaterThanOrEquals = (value: number, comparator: number) => value >= comparator;\nexport const lessThanOrEquals = (value: number, comparator: number) => value <= comparator;\nexport const startsWith = (value: unknown, comparator: string) => String(value).startsWith(comparator);\nexport const contains = (value: unknown, comparator: string) => String(value).includes(comparator);\n"],
|
|
5
5
|
"mappings": "AAAA,YAAY,WAAW;ACAvB,SAAS,eAAe;AAGjB,MAAM,gBAAgB,CAAC;AAAA;AAAA,EAE5B,UAAU,MAAM,UAAU,UAAa,UAAU,QAAQ,QAAQ,KAAK;AAAA;AAGjE,MAAM,aAAa,CAAC,UAAmB,CAAC,QAAQ,KAAK;AAErD,MAAM,cAAc,CAAC,OAAe,eAAuB,QAAQ;AAGnE,MAAM,YAAY,CAAC,UAAkB;AAC1C,QAAM,sBAAsB;AAC5B,MAAI,CAAC,oBAAoB,KAAK,KAAK,EAAG,QAAO;AAC7C,QAAM,CAAC,GAAG,GAAG,CAAC,IAAI,MAAM,MAAM,GAAG,EAAE,IAAI,CAAC,MAAM,OAAO,CAAC,CAAC;AACvD,SAAO,MAAM,OAAO,IAAI,KAAK,GAAG,IAAI,GAAG,CAAC,EAAE,SAAS,CAAC,IAAI,KAAK,MAAM,OAAO,IAAI,KAAK,GAAG,IAAI,GAAG,CAAC,EAAE,QAAQ,CAAC;AAC3G;AAEO,MAAM,QAAQ,CAAC,GAAY,MAAe,MAAM;AAEhD,MAAM,WAAW,CAAC,GAAY,MAAe,CAAC,MAAM,GAAG,CAAC;AAExD,MAAM,SAAS,CAAC,MAAe,cAAc,CAAC;AAE9C,MAAM,YAAY,CAAC,MAAe,CAAC,OAAO,CAAC;AAE3C,MAAM,OAAO,CAAI,GAAM,MAAW,EAAE,QAAQ,CAAC,IAAI;AAEjD,MAAM,UAAU,CAAI,GAAM,MAAW,CAAC,KAAK,GAAG,CAAC;AAE/C,MAAM,sBAAsB,CAAC,OAAe,eAAuB,SAAS;AAC5E,MAAM,mBAAmB,CAAC,OAAe,eAAuB,SAAS;AACzE,MAAM,aAAa,CAAC,OAAgB,eAAuB,OAAO,KAAK,EAAE,WAAW,UAAU;AAC9F,MAAM,WAAW,CAAC,OAAgB,eAAuB,OAAO,KAAK,EAAE,SAAS,UAAU;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elliemae/ds-query-builder",
|
|
3
|
-
"version": "3.52.0
|
|
3
|
+
"version": "3.52.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "ICE MT - Dimsum - Query Builder",
|
|
6
6
|
"files": [
|
|
@@ -39,26 +39,26 @@
|
|
|
39
39
|
"classnames": "~2.3.2",
|
|
40
40
|
"prop-types": "~15.8.1",
|
|
41
41
|
"react-addons-update": "~15.6.3",
|
|
42
|
-
"@elliemae/ds-accordion": "3.52.0
|
|
43
|
-
"@elliemae/ds-button": "3.52.0
|
|
44
|
-
"@elliemae/ds-
|
|
45
|
-
"@elliemae/ds-
|
|
46
|
-
"@elliemae/ds-
|
|
47
|
-
"@elliemae/ds-icon": "3.52.0
|
|
48
|
-
"@elliemae/ds-icons": "3.52.0
|
|
49
|
-
"@elliemae/ds-
|
|
50
|
-
"@elliemae/ds-
|
|
51
|
-
"@elliemae/ds-
|
|
52
|
-
"@elliemae/ds-tooltip": "3.52.0
|
|
42
|
+
"@elliemae/ds-accordion": "3.52.0",
|
|
43
|
+
"@elliemae/ds-button": "3.52.0",
|
|
44
|
+
"@elliemae/ds-form": "3.52.0",
|
|
45
|
+
"@elliemae/ds-classnames": "3.52.0",
|
|
46
|
+
"@elliemae/ds-grid": "3.52.0",
|
|
47
|
+
"@elliemae/ds-icon": "3.52.0",
|
|
48
|
+
"@elliemae/ds-icons": "3.52.0",
|
|
49
|
+
"@elliemae/ds-popper": "3.52.0",
|
|
50
|
+
"@elliemae/ds-props-helpers": "3.52.0",
|
|
51
|
+
"@elliemae/ds-shared": "3.52.0",
|
|
52
|
+
"@elliemae/ds-tooltip": "3.52.0"
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|
|
55
|
-
"@elliemae/pui-cli": "9.0.0-next.
|
|
55
|
+
"@elliemae/pui-cli": "9.0.0-next.63",
|
|
56
56
|
"jest": "~29.7.0",
|
|
57
57
|
"styled-components": "~5.3.9",
|
|
58
|
-
"@elliemae/ds-monorepo-devops": "3.52.0
|
|
58
|
+
"@elliemae/ds-monorepo-devops": "3.52.0"
|
|
59
59
|
},
|
|
60
60
|
"peerDependencies": {
|
|
61
|
-
"lodash": "^4.17.21",
|
|
61
|
+
"lodash-es": "^4.17.21",
|
|
62
62
|
"react": "^18.3.1",
|
|
63
63
|
"react-dom": "^18.3.1"
|
|
64
64
|
},
|