@elliemae/ds-query-builder 3.0.0-next.2 → 3.0.0-next.6

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/dist/cjs/DSQueryBuilder.js +118 -0
  2. package/dist/cjs/DSQueryBuilder.js.map +7 -0
  3. package/dist/cjs/components/AndOrController/AndOrController.js +208 -0
  4. package/dist/cjs/components/AndOrController/AndOrController.js.map +7 -0
  5. package/dist/cjs/components/ConditionController/ConditionController.js +116 -0
  6. package/dist/cjs/components/ConditionController/ConditionController.js.map +7 -0
  7. package/dist/cjs/components/DisplayOutput/DisplayOutput.js +92 -0
  8. package/dist/cjs/components/DisplayOutput/DisplayOutput.js.map +7 -0
  9. package/dist/cjs/components/DragContainerController/DragContainerController.js +65 -0
  10. package/dist/cjs/components/DragContainerController/DragContainerController.js.map +7 -0
  11. package/dist/cjs/components/DragControllerRow/DragControllerRow.js +83 -0
  12. package/dist/cjs/components/DragControllerRow/DragControllerRow.js.map +7 -0
  13. package/dist/cjs/components/FieldControllerRow/FieldControllerRow.js +55 -0
  14. package/dist/cjs/components/FieldControllerRow/FieldControllerRow.js.map +7 -0
  15. package/dist/cjs/components/Nestable/Nestable.js +264 -0
  16. package/dist/cjs/components/Nestable/Nestable.js.map +7 -0
  17. package/dist/cjs/components/Nestable/NestableItem.js +127 -0
  18. package/dist/cjs/components/Nestable/NestableItem.js.map +7 -0
  19. package/dist/cjs/components/Nestable/actions/events.js +153 -0
  20. package/dist/cjs/components/Nestable/actions/events.js.map +7 -0
  21. package/dist/cjs/components/Nestable/actions/getItemOptions.js +49 -0
  22. package/dist/cjs/components/Nestable/actions/getItemOptions.js.map +7 -0
  23. package/dist/cjs/components/Nestable/actions/getPaths.js +119 -0
  24. package/dist/cjs/components/Nestable/actions/getPaths.js.map +7 -0
  25. package/dist/cjs/components/Nestable/actions/index.js +42 -0
  26. package/dist/cjs/components/Nestable/actions/index.js.map +7 -0
  27. package/dist/cjs/components/Nestable/actions/moveItem.js +69 -0
  28. package/dist/cjs/components/Nestable/actions/moveItem.js.map +7 -0
  29. package/dist/cjs/components/Nestable/actions/paths.js +119 -0
  30. package/dist/cjs/components/Nestable/actions/paths.js.map +7 -0
  31. package/dist/cjs/components/Nestable/actions/tryDecreaseDepth.js +51 -0
  32. package/dist/cjs/components/Nestable/actions/tryDecreaseDepth.js.map +7 -0
  33. package/dist/cjs/components/Nestable/actions/tryIncreaseDepth.js +51 -0
  34. package/dist/cjs/components/Nestable/actions/tryIncreaseDepth.js.map +7 -0
  35. package/dist/cjs/components/Nestable/index.js +36 -0
  36. package/dist/cjs/components/Nestable/index.js.map +7 -0
  37. package/dist/cjs/components/QueryBuilderContext/QueryBuilderContext.js +36 -0
  38. package/dist/cjs/components/QueryBuilderContext/QueryBuilderContext.js.map +7 -0
  39. package/dist/cjs/components/QueryBuilderImpl.js +253 -0
  40. package/dist/cjs/components/QueryBuilderImpl.js.map +7 -0
  41. package/dist/cjs/components/QueryBuilderItem/QueryBuilderItem.js +108 -0
  42. package/dist/cjs/components/QueryBuilderItem/QueryBuilderItem.js.map +7 -0
  43. package/dist/cjs/components/QueryBuilderRow/QueryBuilderRow.js +235 -0
  44. package/dist/cjs/components/QueryBuilderRow/QueryBuilderRow.js.map +7 -0
  45. package/dist/cjs/components/ToolBarAnimation/ToolBarAnimation.js +58 -0
  46. package/dist/cjs/components/ToolBarAnimation/ToolBarAnimation.js.map +7 -0
  47. package/dist/cjs/components/format/format.js +59 -0
  48. package/dist/cjs/components/format/format.js.map +7 -0
  49. package/dist/cjs/components/format/sqlFormat.js +94 -0
  50. package/dist/cjs/components/format/sqlFormat.js.map +7 -0
  51. package/dist/cjs/components/format/sqlSafeFormat.js +98 -0
  52. package/dist/cjs/components/format/sqlSafeFormat.js.map +7 -0
  53. package/dist/cjs/components/format/xmlFormat.js +94 -0
  54. package/dist/cjs/components/format/xmlFormat.js.map +7 -0
  55. package/dist/cjs/components/helpers/actions.js +253 -0
  56. package/dist/cjs/components/helpers/actions.js.map +7 -0
  57. package/dist/cjs/components/helpers/constants.js +39 -0
  58. package/dist/cjs/components/helpers/constants.js.map +7 -0
  59. package/dist/cjs/components/helpers/dependencies.js +69 -0
  60. package/dist/cjs/components/helpers/dependencies.js.map +7 -0
  61. package/dist/cjs/components/helpers/selectors.js +161 -0
  62. package/dist/cjs/components/helpers/selectors.js.map +7 -0
  63. package/dist/cjs/components/helpers/store.js +171 -0
  64. package/dist/cjs/components/helpers/store.js.map +7 -0
  65. package/dist/cjs/components/helpers/types.js +92 -0
  66. package/dist/cjs/components/helpers/types.js.map +7 -0
  67. package/dist/cjs/index.js +36 -0
  68. package/dist/cjs/index.js.map +7 -0
  69. package/dist/cjs/propTypes.js +105 -0
  70. package/dist/cjs/propTypes.js.map +7 -0
  71. package/dist/esm/DSQueryBuilder.js +105 -0
  72. package/dist/esm/DSQueryBuilder.js.map +7 -0
  73. package/dist/esm/components/AndOrController/AndOrController.js +179 -0
  74. package/dist/esm/components/AndOrController/AndOrController.js.map +7 -0
  75. package/dist/esm/components/ConditionController/ConditionController.js +87 -0
  76. package/dist/esm/components/ConditionController/ConditionController.js.map +7 -0
  77. package/dist/esm/components/DisplayOutput/DisplayOutput.js +63 -0
  78. package/dist/esm/components/DisplayOutput/DisplayOutput.js.map +7 -0
  79. package/dist/esm/components/DragContainerController/DragContainerController.js +36 -0
  80. package/dist/esm/components/DragContainerController/DragContainerController.js.map +7 -0
  81. package/dist/esm/components/DragControllerRow/DragControllerRow.js +56 -0
  82. package/dist/esm/components/DragControllerRow/DragControllerRow.js.map +7 -0
  83. package/dist/esm/components/FieldControllerRow/FieldControllerRow.js +26 -0
  84. package/dist/esm/components/FieldControllerRow/FieldControllerRow.js.map +7 -0
  85. package/dist/esm/components/Nestable/Nestable.js +253 -0
  86. package/dist/esm/components/Nestable/Nestable.js.map +7 -0
  87. package/dist/esm/components/Nestable/NestableItem.js +100 -0
  88. package/dist/esm/components/Nestable/NestableItem.js.map +7 -0
  89. package/dist/esm/components/Nestable/actions/events.js +131 -0
  90. package/dist/esm/components/Nestable/actions/events.js.map +7 -0
  91. package/{esm → dist/esm}/components/Nestable/actions/getItemOptions.js +7 -11
  92. package/dist/esm/components/Nestable/actions/getItemOptions.js.map +7 -0
  93. package/{esm → dist/esm}/components/Nestable/actions/getPaths.js +17 -43
  94. package/dist/esm/components/Nestable/actions/getPaths.js.map +7 -0
  95. package/dist/esm/components/Nestable/actions/index.js +13 -0
  96. package/dist/esm/components/Nestable/actions/index.js.map +7 -0
  97. package/dist/esm/components/Nestable/actions/moveItem.js +42 -0
  98. package/dist/esm/components/Nestable/actions/moveItem.js.map +7 -0
  99. package/{esm → dist/esm}/components/Nestable/actions/paths.js +19 -47
  100. package/dist/esm/components/Nestable/actions/paths.js.map +7 -0
  101. package/dist/esm/components/Nestable/actions/tryDecreaseDepth.js +22 -0
  102. package/dist/esm/components/Nestable/actions/tryDecreaseDepth.js.map +7 -0
  103. package/{esm → dist/esm}/components/Nestable/actions/tryIncreaseDepth.js +10 -22
  104. package/dist/esm/components/Nestable/actions/tryIncreaseDepth.js.map +7 -0
  105. package/dist/esm/components/Nestable/index.js +7 -0
  106. package/dist/esm/components/Nestable/index.js.map +7 -0
  107. package/dist/esm/components/QueryBuilderContext/QueryBuilderContext.js +7 -0
  108. package/dist/esm/components/QueryBuilderContext/QueryBuilderContext.js.map +7 -0
  109. package/dist/esm/components/QueryBuilderImpl.js +226 -0
  110. package/dist/esm/components/QueryBuilderImpl.js.map +7 -0
  111. package/dist/esm/components/QueryBuilderItem/QueryBuilderItem.js +81 -0
  112. package/dist/esm/components/QueryBuilderItem/QueryBuilderItem.js.map +7 -0
  113. package/dist/esm/components/QueryBuilderRow/QueryBuilderRow.js +208 -0
  114. package/dist/esm/components/QueryBuilderRow/QueryBuilderRow.js.map +7 -0
  115. package/dist/esm/components/ToolBarAnimation/ToolBarAnimation.js +31 -0
  116. package/dist/esm/components/ToolBarAnimation/ToolBarAnimation.js.map +7 -0
  117. package/dist/esm/components/format/format.js +30 -0
  118. package/dist/esm/components/format/format.js.map +7 -0
  119. package/dist/esm/components/format/sqlFormat.js +65 -0
  120. package/dist/esm/components/format/sqlFormat.js.map +7 -0
  121. package/dist/esm/components/format/sqlSafeFormat.js +69 -0
  122. package/dist/esm/components/format/sqlSafeFormat.js.map +7 -0
  123. package/dist/esm/components/format/xmlFormat.js +65 -0
  124. package/dist/esm/components/format/xmlFormat.js.map +7 -0
  125. package/dist/esm/components/helpers/actions.js +230 -0
  126. package/dist/esm/components/helpers/actions.js.map +7 -0
  127. package/dist/esm/components/helpers/constants.js +10 -0
  128. package/dist/esm/components/helpers/constants.js.map +7 -0
  129. package/dist/esm/components/helpers/dependencies.js +40 -0
  130. package/dist/esm/components/helpers/dependencies.js.map +7 -0
  131. package/dist/esm/components/helpers/selectors.js +132 -0
  132. package/dist/esm/components/helpers/selectors.js.map +7 -0
  133. package/dist/esm/components/helpers/store.js +157 -0
  134. package/dist/esm/components/helpers/store.js.map +7 -0
  135. package/dist/esm/components/helpers/types.js +63 -0
  136. package/dist/esm/components/helpers/types.js.map +7 -0
  137. package/dist/esm/index.js +7 -0
  138. package/dist/esm/index.js.map +7 -0
  139. package/dist/esm/propTypes.js +76 -0
  140. package/dist/esm/propTypes.js.map +7 -0
  141. package/package.json +103 -94
  142. package/cjs/DSQueryBuilder.js +0 -98
  143. package/cjs/components/AndOrController/AndOrController.js +0 -222
  144. package/cjs/components/ConditionController/ConditionController.js +0 -100
  145. package/cjs/components/DisplayOutput/DisplayOutput.js +0 -93
  146. package/cjs/components/DragContainerController/DragContainerController.js +0 -45
  147. package/cjs/components/DragControllerRow/DragControllerRow.js +0 -47
  148. package/cjs/components/FieldControllerRow/FieldControllerRow.js +0 -33
  149. package/cjs/components/Nestable/Nestable.js +0 -320
  150. package/cjs/components/Nestable/NestableItem.js +0 -111
  151. package/cjs/components/Nestable/actions/events.js +0 -166
  152. package/cjs/components/Nestable/actions/getItemOptions.js +0 -28
  153. package/cjs/components/Nestable/actions/getPaths.js +0 -124
  154. package/cjs/components/Nestable/actions/index.js +0 -28
  155. package/cjs/components/Nestable/actions/moveItem.js +0 -54
  156. package/cjs/components/Nestable/actions/paths.js +0 -126
  157. package/cjs/components/Nestable/actions/tryDecreaseDepth.js +0 -35
  158. package/cjs/components/Nestable/actions/tryIncreaseDepth.js +0 -38
  159. package/cjs/components/Nestable/index.js +0 -7
  160. package/cjs/components/QueryBuilderContext/QueryBuilderContext.js +0 -13
  161. package/cjs/components/QueryBuilderImpl.js +0 -309
  162. package/cjs/components/QueryBuilderItem/QueryBuilderItem.js +0 -90
  163. package/cjs/components/QueryBuilderRow/QueryBuilderRow.js +0 -276
  164. package/cjs/components/ToolBarAnimation/ToolBarAnimation.js +0 -29
  165. package/cjs/components/format/format.js +0 -33
  166. package/cjs/components/format/sqlFormat.js +0 -73
  167. package/cjs/components/format/sqlSafeFormat.js +0 -81
  168. package/cjs/components/format/xmlFormat.js +0 -73
  169. package/cjs/components/helpers/actions.js +0 -277
  170. package/cjs/components/helpers/constants.js +0 -11
  171. package/cjs/components/helpers/dependencies.js +0 -84
  172. package/cjs/components/helpers/selectors.js +0 -101
  173. package/cjs/components/helpers/store.js +0 -177
  174. package/cjs/components/helpers/types.js +0 -64
  175. package/cjs/index.js +0 -29
  176. package/cjs/propTypes.js +0 -97
  177. package/esm/DSQueryBuilder.js +0 -74
  178. package/esm/components/AndOrController/AndOrController.js +0 -213
  179. package/esm/components/ConditionController/ConditionController.js +0 -92
  180. package/esm/components/DisplayOutput/DisplayOutput.js +0 -87
  181. package/esm/components/DragContainerController/DragContainerController.js +0 -39
  182. package/esm/components/DragControllerRow/DragControllerRow.js +0 -39
  183. package/esm/components/FieldControllerRow/FieldControllerRow.js +0 -27
  184. package/esm/components/Nestable/Nestable.js +0 -312
  185. package/esm/components/Nestable/NestableItem.js +0 -103
  186. package/esm/components/Nestable/actions/events.js +0 -153
  187. package/esm/components/Nestable/actions/index.js +0 -6
  188. package/esm/components/Nestable/actions/moveItem.js +0 -45
  189. package/esm/components/Nestable/actions/tryDecreaseDepth.js +0 -31
  190. package/esm/components/Nestable/index.js +0 -2
  191. package/esm/components/QueryBuilderContext/QueryBuilderContext.js +0 -5
  192. package/esm/components/QueryBuilderImpl.js +0 -301
  193. package/esm/components/QueryBuilderItem/QueryBuilderItem.js +0 -83
  194. package/esm/components/QueryBuilderRow/QueryBuilderRow.js +0 -268
  195. package/esm/components/ToolBarAnimation/ToolBarAnimation.js +0 -20
  196. package/esm/components/format/format.js +0 -31
  197. package/esm/components/format/sqlFormat.js +0 -69
  198. package/esm/components/format/sqlSafeFormat.js +0 -76
  199. package/esm/components/format/xmlFormat.js +0 -69
  200. package/esm/components/helpers/actions.js +0 -254
  201. package/esm/components/helpers/constants.js +0 -5
  202. package/esm/components/helpers/dependencies.js +0 -60
  203. package/esm/components/helpers/selectors.js +0 -93
  204. package/esm/components/helpers/store.js +0 -171
  205. package/esm/components/helpers/types.js +0 -52
  206. package/esm/index.js +0 -4
  207. package/esm/propTypes.js +0 -93
  208. package/types/DSQueryBuilder.d.ts +0 -211
  209. package/types/components/AndOrController/AndOrController.d.ts +0 -38
  210. package/types/components/ConditionController/ConditionController.d.ts +0 -16
  211. package/types/components/DisplayOutput/DisplayOutput.d.ts +0 -7
  212. package/types/components/DragContainerController/DragContainerController.d.ts +0 -9
  213. package/types/components/DragControllerRow/DragControllerRow.d.ts +0 -9
  214. package/types/components/FieldControllerRow/FieldControllerRow.d.ts +0 -9
  215. package/types/components/Nestable/Nestable.d.ts +0 -51
  216. package/types/components/Nestable/NestableItem.d.ts +0 -12
  217. package/types/components/Nestable/actions/events.d.ts +0 -6
  218. package/types/components/Nestable/actions/getItemOptions.d.ts +0 -11
  219. package/types/components/Nestable/actions/getPaths.d.ts +0 -5
  220. package/types/components/Nestable/actions/index.d.ts +0 -6
  221. package/types/components/Nestable/actions/moveItem.d.ts +0 -5
  222. package/types/components/Nestable/actions/paths.d.ts +0 -5
  223. package/types/components/Nestable/actions/tryDecreaseDepth.d.ts +0 -1
  224. package/types/components/Nestable/actions/tryIncreaseDepth.d.ts +0 -1
  225. package/types/components/Nestable/index.d.ts +0 -2
  226. package/types/components/QueryBuilderContext/QueryBuilderContext.d.ts +0 -2
  227. package/types/components/QueryBuilderImpl.d.ts +0 -49
  228. package/types/components/QueryBuilderItem/QueryBuilderItem.d.ts +0 -5
  229. package/types/components/QueryBuilderRow/QueryBuilderRow.d.ts +0 -12
  230. package/types/components/ToolBarAnimation/ToolBarAnimation.d.ts +0 -3
  231. package/types/components/format/format.d.ts +0 -26
  232. package/types/components/format/sqlFormat.d.ts +0 -5
  233. package/types/components/format/sqlSafeFormat.d.ts +0 -6
  234. package/types/components/format/xmlFormat.d.ts +0 -5
  235. package/types/components/helpers/actions.d.ts +0 -63
  236. package/types/components/helpers/constants.d.ts +0 -3
  237. package/types/components/helpers/dependencies.d.ts +0 -1
  238. package/types/components/helpers/selectors.d.ts +0 -20
  239. package/types/components/helpers/store.d.ts +0 -144
  240. package/types/components/helpers/types.d.ts +0 -50
  241. package/types/index.d.ts +0 -2
  242. package/types/propTypes.d.ts +0 -156
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/components/format/format.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { sqlFormat } from './sqlFormat';\nimport { xmlFormat } from './xmlFormat';\nimport { sqlSafeFormat } from './sqlSafeFormat';\n\nclass QueryBuilderFormat {\n format = {\n defaultFormat: query => query,\n sqlFormat,\n xmlFormat,\n sqlSafeFormat,\n };\n\n currentFormat = 'sqlFormat';\n\n setDefaultFormat = formatName => {\n if (this.format[formatName]) this.currentFormat = formatName;\n };\n\n addFormat = (formatName, format) => (this.format[formatName] = format);\n\n run = (query, formatName) => {\n if (this.format[formatName]) return this.format[formatName](query);\n return this.format[this.currentFormat](query);\n };\n}\n\nexport default new QueryBuilderFormat();\n"],
5
+ "mappings": "AAAA;ACAA;AACA;AACA;AAEA,yBAAyB;AAAA,EAAzB,cAJA;AAKE,kBAAS;AAAA,MACP,eAAe,WAAS;AAAA,MACxB;AAAA,MACA;AAAA,MACA;AAAA;AAGF,yBAAgB;AAEhB,4BAAmB,gBAAc;AAC/B,UAAI,KAAK,OAAO;AAAa,aAAK,gBAAgB;AAAA;AAGpD,qBAAY,CAAC,YAAY,WAAY,KAAK,OAAO,cAAc;AAE/D,eAAM,CAAC,OAAO,eAAe;AAC3B,UAAI,KAAK,OAAO;AAAa,eAAO,KAAK,OAAO,YAAY;AAC5D,aAAO,KAAK,OAAO,KAAK,eAAe;AAAA;AAAA;AAAA;AAI3C,IAAO,iBAAQ,IAAI;",
6
+ "names": []
7
+ }
@@ -0,0 +1,65 @@
1
+ import * as React from "react";
2
+ import { QB_OPERATOR_TYPES } from "../helpers/types";
3
+ const conditionSql = (condition, value) => {
4
+ const {
5
+ EQUAL,
6
+ NOT_EQUAL,
7
+ GREATER_THAN,
8
+ LESS_THAN,
9
+ CONTAINS,
10
+ NOT_CONTAINS,
11
+ BETWEEN,
12
+ GREATER_THAN_OR_EQUAL,
13
+ LESS_THAN_OR_EQUAL,
14
+ START_WITH
15
+ } = QB_OPERATOR_TYPES;
16
+ if (condition === EQUAL)
17
+ return ` = '${value}'`;
18
+ if (condition === NOT_EQUAL)
19
+ return ` <> '${value}'`;
20
+ if (condition === GREATER_THAN)
21
+ return ` > ${value}`;
22
+ if (condition === LESS_THAN)
23
+ return ` < ${value}`;
24
+ if (condition === CONTAINS)
25
+ return ` LIKE '%${value}%'`;
26
+ if (condition === NOT_CONTAINS)
27
+ return ` NOT LIKE '%${value}%'`;
28
+ if (condition === BETWEEN)
29
+ return ` BETWEEN ${value[0]} AND ${value[1]} `;
30
+ if (condition === GREATER_THAN_OR_EQUAL)
31
+ return ` >= ${value}`;
32
+ if (condition === LESS_THAN_OR_EQUAL)
33
+ return ` <= ${value}`;
34
+ if (condition === START_WITH)
35
+ return ` LIKE '${value}%'`;
36
+ return condition;
37
+ };
38
+ const renderFilterSQl = (filter) => {
39
+ const { field, operator, value } = filter.element;
40
+ return `${field} ${conditionSql(operator, value) || ""}`;
41
+ };
42
+ const sqlFormat = ({ main, mapGroups, items }) => {
43
+ const groupSql = (item, idGroup) => {
44
+ if (idGroup === main) {
45
+ const groupCondition2 = mapGroups[idGroup].condition === true ? "AND" : "OR";
46
+ return ` ( ${filterSql(item, groupCondition2)} ) `;
47
+ }
48
+ const groupCondition = item.element.condition === true ? "AND" : "OR";
49
+ return ` ( ${filterSql(item.children, groupCondition)} ) `;
50
+ };
51
+ const filterSql = (filters, groupCondition) => {
52
+ const filterGroup = filters.map((filter) => {
53
+ if (filter.element.type === "filter")
54
+ return ` ${renderFilterSQl(filter)} `;
55
+ return ` ${groupSql(filter) || ""} `;
56
+ });
57
+ return filterGroup.join(groupCondition);
58
+ };
59
+ const sql = ` FROM [TABLE_NAME] WHERE ${groupSql(items, main) || ""} `;
60
+ return sql;
61
+ };
62
+ export {
63
+ sqlFormat
64
+ };
65
+ //# sourceMappingURL=sqlFormat.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 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';\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 =\n 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')\n 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;ACCA;AAEA,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,MACE;AAEJ,MAAI,cAAc;AAAO,WAAO,OAAO;AACvC,MAAI,cAAc;AAAW,WAAO,QAAQ;AAC5C,MAAI,cAAc;AAAc,WAAO,MAAM;AAC7C,MAAI,cAAc;AAAW,WAAO,MAAM;AAC1C,MAAI,cAAc;AAAU,WAAO,WAAW;AAC9C,MAAI,cAAc;AAAc,WAAO,eAAe;AACtD,MAAI,cAAc;AAAS,WAAO,YAAY,MAAM,UAAU,MAAM;AACpE,MAAI,cAAc;AAAuB,WAAO,OAAO;AACvD,MAAI,cAAc;AAAoB,WAAO,OAAO;AACpD,MAAI,cAAc;AAAY,WAAO,UAAU;AAC/C,SAAO;AAAA;AAGT,MAAM,kBAAkB,CAAC,WAAW;AAClC,QAAM,EAAE,OAAO,UAAU,UAAU,OAAO;AAE1C,SAAO,GAAG,SAAS,aAAa,UAAU,UAAU;AAAA;AAE/C,MAAM,YAAY,CAAC,EAAE,MAAM,WAAW,YAAY;AACvD,QAAM,WAAW,CAAC,MAAM,YAAY;AAClC,QAAI,YAAY,MAAM;AACpB,YAAM,kBACJ,UAAU,SAAS,cAAc,OAAO,QAAQ;AAClD,aAAO,MAAM,UAAU,MAAM;AAAA;AAE/B,UAAM,iBAAiB,KAAK,QAAQ,cAAc,OAAO,QAAQ;AACjE,WAAO,MAAM,UAAU,KAAK,UAAU;AAAA;AAGxC,QAAM,YAAY,CAAC,SAAS,mBAAmB;AAC7C,UAAM,cAAc,QAAQ,IAAI,CAAC,WAAW;AAC1C,UAAI,OAAO,QAAQ,SAAS;AAC1B,eAAO,IAAI,gBAAgB;AAC7B,aAAO,IAAI,SAAS,WAAW;AAAA;AAEjC,WAAO,YAAY,KAAK;AAAA;AAG1B,QAAM,MAAM,4BAA4B,SAAS,OAAO,SAAS;AAEjE,SAAO;AAAA;",
6
+ "names": []
7
+ }
@@ -0,0 +1,69 @@
1
+ import * as React from "react";
2
+ import { QB_OPERATOR_TYPES } from "../helpers/types";
3
+ const specialChar = /[ !@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?]/;
4
+ const conditionSql = (condition, value) => {
5
+ const {
6
+ EQUAL,
7
+ NOT_EQUAL,
8
+ GREATER_THAN,
9
+ LESS_THAN,
10
+ CONTAINS,
11
+ NOT_CONTAINS,
12
+ BETWEEN,
13
+ GREATER_THAN_OR_EQUAL,
14
+ LESS_THAN_OR_EQUAL,
15
+ START_WITH
16
+ } = QB_OPERATOR_TYPES;
17
+ const valueDisplay = isNaN(value) ? `'${value}'` : value;
18
+ if (condition === EQUAL)
19
+ return ` = ${valueDisplay}`;
20
+ if (condition === NOT_EQUAL)
21
+ return ` <> ${valueDisplay}`;
22
+ if (condition === GREATER_THAN)
23
+ return ` > ${valueDisplay}`;
24
+ if (condition === LESS_THAN)
25
+ return ` < ${valueDisplay}`;
26
+ if (condition === CONTAINS)
27
+ return ` LIKE '%${value}%'`;
28
+ if (condition === NOT_CONTAINS)
29
+ return ` NOT LIKE '%${value}%'`;
30
+ if (condition === BETWEEN)
31
+ return ` BETWEEN ${value[0]} AND ${value[1]} `;
32
+ if (condition === GREATER_THAN_OR_EQUAL)
33
+ return ` >= ${value}`;
34
+ if (condition === LESS_THAN_OR_EQUAL)
35
+ return ` <= ${value}`;
36
+ if (condition === START_WITH)
37
+ return ` LIKE '${value}%'`;
38
+ return condition;
39
+ };
40
+ const renderFilterSQl = (filter) => {
41
+ const { field, operator, value } = filter.element;
42
+ const fieldDisplay = /[.]/.test(field) || !isNaN(field) ? `\\"${field}\\"` : field;
43
+ return `${fieldDisplay} ${conditionSql(operator, value) || ""}`;
44
+ };
45
+ const sqlSafeFormat = ({ main, mapGroups, items }) => {
46
+ const groupSql = (item, idGroup) => {
47
+ if (idGroup === main) {
48
+ const groupCondition2 = mapGroups[idGroup].condition === true ? "AND" : "OR";
49
+ return ` ( ${filterSql(item, groupCondition2)} ) `;
50
+ }
51
+ const groupCondition = item.element.condition === true ? "AND" : "OR";
52
+ return ` ( ${filterSql(item.children, groupCondition)} ) `;
53
+ };
54
+ const filterSql = (filters, groupCondition) => {
55
+ const filterGroup = filters.map((filter) => {
56
+ if (filter.element.type === "filter")
57
+ return ` ${renderFilterSQl(filter)} `;
58
+ return ` ${groupSql(filter) || ""} `;
59
+ });
60
+ return filterGroup.join(groupCondition);
61
+ };
62
+ const sql = ` FROM [TABLE_NAME] WHERE ${groupSql(items, main) || ""} `;
63
+ return sql;
64
+ };
65
+ export {
66
+ specialChar,
67
+ sqlSafeFormat
68
+ };
69
+ //# sourceMappingURL=sqlSafeFormat.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 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';\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 =\n 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')\n 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;ACCA;AAGO,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,MACE;AAEJ,QAAM,eAAe,MAAM,SAAS,IAAI,WAAW;AAEnD,MAAI,cAAc;AAAO,WAAO,MAAM;AACtC,MAAI,cAAc;AAAW,WAAO,OAAO;AAC3C,MAAI,cAAc;AAAc,WAAO,MAAM;AAC7C,MAAI,cAAc;AAAW,WAAO,MAAM;AAC1C,MAAI,cAAc;AAAU,WAAO,WAAW;AAC9C,MAAI,cAAc;AAAc,WAAO,eAAe;AACtD,MAAI,cAAc;AAAS,WAAO,YAAY,MAAM,UAAU,MAAM;AACpE,MAAI,cAAc;AAAuB,WAAO,OAAO;AACvD,MAAI,cAAc;AAAoB,WAAO,OAAO;AACpD,MAAI,cAAc;AAAY,WAAO,UAAU;AAC/C,SAAO;AAAA;AAGT,MAAM,kBAAkB,CAAC,WAAW;AAClC,QAAM,EAAE,OAAO,UAAU,UAAU,OAAO;AAE1C,QAAM,eAEJ,MAAM,KAAK,UAAU,CAAC,MAAM,SAAS,MAAM,aAAa;AAC1D,SAAO,GAAG,gBAAgB,aAAa,UAAU,UAAU;AAAA;AAEtD,MAAM,gBAAgB,CAAC,EAAE,MAAM,WAAW,YAAY;AAC3D,QAAM,WAAW,CAAC,MAAM,YAAY;AAClC,QAAI,YAAY,MAAM;AACpB,YAAM,kBACJ,UAAU,SAAS,cAAc,OAAO,QAAQ;AAClD,aAAO,MAAM,UAAU,MAAM;AAAA;AAE/B,UAAM,iBAAiB,KAAK,QAAQ,cAAc,OAAO,QAAQ;AACjE,WAAO,MAAM,UAAU,KAAK,UAAU;AAAA;AAGxC,QAAM,YAAY,CAAC,SAAS,mBAAmB;AAC7C,UAAM,cAAc,QAAQ,IAAI,CAAC,WAAW;AAC1C,UAAI,OAAO,QAAQ,SAAS;AAC1B,eAAO,IAAI,gBAAgB;AAC7B,aAAO,IAAI,SAAS,WAAW;AAAA;AAEjC,WAAO,YAAY,KAAK;AAAA;AAG1B,QAAM,MAAM,4BAA4B,SAAS,OAAO,SAAS;AAEjE,SAAO;AAAA;",
6
+ "names": []
7
+ }
@@ -0,0 +1,65 @@
1
+ import * as React from "react";
2
+ import { QB_OPERATOR_TYPES } from "../helpers/types";
3
+ const conditionSql = (condition, value) => {
4
+ const {
5
+ EQUAL,
6
+ NOT_EQUAL,
7
+ GREATER_THAN,
8
+ LESS_THAN,
9
+ CONTAINS,
10
+ NOT_CONTAINS,
11
+ BETWEEN,
12
+ GREATER_THAN_OR_EQUAL,
13
+ LESS_THAN_OR_EQUAL,
14
+ START_WITH
15
+ } = QB_OPERATOR_TYPES;
16
+ if (condition === EQUAL)
17
+ return `<condition>EQUAL</condition><value>${value}</value>`;
18
+ if (condition === NOT_EQUAL)
19
+ return `<condition>NOT_EQUAL</condition><value>${value}</value>`;
20
+ if (condition === GREATER_THAN)
21
+ return `<condition>GREATER_THAN</condition><value>${value}</value>`;
22
+ if (condition === LESS_THAN)
23
+ return `<condition>LESS_THAN</condition><value>${value}</value>`;
24
+ if (condition === CONTAINS)
25
+ return `<condition>LIKE</condition><value>${value}</value>`;
26
+ if (condition === NOT_CONTAINS)
27
+ return `<condition>NOT_LIKE</condition><value>${value}</value>`;
28
+ if (condition === BETWEEN)
29
+ return `<condition>NOT_LIKE</condition><value><from>${value[0]}</from><to>${value[1]}</to></value>`;
30
+ if (condition === GREATER_THAN_OR_EQUAL)
31
+ return `<condition>GREATER_THAN_OR_EQUAL</condition><value>${value}</value>`;
32
+ if (condition === LESS_THAN_OR_EQUAL)
33
+ return `<condition>LESS_THAN_OR_EQUAL</condition><value>${value}</value>`;
34
+ if (condition === START_WITH)
35
+ return `<condition>GREATER_THAN</condition><value>${value}</value>`;
36
+ return condition;
37
+ };
38
+ const renderFilterSQl = (filter) => {
39
+ const { field, operator, value } = filter.element;
40
+ return `<filter><field>${field}</field>${conditionSql(operator, value) || ""}</filter>`;
41
+ };
42
+ const xmlFormat = ({ main, mapGroups, items }) => {
43
+ const groupXML = (item, idGroup) => {
44
+ if (idGroup === main) {
45
+ const groupCondition2 = mapGroups[idGroup].condition === true ? "AND" : "OR";
46
+ return `<group value="${groupCondition2}">${filterXML(item, groupCondition2)}</group>`;
47
+ }
48
+ const groupCondition = item.element.condition === true ? "AND" : "OR";
49
+ return `<group value="${groupCondition}">${filterXML(item.children, groupCondition)}</group>`;
50
+ };
51
+ const filterXML = (filters) => {
52
+ const filterGroup = filters.map((filter) => {
53
+ if (filter.element.type === "filter")
54
+ return `${renderFilterSQl(filter) || ""} `;
55
+ return ` ${groupXML(filter)} `;
56
+ });
57
+ return filterGroup.join("");
58
+ };
59
+ const xml = `<xml><query>${groupXML(items, main) || ""}</query></xml>`;
60
+ return xml;
61
+ };
62
+ export {
63
+ xmlFormat
64
+ };
65
+ //# sourceMappingURL=xmlFormat.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/components/format/xmlFormat.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\nimport { QB_OPERATOR_TYPES } from '../helpers/types';\n\nconst conditionSql = (condition, value) => {\n const {\n EQUAL,\n NOT_EQUAL,\n GREATER_THAN,\n LESS_THAN,\n CONTAINS,\n NOT_CONTAINS,\n BETWEEN,\n GREATER_THAN_OR_EQUAL,\n LESS_THAN_OR_EQUAL,\n START_WITH,\n } = QB_OPERATOR_TYPES;\n\n if (condition === EQUAL)\n return `<condition>EQUAL</condition><value>${value}</value>`;\n if (condition === NOT_EQUAL)\n return `<condition>NOT_EQUAL</condition><value>${value}</value>`;\n if (condition === GREATER_THAN)\n return `<condition>GREATER_THAN</condition><value>${value}</value>`;\n if (condition === LESS_THAN)\n return `<condition>LESS_THAN</condition><value>${value}</value>`;\n if (condition === CONTAINS)\n return `<condition>LIKE</condition><value>${value}</value>`;\n if (condition === NOT_CONTAINS)\n 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)\n return `<condition>GREATER_THAN_OR_EQUAL</condition><value>${value}</value>`;\n if (condition === LESS_THAN_OR_EQUAL)\n return `<condition>LESS_THAN_OR_EQUAL</condition><value>${value}</value>`;\n if (condition === START_WITH)\n 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>${\n conditionSql(operator, value) || ''\n }</filter>`;\n};\nexport const xmlFormat = ({ main, mapGroups, items }) => {\n const groupXML = (item, idGroup) => {\n if (idGroup === main) {\n const groupCondition =\n mapGroups[idGroup].condition === true ? 'AND' : 'OR';\n return `<group value=\"${groupCondition}\">${filterXML(\n item,\n groupCondition,\n )}</group>`; // eslint-disable-line\n }\n const groupCondition = item.element.condition === true ? 'AND' : 'OR';\n return `<group value=\"${groupCondition}\">${filterXML(\n item.children,\n groupCondition,\n )}</group>`; // eslint-disable-line\n };\n const filterXML = (filters) => {\n const filterGroup = filters.map((filter) => {\n if (filter.element.type === 'filter')\n 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;ACCA;AAEA,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,MACE;AAEJ,MAAI,cAAc;AAChB,WAAO,sCAAsC;AAC/C,MAAI,cAAc;AAChB,WAAO,0CAA0C;AACnD,MAAI,cAAc;AAChB,WAAO,6CAA6C;AACtD,MAAI,cAAc;AAChB,WAAO,0CAA0C;AACnD,MAAI,cAAc;AAChB,WAAO,qCAAqC;AAC9C,MAAI,cAAc;AAChB,WAAO,yCAAyC;AAClD,MAAI,cAAc;AAChB,WAAO,+CAA+C,MAAM,gBAAgB,MAAM;AACpF,MAAI,cAAc;AAChB,WAAO,sDAAsD;AAC/D,MAAI,cAAc;AAChB,WAAO,mDAAmD;AAC5D,MAAI,cAAc;AAChB,WAAO,6CAA6C;AAEtD,SAAO;AAAA;AAGT,MAAM,kBAAkB,CAAC,WAAW;AAClC,QAAM,EAAE,OAAO,UAAU,UAAU,OAAO;AAE1C,SAAO,kBAAkB,gBACvB,aAAa,UAAU,UAAU;AAAA;AAG9B,MAAM,YAAY,CAAC,EAAE,MAAM,WAAW,YAAY;AACvD,QAAM,WAAW,CAAC,MAAM,YAAY;AAClC,QAAI,YAAY,MAAM;AACpB,YAAM,kBACJ,UAAU,SAAS,cAAc,OAAO,QAAQ;AAClD,aAAO,iBAAiB,oBAAmB,UACzC,MACA;AAAA;AAGJ,UAAM,iBAAiB,KAAK,QAAQ,cAAc,OAAO,QAAQ;AACjE,WAAO,iBAAiB,mBAAmB,UACzC,KAAK,UACL;AAAA;AAGJ,QAAM,YAAY,CAAC,YAAY;AAC7B,UAAM,cAAc,QAAQ,IAAI,CAAC,WAAW;AAC1C,UAAI,OAAO,QAAQ,SAAS;AAC1B,eAAO,GAAG,gBAAgB,WAAW;AACvC,aAAO,IAAI,SAAS;AAAA;AAEtB,WAAO,YAAY,KAAK;AAAA;AAG1B,QAAM,MAAM,eAAe,SAAS,OAAO,SAAS;AAEpD,SAAO;AAAA;",
6
+ "names": []
7
+ }
@@ -0,0 +1,230 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ import * as React from "react";
21
+ import {
22
+ QB_DRAG_TYPES,
23
+ QB_GROUP_CONDITION_TYPES,
24
+ QB_FIELD_SHARED_ACTIONS
25
+ } from "./types";
26
+ const createNewFilter = function(idGroup) {
27
+ const idFilter = `filter_${new Date().getTime()}_${Math.random().toString(36).substring(7)}`;
28
+ return {
29
+ idGroup,
30
+ field: "",
31
+ condition: "",
32
+ value: "",
33
+ idFilter,
34
+ type: QB_DRAG_TYPES.FILTER
35
+ };
36
+ };
37
+ const createNewGroup = function(parentIdGroup) {
38
+ const idGroup = `group_${new Date().getTime()}_${Math.random().toString(36).substring(7)}`;
39
+ return {
40
+ parentIdGroup,
41
+ idGroup,
42
+ condition: QB_GROUP_CONDITION_TYPES.AND,
43
+ type: QB_DRAG_TYPES.GROUP
44
+ };
45
+ };
46
+ const addFilterToMap = function(newFilter) {
47
+ this.mapFilters = __spreadProps(__spreadValues({}, this.mapFilters), {
48
+ [newFilter.idFilter]: newFilter
49
+ });
50
+ };
51
+ const addGroupToMap = function(newGroup) {
52
+ this.mapGroups = __spreadProps(__spreadValues({}, this.mapGroups), {
53
+ [newGroup.idGroup]: __spreadValues({}, newGroup)
54
+ });
55
+ };
56
+ const addFilterToItem = function(item, newFilter) {
57
+ item.children.push({
58
+ id: newFilter.idFilter,
59
+ element: newFilter,
60
+ children: []
61
+ });
62
+ };
63
+ const addFilterToMainItem = function(items, newFilter) {
64
+ items.push({
65
+ id: newFilter.idFilter,
66
+ element: newFilter,
67
+ children: []
68
+ });
69
+ };
70
+ const findInChilds = function(childs, filterId) {
71
+ const found = childs.find(({ id }) => id === filterId);
72
+ if (!found) {
73
+ let findInChild;
74
+ childs.forEach((item) => {
75
+ if (!findInChild)
76
+ findInChild = findInChilds(item.children, filterId);
77
+ });
78
+ if (findInChild)
79
+ return findInChild;
80
+ }
81
+ return found;
82
+ };
83
+ const findItemFilterById = function(filterId) {
84
+ return findInChilds(this.items, filterId);
85
+ };
86
+ const findParentWithFilterId = function(childs, filterId) {
87
+ const found = childs.find(({ id }) => id === filterId);
88
+ if (!found) {
89
+ let findInChild;
90
+ childs.forEach((item) => {
91
+ if (!findInChild)
92
+ findInChild = findParentWithFilterId(item.children, filterId);
93
+ });
94
+ if (findInChild)
95
+ return findInChild;
96
+ }
97
+ return childs;
98
+ };
99
+ const findParentFilterById = function(filterId) {
100
+ return findParentWithFilterId(this.items, filterId);
101
+ };
102
+ const filterInChildren = function(childs, filterId, mainId) {
103
+ if (childs.children) {
104
+ childs.children = childs.children.filter(({ id }) => id !== filterId);
105
+ childs.children = childs.children.forEach((item) => filterInChildren(item.children, filterId));
106
+ return childs;
107
+ }
108
+ if (childs.length > 1)
109
+ childs = childs.filter(({ id }) => id !== filterId);
110
+ if (childs.length === 0 && mainId) {
111
+ const emptyFilter = createNewFilter.call(this, mainId);
112
+ addFilterToMainItem.call(this, childs, emptyFilter);
113
+ }
114
+ childs.forEach((item) => item.children = filterInChildren(item.children, filterId));
115
+ return childs;
116
+ };
117
+ const removeFilterItem = function(filterId) {
118
+ this.items = filterInChildren(this.items, filterId, this.main);
119
+ };
120
+ const addGroupFilterToItem = function(idGroup, idFilter, newGroup) {
121
+ const child = findItemFilterById.call(this, idFilter);
122
+ const copy = __spreadValues({}, child);
123
+ if (copy.element.type === "group") {
124
+ copy.element.parentIdGroup = newGroup.idGroup;
125
+ } else {
126
+ copy.element.idGroup = newGroup.idGroup;
127
+ }
128
+ child.id = newGroup.idGroup;
129
+ child.element = newGroup;
130
+ child.children = [copy];
131
+ };
132
+ const unGroupFilterToItem = function(idGroup) {
133
+ const group = findItemFilterById.call(this, idGroup);
134
+ if (group.element.parentIdGroup === this.main) {
135
+ const index = this.items.map((item) => item.id).indexOf(idGroup);
136
+ const tmp = [];
137
+ tmp.splice.apply(this.items, [index, 1].concat(group.children));
138
+ this.items.forEach((item) => {
139
+ if (item.element.type === "group") {
140
+ item.element.parentIdGroup = this.main;
141
+ } else {
142
+ item.element.idGroup = this.main;
143
+ }
144
+ });
145
+ } else {
146
+ const parent = findItemFilterById.call(this, group.element.parentIdGroup);
147
+ const index = parent.children.map((item) => item.id).indexOf(idGroup);
148
+ const tmp = [];
149
+ tmp.splice.apply(parent.children, [index, 1].concat(group.children));
150
+ parent.children.forEach((item) => {
151
+ if (item.element.type === "group") {
152
+ item.element.parentIdGroup = parent.id;
153
+ } else {
154
+ item.element.idGroup = parent.id;
155
+ }
156
+ });
157
+ }
158
+ };
159
+ const changeGroupOperator = function(idGroup, value) {
160
+ const group = findItemFilterById.call(this, idGroup);
161
+ if (idGroup !== this.main) {
162
+ group.element.condition = value;
163
+ }
164
+ };
165
+ const changeFilterItem = function({
166
+ idFilter,
167
+ field,
168
+ value,
169
+ operator,
170
+ additionalInfo,
171
+ target,
172
+ fieldsSharedActions: { onFieldChange, onOperatorChange, onValueChange }
173
+ }) {
174
+ const child = findItemFilterById.call(this, idFilter);
175
+ if (field || field === "" || typeof field === "boolean")
176
+ child.element.field = field;
177
+ if (operator)
178
+ child.element.operator = operator;
179
+ if (value || value === "" || typeof value === "boolean")
180
+ child.element.value = value;
181
+ if (additionalInfo)
182
+ child.element.additionalInfo = additionalInfo;
183
+ if (target === "field") {
184
+ onFieldChange.forEach(({ action }) => {
185
+ if (action === QB_FIELD_SHARED_ACTIONS.RESET_FIELD)
186
+ child.element.field = null;
187
+ else if (action === QB_FIELD_SHARED_ACTIONS.RESET_OPERATOR)
188
+ child.element.operator = null;
189
+ else if (action === QB_FIELD_SHARED_ACTIONS.RESET_VALUE)
190
+ child.element.value = null;
191
+ });
192
+ } else if (target === "operator") {
193
+ onOperatorChange.forEach(({ action }) => {
194
+ if (action === QB_FIELD_SHARED_ACTIONS.RESET_FIELD)
195
+ child.element.field = null;
196
+ else if (action === QB_FIELD_SHARED_ACTIONS.RESET_OPERATOR)
197
+ child.element.operator = null;
198
+ else if (action === QB_FIELD_SHARED_ACTIONS.RESET_VALUE)
199
+ child.element.value = null;
200
+ });
201
+ } else if (target === "value") {
202
+ onValueChange.forEach(({ action }) => {
203
+ if (action === QB_FIELD_SHARED_ACTIONS.RESET_FIELD)
204
+ child.element.field = null;
205
+ else if (action === QB_FIELD_SHARED_ACTIONS.RESET_OPERATOR)
206
+ child.element.operator = null;
207
+ else if (action === QB_FIELD_SHARED_ACTIONS.RESET_VALUE)
208
+ child.element.value = null;
209
+ });
210
+ }
211
+ };
212
+ export {
213
+ addFilterToItem,
214
+ addFilterToMainItem,
215
+ addFilterToMap,
216
+ addGroupFilterToItem,
217
+ addGroupToMap,
218
+ changeFilterItem,
219
+ changeGroupOperator,
220
+ createNewFilter,
221
+ createNewGroup,
222
+ filterInChildren,
223
+ findInChilds,
224
+ findItemFilterById,
225
+ findParentFilterById,
226
+ findParentWithFilterId,
227
+ removeFilterItem,
228
+ unGroupFilterToItem
229
+ };
230
+ //# sourceMappingURL=actions.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/components/helpers/actions.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\nimport {\n QB_DRAG_TYPES,\n QB_GROUP_CONDITION_TYPES,\n QB_FIELD_SHARED_ACTIONS,\n} from './types';\n\n/**\n * this is injected. instance of QBStore\n *\n * @param {*} idGroup: UUID\n * @param idGroup\n */\nexport const createNewFilter = function(idGroup) {\n const idFilter = `filter_${new Date().getTime()}_${Math.random()\n .toString(36)\n .substring(7)}`;\n return {\n idGroup,\n field: '',\n condition: '',\n value: '',\n idFilter,\n type: QB_DRAG_TYPES.FILTER,\n };\n};\n\n/**\n * this is injected. instance of QBStore\n *\n * @param {*} parentIdGroup: UUID\n * @param parentIdGroup\n */\nexport const createNewGroup = function(parentIdGroup) {\n const idGroup = `group_${new Date().getTime()}_${Math.random()\n .toString(36)\n .substring(7)}`;\n return {\n parentIdGroup,\n idGroup,\n condition: QB_GROUP_CONDITION_TYPES.AND,\n type: QB_DRAG_TYPES.GROUP,\n };\n};\n\n/**\n * this is injected. instance of QBStore\n *\n * @param {*} newFilter\n */\nexport const addFilterToMap = function(newFilter) {\n this.mapFilters = {\n ...this.mapFilters,\n [newFilter.idFilter]: newFilter,\n };\n};\n\n/**\n * this is injected. instance of QBStore\n *\n * @param {*} newFilter\n * @param newGroup\n */\nexport const addGroupToMap = function(newGroup) {\n this.mapGroups = {\n ...this.mapGroups,\n [newGroup.idGroup]: {\n ...newGroup,\n },\n };\n};\n\nexport const addFilterToItem = function(item, newFilter) {\n item.children.push({\n id: newFilter.idFilter,\n element: newFilter,\n children: [],\n });\n};\n\nexport const addFilterToMainItem = function(items, newFilter) {\n items.push({\n id: newFilter.idFilter,\n element: newFilter,\n children: [],\n });\n};\n\nexport const findInChilds = function(childs, filterId) {\n const found = childs.find(({ id }) => id === filterId);\n if (!found) {\n let findInChild;\n childs.forEach(item => {\n if (!findInChild) findInChild = findInChilds(item.children, filterId);\n });\n if (findInChild) return findInChild;\n }\n return found;\n};\nexport const findItemFilterById = function(filterId) {\n return findInChilds(this.items, filterId);\n};\n\nexport const findParentWithFilterId = function(childs, filterId) {\n const found = childs.find(({ id }) => id === filterId);\n if (!found) {\n let findInChild;\n childs.forEach(item => {\n if (!findInChild)\n findInChild = findParentWithFilterId(item.children, filterId);\n });\n if (findInChild) return findInChild;\n }\n return childs;\n};\nexport const findParentFilterById = function(filterId) {\n return findParentWithFilterId(this.items, filterId);\n};\n\nexport const filterInChildren = function(childs, filterId, mainId) {\n if (childs.children) {\n childs.children = childs.children.filter(({ id }) => id !== filterId);\n childs.children = childs.children.forEach(item =>\n filterInChildren(item.children, filterId),\n );\n return childs;\n }\n // main\n if (childs.length > 1) childs = childs.filter(({ id }) => id !== filterId); // https://jira.elliemae.io/browse/PUI-1252\n if (childs.length === 0 && mainId) {\n const emptyFilter = createNewFilter.call(this, mainId);\n addFilterToMainItem.call(this, childs, emptyFilter);\n }\n childs.forEach(\n item => (item.children = filterInChildren(item.children, filterId)),\n );\n return childs;\n};\nexport const removeFilterItem = function(filterId) {\n this.items = filterInChildren(this.items, filterId, this.main);\n};\n\nexport const addGroupFilterToItem = function(idGroup, idFilter, newGroup) {\n const child = findItemFilterById.call(this, idFilter);\n const copy = {\n ...child,\n };\n if (copy.element.type === 'group') {\n copy.element.parentIdGroup = newGroup.idGroup;\n } else {\n copy.element.idGroup = newGroup.idGroup;\n }\n child.id = newGroup.idGroup;\n child.element = newGroup;\n child.children = [copy];\n};\n\nexport const unGroupFilterToItem = function(idGroup) {\n const group = findItemFilterById.call(this, idGroup);\n if (group.element.parentIdGroup === this.main) {\n const index = this.items.map(item => item.id).indexOf(idGroup);\n const tmp = [];\n tmp.splice.apply(this.items, [index, 1].concat(group.children));\n this.items.forEach(item => {\n if (item.element.type === 'group') {\n item.element.parentIdGroup = this.main;\n } else {\n item.element.idGroup = this.main;\n }\n });\n } else {\n const parent = findItemFilterById.call(this, group.element.parentIdGroup);\n const index = parent.children.map(item => item.id).indexOf(idGroup);\n const tmp = [];\n tmp.splice.apply(parent.children, [index, 1].concat(group.children));\n parent.children.forEach(item => {\n if (item.element.type === 'group') {\n item.element.parentIdGroup = parent.id;\n } else {\n item.element.idGroup = parent.id;\n }\n });\n }\n};\n\nexport const changeGroupOperator = function(idGroup, value) {\n const group = findItemFilterById.call(this, idGroup);\n if (idGroup !== this.main) {\n group.element.condition = value;\n }\n};\n\nexport const changeFilterItem = function({\n idFilter,\n field,\n value,\n operator,\n additionalInfo,\n target,\n fieldsSharedActions: { onFieldChange, onOperatorChange, onValueChange },\n}) {\n const child = findItemFilterById.call(this, idFilter);\n if (field || field === '' || typeof field === 'boolean')\n child.element.field = field;\n if (operator) child.element.operator = operator;\n if (value || value === '' || typeof value === 'boolean')\n child.element.value = value;\n if (additionalInfo) child.element.additionalInfo = additionalInfo;\n\n // shared fields actions\n if (target === 'field') {\n onFieldChange.forEach(({ action }) => {\n if (action === QB_FIELD_SHARED_ACTIONS.RESET_FIELD)\n child.element.field = null;\n else if (action === QB_FIELD_SHARED_ACTIONS.RESET_OPERATOR)\n child.element.operator = null;\n else if (action === QB_FIELD_SHARED_ACTIONS.RESET_VALUE)\n child.element.value = null;\n });\n } else if (target === 'operator') {\n onOperatorChange.forEach(({ action }) => {\n if (action === QB_FIELD_SHARED_ACTIONS.RESET_FIELD)\n child.element.field = null;\n else if (action === QB_FIELD_SHARED_ACTIONS.RESET_OPERATOR)\n child.element.operator = null;\n else if (action === QB_FIELD_SHARED_ACTIONS.RESET_VALUE)\n child.element.value = null;\n });\n } else if (target === 'value') {\n onValueChange.forEach(({ action }) => {\n if (action === QB_FIELD_SHARED_ACTIONS.RESET_FIELD)\n child.element.field = null;\n else if (action === QB_FIELD_SHARED_ACTIONS.RESET_OPERATOR)\n child.element.operator = null;\n else if (action === QB_FIELD_SHARED_ACTIONS.RESET_VALUE)\n child.element.value = null;\n });\n }\n};\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -0,0 +1,10 @@
1
+ import * as React from "react";
2
+ const DELAY_CLOSE = 0.1;
3
+ const DELAY_OPEN = 0.1;
4
+ const TOOLBAR_ANIMATION_DURATION = 50;
5
+ export {
6
+ DELAY_CLOSE,
7
+ DELAY_OPEN,
8
+ TOOLBAR_ANIMATION_DURATION
9
+ };
10
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/components/helpers/constants.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export const DELAY_CLOSE = 0.1;\nexport const DELAY_OPEN = 0.1;\nexport const TOOLBAR_ANIMATION_DURATION = 50;\n"],
5
+ "mappings": "AAAA;ACAO,MAAM,cAAc;AACpB,MAAM,aAAa;AACnB,MAAM,6BAA6B;",
6
+ "names": []
7
+ }
@@ -0,0 +1,40 @@
1
+ import * as React from "react";
2
+ import { get } from "lodash";
3
+ import * as operators from "@elliemae/ds-utilities/operators";
4
+ import { QB_GROUP_CONDITION_TYPES } from "./types";
5
+ const resolveCondition = (condition, state, resolveBy = QB_GROUP_CONDITION_TYPES.AND) => {
6
+ if (condition.length === 0 || !condition)
7
+ return true;
8
+ if (resolveBy) {
9
+ return condition.every((rule) => {
10
+ const {
11
+ source: sourceRule,
12
+ operator: operatorRule,
13
+ value: valueRule
14
+ } = rule;
15
+ if (typeof operatorRule === "function")
16
+ return operatorRule(get(state, sourceRule), valueRule);
17
+ return operators[operatorRule](get(state, sourceRule), valueRule);
18
+ });
19
+ }
20
+ return condition.some((rule) => {
21
+ const {
22
+ source: sourceRule,
23
+ operator: operatorRule,
24
+ value: valueRule
25
+ } = rule;
26
+ return operators[operatorRule](state[sourceRule], valueRule);
27
+ });
28
+ };
29
+ const resolveDependencies = (state, fields) => {
30
+ const fieldsToRender = fields.reduce((result, { target, component, condition, resolveBy, validation, handleWidth }) => {
31
+ if (resolveCondition(condition, state, resolveBy))
32
+ result.push({ target, component, validation, handleWidth });
33
+ return result;
34
+ }, []);
35
+ return fieldsToRender;
36
+ };
37
+ export {
38
+ resolveDependencies
39
+ };
40
+ //# sourceMappingURL=dependencies.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/components/helpers/dependencies.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { get } from 'lodash';\nimport * as operators from '@elliemae/ds-utilities/operators';\nimport { QB_GROUP_CONDITION_TYPES } from './types';\n\nconst resolveCondition = (\n condition,\n state,\n resolveBy = QB_GROUP_CONDITION_TYPES.AND,\n) => {\n if (condition.length === 0 || !condition) return true;\n // resolve by AND: all the conditions must be true\n if (resolveBy) {\n return condition.every((rule) => {\n const {\n source: sourceRule,\n operator: operatorRule,\n value: valueRule,\n } = rule;\n if (typeof operatorRule === \"function\") return operatorRule(get(state, sourceRule), valueRule);\n return operators[operatorRule](get(state, sourceRule), valueRule);\n });\n }\n // resolve by OR: at least one condition must be true\n return condition.some((rule) => {\n const {\n source: sourceRule,\n operator: operatorRule,\n value: valueRule,\n } = rule;\n return operators[operatorRule](state[sourceRule], valueRule);\n });\n};\n\nexport const resolveDependencies = (state, fields) => {\n const fieldsToRender = fields.reduce(\n (result, { target, component, condition, resolveBy, validation, handleWidth }) => {\n if (resolveCondition(condition, state, resolveBy))\n result.push({ target, component, validation, handleWidth });\n return result;\n },\n [],\n );\n return fieldsToRender;\n};\n"],
5
+ "mappings": "AAAA;ACAA;AACA;AACA;AAEA,MAAM,mBAAmB,CACvB,WACA,OACA,YAAY,yBAAyB,QAClC;AACH,MAAI,UAAU,WAAW,KAAK,CAAC;AAAW,WAAO;AAEjD,MAAI,WAAW;AACb,WAAO,UAAU,MAAM,CAAC,SAAS;AAC/B,YAAM;AAAA,QACJ,QAAQ;AAAA,QACR,UAAU;AAAA,QACV,OAAO;AAAA,UACL;AACJ,UAAI,OAAO,iBAAiB;AAAY,eAAO,aAAa,IAAI,OAAO,aAAa;AACpF,aAAO,UAAU,cAAc,IAAI,OAAO,aAAa;AAAA;AAAA;AAI3D,SAAO,UAAU,KAAK,CAAC,SAAS;AAC9B,UAAM;AAAA,MACJ,QAAQ;AAAA,MACR,UAAU;AAAA,MACV,OAAO;AAAA,QACL;AACJ,WAAO,UAAU,cAAc,MAAM,aAAa;AAAA;AAAA;AAI/C,MAAM,sBAAsB,CAAC,OAAO,WAAW;AACpD,QAAM,iBAAiB,OAAO,OAC5B,CAAC,QAAQ,EAAE,QAAQ,WAAW,WAAW,WAAW,YAAY,kBAAkB;AAChF,QAAI,iBAAiB,WAAW,OAAO;AACrC,aAAO,KAAK,EAAE,QAAQ,WAAW,YAAY;AAC/C,WAAO;AAAA,KAET;AAEF,SAAO;AAAA;",
6
+ "names": []
7
+ }