@elliemae/ds-query-builder 2.3.0-alpha.9 → 2.3.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (242) hide show
  1. package/cjs/DSQueryBuilder.js +98 -0
  2. package/cjs/components/AndOrController/AndOrController.js +222 -0
  3. package/cjs/components/ConditionController/ConditionController.js +100 -0
  4. package/cjs/components/DisplayOutput/DisplayOutput.js +93 -0
  5. package/cjs/components/DragContainerController/DragContainerController.js +45 -0
  6. package/cjs/components/DragControllerRow/DragControllerRow.js +47 -0
  7. package/cjs/components/FieldControllerRow/FieldControllerRow.js +33 -0
  8. package/cjs/components/Nestable/Nestable.js +320 -0
  9. package/cjs/components/Nestable/NestableItem.js +111 -0
  10. package/cjs/components/Nestable/actions/events.js +166 -0
  11. package/cjs/components/Nestable/actions/getItemOptions.js +28 -0
  12. package/cjs/components/Nestable/actions/getPaths.js +124 -0
  13. package/cjs/components/Nestable/actions/index.js +28 -0
  14. package/cjs/components/Nestable/actions/moveItem.js +54 -0
  15. package/cjs/components/Nestable/actions/paths.js +126 -0
  16. package/cjs/components/Nestable/actions/tryDecreaseDepth.js +35 -0
  17. package/cjs/components/Nestable/actions/tryIncreaseDepth.js +38 -0
  18. package/cjs/components/Nestable/index.js +7 -0
  19. package/cjs/components/QueryBuilderContext/QueryBuilderContext.js +13 -0
  20. package/cjs/components/QueryBuilderImpl.js +309 -0
  21. package/cjs/components/QueryBuilderItem/QueryBuilderItem.js +90 -0
  22. package/cjs/components/QueryBuilderRow/QueryBuilderRow.js +276 -0
  23. package/cjs/components/ToolBarAnimation/ToolBarAnimation.js +29 -0
  24. package/cjs/components/format/format.js +33 -0
  25. package/cjs/components/format/sqlFormat.js +73 -0
  26. package/cjs/components/format/sqlSafeFormat.js +81 -0
  27. package/cjs/components/format/xmlFormat.js +73 -0
  28. package/cjs/components/helpers/actions.js +277 -0
  29. package/cjs/components/helpers/constants.js +11 -0
  30. package/cjs/components/helpers/dependencies.js +84 -0
  31. package/cjs/components/helpers/selectors.js +101 -0
  32. package/cjs/components/helpers/store.js +177 -0
  33. package/cjs/components/helpers/types.js +64 -0
  34. package/cjs/index.js +29 -0
  35. package/cjs/propTypes.js +97 -0
  36. package/esm/DSQueryBuilder.js +74 -0
  37. package/esm/components/AndOrController/AndOrController.js +213 -0
  38. package/esm/components/ConditionController/ConditionController.js +92 -0
  39. package/esm/components/DisplayOutput/DisplayOutput.js +87 -0
  40. package/esm/components/DragContainerController/DragContainerController.js +39 -0
  41. package/esm/components/DragControllerRow/DragControllerRow.js +39 -0
  42. package/esm/components/FieldControllerRow/FieldControllerRow.js +27 -0
  43. package/esm/components/Nestable/Nestable.js +312 -0
  44. package/esm/components/Nestable/NestableItem.js +103 -0
  45. package/esm/components/Nestable/actions/events.js +153 -0
  46. package/{dist/esm → esm}/components/Nestable/actions/getItemOptions.js +11 -7
  47. package/{dist/esm → esm}/components/Nestable/actions/getPaths.js +43 -17
  48. package/esm/components/Nestable/actions/index.js +6 -0
  49. package/esm/components/Nestable/actions/moveItem.js +45 -0
  50. package/{dist/esm → esm}/components/Nestable/actions/paths.js +47 -19
  51. package/esm/components/Nestable/actions/tryDecreaseDepth.js +31 -0
  52. package/{dist/esm → esm}/components/Nestable/actions/tryIncreaseDepth.js +22 -10
  53. package/esm/components/Nestable/index.js +2 -0
  54. package/esm/components/QueryBuilderContext/QueryBuilderContext.js +5 -0
  55. package/esm/components/QueryBuilderImpl.js +301 -0
  56. package/esm/components/QueryBuilderItem/QueryBuilderItem.js +83 -0
  57. package/esm/components/QueryBuilderRow/QueryBuilderRow.js +268 -0
  58. package/esm/components/ToolBarAnimation/ToolBarAnimation.js +20 -0
  59. package/esm/components/format/format.js +31 -0
  60. package/esm/components/format/sqlFormat.js +69 -0
  61. package/esm/components/format/sqlSafeFormat.js +76 -0
  62. package/esm/components/format/xmlFormat.js +69 -0
  63. package/esm/components/helpers/actions.js +254 -0
  64. package/esm/components/helpers/constants.js +5 -0
  65. package/esm/components/helpers/dependencies.js +60 -0
  66. package/esm/components/helpers/selectors.js +93 -0
  67. package/esm/components/helpers/store.js +171 -0
  68. package/esm/components/helpers/types.js +52 -0
  69. package/esm/index.js +4 -0
  70. package/esm/propTypes.js +93 -0
  71. package/package.json +95 -97
  72. package/{dist/types → types}/DSQueryBuilder.d.ts +0 -0
  73. package/{dist/types → types}/components/AndOrController/AndOrController.d.ts +0 -0
  74. package/{dist/types → types}/components/ConditionController/ConditionController.d.ts +0 -0
  75. package/{dist/types → types}/components/DisplayOutput/DisplayOutput.d.ts +0 -0
  76. package/{dist/types → types}/components/DragContainerController/DragContainerController.d.ts +0 -0
  77. package/{dist/types → types}/components/DragControllerRow/DragControllerRow.d.ts +0 -0
  78. package/{dist/types → types}/components/FieldControllerRow/FieldControllerRow.d.ts +0 -0
  79. package/{dist/types → types}/components/Nestable/Nestable.d.ts +0 -0
  80. package/{dist/types → types}/components/Nestable/NestableItem.d.ts +0 -0
  81. package/{dist/types → types}/components/Nestable/actions/events.d.ts +0 -0
  82. package/{dist/types → types}/components/Nestable/actions/getItemOptions.d.ts +0 -0
  83. package/{dist/types → types}/components/Nestable/actions/getPaths.d.ts +0 -0
  84. package/{dist/types → types}/components/Nestable/actions/index.d.ts +0 -0
  85. package/{dist/types → types}/components/Nestable/actions/moveItem.d.ts +0 -0
  86. package/{dist/types → types}/components/Nestable/actions/paths.d.ts +0 -0
  87. package/{dist/types → types}/components/Nestable/actions/tryDecreaseDepth.d.ts +0 -0
  88. package/{dist/types → types}/components/Nestable/actions/tryIncreaseDepth.d.ts +0 -0
  89. package/{dist/types → types}/components/Nestable/index.d.ts +0 -0
  90. package/{dist/types → types}/components/QueryBuilderContext/QueryBuilderContext.d.ts +0 -0
  91. package/{dist/types → types}/components/QueryBuilderImpl.d.ts +0 -0
  92. package/{dist/types → types}/components/QueryBuilderItem/QueryBuilderItem.d.ts +0 -0
  93. package/{dist/types → types}/components/QueryBuilderRow/QueryBuilderRow.d.ts +0 -0
  94. package/{dist/types → types}/components/ToolBarAnimation/ToolBarAnimation.d.ts +0 -0
  95. package/{dist/types → types}/components/format/format.d.ts +0 -0
  96. package/{dist/types → types}/components/format/sqlFormat.d.ts +0 -0
  97. package/{dist/types → types}/components/format/sqlSafeFormat.d.ts +0 -0
  98. package/{dist/types → types}/components/format/xmlFormat.d.ts +0 -0
  99. package/{dist/types → types}/components/helpers/actions.d.ts +0 -0
  100. package/{dist/types → types}/components/helpers/constants.d.ts +0 -0
  101. package/{dist/types → types}/components/helpers/dependencies.d.ts +0 -0
  102. package/{dist/types → types}/components/helpers/selectors.d.ts +0 -0
  103. package/{dist/types → types}/components/helpers/store.d.ts +0 -0
  104. package/{dist/types → types}/components/helpers/types.d.ts +0 -0
  105. package/{dist/types → types}/index.d.ts +0 -0
  106. package/{dist/types → types}/propTypes.d.ts +0 -0
  107. package/dist/cjs/DSQueryBuilder.js +0 -118
  108. package/dist/cjs/DSQueryBuilder.js.map +0 -7
  109. package/dist/cjs/components/AndOrController/AndOrController.js +0 -208
  110. package/dist/cjs/components/AndOrController/AndOrController.js.map +0 -7
  111. package/dist/cjs/components/ConditionController/ConditionController.js +0 -116
  112. package/dist/cjs/components/ConditionController/ConditionController.js.map +0 -7
  113. package/dist/cjs/components/DisplayOutput/DisplayOutput.js +0 -92
  114. package/dist/cjs/components/DisplayOutput/DisplayOutput.js.map +0 -7
  115. package/dist/cjs/components/DragContainerController/DragContainerController.js +0 -65
  116. package/dist/cjs/components/DragContainerController/DragContainerController.js.map +0 -7
  117. package/dist/cjs/components/DragControllerRow/DragControllerRow.js +0 -51
  118. package/dist/cjs/components/DragControllerRow/DragControllerRow.js.map +0 -7
  119. package/dist/cjs/components/FieldControllerRow/FieldControllerRow.js +0 -55
  120. package/dist/cjs/components/FieldControllerRow/FieldControllerRow.js.map +0 -7
  121. package/dist/cjs/components/Nestable/Nestable.js +0 -254
  122. package/dist/cjs/components/Nestable/Nestable.js.map +0 -7
  123. package/dist/cjs/components/Nestable/NestableItem.js +0 -119
  124. package/dist/cjs/components/Nestable/NestableItem.js.map +0 -7
  125. package/dist/cjs/components/Nestable/actions/events.js +0 -143
  126. package/dist/cjs/components/Nestable/actions/events.js.map +0 -7
  127. package/dist/cjs/components/Nestable/actions/getItemOptions.js +0 -49
  128. package/dist/cjs/components/Nestable/actions/getItemOptions.js.map +0 -7
  129. package/dist/cjs/components/Nestable/actions/getPaths.js +0 -119
  130. package/dist/cjs/components/Nestable/actions/getPaths.js.map +0 -7
  131. package/dist/cjs/components/Nestable/actions/index.js +0 -42
  132. package/dist/cjs/components/Nestable/actions/index.js.map +0 -7
  133. package/dist/cjs/components/Nestable/actions/moveItem.js +0 -56
  134. package/dist/cjs/components/Nestable/actions/moveItem.js.map +0 -7
  135. package/dist/cjs/components/Nestable/actions/paths.js +0 -119
  136. package/dist/cjs/components/Nestable/actions/paths.js.map +0 -7
  137. package/dist/cjs/components/Nestable/actions/tryDecreaseDepth.js +0 -51
  138. package/dist/cjs/components/Nestable/actions/tryDecreaseDepth.js.map +0 -7
  139. package/dist/cjs/components/Nestable/actions/tryIncreaseDepth.js +0 -51
  140. package/dist/cjs/components/Nestable/actions/tryIncreaseDepth.js.map +0 -7
  141. package/dist/cjs/components/Nestable/index.js +0 -36
  142. package/dist/cjs/components/Nestable/index.js.map +0 -7
  143. package/dist/cjs/components/QueryBuilderContext/QueryBuilderContext.js +0 -36
  144. package/dist/cjs/components/QueryBuilderContext/QueryBuilderContext.js.map +0 -7
  145. package/dist/cjs/components/QueryBuilderImpl.js +0 -225
  146. package/dist/cjs/components/QueryBuilderImpl.js.map +0 -7
  147. package/dist/cjs/components/QueryBuilderItem/QueryBuilderItem.js +0 -92
  148. package/dist/cjs/components/QueryBuilderItem/QueryBuilderItem.js.map +0 -7
  149. package/dist/cjs/components/QueryBuilderRow/QueryBuilderRow.js +0 -219
  150. package/dist/cjs/components/QueryBuilderRow/QueryBuilderRow.js.map +0 -7
  151. package/dist/cjs/components/ToolBarAnimation/ToolBarAnimation.js +0 -42
  152. package/dist/cjs/components/ToolBarAnimation/ToolBarAnimation.js.map +0 -7
  153. package/dist/cjs/components/format/format.js +0 -59
  154. package/dist/cjs/components/format/format.js.map +0 -7
  155. package/dist/cjs/components/format/sqlFormat.js +0 -94
  156. package/dist/cjs/components/format/sqlFormat.js.map +0 -7
  157. package/dist/cjs/components/format/sqlSafeFormat.js +0 -98
  158. package/dist/cjs/components/format/sqlSafeFormat.js.map +0 -7
  159. package/dist/cjs/components/format/xmlFormat.js +0 -94
  160. package/dist/cjs/components/format/xmlFormat.js.map +0 -7
  161. package/dist/cjs/components/helpers/actions.js +0 -242
  162. package/dist/cjs/components/helpers/actions.js.map +0 -7
  163. package/dist/cjs/components/helpers/constants.js +0 -39
  164. package/dist/cjs/components/helpers/constants.js.map +0 -7
  165. package/dist/cjs/components/helpers/dependencies.js +0 -69
  166. package/dist/cjs/components/helpers/dependencies.js.map +0 -7
  167. package/dist/cjs/components/helpers/selectors.js +0 -161
  168. package/dist/cjs/components/helpers/selectors.js.map +0 -7
  169. package/dist/cjs/components/helpers/store.js +0 -159
  170. package/dist/cjs/components/helpers/store.js.map +0 -7
  171. package/dist/cjs/components/helpers/types.js +0 -92
  172. package/dist/cjs/components/helpers/types.js.map +0 -7
  173. package/dist/cjs/index.js +0 -36
  174. package/dist/cjs/index.js.map +0 -7
  175. package/dist/cjs/propTypes.js +0 -105
  176. package/dist/cjs/propTypes.js.map +0 -7
  177. package/dist/esm/DSQueryBuilder.js +0 -105
  178. package/dist/esm/DSQueryBuilder.js.map +0 -7
  179. package/dist/esm/components/AndOrController/AndOrController.js +0 -179
  180. package/dist/esm/components/AndOrController/AndOrController.js.map +0 -7
  181. package/dist/esm/components/ConditionController/ConditionController.js +0 -87
  182. package/dist/esm/components/ConditionController/ConditionController.js.map +0 -7
  183. package/dist/esm/components/DisplayOutput/DisplayOutput.js +0 -63
  184. package/dist/esm/components/DisplayOutput/DisplayOutput.js.map +0 -7
  185. package/dist/esm/components/DragContainerController/DragContainerController.js +0 -36
  186. package/dist/esm/components/DragContainerController/DragContainerController.js.map +0 -7
  187. package/dist/esm/components/DragControllerRow/DragControllerRow.js +0 -22
  188. package/dist/esm/components/DragControllerRow/DragControllerRow.js.map +0 -7
  189. package/dist/esm/components/FieldControllerRow/FieldControllerRow.js +0 -26
  190. package/dist/esm/components/FieldControllerRow/FieldControllerRow.js.map +0 -7
  191. package/dist/esm/components/Nestable/Nestable.js +0 -241
  192. package/dist/esm/components/Nestable/Nestable.js.map +0 -7
  193. package/dist/esm/components/Nestable/NestableItem.js +0 -90
  194. package/dist/esm/components/Nestable/NestableItem.js.map +0 -7
  195. package/dist/esm/components/Nestable/actions/events.js +0 -119
  196. package/dist/esm/components/Nestable/actions/events.js.map +0 -7
  197. package/dist/esm/components/Nestable/actions/getItemOptions.js.map +0 -7
  198. package/dist/esm/components/Nestable/actions/getPaths.js.map +0 -7
  199. package/dist/esm/components/Nestable/actions/index.js +0 -13
  200. package/dist/esm/components/Nestable/actions/index.js.map +0 -7
  201. package/dist/esm/components/Nestable/actions/moveItem.js +0 -27
  202. package/dist/esm/components/Nestable/actions/moveItem.js.map +0 -7
  203. package/dist/esm/components/Nestable/actions/paths.js.map +0 -7
  204. package/dist/esm/components/Nestable/actions/tryDecreaseDepth.js +0 -22
  205. package/dist/esm/components/Nestable/actions/tryDecreaseDepth.js.map +0 -7
  206. package/dist/esm/components/Nestable/actions/tryIncreaseDepth.js.map +0 -7
  207. package/dist/esm/components/Nestable/index.js +0 -7
  208. package/dist/esm/components/Nestable/index.js.map +0 -7
  209. package/dist/esm/components/QueryBuilderContext/QueryBuilderContext.js +0 -7
  210. package/dist/esm/components/QueryBuilderContext/QueryBuilderContext.js.map +0 -7
  211. package/dist/esm/components/QueryBuilderImpl.js +0 -196
  212. package/dist/esm/components/QueryBuilderImpl.js.map +0 -7
  213. package/dist/esm/components/QueryBuilderItem/QueryBuilderItem.js +0 -63
  214. package/dist/esm/components/QueryBuilderItem/QueryBuilderItem.js.map +0 -7
  215. package/dist/esm/components/QueryBuilderRow/QueryBuilderRow.js +0 -190
  216. package/dist/esm/components/QueryBuilderRow/QueryBuilderRow.js.map +0 -7
  217. package/dist/esm/components/ToolBarAnimation/ToolBarAnimation.js +0 -13
  218. package/dist/esm/components/ToolBarAnimation/ToolBarAnimation.js.map +0 -7
  219. package/dist/esm/components/format/format.js +0 -30
  220. package/dist/esm/components/format/format.js.map +0 -7
  221. package/dist/esm/components/format/sqlFormat.js +0 -65
  222. package/dist/esm/components/format/sqlFormat.js.map +0 -7
  223. package/dist/esm/components/format/sqlSafeFormat.js +0 -69
  224. package/dist/esm/components/format/sqlSafeFormat.js.map +0 -7
  225. package/dist/esm/components/format/xmlFormat.js +0 -65
  226. package/dist/esm/components/format/xmlFormat.js.map +0 -7
  227. package/dist/esm/components/helpers/actions.js +0 -217
  228. package/dist/esm/components/helpers/actions.js.map +0 -7
  229. package/dist/esm/components/helpers/constants.js +0 -10
  230. package/dist/esm/components/helpers/constants.js.map +0 -7
  231. package/dist/esm/components/helpers/dependencies.js +0 -40
  232. package/dist/esm/components/helpers/dependencies.js.map +0 -7
  233. package/dist/esm/components/helpers/selectors.js +0 -132
  234. package/dist/esm/components/helpers/selectors.js.map +0 -7
  235. package/dist/esm/components/helpers/store.js +0 -143
  236. package/dist/esm/components/helpers/store.js.map +0 -7
  237. package/dist/esm/components/helpers/types.js +0 -63
  238. package/dist/esm/components/helpers/types.js.map +0 -7
  239. package/dist/esm/index.js +0 -7
  240. package/dist/esm/index.js.map +0 -7
  241. package/dist/esm/propTypes.js +0 -76
  242. package/dist/esm/propTypes.js.map +0 -7
@@ -0,0 +1,213 @@
1
+ import _jsx from '@babel/runtime/helpers/esm/jsx';
2
+ import React, { Component } from 'react';
3
+ import { convertPropToCssClassName } from '@elliemae/ds-classnames';
4
+ import DSTooltip, { TooltipType } from '@elliemae/ds-tooltip';
5
+ import { PopperInteractions, PopperPositions } from '@elliemae/ds-popper';
6
+ import { DSToggle } from '@elliemae/ds-form';
7
+ import DSButton from '@elliemae/ds-button';
8
+ import { QueryAdd, ParenthesisRemove, MoreOptionsVert } from '@elliemae/ds-icons';
9
+ import { DSIconSizes, DSIconColors } from '@elliemae/ds-icon';
10
+ import { DELAY_CLOSE, DELAY_OPEN, TOOLBAR_ANIMATION_DURATION } from '../helpers/constants.js';
11
+ import { ToolBarAnimation } from '../ToolBarAnimation/ToolBarAnimation.js';
12
+ import DragContainerController from '../DragContainerController/DragContainerController.js';
13
+ import { jsx, jsxs } from 'react/jsx-runtime';
14
+
15
+ var _QueryAdd, _ParenthesisRemove, _div;
16
+ const {
17
+ cssClassName,
18
+ classNameBlock,
19
+ classNameElement,
20
+ mainModifier,
21
+ classNameBlockModifier
22
+ } = convertPropToCssClassName('query-builder-and-or-controller');
23
+ /**
24
+ * condition-display-step: required to avoid the cache of the trigger
25
+ *
26
+ * @param e
27
+ * @param isOpen
28
+ */
29
+
30
+ class AndOrController extends Component {
31
+ constructor(props) {
32
+ super(props);
33
+
34
+ this.handleMouseEnterRow = e => {
35
+ this.handleTooltipRow(true); // this.handleMouseMove(e)
36
+ };
37
+
38
+ this.handleMouseMove = e => {
39
+ if (!this.contenerRef.current) return;
40
+ const mouse = e.clientY;
41
+ const {
42
+ height
43
+ } = this.contenerRef.current.getBoundingClientRect();
44
+ const delta = height / 2;
45
+ const topDiff = this.myRef.current.getBoundingClientRect().top;
46
+ const refHeight = this.myRef.current.getBoundingClientRect().height;
47
+ this.setState({
48
+ top: mouse - topDiff - refHeight / 2 - delta
49
+ });
50
+ };
51
+
52
+ this.handleMouseLeaveRow = () => {
53
+ this.handleTooltipRow(false);
54
+ };
55
+
56
+ this.handleTooltipRow = isOpen => {
57
+ this.setState({
58
+ isOpen
59
+ });
60
+ const {
61
+ handleTooltipGroup
62
+ } = this.props;
63
+ handleTooltipGroup(isOpen);
64
+ };
65
+
66
+ this.contenerRef = /*#__PURE__*/React.createRef();
67
+ this.myRef = /*#__PURE__*/React.createRef();
68
+ this.state = {
69
+ isOpen: false,
70
+ top: 0,
71
+ right: -2
72
+ };
73
+ }
74
+
75
+ render() {
76
+ const {
77
+ handleRuleContainerOperator,
78
+ handleRuleContainerUnGroup,
79
+ labelOn,
80
+ labelOff,
81
+ condition,
82
+ showDragController,
83
+ allowUnGroup,
84
+ buttonActionSize,
85
+ buttonActionType,
86
+ toogleActionSize,
87
+ onAddFilter,
88
+ multipleSize,
89
+ delayClose,
90
+ delayOpen,
91
+ step,
92
+ toolBarAnimationDuration,
93
+ toolBarInteractionType,
94
+ toolBarPosition,
95
+ isMain,
96
+ toolTipZIndex
97
+ } = this.props;
98
+ const {
99
+ isOpen,
100
+ top,
101
+ right
102
+ } = this.state;
103
+ return /*#__PURE__*/jsx("div", {
104
+ ref: this.myRef,
105
+ className: "".concat(cssClassName, " ").concat(mainModifier(condition ? 'active' : 'default'), " step-").concat(step, " ").concat(isMain ? 'is-main-group-join' : '') // onMouseEnter={this.handleMouseEnterRow}
106
+ ,
107
+ onMouseLeave: this.handleMouseLeaveRow // onMouseMove={this.handleMouseMove}
108
+ ,
109
+ children: /*#__PURE__*/_jsx("div", {
110
+ className: "".concat(classNameBlock('content'), " step-").concat(step)
111
+ }, void 0, /*#__PURE__*/_jsx(DSTooltip, {
112
+ delayClose: delayClose,
113
+ delayOpen: delayOpen,
114
+ interactionType: toolBarInteractionType,
115
+ isOpen: isOpen,
116
+ onOpen: this.handleTooltipRow,
117
+ placement: toolBarPosition,
118
+ springAnimationComponent: /*#__PURE__*/_jsx(ToolBarAnimation, {
119
+ duration: toolBarAnimationDuration
120
+ }),
121
+ step: step,
122
+ title: /*#__PURE__*/jsxs("div", {
123
+ ref: this.contenerRef,
124
+ className: classNameBlock('actions'),
125
+ style: {
126
+ transition: '0.2s',
127
+ position: 'absolute',
128
+ top: "".concat(top, "px"),
129
+ right: "".concat(right, "px")
130
+ },
131
+ children: [/*#__PURE__*/_jsx(DSButton, {
132
+ buttonType: buttonActionType,
133
+ className: classNameElement('add-rule'),
134
+ icon: _QueryAdd || (_QueryAdd = /*#__PURE__*/_jsx(QueryAdd, {})),
135
+ onClick: onAddFilter,
136
+ size: buttonActionSize,
137
+ containerProps: {
138
+ 'data-testid': 'query-add-button'
139
+ }
140
+ }), allowUnGroup && /*#__PURE__*/_jsx(DSButton, {
141
+ buttonType: "text",
142
+ className: classNameElement('ungroup'),
143
+ icon: _ParenthesisRemove || (_ParenthesisRemove = /*#__PURE__*/_jsx(ParenthesisRemove, {})),
144
+ onClick: handleRuleContainerUnGroup,
145
+ size: buttonActionSize,
146
+ containerProps: {
147
+ 'data-testid': 'parenthesis-remove-button'
148
+ }
149
+ }), /*#__PURE__*/_jsx(DSToggle, {
150
+ checked: condition,
151
+ className: classNameElement('and-or-toggle'),
152
+ labelOff: labelOff,
153
+ labelOn: labelOn,
154
+ onChange: e => handleRuleContainerOperator(e.target.checked),
155
+ size: toogleActionSize,
156
+ containerProps: {
157
+ 'data-testid': 'and-or-toggle-button'
158
+ }
159
+ })]
160
+ }),
161
+ tooltipType: TooltipType.TOOLBAR,
162
+ triggerComponent: /*#__PURE__*/_jsx("div", {
163
+ className: "".concat(classNameBlock('trigger-controller'), " ").concat(showDragController ? classNameBlockModifier('draggable', 'trigger-controller') : '', " step-").concat(step)
164
+ }, void 0, /*#__PURE__*/_jsx("div", {
165
+ className: classNameElement('condition-display')
166
+ }, void 0, /*#__PURE__*/_jsx("span", {
167
+ className: classNameElement('condition-display-label')
168
+ }, void 0, condition ? labelOn : labelOff), /*#__PURE__*/_jsx("span", {
169
+ className: classNameElement('condition-display-step')
170
+ }, void 0, step), _div || (_div = /*#__PURE__*/_jsx("div", {
171
+ className: "separator"
172
+ })), /*#__PURE__*/_jsx(MoreOptionsVert, {
173
+ color: DSIconColors.NEUTRAL,
174
+ onClick: this.handleMouseEnterRow,
175
+ size: DSIconSizes.S,
176
+ containerProps: {
177
+ 'data-testid': 'and-or-more-options-button'
178
+ }
179
+ })), showDragController && /*#__PURE__*/_jsx(DragContainerController, {
180
+ multipleSize: multipleSize,
181
+ onClick: this.handleMouseEnterRow
182
+ })),
183
+ zIndex: toolTipZIndex
184
+ }))
185
+ });
186
+ }
187
+
188
+ }
189
+
190
+ AndOrController.defaultProps = {
191
+ isMain: false,
192
+ handleRuleContainerOperator: () => null,
193
+ handleRuleContainerUnGroup: () => null,
194
+ handleTooltipGroup: () => null,
195
+ labelOn: 'AND',
196
+ labelOff: 'OR',
197
+ condition: true,
198
+ showDragController: true,
199
+ allowUnGroup: true,
200
+ buttonActionSize: DSIconSizes.M,
201
+ buttonActionType: 'text',
202
+ toogleActionSize: DSIconSizes.S,
203
+ onAddFilter: () => null,
204
+ multipleSize: false,
205
+ delayClose: DELAY_CLOSE,
206
+ delayOpen: DELAY_OPEN,
207
+ step: null,
208
+ toolBarAnimationDuration: TOOLBAR_ANIMATION_DURATION,
209
+ toolBarInteractionType: PopperInteractions.CLICK,
210
+ toolBarPosition: PopperPositions.LEFT
211
+ };
212
+
213
+ export { AndOrController as default };
@@ -0,0 +1,92 @@
1
+ import _jsx from '@babel/runtime/helpers/esm/jsx';
2
+ import 'react';
3
+ import { convertPropToCssClassName } from '@elliemae/ds-classnames';
4
+ import DSTooltip, { TooltipType } from '@elliemae/ds-tooltip';
5
+ import { PopperInteractions, PopperPositions } from '@elliemae/ds-popper';
6
+ import { DSIconSizes } from '@elliemae/ds-icon';
7
+ import { QueryRemove, QueryAdd, ParenthesisAdd, MoreOptionsVert } from '@elliemae/ds-icons';
8
+ import DSButton from '@elliemae/ds-button';
9
+ import { ToolBarAnimation } from '../ToolBarAnimation/ToolBarAnimation.js';
10
+ import { DELAY_CLOSE, DELAY_OPEN, TOOLBAR_ANIMATION_DURATION } from '../helpers/constants.js';
11
+
12
+ var _ToolBarAnimation, _QueryRemove, _QueryAdd, _ParenthesisAdd;
13
+
14
+ const ConditionController = _ref => {
15
+ let {
16
+ onAddFilter = () => null,
17
+ onAddRuleContainer = () => null,
18
+ onRemoveFilter = () => null,
19
+ handleTooltipRow = () => null,
20
+ buttonTriggerSize = DSIconSizes.M,
21
+ buttonTriggerType = 'text',
22
+ buttonActionSize = DSIconSizes.M,
23
+ buttonActionType = 'text',
24
+ delayClose = DELAY_CLOSE,
25
+ delayOpen = DELAY_OPEN,
26
+ isOpen = false,
27
+ toolTipZIndex
28
+ } = _ref;
29
+ const {
30
+ cssClassName,
31
+ classNameBlock,
32
+ classNameElement
33
+ } = convertPropToCssClassName('query-builder-condition-controller');
34
+ return /*#__PURE__*/_jsx("div", {
35
+ className: cssClassName
36
+ }, void 0, /*#__PURE__*/_jsx(DSTooltip, {
37
+ delayClose: delayClose,
38
+ delayOpen: delayOpen,
39
+ interactionType: PopperInteractions.CLICK,
40
+ isOpen: isOpen,
41
+ onOpen: handleTooltipRow,
42
+ placement: PopperPositions.LEFT,
43
+ springAnimationComponent: _ToolBarAnimation || (_ToolBarAnimation = /*#__PURE__*/_jsx(ToolBarAnimation, {
44
+ duration: TOOLBAR_ANIMATION_DURATION
45
+ })),
46
+ title: /*#__PURE__*/_jsx("div", {
47
+ className: classNameBlock('actions')
48
+ }, void 0, /*#__PURE__*/_jsx(DSButton, {
49
+ buttonType: buttonActionType,
50
+ className: classNameElement('remove-rule'),
51
+ icon: _QueryRemove || (_QueryRemove = /*#__PURE__*/_jsx(QueryRemove, {})),
52
+ onClick: onRemoveFilter,
53
+ size: buttonActionSize,
54
+ containerProps: {
55
+ 'data-testid': 'query-remove-button'
56
+ }
57
+ }), /*#__PURE__*/_jsx(DSButton, {
58
+ buttonType: buttonActionType,
59
+ className: classNameElement('add-rule'),
60
+ icon: _QueryAdd || (_QueryAdd = /*#__PURE__*/_jsx(QueryAdd, {})),
61
+ onClick: onAddFilter,
62
+ size: buttonActionSize,
63
+ containerProps: {
64
+ 'data-testid': 'query-add-button'
65
+ }
66
+ }), /*#__PURE__*/_jsx(DSButton, {
67
+ buttonType: buttonActionType,
68
+ className: "".concat(classNameElement('add-rule-container'), " no-border-right"),
69
+ icon: _ParenthesisAdd || (_ParenthesisAdd = /*#__PURE__*/_jsx(ParenthesisAdd, {})),
70
+ onClick: onAddRuleContainer,
71
+ size: buttonActionSize,
72
+ containerProps: {
73
+ 'data-testid': 'parenthesis-add-button'
74
+ }
75
+ })),
76
+ tooltipType: TooltipType.TOOLBAR,
77
+ triggerComponent: /*#__PURE__*/_jsx(DSButton, {
78
+ buttonType: buttonTriggerType,
79
+ icon: /*#__PURE__*/_jsx(MoreOptionsVert, {
80
+ color: ['neutral', '500']
81
+ }),
82
+ onClick: handleTooltipRow,
83
+ size: buttonTriggerSize,
84
+ containerProps: {
85
+ 'data-testid': 'condition-more-options-button'
86
+ }
87
+ }),
88
+ zIndex: toolTipZIndex
89
+ }));
90
+ };
91
+
92
+ export { ConditionController as default };
@@ -0,0 +1,87 @@
1
+ import _jsx from '@babel/runtime/helpers/esm/jsx';
2
+ import { Component } from 'react';
3
+ import { Grid } from '@elliemae/ds-grid';
4
+ import { convertPropToCssClassName } from '@elliemae/ds-classnames';
5
+ import { DSAccordion, DSAccordionItem } from '@elliemae/ds-accordion';
6
+ import { ChevronRight, ChevronDown } from '@elliemae/ds-icons';
7
+ import { QueryBuilderContext } from '../QueryBuilderContext/QueryBuilderContext.js';
8
+
9
+ const {
10
+ cssClassName
11
+ } = convertPropToCssClassName('query-builder-output');
12
+
13
+ class DisplayOutput extends Component {
14
+ constructor(props) {
15
+ super(props);
16
+
17
+ this.handleChange = () => {
18
+ this.setState(_ref => {
19
+ let {
20
+ show
21
+ } = _ref;
22
+ return {
23
+ show: !show
24
+ };
25
+ });
26
+ };
27
+
28
+ this.state = {
29
+ show: props.show
30
+ };
31
+ }
32
+
33
+ render() {
34
+ var _Grid;
35
+
36
+ const {
37
+ show
38
+ } = this.state;
39
+ const {
40
+ showLabel,
41
+ hideLabel,
42
+ displayFixedOutput
43
+ } = this.props;
44
+ return /*#__PURE__*/_jsx(QueryBuilderContext.Consumer, {}, void 0, _ref2 => {
45
+ let {
46
+ format
47
+ } = _ref2;
48
+ let display = '';
49
+
50
+ try {
51
+ display = typeof format === 'object' ? JSON.stringify(format) : format;
52
+ } catch (e) {
53
+ display = e;
54
+ }
55
+
56
+ if (displayFixedOutput) {
57
+ return /*#__PURE__*/_jsx("div", {
58
+ className: cssClassName,
59
+ "data-testid": "qb-fixed-output-wrapper"
60
+ }, void 0, _Grid || (_Grid = /*#__PURE__*/_jsx(Grid, {
61
+ p: "xxs"
62
+ }, void 0, /*#__PURE__*/_jsx("strong", {
63
+ "data-testid": "qb-fixed-output-label"
64
+ }, void 0, displayFixedOutput))), /*#__PURE__*/_jsx(Grid, {
65
+ pl: "xxs",
66
+ pr: "xxs",
67
+ "data-testid": "qb-fixed-output-content"
68
+ }, void 0, display));
69
+ }
70
+
71
+ return /*#__PURE__*/_jsx("div", {
72
+ className: cssClassName
73
+ }, void 0, /*#__PURE__*/_jsx(DSAccordion, {
74
+ activeValue: show,
75
+ onChange: this.handleChange
76
+ }, void 0, /*#__PURE__*/_jsx(DSAccordionItem, {
77
+ iconClosed: ChevronRight,
78
+ iconOpened: ChevronDown,
79
+ title: show ? hideLabel : showLabel,
80
+ value: true
81
+ }, void 0, /*#__PURE__*/_jsx("div", {}, void 0, display))));
82
+ });
83
+ }
84
+
85
+ }
86
+
87
+ export { DisplayOutput as default };
@@ -0,0 +1,39 @@
1
+ import _jsx from '@babel/runtime/helpers/esm/jsx';
2
+ import 'react';
3
+ import { convertPropToCssClassName } from '@elliemae/ds-classnames';
4
+ import { DSIconColors, DSIconSizes } from '@elliemae/ds-icon';
5
+ import { GripperVertical, MoreOptionsVert } from '@elliemae/ds-icons';
6
+
7
+ var _div;
8
+
9
+ const DragContainerController = _ref => {
10
+ let {
11
+ color = DSIconColors.NEUTRAL,
12
+ icon: Icon = GripperVertical,
13
+ size = DSIconSizes.S,
14
+ multipleSize = false,
15
+ onClick
16
+ } = _ref;
17
+ const {
18
+ cssClassName
19
+ } = convertPropToCssClassName('query-builder-drag-group');
20
+ return /*#__PURE__*/_jsx("div", {
21
+ className: "".concat(cssClassName)
22
+ }, void 0, /*#__PURE__*/_jsx(Icon, {
23
+ color: color,
24
+ size: size
25
+ }), _div || (_div = /*#__PURE__*/_jsx("div", {
26
+ className: "separator"
27
+ })), /*#__PURE__*/_jsx(MoreOptionsVert, {
28
+ color: color,
29
+ onClick: onClick,
30
+ size: size
31
+ }), multipleSize && /*#__PURE__*/_jsx(Icon, {
32
+ className: "additional-drag",
33
+ color: color,
34
+ onClick: onClick,
35
+ size: size
36
+ }));
37
+ };
38
+
39
+ export { DragContainerController as default };
@@ -0,0 +1,39 @@
1
+ import 'core-js/modules/esnext.async-iterator.filter.js';
2
+ import 'core-js/modules/esnext.iterator.constructor.js';
3
+ import 'core-js/modules/esnext.iterator.filter.js';
4
+ import 'core-js/modules/esnext.async-iterator.for-each.js';
5
+ import 'core-js/modules/esnext.iterator.for-each.js';
6
+ import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
7
+ import _jsx from '@babel/runtime/helpers/esm/jsx';
8
+ import _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';
9
+ import 'react';
10
+ import { DSIconSizes } from '@elliemae/ds-icon';
11
+ import { GripperVertical } from '@elliemae/ds-icons';
12
+ import { jsx } from 'react/jsx-runtime';
13
+
14
+ const _excluded = ["className", "color", "icon", "size"];
15
+
16
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
17
+
18
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
19
+
20
+ const DragControllerRow = _ref => {
21
+ let {
22
+ className = 'drag-controller',
23
+ color = ['neutral', '500'],
24
+ icon: Icon = GripperVertical,
25
+ size = DSIconSizes.M
26
+ } = _ref,
27
+ rest = _objectWithoutProperties(_ref, _excluded);
28
+
29
+ return /*#__PURE__*/jsx("div", _objectSpread(_objectSpread({
30
+ className: className
31
+ }, rest), {}, {
32
+ children: /*#__PURE__*/_jsx(Icon, {
33
+ color: color,
34
+ size: size
35
+ })
36
+ }));
37
+ };
38
+
39
+ export { DragControllerRow as default };
@@ -0,0 +1,27 @@
1
+ import _jsx from '@babel/runtime/helpers/esm/jsx';
2
+ import 'react';
3
+ import { DSComboBox, DSTextBox } from '@elliemae/ds-form';
4
+
5
+ const FieldControllerRow = _ref => {
6
+ let {
7
+ className = '',
8
+ onChange = () => null,
9
+ options = [],
10
+ value = '',
11
+ type = 'DSComboBox'
12
+ } = _ref;
13
+ return /*#__PURE__*/_jsx("div", {
14
+ className: className
15
+ }, void 0, type === 'DSComboBox' && /*#__PURE__*/_jsx(DSComboBox, {
16
+ onChange: onChange,
17
+ options: options,
18
+ value: value
19
+ }), type === 'DSTextBox' && /*#__PURE__*/_jsx(DSTextBox, {
20
+ fluidWidth: true,
21
+ onChange: onChange,
22
+ options: options,
23
+ value: value
24
+ }));
25
+ };
26
+
27
+ export { FieldControllerRow as default };