@elliemae/ds-query-builder 3.52.1 → 3.53.0-alpha.2

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.
@@ -33,11 +33,10 @@ __export(DisplayOutput_exports, {
33
33
  module.exports = __toCommonJS(DisplayOutput_exports);
34
34
  var React = __toESM(require("react"));
35
35
  var import_jsx_runtime = require("react/jsx-runtime");
36
- var import_react = require("react");
37
- var import_ds_grid = require("@elliemae/ds-grid");
38
- var import_ds_classnames = require("@elliemae/ds-classnames");
39
36
  var import_ds_accordion = require("@elliemae/ds-accordion");
40
- var import_ds_icons = require("@elliemae/ds-icons");
37
+ var import_ds_classnames = require("@elliemae/ds-classnames");
38
+ var import_ds_grid = require("@elliemae/ds-grid");
39
+ var import_react = require("react");
41
40
  var import_QueryBuilderContext = require("../QueryBuilderContext/QueryBuilderContext.js");
42
41
  const { cssClassName } = (0, import_ds_classnames.convertPropToCssClassName)("query-builder-output");
43
42
  class DisplayOutput extends import_react.Component {
@@ -68,16 +67,7 @@ class DisplayOutput extends import_react.Component {
68
67
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_grid.Grid, { pl: "xxs", pr: "xxs", "data-testid": "qb-fixed-output-content", children: display })
69
68
  ] });
70
69
  }
71
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: cssClassName, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_accordion.DSAccordion, { activeValue: show, onChange: this.handleChange, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
72
- import_ds_accordion.DSAccordionItem,
73
- {
74
- iconClosed: import_ds_icons.ChevronRight,
75
- iconOpened: import_ds_icons.ChevronDown,
76
- title: show ? hideLabel : showLabel,
77
- value: true,
78
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { children: display })
79
- }
80
- ) }) });
70
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: cssClassName, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_accordion.DSAccordion, { activeValue: show, onChange: this.handleChange, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_accordion.DSAccordionItem, { title: show ? hideLabel : showLabel, value: true, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { children: display }) }) }) });
81
71
  } });
82
72
  }
83
73
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/components/DisplayOutput/DisplayOutput.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["import React, { Component } from 'react';\nimport { Grid } from '@elliemae/ds-grid';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { DSAccordion, DSAccordionItem } from '@elliemae/ds-accordion';\nimport { ChevronDown, ChevronRight } from '@elliemae/ds-icons';\nimport { QueryBuilderContext } from '../QueryBuilderContext/QueryBuilderContext.js';\n\nconst { cssClassName } = convertPropToCssClassName('query-builder-output');\n\nclass DisplayOutput extends Component {\n constructor(props) {\n super(props);\n this.state = {\n show: props.show,\n };\n }\n\n handleChange = () => {\n this.setState(({ show }) => ({\n show: !show,\n }));\n };\n\n render() {\n const { show } = this.state;\n const { showLabel, hideLabel, displayFixedOutput } = this.props;\n return (\n <QueryBuilderContext.Consumer>\n {({ format }) => {\n let display = '';\n try {\n display = typeof format === 'object' ? JSON.stringify(format) : format;\n } catch (e) {\n display = e;\n }\n if (displayFixedOutput) {\n return (\n <div className={cssClassName} data-testid=\"qb-fixed-output-wrapper\">\n <Grid p=\"xxs\">\n <strong data-testid=\"qb-fixed-output-label\">{displayFixedOutput}</strong>\n </Grid>\n <Grid pl=\"xxs\" pr=\"xxs\" data-testid=\"qb-fixed-output-content\">\n {display}\n </Grid>\n </div>\n );\n }\n\n return (\n <div className={cssClassName}>\n <DSAccordion activeValue={show} onChange={this.handleChange}>\n <DSAccordionItem\n iconClosed={ChevronRight}\n iconOpened={ChevronDown}\n title={show ? hideLabel : showLabel}\n value\n >\n <div>{display}</div>\n </DSAccordionItem>\n </DSAccordion>\n </div>\n );\n }}\n </QueryBuilderContext.Consumer>\n );\n }\n}\n\nexport default DisplayOutput;\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADqCT;AArCd,mBAAiC;AACjC,qBAAqB;AACrB,2BAA0C;AAC1C,0BAA6C;AAC7C,sBAA0C;AAC1C,iCAAoC;AAEpC,MAAM,EAAE,aAAa,QAAI,gDAA0B,sBAAsB;AAEzE,MAAM,sBAAsB,uBAAU;AAAA,EACpC,YAAY,OAAO;AACjB,UAAM,KAAK;AACX,SAAK,QAAQ;AAAA,MACX,MAAM,MAAM;AAAA,IACd;AAAA,EACF;AAAA,EAEA,eAAe,MAAM;AACnB,SAAK,SAAS,CAAC,EAAE,KAAK,OAAO;AAAA,MAC3B,MAAM,CAAC;AAAA,IACT,EAAE;AAAA,EACJ;AAAA,EAEA,SAAS;AACP,UAAM,EAAE,KAAK,IAAI,KAAK;AACtB,UAAM,EAAE,WAAW,WAAW,mBAAmB,IAAI,KAAK;AAC1D,WACE,4CAAC,+CAAoB,UAApB,EACE,WAAC,EAAE,OAAO,MAAM;AACf,UAAI,UAAU;AACd,UAAI;AACF,kBAAU,OAAO,WAAW,WAAW,KAAK,UAAU,MAAM,IAAI;AAAA,MAClE,SAAS,GAAG;AACV,kBAAU;AAAA,MACZ;AACA,UAAI,oBAAoB;AACtB,eACE,6CAAC,SAAI,WAAW,cAAc,eAAY,2BACxC;AAAA,sDAAC,uBAAK,GAAE,OACN,sDAAC,YAAO,eAAY,yBAAyB,8BAAmB,GAClE;AAAA,UACA,4CAAC,uBAAK,IAAG,OAAM,IAAG,OAAM,eAAY,2BACjC,mBACH;AAAA,WACF;AAAA,MAEJ;AAEA,aACE,4CAAC,SAAI,WAAW,cACd,sDAAC,mCAAY,aAAa,MAAM,UAAU,KAAK,cAC7C;AAAA,QAAC;AAAA;AAAA,UACC,YAAY;AAAA,UACZ,YAAY;AAAA,UACZ,OAAO,OAAO,YAAY;AAAA,UAC1B,OAAK;AAAA,UAEL,sDAAC,SAAK,mBAAQ;AAAA;AAAA,MAChB,GACF,GACF;AAAA,IAEJ,GACF;AAAA,EAEJ;AACF;AAEA,IAAO,wBAAQ;",
4
+ "sourcesContent": ["import { DSAccordion, DSAccordionItem } from '@elliemae/ds-accordion';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { Grid } from '@elliemae/ds-grid';\nimport { Component } from 'react';\nimport { QueryBuilderContext } from '../QueryBuilderContext/QueryBuilderContext.js';\n\nconst { cssClassName } = convertPropToCssClassName('query-builder-output');\n\nclass DisplayOutput extends Component {\n constructor(props) {\n super(props);\n this.state = {\n show: props.show,\n };\n }\n\n handleChange = () => {\n this.setState(({ show }) => ({\n show: !show,\n }));\n };\n\n render() {\n const { show } = this.state;\n const { showLabel, hideLabel, displayFixedOutput } = this.props;\n return (\n <QueryBuilderContext.Consumer>\n {({ format }) => {\n let display = '';\n try {\n display = typeof format === 'object' ? JSON.stringify(format) : format;\n } catch (e) {\n display = e;\n }\n if (displayFixedOutput) {\n return (\n <div className={cssClassName} data-testid=\"qb-fixed-output-wrapper\">\n <Grid p=\"xxs\">\n <strong data-testid=\"qb-fixed-output-label\">{displayFixedOutput}</strong>\n </Grid>\n <Grid pl=\"xxs\" pr=\"xxs\" data-testid=\"qb-fixed-output-content\">\n {display}\n </Grid>\n </div>\n );\n }\n\n return (\n <div className={cssClassName}>\n <DSAccordion activeValue={show} onChange={this.handleChange}>\n <DSAccordionItem title={show ? hideLabel : showLabel} value>\n <div>{display}</div>\n </DSAccordionItem>\n </DSAccordion>\n </div>\n );\n }}\n </QueryBuilderContext.Consumer>\n );\n }\n}\n\nexport default DisplayOutput;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADoCT;AApCd,0BAA6C;AAC7C,2BAA0C;AAC1C,qBAAqB;AACrB,mBAA0B;AAC1B,iCAAoC;AAEpC,MAAM,EAAE,aAAa,QAAI,gDAA0B,sBAAsB;AAEzE,MAAM,sBAAsB,uBAAU;AAAA,EACpC,YAAY,OAAO;AACjB,UAAM,KAAK;AACX,SAAK,QAAQ;AAAA,MACX,MAAM,MAAM;AAAA,IACd;AAAA,EACF;AAAA,EAEA,eAAe,MAAM;AACnB,SAAK,SAAS,CAAC,EAAE,KAAK,OAAO;AAAA,MAC3B,MAAM,CAAC;AAAA,IACT,EAAE;AAAA,EACJ;AAAA,EAEA,SAAS;AACP,UAAM,EAAE,KAAK,IAAI,KAAK;AACtB,UAAM,EAAE,WAAW,WAAW,mBAAmB,IAAI,KAAK;AAC1D,WACE,4CAAC,+CAAoB,UAApB,EACE,WAAC,EAAE,OAAO,MAAM;AACf,UAAI,UAAU;AACd,UAAI;AACF,kBAAU,OAAO,WAAW,WAAW,KAAK,UAAU,MAAM,IAAI;AAAA,MAClE,SAAS,GAAG;AACV,kBAAU;AAAA,MACZ;AACA,UAAI,oBAAoB;AACtB,eACE,6CAAC,SAAI,WAAW,cAAc,eAAY,2BACxC;AAAA,sDAAC,uBAAK,GAAE,OACN,sDAAC,YAAO,eAAY,yBAAyB,8BAAmB,GAClE;AAAA,UACA,4CAAC,uBAAK,IAAG,OAAM,IAAG,OAAM,eAAY,2BACjC,mBACH;AAAA,WACF;AAAA,MAEJ;AAEA,aACE,4CAAC,SAAI,WAAW,cACd,sDAAC,mCAAY,aAAa,MAAM,UAAU,KAAK,cAC7C,sDAAC,uCAAgB,OAAO,OAAO,YAAY,WAAW,OAAK,MACzD,sDAAC,SAAK,mBAAQ,GAChB,GACF,GACF;AAAA,IAEJ,GACF;AAAA,EAEJ;AACF;AAEA,IAAO,wBAAQ;",
6
6
  "names": []
7
7
  }
@@ -33,11 +33,10 @@ __export(Nestable_exports, {
33
33
  module.exports = __toCommonJS(Nestable_exports);
34
34
  var React = __toESM(require("react"));
35
35
  var import_jsx_runtime = require("react/jsx-runtime");
36
- var import_react = require("react");
37
- var import_prop_types = __toESM(require("prop-types"));
38
- var import_classnames = __toESM(require("classnames"));
39
36
  var import_ds_shared = require("@elliemae/ds-shared");
37
+ var import_classnames = __toESM(require("classnames"));
40
38
  var import_lodash_es = require("lodash-es");
39
+ var import_react = require("react");
41
40
  var import_actions = require("./actions/index.js");
42
41
  var import_NestableItem = __toESM(require("./NestableItem.js"));
43
42
  const shallowCompare = (instance, nextProps, nextState) => !(0, import_lodash_es.isEqualWith)(instance.props, nextProps) || !(0, import_lodash_es.isEqualWith)(instance.state, nextState);
@@ -230,17 +229,5 @@ Nestable.defaultProps = {
230
229
  onChange: () => {
231
230
  }
232
231
  };
233
- Nestable.propTypes = {
234
- childrenProp: import_prop_types.default.string,
235
- group: import_prop_types.default.string,
236
- items: import_prop_types.default.arrayOf(import_prop_types.default.shape({})),
237
- collapsed: import_prop_types.default.bool,
238
- onChange: import_prop_types.default.func,
239
- isAndItem: import_prop_types.default.bool,
240
- isOrItem: import_prop_types.default.bool,
241
- isDraggableItem: import_prop_types.default.bool,
242
- setDraggableItems: import_prop_types.default.func,
243
- singleRow: import_prop_types.default.bool
244
- };
245
232
  var Nestable_default = Nestable;
246
233
  //# sourceMappingURL=Nestable.js.map
@@ -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-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
- "names": ["NestableItem", "cn", "PropTypes"]
4
+ "sourcesContent": ["/* eslint-disable no-bitwise */\n/* eslint-disable react/no-unused-class-component-methods */\n/* eslint-disable react/jsx-no-bind */\n/* eslint-disable import/no-unresolved */\n/* eslint-disable max-lines */\n/* eslint-disable @typescript-eslint/no-unsafe-argument, max-params */\n/* eslint-disable @typescript-eslint/ban-ts-comment, @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any */\n/* eslint-disable complexity, @typescript-eslint/no-unsafe-call */\n/* eslint-disable no-unused-vars, @typescript-eslint/no-unsafe-member-access */\n/* eslint-disable @typescript-eslint/no-unsafe-return, @typescript-eslint/no-unsafe-assignment */\n/* tslint:disable */\n// @ts-nocheck\n// What's with all the above disables?\n// this is what a legacy 7 year old codebase looks like.\nimport { listWithChildren } from '@elliemae/ds-shared';\nimport cn from 'classnames';\nimport { isEqualWith } from 'lodash-es';\nimport { Component } from 'react';\nimport {\n getItemByPath,\n getItemDepth,\n getItemOptions,\n getPathById,\n getRealNextPath,\n getSplicePath,\n moveItem,\n onDragEnd,\n onDragStart,\n onKeyDown,\n onMouseEnter,\n onMouseMove,\n onToggleCollapse,\n tryDecreaseDepth,\n tryIncreaseDepth,\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\nexport default Nestable;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": "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",
6
+ "names": ["NestableItem", "cn"]
7
7
  }
@@ -56,6 +56,7 @@ const conditionSql = (condition, value) => {
56
56
  if (condition === GREATER_THAN_OR_EQUAL) return ` >= ${value}`;
57
57
  if (condition === LESS_THAN_OR_EQUAL) return ` <= ${value}`;
58
58
  if (condition === START_WITH) return ` LIKE '${value}%'`;
59
+ if (condition === "NOT_START_WITH") return ` NOT LIKE '${value}%'`;
59
60
  return condition;
60
61
  };
61
62
  const renderFilterSQl = (filter) => {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/components/format/sqlFormat.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["/* 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 ` = '${value}'`;\n if (condition === NOT_EQUAL) return ` <> '${value}'`;\n if (condition === GREATER_THAN) return ` > ${value}`;\n if (condition === LESS_THAN) return ` < ${value}`;\n if (condition === CONTAINS) return ` LIKE '%${value}%'`;\n if (condition === NOT_CONTAINS) return ` NOT LIKE '%${value}%'`;\n if (condition === BETWEEN) return ` BETWEEN ${value[0]} AND ${value[1]} `;\n if (condition === GREATER_THAN_OR_EQUAL) return ` >= ${value}`;\n if (condition === LESS_THAN_OR_EQUAL) return ` <= ${value}`;\n if (condition === START_WITH) return ` LIKE '${value}%'`;\n return condition;\n};\n\nconst renderFilterSQl = (filter) => {\n const { field, operator, value } = filter.element;\n\n return `${field} ${conditionSql(operator, value) || ''}`;\n};\nexport const sqlFormat = ({ main, mapGroups, items }) => {\n const groupSql = (item, idGroup) => {\n if (idGroup === main) {\n const groupCondition = mapGroups[idGroup].condition === true ? 'AND' : 'OR';\n return ` ( ${filterSql(item, groupCondition)} ) `; // eslint-disable-line\n }\n const groupCondition = item.element.condition === true ? 'AND' : 'OR';\n return ` ( ${filterSql(item.children, groupCondition)} ) `; // eslint-disable-line\n };\n\n const filterSql = (filters, groupCondition) => {\n const filterGroup = filters.map((filter) => {\n if (filter.element.type === 'filter') return ` ${renderFilterSQl(filter)} `;\n return ` ${groupSql(filter) || ''} `;\n });\n return filterGroup.join(groupCondition);\n };\n\n const sql = ` FROM [TABLE_NAME] WHERE ${groupSql(items, main) || ''} `;\n\n return sql;\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADCvB,mBAAkC;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,MAAO,QAAO,OAAO,KAAK;AAC5C,MAAI,cAAc,UAAW,QAAO,QAAQ,KAAK;AACjD,MAAI,cAAc,aAAc,QAAO,MAAM,KAAK;AAClD,MAAI,cAAc,UAAW,QAAO,MAAM,KAAK;AAC/C,MAAI,cAAc,SAAU,QAAO,WAAW,KAAK;AACnD,MAAI,cAAc,aAAc,QAAO,eAAe,KAAK;AAC3D,MAAI,cAAc,QAAS,QAAO,YAAY,MAAM,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC;AACtE,MAAI,cAAc,sBAAuB,QAAO,OAAO,KAAK;AAC5D,MAAI,cAAc,mBAAoB,QAAO,OAAO,KAAK;AACzD,MAAI,cAAc,WAAY,QAAO,UAAU,KAAK;AACpD,SAAO;AACT;AAEA,MAAM,kBAAkB,CAAC,WAAW;AAClC,QAAM,EAAE,OAAO,UAAU,MAAM,IAAI,OAAO;AAE1C,SAAO,GAAG,KAAK,IAAI,aAAa,UAAU,KAAK,KAAK,EAAE;AACxD;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,MAAM,UAAU,MAAMA,eAAc,CAAC;AAAA,IAC9C;AACA,UAAM,iBAAiB,KAAK,QAAQ,cAAc,OAAO,QAAQ;AACjE,WAAO,MAAM,UAAU,KAAK,UAAU,cAAc,CAAC;AAAA,EACvD;AAEA,QAAM,YAAY,CAAC,SAAS,mBAAmB;AAC7C,UAAM,cAAc,QAAQ,IAAI,CAAC,WAAW;AAC1C,UAAI,OAAO,QAAQ,SAAS,SAAU,QAAO,IAAI,gBAAgB,MAAM,CAAC;AACxE,aAAO,IAAI,SAAS,MAAM,KAAK,EAAE;AAAA,IACnC,CAAC;AACD,WAAO,YAAY,KAAK,cAAc;AAAA,EACxC;AAEA,QAAM,MAAM,4BAA4B,SAAS,OAAO,IAAI,KAAK,EAAE;AAEnE,SAAO;AACT;",
4
+ "sourcesContent": ["/* 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 ` = '${value}'`;\n if (condition === NOT_EQUAL) return ` <> '${value}'`;\n if (condition === GREATER_THAN) return ` > ${value}`;\n if (condition === LESS_THAN) return ` < ${value}`;\n if (condition === CONTAINS) return ` LIKE '%${value}%'`;\n if (condition === NOT_CONTAINS) return ` NOT LIKE '%${value}%'`;\n if (condition === BETWEEN) return ` BETWEEN ${value[0]} AND ${value[1]} `;\n if (condition === GREATER_THAN_OR_EQUAL) return ` >= ${value}`;\n if (condition === LESS_THAN_OR_EQUAL) return ` <= ${value}`;\n if (condition === START_WITH) return ` LIKE '${value}%'`;\n if (condition === 'NOT_START_WITH') return ` NOT LIKE '${value}%'`;\n return condition;\n};\n\nconst renderFilterSQl = (filter) => {\n const { field, operator, value } = filter.element;\n\n return `${field} ${conditionSql(operator, value) || ''}`;\n};\nexport const sqlFormat = ({ main, mapGroups, items }) => {\n const groupSql = (item, idGroup) => {\n if (idGroup === main) {\n const groupCondition = mapGroups[idGroup].condition === true ? 'AND' : 'OR';\n return ` ( ${filterSql(item, groupCondition)} ) `; // eslint-disable-line\n }\n const groupCondition = item.element.condition === true ? 'AND' : 'OR';\n return ` ( ${filterSql(item.children, groupCondition)} ) `; // eslint-disable-line\n };\n\n const filterSql = (filters, groupCondition) => {\n const filterGroup = filters.map((filter) => {\n if (filter.element.type === 'filter') return ` ${renderFilterSQl(filter)} `;\n return ` ${groupSql(filter) || ''} `;\n });\n return filterGroup.join(groupCondition);\n };\n\n const sql = ` FROM [TABLE_NAME] WHERE ${groupSql(items, main) || ''} `;\n\n return sql;\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADCvB,mBAAkC;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,MAAO,QAAO,OAAO,KAAK;AAC5C,MAAI,cAAc,UAAW,QAAO,QAAQ,KAAK;AACjD,MAAI,cAAc,aAAc,QAAO,MAAM,KAAK;AAClD,MAAI,cAAc,UAAW,QAAO,MAAM,KAAK;AAC/C,MAAI,cAAc,SAAU,QAAO,WAAW,KAAK;AACnD,MAAI,cAAc,aAAc,QAAO,eAAe,KAAK;AAC3D,MAAI,cAAc,QAAS,QAAO,YAAY,MAAM,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC;AACtE,MAAI,cAAc,sBAAuB,QAAO,OAAO,KAAK;AAC5D,MAAI,cAAc,mBAAoB,QAAO,OAAO,KAAK;AACzD,MAAI,cAAc,WAAY,QAAO,UAAU,KAAK;AACpD,MAAI,cAAc,iBAAkB,QAAO,cAAc,KAAK;AAC9D,SAAO;AACT;AAEA,MAAM,kBAAkB,CAAC,WAAW;AAClC,QAAM,EAAE,OAAO,UAAU,MAAM,IAAI,OAAO;AAE1C,SAAO,GAAG,KAAK,IAAI,aAAa,UAAU,KAAK,KAAK,EAAE;AACxD;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,MAAM,UAAU,MAAMA,eAAc,CAAC;AAAA,IAC9C;AACA,UAAM,iBAAiB,KAAK,QAAQ,cAAc,OAAO,QAAQ;AACjE,WAAO,MAAM,UAAU,KAAK,UAAU,cAAc,CAAC;AAAA,EACvD;AAEA,QAAM,YAAY,CAAC,SAAS,mBAAmB;AAC7C,UAAM,cAAc,QAAQ,IAAI,CAAC,WAAW;AAC1C,UAAI,OAAO,QAAQ,SAAS,SAAU,QAAO,IAAI,gBAAgB,MAAM,CAAC;AACxE,aAAO,IAAI,SAAS,MAAM,KAAK,EAAE;AAAA,IACnC,CAAC;AACD,WAAO,YAAY,KAAK,cAAc;AAAA,EACxC;AAEA,QAAM,MAAM,4BAA4B,SAAS,OAAO,IAAI,KAAK,EAAE;AAEnE,SAAO;AACT;",
6
6
  "names": ["groupCondition"]
7
7
  }
@@ -59,6 +59,7 @@ const conditionSql = (condition, value) => {
59
59
  if (condition === GREATER_THAN_OR_EQUAL) return ` >= ${value}`;
60
60
  if (condition === LESS_THAN_OR_EQUAL) return ` <= ${value}`;
61
61
  if (condition === START_WITH) return ` LIKE '${value}%'`;
62
+ if (condition === "NOT_START_WITH") return ` NOT LIKE '${value}%'`;
62
63
  return condition;
63
64
  };
64
65
  const renderFilterSQl = (filter) => {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/components/format/sqlSafeFormat.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["/* eslint-disable complexity */\nimport { QB_OPERATOR_TYPES } from '../helpers/types.js';\n\n// eslint-disable-next-line no-useless-escape\nexport const specialChar = /[ !@#$%^&*()_+\\-=\\[\\]{};':\"\\\\|,.<>\\/?]/;\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 // eslint-disable-next-line no-restricted-globals\n const valueDisplay = isNaN(value) ? `'${value}'` : value;\n\n if (condition === EQUAL) return ` = ${valueDisplay}`;\n if (condition === NOT_EQUAL) return ` <> ${valueDisplay}`;\n if (condition === GREATER_THAN) return ` > ${valueDisplay}`;\n if (condition === LESS_THAN) return ` < ${valueDisplay}`;\n if (condition === CONTAINS) return ` LIKE '%${value}%'`;\n if (condition === NOT_CONTAINS) return ` NOT LIKE '%${value}%'`;\n if (condition === BETWEEN) return ` BETWEEN ${value[0]} AND ${value[1]} `;\n if (condition === GREATER_THAN_OR_EQUAL) return ` >= ${value}`;\n if (condition === LESS_THAN_OR_EQUAL) return ` <= ${value}`;\n if (condition === START_WITH) return ` LIKE '${value}%'`;\n return condition;\n};\n\nconst renderFilterSQl = (filter) => {\n const { field, operator, value } = filter.element;\n // eslint-disable-next-line no-restricted-globals\n const fieldDisplay =\n // eslint-disable-next-line no-restricted-globals\n /[.]/.test(field) || !isNaN(field) ? `\\\\\"${field}\\\\\"` : field;\n return `${fieldDisplay} ${conditionSql(operator, value) || ''}`;\n};\nexport const sqlSafeFormat = ({ main, mapGroups, items }) => {\n const groupSql = (item, idGroup) => {\n if (idGroup === main) {\n const groupCondition = mapGroups[idGroup].condition === true ? 'AND' : 'OR';\n return ` ( ${filterSql(item, groupCondition)} ) `; // eslint-disable-line\n }\n const groupCondition = item.element.condition === true ? 'AND' : 'OR';\n return ` ( ${filterSql(item.children, groupCondition)} ) `; // eslint-disable-line\n };\n\n const filterSql = (filters, groupCondition) => {\n const filterGroup = filters.map((filter) => {\n if (filter.element.type === 'filter') return ` ${renderFilterSQl(filter)} `;\n return ` ${groupSql(filter) || ''} `;\n });\n return filterGroup.join(groupCondition);\n };\n\n const sql = ` FROM [TABLE_NAME] WHERE ${groupSql(items, main) || ''} `;\n\n return sql;\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADCvB,mBAAkC;AAG3B,MAAM,cAAc;AAE3B,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,QAAM,eAAe,MAAM,KAAK,IAAI,IAAI,KAAK,MAAM;AAEnD,MAAI,cAAc,MAAO,QAAO,MAAM,YAAY;AAClD,MAAI,cAAc,UAAW,QAAO,OAAO,YAAY;AACvD,MAAI,cAAc,aAAc,QAAO,MAAM,YAAY;AACzD,MAAI,cAAc,UAAW,QAAO,MAAM,YAAY;AACtD,MAAI,cAAc,SAAU,QAAO,WAAW,KAAK;AACnD,MAAI,cAAc,aAAc,QAAO,eAAe,KAAK;AAC3D,MAAI,cAAc,QAAS,QAAO,YAAY,MAAM,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC;AACtE,MAAI,cAAc,sBAAuB,QAAO,OAAO,KAAK;AAC5D,MAAI,cAAc,mBAAoB,QAAO,OAAO,KAAK;AACzD,MAAI,cAAc,WAAY,QAAO,UAAU,KAAK;AACpD,SAAO;AACT;AAEA,MAAM,kBAAkB,CAAC,WAAW;AAClC,QAAM,EAAE,OAAO,UAAU,MAAM,IAAI,OAAO;AAE1C,QAAM;AAAA;AAAA,IAEJ,MAAM,KAAK,KAAK,KAAK,CAAC,MAAM,KAAK,IAAI,MAAM,KAAK,QAAQ;AAAA;AAC1D,SAAO,GAAG,YAAY,IAAI,aAAa,UAAU,KAAK,KAAK,EAAE;AAC/D;AACO,MAAM,gBAAgB,CAAC,EAAE,MAAM,WAAW,MAAM,MAAM;AAC3D,QAAM,WAAW,CAAC,MAAM,YAAY;AAClC,QAAI,YAAY,MAAM;AACpB,YAAMA,kBAAiB,UAAU,OAAO,EAAE,cAAc,OAAO,QAAQ;AACvE,aAAO,MAAM,UAAU,MAAMA,eAAc,CAAC;AAAA,IAC9C;AACA,UAAM,iBAAiB,KAAK,QAAQ,cAAc,OAAO,QAAQ;AACjE,WAAO,MAAM,UAAU,KAAK,UAAU,cAAc,CAAC;AAAA,EACvD;AAEA,QAAM,YAAY,CAAC,SAAS,mBAAmB;AAC7C,UAAM,cAAc,QAAQ,IAAI,CAAC,WAAW;AAC1C,UAAI,OAAO,QAAQ,SAAS,SAAU,QAAO,IAAI,gBAAgB,MAAM,CAAC;AACxE,aAAO,IAAI,SAAS,MAAM,KAAK,EAAE;AAAA,IACnC,CAAC;AACD,WAAO,YAAY,KAAK,cAAc;AAAA,EACxC;AAEA,QAAM,MAAM,4BAA4B,SAAS,OAAO,IAAI,KAAK,EAAE;AAEnE,SAAO;AACT;",
4
+ "sourcesContent": ["/* eslint-disable complexity */\nimport { QB_OPERATOR_TYPES } from '../helpers/types.js';\n\n// eslint-disable-next-line no-useless-escape\nexport const specialChar = /[ !@#$%^&*()_+\\-=\\[\\]{};':\"\\\\|,.<>\\/?]/;\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 // eslint-disable-next-line no-restricted-globals\n const valueDisplay = isNaN(value) ? `'${value}'` : value;\n\n if (condition === EQUAL) return ` = ${valueDisplay}`;\n if (condition === NOT_EQUAL) return ` <> ${valueDisplay}`;\n if (condition === GREATER_THAN) return ` > ${valueDisplay}`;\n if (condition === LESS_THAN) return ` < ${valueDisplay}`;\n if (condition === CONTAINS) return ` LIKE '%${value}%'`;\n if (condition === NOT_CONTAINS) return ` NOT LIKE '%${value}%'`;\n if (condition === BETWEEN) return ` BETWEEN ${value[0]} AND ${value[1]} `;\n if (condition === GREATER_THAN_OR_EQUAL) return ` >= ${value}`;\n if (condition === LESS_THAN_OR_EQUAL) return ` <= ${value}`;\n if (condition === START_WITH) return ` LIKE '${value}%'`;\n if (condition === 'NOT_START_WITH') return ` NOT LIKE '${value}%'`;\n return condition;\n};\n\nconst renderFilterSQl = (filter) => {\n const { field, operator, value } = filter.element;\n // eslint-disable-next-line no-restricted-globals\n const fieldDisplay =\n // eslint-disable-next-line no-restricted-globals\n /[.]/.test(field) || !isNaN(field) ? `\\\\\"${field}\\\\\"` : field;\n return `${fieldDisplay} ${conditionSql(operator, value) || ''}`;\n};\nexport const sqlSafeFormat = ({ main, mapGroups, items }) => {\n const groupSql = (item, idGroup) => {\n if (idGroup === main) {\n const groupCondition = mapGroups[idGroup].condition === true ? 'AND' : 'OR';\n return ` ( ${filterSql(item, groupCondition)} ) `; // eslint-disable-line\n }\n const groupCondition = item.element.condition === true ? 'AND' : 'OR';\n return ` ( ${filterSql(item.children, groupCondition)} ) `; // eslint-disable-line\n };\n\n const filterSql = (filters, groupCondition) => {\n const filterGroup = filters.map((filter) => {\n if (filter.element.type === 'filter') return ` ${renderFilterSQl(filter)} `;\n return ` ${groupSql(filter) || ''} `;\n });\n return filterGroup.join(groupCondition);\n };\n\n const sql = ` FROM [TABLE_NAME] WHERE ${groupSql(items, main) || ''} `;\n\n return sql;\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADCvB,mBAAkC;AAG3B,MAAM,cAAc;AAE3B,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,QAAM,eAAe,MAAM,KAAK,IAAI,IAAI,KAAK,MAAM;AAEnD,MAAI,cAAc,MAAO,QAAO,MAAM,YAAY;AAClD,MAAI,cAAc,UAAW,QAAO,OAAO,YAAY;AACvD,MAAI,cAAc,aAAc,QAAO,MAAM,YAAY;AACzD,MAAI,cAAc,UAAW,QAAO,MAAM,YAAY;AACtD,MAAI,cAAc,SAAU,QAAO,WAAW,KAAK;AACnD,MAAI,cAAc,aAAc,QAAO,eAAe,KAAK;AAC3D,MAAI,cAAc,QAAS,QAAO,YAAY,MAAM,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC;AACtE,MAAI,cAAc,sBAAuB,QAAO,OAAO,KAAK;AAC5D,MAAI,cAAc,mBAAoB,QAAO,OAAO,KAAK;AACzD,MAAI,cAAc,WAAY,QAAO,UAAU,KAAK;AACpD,MAAI,cAAc,iBAAkB,QAAO,cAAc,KAAK;AAC9D,SAAO;AACT;AAEA,MAAM,kBAAkB,CAAC,WAAW;AAClC,QAAM,EAAE,OAAO,UAAU,MAAM,IAAI,OAAO;AAE1C,QAAM;AAAA;AAAA,IAEJ,MAAM,KAAK,KAAK,KAAK,CAAC,MAAM,KAAK,IAAI,MAAM,KAAK,QAAQ;AAAA;AAC1D,SAAO,GAAG,YAAY,IAAI,aAAa,UAAU,KAAK,KAAK,EAAE;AAC/D;AACO,MAAM,gBAAgB,CAAC,EAAE,MAAM,WAAW,MAAM,MAAM;AAC3D,QAAM,WAAW,CAAC,MAAM,YAAY;AAClC,QAAI,YAAY,MAAM;AACpB,YAAMA,kBAAiB,UAAU,OAAO,EAAE,cAAc,OAAO,QAAQ;AACvE,aAAO,MAAM,UAAU,MAAMA,eAAc,CAAC;AAAA,IAC9C;AACA,UAAM,iBAAiB,KAAK,QAAQ,cAAc,OAAO,QAAQ;AACjE,WAAO,MAAM,UAAU,KAAK,UAAU,cAAc,CAAC;AAAA,EACvD;AAEA,QAAM,YAAY,CAAC,SAAS,mBAAmB;AAC7C,UAAM,cAAc,QAAQ,IAAI,CAAC,WAAW;AAC1C,UAAI,OAAO,QAAQ,SAAS,SAAU,QAAO,IAAI,gBAAgB,MAAM,CAAC;AACxE,aAAO,IAAI,SAAS,MAAM,KAAK,EAAE;AAAA,IACnC,CAAC;AACD,WAAO,YAAY,KAAK,cAAc;AAAA,EACxC;AAEA,QAAM,MAAM,4BAA4B,SAAS,OAAO,IAAI,KAAK,EAAE;AAEnE,SAAO;AACT;",
6
6
  "names": ["groupCondition"]
7
7
  }
@@ -57,6 +57,7 @@ const conditionSql = (condition, value) => {
57
57
  if (condition === GREATER_THAN_OR_EQUAL) return `<condition>GREATER_THAN_OR_EQUAL</condition><value>${value}</value>`;
58
58
  if (condition === LESS_THAN_OR_EQUAL) return `<condition>LESS_THAN_OR_EQUAL</condition><value>${value}</value>`;
59
59
  if (condition === START_WITH) return `<condition>GREATER_THAN</condition><value>${value}</value>`;
60
+ if (condition === "NOT_START_WITH") return `<condition>NOT_STARTS_WITH</condition><value>${value}</value>`;
60
61
  return condition;
61
62
  };
62
63
  const renderFilterSQl = (filter) => {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/components/format/xmlFormat.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["/* 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", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADCvB,mBAAkC;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,MAAO,QAAO,sCAAsC,KAAK;AAC3E,MAAI,cAAc,UAAW,QAAO,0CAA0C,KAAK;AACnF,MAAI,cAAc,aAAc,QAAO,6CAA6C,KAAK;AACzF,MAAI,cAAc,UAAW,QAAO,0CAA0C,KAAK;AACnF,MAAI,cAAc,SAAU,QAAO,qCAAqC,KAAK;AAC7E,MAAI,cAAc,aAAc,QAAO,yCAAyC,KAAK;AACrF,MAAI,cAAc;AAChB,WAAO,+CAA+C,MAAM,CAAC,CAAC,cAAc,MAAM,CAAC,CAAC;AACtF,MAAI,cAAc,sBAAuB,QAAO,sDAAsD,KAAK;AAC3G,MAAI,cAAc,mBAAoB,QAAO,mDAAmD,KAAK;AACrG,MAAI,cAAc,WAAY,QAAO,6CAA6C,KAAK;AAEvF,SAAO;AACT;AAEA,MAAM,kBAAkB,CAAC,WAAW;AAClC,QAAM,EAAE,OAAO,UAAU,MAAM,IAAI,OAAO;AAE1C,SAAO,kBAAkB,KAAK,WAAW,aAAa,UAAU,KAAK,KAAK,EAAE;AAC9E;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,eAAc,KAAK,UAAU,MAAMA,eAAc,CAAC;AAAA,IAC5E;AACA,UAAM,iBAAiB,KAAK,QAAQ,cAAc,OAAO,QAAQ;AACjE,WAAO,iBAAiB,cAAc,KAAK,UAAU,KAAK,UAAU,cAAc,CAAC;AAAA,EACrF;AACA,QAAM,YAAY,CAAC,YAAY;AAC7B,UAAM,cAAc,QAAQ,IAAI,CAAC,WAAW;AAC1C,UAAI,OAAO,QAAQ,SAAS,SAAU,QAAO,GAAG,gBAAgB,MAAM,KAAK,EAAE;AAC7E,aAAO,IAAI,SAAS,MAAM,CAAC;AAAA,IAC7B,CAAC;AACD,WAAO,YAAY,KAAK,EAAE;AAAA,EAC5B;AAEA,QAAM,MAAM,eAAe,SAAS,OAAO,IAAI,KAAK,EAAE;AAEtD,SAAO;AACT;",
4
+ "sourcesContent": ["/* 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 if (condition === 'NOT_START_WITH') return `<condition>NOT_STARTS_WITH</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", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADCvB,mBAAkC;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,MAAO,QAAO,sCAAsC,KAAK;AAC3E,MAAI,cAAc,UAAW,QAAO,0CAA0C,KAAK;AACnF,MAAI,cAAc,aAAc,QAAO,6CAA6C,KAAK;AACzF,MAAI,cAAc,UAAW,QAAO,0CAA0C,KAAK;AACnF,MAAI,cAAc,SAAU,QAAO,qCAAqC,KAAK;AAC7E,MAAI,cAAc,aAAc,QAAO,yCAAyC,KAAK;AACrF,MAAI,cAAc;AAChB,WAAO,+CAA+C,MAAM,CAAC,CAAC,cAAc,MAAM,CAAC,CAAC;AACtF,MAAI,cAAc,sBAAuB,QAAO,sDAAsD,KAAK;AAC3G,MAAI,cAAc,mBAAoB,QAAO,mDAAmD,KAAK;AACrG,MAAI,cAAc,WAAY,QAAO,6CAA6C,KAAK;AACvF,MAAI,cAAc,iBAAkB,QAAO,gDAAgD,KAAK;AAEhG,SAAO;AACT;AAEA,MAAM,kBAAkB,CAAC,WAAW;AAClC,QAAM,EAAE,OAAO,UAAU,MAAM,IAAI,OAAO;AAE1C,SAAO,kBAAkB,KAAK,WAAW,aAAa,UAAU,KAAK,KAAK,EAAE;AAC9E;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,eAAc,KAAK,UAAU,MAAMA,eAAc,CAAC;AAAA,IAC5E;AACA,UAAM,iBAAiB,KAAK,QAAQ,cAAc,OAAO,QAAQ;AACjE,WAAO,iBAAiB,cAAc,KAAK,UAAU,KAAK,UAAU,cAAc,CAAC;AAAA,EACrF;AACA,QAAM,YAAY,CAAC,YAAY;AAC7B,UAAM,cAAc,QAAQ,IAAI,CAAC,WAAW;AAC1C,UAAI,OAAO,QAAQ,SAAS,SAAU,QAAO,GAAG,gBAAgB,MAAM,KAAK,EAAE;AAC7E,aAAO,IAAI,SAAS,MAAM,CAAC;AAAA,IAC7B,CAAC;AACD,WAAO,YAAY,KAAK,EAAE;AAAA,EAC5B;AAEA,QAAM,MAAM,eAAe,SAAS,OAAO,IAAI,KAAK,EAAE;AAEtD,SAAO;AACT;",
6
6
  "names": ["groupCondition"]
7
7
  }
@@ -1,10 +1,9 @@
1
1
  import * as React from "react";
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
- import { Component } from "react";
4
- import { Grid } from "@elliemae/ds-grid";
5
- import { convertPropToCssClassName } from "@elliemae/ds-classnames";
6
3
  import { DSAccordion, DSAccordionItem } from "@elliemae/ds-accordion";
7
- import { ChevronDown, ChevronRight } from "@elliemae/ds-icons";
4
+ import { convertPropToCssClassName } from "@elliemae/ds-classnames";
5
+ import { Grid } from "@elliemae/ds-grid";
6
+ import { Component } from "react";
8
7
  import { QueryBuilderContext } from "../QueryBuilderContext/QueryBuilderContext.js";
9
8
  const { cssClassName } = convertPropToCssClassName("query-builder-output");
10
9
  class DisplayOutput extends Component {
@@ -35,16 +34,7 @@ class DisplayOutput extends Component {
35
34
  /* @__PURE__ */ jsx(Grid, { pl: "xxs", pr: "xxs", "data-testid": "qb-fixed-output-content", children: display })
36
35
  ] });
37
36
  }
38
- return /* @__PURE__ */ jsx("div", { className: cssClassName, children: /* @__PURE__ */ jsx(DSAccordion, { activeValue: show, onChange: this.handleChange, children: /* @__PURE__ */ jsx(
39
- DSAccordionItem,
40
- {
41
- iconClosed: ChevronRight,
42
- iconOpened: ChevronDown,
43
- title: show ? hideLabel : showLabel,
44
- value: true,
45
- children: /* @__PURE__ */ jsx("div", { children: display })
46
- }
47
- ) }) });
37
+ return /* @__PURE__ */ jsx("div", { className: cssClassName, children: /* @__PURE__ */ jsx(DSAccordion, { activeValue: show, onChange: this.handleChange, children: /* @__PURE__ */ jsx(DSAccordionItem, { title: show ? hideLabel : showLabel, value: true, children: /* @__PURE__ */ jsx("div", { children: display }) }) }) });
48
38
  } });
49
39
  }
50
40
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/components/DisplayOutput/DisplayOutput.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { Component } from 'react';\nimport { Grid } from '@elliemae/ds-grid';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { DSAccordion, DSAccordionItem } from '@elliemae/ds-accordion';\nimport { ChevronDown, ChevronRight } from '@elliemae/ds-icons';\nimport { QueryBuilderContext } from '../QueryBuilderContext/QueryBuilderContext.js';\n\nconst { cssClassName } = convertPropToCssClassName('query-builder-output');\n\nclass DisplayOutput extends Component {\n constructor(props) {\n super(props);\n this.state = {\n show: props.show,\n };\n }\n\n handleChange = () => {\n this.setState(({ show }) => ({\n show: !show,\n }));\n };\n\n render() {\n const { show } = this.state;\n const { showLabel, hideLabel, displayFixedOutput } = this.props;\n return (\n <QueryBuilderContext.Consumer>\n {({ format }) => {\n let display = '';\n try {\n display = typeof format === 'object' ? JSON.stringify(format) : format;\n } catch (e) {\n display = e;\n }\n if (displayFixedOutput) {\n return (\n <div className={cssClassName} data-testid=\"qb-fixed-output-wrapper\">\n <Grid p=\"xxs\">\n <strong data-testid=\"qb-fixed-output-label\">{displayFixedOutput}</strong>\n </Grid>\n <Grid pl=\"xxs\" pr=\"xxs\" data-testid=\"qb-fixed-output-content\">\n {display}\n </Grid>\n </div>\n );\n }\n\n return (\n <div className={cssClassName}>\n <DSAccordion activeValue={show} onChange={this.handleChange}>\n <DSAccordionItem\n iconClosed={ChevronRight}\n iconOpened={ChevronDown}\n title={show ? hideLabel : showLabel}\n value\n >\n <div>{display}</div>\n </DSAccordionItem>\n </DSAccordion>\n </div>\n );\n }}\n </QueryBuilderContext.Consumer>\n );\n }\n}\n\nexport default DisplayOutput;\n"],
5
- "mappings": "AAAA,YAAY,WAAW;ACqCT,SAEI,KAFJ;AArCd,SAAgB,iBAAiB;AACjC,SAAS,YAAY;AACrB,SAAS,iCAAiC;AAC1C,SAAS,aAAa,uBAAuB;AAC7C,SAAS,aAAa,oBAAoB;AAC1C,SAAS,2BAA2B;AAEpC,MAAM,EAAE,aAAa,IAAI,0BAA0B,sBAAsB;AAEzE,MAAM,sBAAsB,UAAU;AAAA,EACpC,YAAY,OAAO;AACjB,UAAM,KAAK;AACX,SAAK,QAAQ;AAAA,MACX,MAAM,MAAM;AAAA,IACd;AAAA,EACF;AAAA,EAEA,eAAe,MAAM;AACnB,SAAK,SAAS,CAAC,EAAE,KAAK,OAAO;AAAA,MAC3B,MAAM,CAAC;AAAA,IACT,EAAE;AAAA,EACJ;AAAA,EAEA,SAAS;AACP,UAAM,EAAE,KAAK,IAAI,KAAK;AACtB,UAAM,EAAE,WAAW,WAAW,mBAAmB,IAAI,KAAK;AAC1D,WACE,oBAAC,oBAAoB,UAApB,EACE,WAAC,EAAE,OAAO,MAAM;AACf,UAAI,UAAU;AACd,UAAI;AACF,kBAAU,OAAO,WAAW,WAAW,KAAK,UAAU,MAAM,IAAI;AAAA,MAClE,SAAS,GAAG;AACV,kBAAU;AAAA,MACZ;AACA,UAAI,oBAAoB;AACtB,eACE,qBAAC,SAAI,WAAW,cAAc,eAAY,2BACxC;AAAA,8BAAC,QAAK,GAAE,OACN,8BAAC,YAAO,eAAY,yBAAyB,8BAAmB,GAClE;AAAA,UACA,oBAAC,QAAK,IAAG,OAAM,IAAG,OAAM,eAAY,2BACjC,mBACH;AAAA,WACF;AAAA,MAEJ;AAEA,aACE,oBAAC,SAAI,WAAW,cACd,8BAAC,eAAY,aAAa,MAAM,UAAU,KAAK,cAC7C;AAAA,QAAC;AAAA;AAAA,UACC,YAAY;AAAA,UACZ,YAAY;AAAA,UACZ,OAAO,OAAO,YAAY;AAAA,UAC1B,OAAK;AAAA,UAEL,8BAAC,SAAK,mBAAQ;AAAA;AAAA,MAChB,GACF,GACF;AAAA,IAEJ,GACF;AAAA,EAEJ;AACF;AAEA,IAAO,wBAAQ;",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { DSAccordion, DSAccordionItem } from '@elliemae/ds-accordion';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { Grid } from '@elliemae/ds-grid';\nimport { Component } from 'react';\nimport { QueryBuilderContext } from '../QueryBuilderContext/QueryBuilderContext.js';\n\nconst { cssClassName } = convertPropToCssClassName('query-builder-output');\n\nclass DisplayOutput extends Component {\n constructor(props) {\n super(props);\n this.state = {\n show: props.show,\n };\n }\n\n handleChange = () => {\n this.setState(({ show }) => ({\n show: !show,\n }));\n };\n\n render() {\n const { show } = this.state;\n const { showLabel, hideLabel, displayFixedOutput } = this.props;\n return (\n <QueryBuilderContext.Consumer>\n {({ format }) => {\n let display = '';\n try {\n display = typeof format === 'object' ? JSON.stringify(format) : format;\n } catch (e) {\n display = e;\n }\n if (displayFixedOutput) {\n return (\n <div className={cssClassName} data-testid=\"qb-fixed-output-wrapper\">\n <Grid p=\"xxs\">\n <strong data-testid=\"qb-fixed-output-label\">{displayFixedOutput}</strong>\n </Grid>\n <Grid pl=\"xxs\" pr=\"xxs\" data-testid=\"qb-fixed-output-content\">\n {display}\n </Grid>\n </div>\n );\n }\n\n return (\n <div className={cssClassName}>\n <DSAccordion activeValue={show} onChange={this.handleChange}>\n <DSAccordionItem title={show ? hideLabel : showLabel} value>\n <div>{display}</div>\n </DSAccordionItem>\n </DSAccordion>\n </div>\n );\n }}\n </QueryBuilderContext.Consumer>\n );\n }\n}\n\nexport default DisplayOutput;\n"],
5
+ "mappings": "AAAA,YAAY,WAAW;ACoCT,SAEI,KAFJ;AApCd,SAAS,aAAa,uBAAuB;AAC7C,SAAS,iCAAiC;AAC1C,SAAS,YAAY;AACrB,SAAS,iBAAiB;AAC1B,SAAS,2BAA2B;AAEpC,MAAM,EAAE,aAAa,IAAI,0BAA0B,sBAAsB;AAEzE,MAAM,sBAAsB,UAAU;AAAA,EACpC,YAAY,OAAO;AACjB,UAAM,KAAK;AACX,SAAK,QAAQ;AAAA,MACX,MAAM,MAAM;AAAA,IACd;AAAA,EACF;AAAA,EAEA,eAAe,MAAM;AACnB,SAAK,SAAS,CAAC,EAAE,KAAK,OAAO;AAAA,MAC3B,MAAM,CAAC;AAAA,IACT,EAAE;AAAA,EACJ;AAAA,EAEA,SAAS;AACP,UAAM,EAAE,KAAK,IAAI,KAAK;AACtB,UAAM,EAAE,WAAW,WAAW,mBAAmB,IAAI,KAAK;AAC1D,WACE,oBAAC,oBAAoB,UAApB,EACE,WAAC,EAAE,OAAO,MAAM;AACf,UAAI,UAAU;AACd,UAAI;AACF,kBAAU,OAAO,WAAW,WAAW,KAAK,UAAU,MAAM,IAAI;AAAA,MAClE,SAAS,GAAG;AACV,kBAAU;AAAA,MACZ;AACA,UAAI,oBAAoB;AACtB,eACE,qBAAC,SAAI,WAAW,cAAc,eAAY,2BACxC;AAAA,8BAAC,QAAK,GAAE,OACN,8BAAC,YAAO,eAAY,yBAAyB,8BAAmB,GAClE;AAAA,UACA,oBAAC,QAAK,IAAG,OAAM,IAAG,OAAM,eAAY,2BACjC,mBACH;AAAA,WACF;AAAA,MAEJ;AAEA,aACE,oBAAC,SAAI,WAAW,cACd,8BAAC,eAAY,aAAa,MAAM,UAAU,KAAK,cAC7C,8BAAC,mBAAgB,OAAO,OAAO,YAAY,WAAW,OAAK,MACzD,8BAAC,SAAK,mBAAQ,GAChB,GACF,GACF;AAAA,IAEJ,GACF;AAAA,EAEJ;AACF;AAEA,IAAO,wBAAQ;",
6
6
  "names": []
7
7
  }
@@ -1,26 +1,25 @@
1
1
  import * as React from "react";
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
- import { Component } from "react";
4
- import PropTypes from "prop-types";
5
- import cn from "classnames";
6
3
  import { listWithChildren } from "@elliemae/ds-shared";
4
+ import cn from "classnames";
7
5
  import { isEqualWith } from "lodash-es";
6
+ import { Component } from "react";
8
7
  import {
9
- tryIncreaseDepth,
10
- tryDecreaseDepth,
11
- moveItem,
12
- getItemOptions,
13
- getRealNextPath,
14
- getPathById,
15
8
  getItemByPath,
16
9
  getItemDepth,
10
+ getItemOptions,
11
+ getPathById,
12
+ getRealNextPath,
17
13
  getSplicePath,
18
- onDragStart,
14
+ moveItem,
19
15
  onDragEnd,
20
- onMouseMove,
16
+ onDragStart,
17
+ onKeyDown,
21
18
  onMouseEnter,
19
+ onMouseMove,
22
20
  onToggleCollapse,
23
- onKeyDown
21
+ tryDecreaseDepth,
22
+ tryIncreaseDepth
24
23
  } from "./actions/index.js";
25
24
  import NestableItem from "./NestableItem.js";
26
25
  const shallowCompare = (instance, nextProps, nextState) => !isEqualWith(instance.props, nextProps) || !isEqualWith(instance.state, nextState);
@@ -213,18 +212,6 @@ Nestable.defaultProps = {
213
212
  onChange: () => {
214
213
  }
215
214
  };
216
- Nestable.propTypes = {
217
- childrenProp: PropTypes.string,
218
- group: PropTypes.string,
219
- items: PropTypes.arrayOf(PropTypes.shape({})),
220
- collapsed: PropTypes.bool,
221
- onChange: PropTypes.func,
222
- isAndItem: PropTypes.bool,
223
- isOrItem: PropTypes.bool,
224
- isDraggableItem: PropTypes.bool,
225
- setDraggableItems: PropTypes.func,
226
- singleRow: PropTypes.bool
227
- };
228
215
  var Nestable_default = Nestable;
229
216
  export {
230
217
  Nestable_default as default
@@ -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-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
- "mappings": "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",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable no-bitwise */\n/* eslint-disable react/no-unused-class-component-methods */\n/* eslint-disable react/jsx-no-bind */\n/* eslint-disable import/no-unresolved */\n/* eslint-disable max-lines */\n/* eslint-disable @typescript-eslint/no-unsafe-argument, max-params */\n/* eslint-disable @typescript-eslint/ban-ts-comment, @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any */\n/* eslint-disable complexity, @typescript-eslint/no-unsafe-call */\n/* eslint-disable no-unused-vars, @typescript-eslint/no-unsafe-member-access */\n/* eslint-disable @typescript-eslint/no-unsafe-return, @typescript-eslint/no-unsafe-assignment */\n/* tslint:disable */\n// @ts-nocheck\n// What's with all the above disables?\n// this is what a legacy 7 year old codebase looks like.\nimport { listWithChildren } from '@elliemae/ds-shared';\nimport cn from 'classnames';\nimport { isEqualWith } from 'lodash-es';\nimport { Component } from 'react';\nimport {\n getItemByPath,\n getItemDepth,\n getItemOptions,\n getPathById,\n getRealNextPath,\n getSplicePath,\n moveItem,\n onDragEnd,\n onDragStart,\n onKeyDown,\n onMouseEnter,\n onMouseMove,\n onToggleCollapse,\n tryDecreaseDepth,\n tryIncreaseDepth,\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\nexport default Nestable;\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -23,6 +23,7 @@ const conditionSql = (condition, value) => {
23
23
  if (condition === GREATER_THAN_OR_EQUAL) return ` >= ${value}`;
24
24
  if (condition === LESS_THAN_OR_EQUAL) return ` <= ${value}`;
25
25
  if (condition === START_WITH) return ` LIKE '${value}%'`;
26
+ if (condition === "NOT_START_WITH") return ` NOT LIKE '${value}%'`;
26
27
  return condition;
27
28
  };
28
29
  const renderFilterSQl = (filter) => {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/components/format/sqlFormat.tsx"],
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 ` = '${value}'`;\n if (condition === NOT_EQUAL) return ` <> '${value}'`;\n if (condition === GREATER_THAN) return ` > ${value}`;\n if (condition === LESS_THAN) return ` < ${value}`;\n if (condition === CONTAINS) return ` LIKE '%${value}%'`;\n if (condition === NOT_CONTAINS) return ` NOT LIKE '%${value}%'`;\n if (condition === BETWEEN) return ` BETWEEN ${value[0]} AND ${value[1]} `;\n if (condition === GREATER_THAN_OR_EQUAL) return ` >= ${value}`;\n if (condition === LESS_THAN_OR_EQUAL) return ` <= ${value}`;\n if (condition === START_WITH) return ` LIKE '${value}%'`;\n return condition;\n};\n\nconst renderFilterSQl = (filter) => {\n const { field, operator, value } = filter.element;\n\n return `${field} ${conditionSql(operator, value) || ''}`;\n};\nexport const sqlFormat = ({ main, mapGroups, items }) => {\n const groupSql = (item, idGroup) => {\n if (idGroup === main) {\n const groupCondition = mapGroups[idGroup].condition === true ? 'AND' : 'OR';\n return ` ( ${filterSql(item, groupCondition)} ) `; // eslint-disable-line\n }\n const groupCondition = item.element.condition === true ? 'AND' : 'OR';\n return ` ( ${filterSql(item.children, groupCondition)} ) `; // eslint-disable-line\n };\n\n const filterSql = (filters, groupCondition) => {\n const filterGroup = filters.map((filter) => {\n if (filter.element.type === 'filter') return ` ${renderFilterSQl(filter)} `;\n return ` ${groupSql(filter) || ''} `;\n });\n return filterGroup.join(groupCondition);\n };\n\n const sql = ` FROM [TABLE_NAME] WHERE ${groupSql(items, main) || ''} `;\n\n return sql;\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,MAAO,QAAO,OAAO,KAAK;AAC5C,MAAI,cAAc,UAAW,QAAO,QAAQ,KAAK;AACjD,MAAI,cAAc,aAAc,QAAO,MAAM,KAAK;AAClD,MAAI,cAAc,UAAW,QAAO,MAAM,KAAK;AAC/C,MAAI,cAAc,SAAU,QAAO,WAAW,KAAK;AACnD,MAAI,cAAc,aAAc,QAAO,eAAe,KAAK;AAC3D,MAAI,cAAc,QAAS,QAAO,YAAY,MAAM,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC;AACtE,MAAI,cAAc,sBAAuB,QAAO,OAAO,KAAK;AAC5D,MAAI,cAAc,mBAAoB,QAAO,OAAO,KAAK;AACzD,MAAI,cAAc,WAAY,QAAO,UAAU,KAAK;AACpD,SAAO;AACT;AAEA,MAAM,kBAAkB,CAAC,WAAW;AAClC,QAAM,EAAE,OAAO,UAAU,MAAM,IAAI,OAAO;AAE1C,SAAO,GAAG,KAAK,IAAI,aAAa,UAAU,KAAK,KAAK,EAAE;AACxD;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,MAAM,UAAU,MAAMA,eAAc,CAAC;AAAA,IAC9C;AACA,UAAM,iBAAiB,KAAK,QAAQ,cAAc,OAAO,QAAQ;AACjE,WAAO,MAAM,UAAU,KAAK,UAAU,cAAc,CAAC;AAAA,EACvD;AAEA,QAAM,YAAY,CAAC,SAAS,mBAAmB;AAC7C,UAAM,cAAc,QAAQ,IAAI,CAAC,WAAW;AAC1C,UAAI,OAAO,QAAQ,SAAS,SAAU,QAAO,IAAI,gBAAgB,MAAM,CAAC;AACxE,aAAO,IAAI,SAAS,MAAM,KAAK,EAAE;AAAA,IACnC,CAAC;AACD,WAAO,YAAY,KAAK,cAAc;AAAA,EACxC;AAEA,QAAM,MAAM,4BAA4B,SAAS,OAAO,IAAI,KAAK,EAAE;AAEnE,SAAO;AACT;",
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 ` = '${value}'`;\n if (condition === NOT_EQUAL) return ` <> '${value}'`;\n if (condition === GREATER_THAN) return ` > ${value}`;\n if (condition === LESS_THAN) return ` < ${value}`;\n if (condition === CONTAINS) return ` LIKE '%${value}%'`;\n if (condition === NOT_CONTAINS) return ` NOT LIKE '%${value}%'`;\n if (condition === BETWEEN) return ` BETWEEN ${value[0]} AND ${value[1]} `;\n if (condition === GREATER_THAN_OR_EQUAL) return ` >= ${value}`;\n if (condition === LESS_THAN_OR_EQUAL) return ` <= ${value}`;\n if (condition === START_WITH) return ` LIKE '${value}%'`;\n if (condition === 'NOT_START_WITH') return ` NOT LIKE '${value}%'`;\n return condition;\n};\n\nconst renderFilterSQl = (filter) => {\n const { field, operator, value } = filter.element;\n\n return `${field} ${conditionSql(operator, value) || ''}`;\n};\nexport const sqlFormat = ({ main, mapGroups, items }) => {\n const groupSql = (item, idGroup) => {\n if (idGroup === main) {\n const groupCondition = mapGroups[idGroup].condition === true ? 'AND' : 'OR';\n return ` ( ${filterSql(item, groupCondition)} ) `; // eslint-disable-line\n }\n const groupCondition = item.element.condition === true ? 'AND' : 'OR';\n return ` ( ${filterSql(item.children, groupCondition)} ) `; // eslint-disable-line\n };\n\n const filterSql = (filters, groupCondition) => {\n const filterGroup = filters.map((filter) => {\n if (filter.element.type === 'filter') return ` ${renderFilterSQl(filter)} `;\n return ` ${groupSql(filter) || ''} `;\n });\n return filterGroup.join(groupCondition);\n };\n\n const sql = ` FROM [TABLE_NAME] WHERE ${groupSql(items, main) || ''} `;\n\n return sql;\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,MAAO,QAAO,OAAO,KAAK;AAC5C,MAAI,cAAc,UAAW,QAAO,QAAQ,KAAK;AACjD,MAAI,cAAc,aAAc,QAAO,MAAM,KAAK;AAClD,MAAI,cAAc,UAAW,QAAO,MAAM,KAAK;AAC/C,MAAI,cAAc,SAAU,QAAO,WAAW,KAAK;AACnD,MAAI,cAAc,aAAc,QAAO,eAAe,KAAK;AAC3D,MAAI,cAAc,QAAS,QAAO,YAAY,MAAM,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC;AACtE,MAAI,cAAc,sBAAuB,QAAO,OAAO,KAAK;AAC5D,MAAI,cAAc,mBAAoB,QAAO,OAAO,KAAK;AACzD,MAAI,cAAc,WAAY,QAAO,UAAU,KAAK;AACpD,MAAI,cAAc,iBAAkB,QAAO,cAAc,KAAK;AAC9D,SAAO;AACT;AAEA,MAAM,kBAAkB,CAAC,WAAW;AAClC,QAAM,EAAE,OAAO,UAAU,MAAM,IAAI,OAAO;AAE1C,SAAO,GAAG,KAAK,IAAI,aAAa,UAAU,KAAK,KAAK,EAAE;AACxD;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,MAAM,UAAU,MAAMA,eAAc,CAAC;AAAA,IAC9C;AACA,UAAM,iBAAiB,KAAK,QAAQ,cAAc,OAAO,QAAQ;AACjE,WAAO,MAAM,UAAU,KAAK,UAAU,cAAc,CAAC;AAAA,EACvD;AAEA,QAAM,YAAY,CAAC,SAAS,mBAAmB;AAC7C,UAAM,cAAc,QAAQ,IAAI,CAAC,WAAW;AAC1C,UAAI,OAAO,QAAQ,SAAS,SAAU,QAAO,IAAI,gBAAgB,MAAM,CAAC;AACxE,aAAO,IAAI,SAAS,MAAM,KAAK,EAAE;AAAA,IACnC,CAAC;AACD,WAAO,YAAY,KAAK,cAAc;AAAA,EACxC;AAEA,QAAM,MAAM,4BAA4B,SAAS,OAAO,IAAI,KAAK,EAAE;AAEnE,SAAO;AACT;",
6
6
  "names": ["groupCondition"]
7
7
  }
@@ -25,6 +25,7 @@ const conditionSql = (condition, value) => {
25
25
  if (condition === GREATER_THAN_OR_EQUAL) return ` >= ${value}`;
26
26
  if (condition === LESS_THAN_OR_EQUAL) return ` <= ${value}`;
27
27
  if (condition === START_WITH) return ` LIKE '${value}%'`;
28
+ if (condition === "NOT_START_WITH") return ` NOT LIKE '${value}%'`;
28
29
  return condition;
29
30
  };
30
31
  const renderFilterSQl = (filter) => {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/components/format/sqlSafeFormat.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\nimport { QB_OPERATOR_TYPES } from '../helpers/types.js';\n\n// eslint-disable-next-line no-useless-escape\nexport const specialChar = /[ !@#$%^&*()_+\\-=\\[\\]{};':\"\\\\|,.<>\\/?]/;\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 // eslint-disable-next-line no-restricted-globals\n const valueDisplay = isNaN(value) ? `'${value}'` : value;\n\n if (condition === EQUAL) return ` = ${valueDisplay}`;\n if (condition === NOT_EQUAL) return ` <> ${valueDisplay}`;\n if (condition === GREATER_THAN) return ` > ${valueDisplay}`;\n if (condition === LESS_THAN) return ` < ${valueDisplay}`;\n if (condition === CONTAINS) return ` LIKE '%${value}%'`;\n if (condition === NOT_CONTAINS) return ` NOT LIKE '%${value}%'`;\n if (condition === BETWEEN) return ` BETWEEN ${value[0]} AND ${value[1]} `;\n if (condition === GREATER_THAN_OR_EQUAL) return ` >= ${value}`;\n if (condition === LESS_THAN_OR_EQUAL) return ` <= ${value}`;\n if (condition === START_WITH) return ` LIKE '${value}%'`;\n return condition;\n};\n\nconst renderFilterSQl = (filter) => {\n const { field, operator, value } = filter.element;\n // eslint-disable-next-line no-restricted-globals\n const fieldDisplay =\n // eslint-disable-next-line no-restricted-globals\n /[.]/.test(field) || !isNaN(field) ? `\\\\\"${field}\\\\\"` : field;\n return `${fieldDisplay} ${conditionSql(operator, value) || ''}`;\n};\nexport const sqlSafeFormat = ({ main, mapGroups, items }) => {\n const groupSql = (item, idGroup) => {\n if (idGroup === main) {\n const groupCondition = mapGroups[idGroup].condition === true ? 'AND' : 'OR';\n return ` ( ${filterSql(item, groupCondition)} ) `; // eslint-disable-line\n }\n const groupCondition = item.element.condition === true ? 'AND' : 'OR';\n return ` ( ${filterSql(item.children, groupCondition)} ) `; // eslint-disable-line\n };\n\n const filterSql = (filters, groupCondition) => {\n const filterGroup = filters.map((filter) => {\n if (filter.element.type === 'filter') return ` ${renderFilterSQl(filter)} `;\n return ` ${groupSql(filter) || ''} `;\n });\n return filterGroup.join(groupCondition);\n };\n\n const sql = ` FROM [TABLE_NAME] WHERE ${groupSql(items, main) || ''} `;\n\n return sql;\n};\n"],
5
- "mappings": "AAAA,YAAY,WAAW;ACCvB,SAAS,yBAAyB;AAG3B,MAAM,cAAc;AAE3B,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,QAAM,eAAe,MAAM,KAAK,IAAI,IAAI,KAAK,MAAM;AAEnD,MAAI,cAAc,MAAO,QAAO,MAAM,YAAY;AAClD,MAAI,cAAc,UAAW,QAAO,OAAO,YAAY;AACvD,MAAI,cAAc,aAAc,QAAO,MAAM,YAAY;AACzD,MAAI,cAAc,UAAW,QAAO,MAAM,YAAY;AACtD,MAAI,cAAc,SAAU,QAAO,WAAW,KAAK;AACnD,MAAI,cAAc,aAAc,QAAO,eAAe,KAAK;AAC3D,MAAI,cAAc,QAAS,QAAO,YAAY,MAAM,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC;AACtE,MAAI,cAAc,sBAAuB,QAAO,OAAO,KAAK;AAC5D,MAAI,cAAc,mBAAoB,QAAO,OAAO,KAAK;AACzD,MAAI,cAAc,WAAY,QAAO,UAAU,KAAK;AACpD,SAAO;AACT;AAEA,MAAM,kBAAkB,CAAC,WAAW;AAClC,QAAM,EAAE,OAAO,UAAU,MAAM,IAAI,OAAO;AAE1C,QAAM;AAAA;AAAA,IAEJ,MAAM,KAAK,KAAK,KAAK,CAAC,MAAM,KAAK,IAAI,MAAM,KAAK,QAAQ;AAAA;AAC1D,SAAO,GAAG,YAAY,IAAI,aAAa,UAAU,KAAK,KAAK,EAAE;AAC/D;AACO,MAAM,gBAAgB,CAAC,EAAE,MAAM,WAAW,MAAM,MAAM;AAC3D,QAAM,WAAW,CAAC,MAAM,YAAY;AAClC,QAAI,YAAY,MAAM;AACpB,YAAMA,kBAAiB,UAAU,OAAO,EAAE,cAAc,OAAO,QAAQ;AACvE,aAAO,MAAM,UAAU,MAAMA,eAAc,CAAC;AAAA,IAC9C;AACA,UAAM,iBAAiB,KAAK,QAAQ,cAAc,OAAO,QAAQ;AACjE,WAAO,MAAM,UAAU,KAAK,UAAU,cAAc,CAAC;AAAA,EACvD;AAEA,QAAM,YAAY,CAAC,SAAS,mBAAmB;AAC7C,UAAM,cAAc,QAAQ,IAAI,CAAC,WAAW;AAC1C,UAAI,OAAO,QAAQ,SAAS,SAAU,QAAO,IAAI,gBAAgB,MAAM,CAAC;AACxE,aAAO,IAAI,SAAS,MAAM,KAAK,EAAE;AAAA,IACnC,CAAC;AACD,WAAO,YAAY,KAAK,cAAc;AAAA,EACxC;AAEA,QAAM,MAAM,4BAA4B,SAAS,OAAO,IAAI,KAAK,EAAE;AAEnE,SAAO;AACT;",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\nimport { QB_OPERATOR_TYPES } from '../helpers/types.js';\n\n// eslint-disable-next-line no-useless-escape\nexport const specialChar = /[ !@#$%^&*()_+\\-=\\[\\]{};':\"\\\\|,.<>\\/?]/;\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 // eslint-disable-next-line no-restricted-globals\n const valueDisplay = isNaN(value) ? `'${value}'` : value;\n\n if (condition === EQUAL) return ` = ${valueDisplay}`;\n if (condition === NOT_EQUAL) return ` <> ${valueDisplay}`;\n if (condition === GREATER_THAN) return ` > ${valueDisplay}`;\n if (condition === LESS_THAN) return ` < ${valueDisplay}`;\n if (condition === CONTAINS) return ` LIKE '%${value}%'`;\n if (condition === NOT_CONTAINS) return ` NOT LIKE '%${value}%'`;\n if (condition === BETWEEN) return ` BETWEEN ${value[0]} AND ${value[1]} `;\n if (condition === GREATER_THAN_OR_EQUAL) return ` >= ${value}`;\n if (condition === LESS_THAN_OR_EQUAL) return ` <= ${value}`;\n if (condition === START_WITH) return ` LIKE '${value}%'`;\n if (condition === 'NOT_START_WITH') return ` NOT LIKE '${value}%'`;\n return condition;\n};\n\nconst renderFilterSQl = (filter) => {\n const { field, operator, value } = filter.element;\n // eslint-disable-next-line no-restricted-globals\n const fieldDisplay =\n // eslint-disable-next-line no-restricted-globals\n /[.]/.test(field) || !isNaN(field) ? `\\\\\"${field}\\\\\"` : field;\n return `${fieldDisplay} ${conditionSql(operator, value) || ''}`;\n};\nexport const sqlSafeFormat = ({ main, mapGroups, items }) => {\n const groupSql = (item, idGroup) => {\n if (idGroup === main) {\n const groupCondition = mapGroups[idGroup].condition === true ? 'AND' : 'OR';\n return ` ( ${filterSql(item, groupCondition)} ) `; // eslint-disable-line\n }\n const groupCondition = item.element.condition === true ? 'AND' : 'OR';\n return ` ( ${filterSql(item.children, groupCondition)} ) `; // eslint-disable-line\n };\n\n const filterSql = (filters, groupCondition) => {\n const filterGroup = filters.map((filter) => {\n if (filter.element.type === 'filter') return ` ${renderFilterSQl(filter)} `;\n return ` ${groupSql(filter) || ''} `;\n });\n return filterGroup.join(groupCondition);\n };\n\n const sql = ` FROM [TABLE_NAME] WHERE ${groupSql(items, main) || ''} `;\n\n return sql;\n};\n"],
5
+ "mappings": "AAAA,YAAY,WAAW;ACCvB,SAAS,yBAAyB;AAG3B,MAAM,cAAc;AAE3B,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,QAAM,eAAe,MAAM,KAAK,IAAI,IAAI,KAAK,MAAM;AAEnD,MAAI,cAAc,MAAO,QAAO,MAAM,YAAY;AAClD,MAAI,cAAc,UAAW,QAAO,OAAO,YAAY;AACvD,MAAI,cAAc,aAAc,QAAO,MAAM,YAAY;AACzD,MAAI,cAAc,UAAW,QAAO,MAAM,YAAY;AACtD,MAAI,cAAc,SAAU,QAAO,WAAW,KAAK;AACnD,MAAI,cAAc,aAAc,QAAO,eAAe,KAAK;AAC3D,MAAI,cAAc,QAAS,QAAO,YAAY,MAAM,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC;AACtE,MAAI,cAAc,sBAAuB,QAAO,OAAO,KAAK;AAC5D,MAAI,cAAc,mBAAoB,QAAO,OAAO,KAAK;AACzD,MAAI,cAAc,WAAY,QAAO,UAAU,KAAK;AACpD,MAAI,cAAc,iBAAkB,QAAO,cAAc,KAAK;AAC9D,SAAO;AACT;AAEA,MAAM,kBAAkB,CAAC,WAAW;AAClC,QAAM,EAAE,OAAO,UAAU,MAAM,IAAI,OAAO;AAE1C,QAAM;AAAA;AAAA,IAEJ,MAAM,KAAK,KAAK,KAAK,CAAC,MAAM,KAAK,IAAI,MAAM,KAAK,QAAQ;AAAA;AAC1D,SAAO,GAAG,YAAY,IAAI,aAAa,UAAU,KAAK,KAAK,EAAE;AAC/D;AACO,MAAM,gBAAgB,CAAC,EAAE,MAAM,WAAW,MAAM,MAAM;AAC3D,QAAM,WAAW,CAAC,MAAM,YAAY;AAClC,QAAI,YAAY,MAAM;AACpB,YAAMA,kBAAiB,UAAU,OAAO,EAAE,cAAc,OAAO,QAAQ;AACvE,aAAO,MAAM,UAAU,MAAMA,eAAc,CAAC;AAAA,IAC9C;AACA,UAAM,iBAAiB,KAAK,QAAQ,cAAc,OAAO,QAAQ;AACjE,WAAO,MAAM,UAAU,KAAK,UAAU,cAAc,CAAC;AAAA,EACvD;AAEA,QAAM,YAAY,CAAC,SAAS,mBAAmB;AAC7C,UAAM,cAAc,QAAQ,IAAI,CAAC,WAAW;AAC1C,UAAI,OAAO,QAAQ,SAAS,SAAU,QAAO,IAAI,gBAAgB,MAAM,CAAC;AACxE,aAAO,IAAI,SAAS,MAAM,KAAK,EAAE;AAAA,IACnC,CAAC;AACD,WAAO,YAAY,KAAK,cAAc;AAAA,EACxC;AAEA,QAAM,MAAM,4BAA4B,SAAS,OAAO,IAAI,KAAK,EAAE;AAEnE,SAAO;AACT;",
6
6
  "names": ["groupCondition"]
7
7
  }
@@ -24,6 +24,7 @@ const conditionSql = (condition, value) => {
24
24
  if (condition === GREATER_THAN_OR_EQUAL) return `<condition>GREATER_THAN_OR_EQUAL</condition><value>${value}</value>`;
25
25
  if (condition === LESS_THAN_OR_EQUAL) return `<condition>LESS_THAN_OR_EQUAL</condition><value>${value}</value>`;
26
26
  if (condition === START_WITH) return `<condition>GREATER_THAN</condition><value>${value}</value>`;
27
+ if (condition === "NOT_START_WITH") return `<condition>NOT_STARTS_WITH</condition><value>${value}</value>`;
27
28
  return condition;
28
29
  };
29
30
  const renderFilterSQl = (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.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,MAAO,QAAO,sCAAsC,KAAK;AAC3E,MAAI,cAAc,UAAW,QAAO,0CAA0C,KAAK;AACnF,MAAI,cAAc,aAAc,QAAO,6CAA6C,KAAK;AACzF,MAAI,cAAc,UAAW,QAAO,0CAA0C,KAAK;AACnF,MAAI,cAAc,SAAU,QAAO,qCAAqC,KAAK;AAC7E,MAAI,cAAc,aAAc,QAAO,yCAAyC,KAAK;AACrF,MAAI,cAAc;AAChB,WAAO,+CAA+C,MAAM,CAAC,CAAC,cAAc,MAAM,CAAC,CAAC;AACtF,MAAI,cAAc,sBAAuB,QAAO,sDAAsD,KAAK;AAC3G,MAAI,cAAc,mBAAoB,QAAO,mDAAmD,KAAK;AACrG,MAAI,cAAc,WAAY,QAAO,6CAA6C,KAAK;AAEvF,SAAO;AACT;AAEA,MAAM,kBAAkB,CAAC,WAAW;AAClC,QAAM,EAAE,OAAO,UAAU,MAAM,IAAI,OAAO;AAE1C,SAAO,kBAAkB,KAAK,WAAW,aAAa,UAAU,KAAK,KAAK,EAAE;AAC9E;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,eAAc,KAAK,UAAU,MAAMA,eAAc,CAAC;AAAA,IAC5E;AACA,UAAM,iBAAiB,KAAK,QAAQ,cAAc,OAAO,QAAQ;AACjE,WAAO,iBAAiB,cAAc,KAAK,UAAU,KAAK,UAAU,cAAc,CAAC;AAAA,EACrF;AACA,QAAM,YAAY,CAAC,YAAY;AAC7B,UAAM,cAAc,QAAQ,IAAI,CAAC,WAAW;AAC1C,UAAI,OAAO,QAAQ,SAAS,SAAU,QAAO,GAAG,gBAAgB,MAAM,KAAK,EAAE;AAC7E,aAAO,IAAI,SAAS,MAAM,CAAC;AAAA,IAC7B,CAAC;AACD,WAAO,YAAY,KAAK,EAAE;AAAA,EAC5B;AAEA,QAAM,MAAM,eAAe,SAAS,OAAO,IAAI,KAAK,EAAE;AAEtD,SAAO;AACT;",
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 if (condition === 'NOT_START_WITH') return `<condition>NOT_STARTS_WITH</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,MAAO,QAAO,sCAAsC,KAAK;AAC3E,MAAI,cAAc,UAAW,QAAO,0CAA0C,KAAK;AACnF,MAAI,cAAc,aAAc,QAAO,6CAA6C,KAAK;AACzF,MAAI,cAAc,UAAW,QAAO,0CAA0C,KAAK;AACnF,MAAI,cAAc,SAAU,QAAO,qCAAqC,KAAK;AAC7E,MAAI,cAAc,aAAc,QAAO,yCAAyC,KAAK;AACrF,MAAI,cAAc;AAChB,WAAO,+CAA+C,MAAM,CAAC,CAAC,cAAc,MAAM,CAAC,CAAC;AACtF,MAAI,cAAc,sBAAuB,QAAO,sDAAsD,KAAK;AAC3G,MAAI,cAAc,mBAAoB,QAAO,mDAAmD,KAAK;AACrG,MAAI,cAAc,WAAY,QAAO,6CAA6C,KAAK;AACvF,MAAI,cAAc,iBAAkB,QAAO,gDAAgD,KAAK;AAEhG,SAAO;AACT;AAEA,MAAM,kBAAkB,CAAC,WAAW;AAClC,QAAM,EAAE,OAAO,UAAU,MAAM,IAAI,OAAO;AAE1C,SAAO,kBAAkB,KAAK,WAAW,aAAa,UAAU,KAAK,KAAK,EAAE;AAC9E;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,eAAc,KAAK,UAAU,MAAMA,eAAc,CAAC;AAAA,IAC5E;AACA,UAAM,iBAAiB,KAAK,QAAQ,cAAc,OAAO,QAAQ;AACjE,WAAO,iBAAiB,cAAc,KAAK,UAAU,KAAK,UAAU,cAAc,CAAC;AAAA,EACrF;AACA,QAAM,YAAY,CAAC,YAAY;AAC7B,UAAM,cAAc,QAAQ,IAAI,CAAC,WAAW;AAC1C,UAAI,OAAO,QAAQ,SAAS,SAAU,QAAO,GAAG,gBAAgB,MAAM,KAAK,EAAE;AAC7E,aAAO,IAAI,SAAS,MAAM,CAAC;AAAA,IAC7B,CAAC;AACD,WAAO,YAAY,KAAK,EAAE;AAAA,EAC5B;AAEA,QAAM,MAAM,eAAe,SAAS,OAAO,IAAI,KAAK,EAAE;AAEtD,SAAO;AACT;",
6
6
  "names": ["groupCondition"]
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elliemae/ds-query-builder",
3
- "version": "3.52.1",
3
+ "version": "3.53.0-alpha.2",
4
4
  "license": "MIT",
5
5
  "description": "ICE MT - Dimsum - Query Builder",
6
6
  "files": [
@@ -37,25 +37,24 @@
37
37
  },
38
38
  "dependencies": {
39
39
  "classnames": "~2.3.2",
40
- "prop-types": "~15.8.1",
41
40
  "react-addons-update": "~15.6.3",
42
- "@elliemae/ds-accordion": "3.52.1",
43
- "@elliemae/ds-button": "3.52.1",
44
- "@elliemae/ds-form": "3.52.1",
45
- "@elliemae/ds-grid": "3.52.1",
46
- "@elliemae/ds-icon": "3.52.1",
47
- "@elliemae/ds-classnames": "3.52.1",
48
- "@elliemae/ds-popper": "3.52.1",
49
- "@elliemae/ds-icons": "3.52.1",
50
- "@elliemae/ds-tooltip": "3.52.1",
51
- "@elliemae/ds-props-helpers": "3.52.1",
52
- "@elliemae/ds-shared": "3.52.1"
41
+ "@elliemae/ds-accordion": "3.53.0-alpha.2",
42
+ "@elliemae/ds-button": "3.53.0-alpha.2",
43
+ "@elliemae/ds-form": "3.53.0-alpha.2",
44
+ "@elliemae/ds-classnames": "3.53.0-alpha.2",
45
+ "@elliemae/ds-icon": "3.53.0-alpha.2",
46
+ "@elliemae/ds-grid": "3.53.0-alpha.2",
47
+ "@elliemae/ds-icons": "3.53.0-alpha.2",
48
+ "@elliemae/ds-tooltip": "3.53.0-alpha.2",
49
+ "@elliemae/ds-popper": "3.53.0-alpha.2",
50
+ "@elliemae/ds-shared": "3.53.0-alpha.2",
51
+ "@elliemae/ds-props-helpers": "3.53.0-alpha.2"
53
52
  },
54
53
  "devDependencies": {
55
- "@elliemae/pui-cli": "9.0.0-next.63",
54
+ "@elliemae/pui-cli": "9.0.0-next.65",
56
55
  "jest": "~29.7.0",
57
56
  "styled-components": "~5.3.9",
58
- "@elliemae/ds-monorepo-devops": "3.52.1"
57
+ "@elliemae/ds-monorepo-devops": "3.53.0-alpha.2"
59
58
  },
60
59
  "peerDependencies": {
61
60
  "lodash-es": "^4.17.21",