@finos/legend-application-query 5.1.0 → 5.2.3

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 (599) hide show
  1. package/lib/application/LegendQueryApplicationConfig.d.ts +17 -1
  2. package/lib/application/LegendQueryApplicationConfig.d.ts.map +1 -1
  3. package/lib/application/LegendQueryApplicationConfig.js +23 -1
  4. package/lib/application/LegendQueryApplicationConfig.js.map +1 -1
  5. package/lib/components/QueryBuilder.d.ts.map +1 -1
  6. package/lib/components/QueryBuilder.js +17 -8
  7. package/lib/components/QueryBuilder.js.map +1 -1
  8. package/lib/components/QueryBuilderParameterPanel.d.ts.map +1 -1
  9. package/lib/components/QueryBuilderParameterPanel.js +14 -35
  10. package/lib/components/QueryBuilderParameterPanel.js.map +1 -1
  11. package/lib/components/QueryBuilderPropertyExpressionEditor.d.ts +1 -1
  12. package/lib/components/QueryBuilderPropertyExpressionEditor.d.ts.map +1 -1
  13. package/lib/components/QueryBuilderPropertyExpressionEditor.js +13 -13
  14. package/lib/components/QueryBuilderPropertyExpressionEditor.js.map +1 -1
  15. package/lib/components/QueryBuilderResultPanel.d.ts.map +1 -1
  16. package/lib/components/QueryBuilderResultPanel.js +34 -26
  17. package/lib/components/QueryBuilderResultPanel.js.map +1 -1
  18. package/lib/components/QueryBuilderSetupPanel.d.ts.map +1 -1
  19. package/lib/components/QueryBuilderSetupPanel.js +11 -12
  20. package/lib/components/QueryBuilderSetupPanel.js.map +1 -1
  21. package/lib/components/QueryBuilderTextEditor.js +1 -1
  22. package/lib/components/QueryBuilderTextEditor.js.map +1 -1
  23. package/lib/components/QueryBuilderUnsupportedQueryEditor.d.ts.map +1 -1
  24. package/lib/components/QueryBuilderUnsupportedQueryEditor.js +4 -2
  25. package/lib/components/QueryBuilderUnsupportedQueryEditor.js.map +1 -1
  26. package/lib/components/QueryEditor.d.ts.map +1 -1
  27. package/lib/components/QueryEditor.js +16 -4
  28. package/lib/components/QueryEditor.js.map +1 -1
  29. package/lib/components/QueryEditorComponentTestUtils.d.ts.map +1 -1
  30. package/lib/components/QueryEditorComponentTestUtils.js +0 -2
  31. package/lib/components/QueryEditorComponentTestUtils.js.map +1 -1
  32. package/lib/components/{QueryBuilderExplorerPanel.d.ts → explorer/QueryBuilderExplorerPanel.d.ts} +1 -1
  33. package/lib/components/explorer/QueryBuilderExplorerPanel.d.ts.map +1 -0
  34. package/lib/components/{QueryBuilderExplorerPanel.js → explorer/QueryBuilderExplorerPanel.js} +19 -81
  35. package/lib/components/explorer/QueryBuilderExplorerPanel.js.map +1 -0
  36. package/lib/components/{QueryBuilderFunctionsExplorerPanel.d.ts → explorer/QueryBuilderFunctionsExplorerPanel.d.ts} +1 -1
  37. package/lib/components/explorer/QueryBuilderFunctionsExplorerPanel.d.ts.map +1 -0
  38. package/lib/components/{QueryBuilderFunctionsExplorerPanel.js → explorer/QueryBuilderFunctionsExplorerPanel.js} +9 -39
  39. package/lib/components/explorer/QueryBuilderFunctionsExplorerPanel.js.map +1 -0
  40. package/lib/components/{QueryBuilderMilestoneEditor.d.ts → explorer/QueryBuilderMilestoneEditor.d.ts} +1 -1
  41. package/lib/components/explorer/QueryBuilderMilestoneEditor.d.ts.map +1 -0
  42. package/lib/components/{QueryBuilderMilestoneEditor.js → explorer/QueryBuilderMilestoneEditor.js} +7 -7
  43. package/lib/components/explorer/QueryBuilderMilestoneEditor.js.map +1 -0
  44. package/lib/components/{QueryBuilderPropertySearchPanel.d.ts → explorer/QueryBuilderPropertySearchPanel.d.ts} +1 -1
  45. package/lib/components/explorer/QueryBuilderPropertySearchPanel.d.ts.map +1 -0
  46. package/lib/components/{QueryBuilderPropertySearchPanel.js → explorer/QueryBuilderPropertySearchPanel.js} +8 -11
  47. package/lib/components/explorer/QueryBuilderPropertySearchPanel.js.map +1 -0
  48. package/lib/components/{QueryBuilderFetchStructurePanel.d.ts → fetch-structure/QueryBuilderFetchStructurePanel.d.ts} +1 -1
  49. package/lib/components/fetch-structure/QueryBuilderFetchStructurePanel.d.ts.map +1 -0
  50. package/lib/components/fetch-structure/QueryBuilderFetchStructurePanel.js +135 -0
  51. package/lib/components/fetch-structure/QueryBuilderFetchStructurePanel.js.map +1 -0
  52. package/lib/components/{QueryBuilderGraphFetchTreePanel.d.ts → fetch-structure/QueryBuilderGraphFetchTreePanel.d.ts} +3 -3
  53. package/lib/components/fetch-structure/QueryBuilderGraphFetchTreePanel.d.ts.map +1 -0
  54. package/lib/components/{QueryBuilderGraphFetchTreePanel.js → fetch-structure/QueryBuilderGraphFetchTreePanel.js} +9 -9
  55. package/lib/components/fetch-structure/QueryBuilderGraphFetchTreePanel.js.map +1 -0
  56. package/lib/components/{QueryBuilderPostFilterPanel.d.ts → fetch-structure/QueryBuilderPostFilterPanel.d.ts} +3 -3
  57. package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.d.ts.map +1 -0
  58. package/lib/components/{QueryBuilderPostFilterPanel.js → fetch-structure/QueryBuilderPostFilterPanel.js} +51 -74
  59. package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.js.map +1 -0
  60. package/lib/components/{QueryBuilderProjectionPanel.d.ts → fetch-structure/QueryBuilderProjectionPanel.d.ts} +1 -1
  61. package/lib/components/fetch-structure/QueryBuilderProjectionPanel.d.ts.map +1 -0
  62. package/lib/components/{QueryBuilderProjectionPanel.js → fetch-structure/QueryBuilderProjectionPanel.js} +53 -73
  63. package/lib/components/fetch-structure/QueryBuilderProjectionPanel.js.map +1 -0
  64. package/lib/components/{QueryBuilderResultModifierPanel.d.ts → fetch-structure/QueryBuilderResultModifierPanel.d.ts} +1 -1
  65. package/lib/components/fetch-structure/QueryBuilderResultModifierPanel.d.ts.map +1 -0
  66. package/lib/components/{QueryBuilderResultModifierPanel.js → fetch-structure/QueryBuilderResultModifierPanel.js} +12 -7
  67. package/lib/components/fetch-structure/QueryBuilderResultModifierPanel.js.map +1 -0
  68. package/lib/components/{QueryBuilderFilterPanel.d.ts → filter/QueryBuilderFilterPanel.d.ts} +1 -1
  69. package/lib/components/filter/QueryBuilderFilterPanel.d.ts.map +1 -0
  70. package/lib/components/{QueryBuilderFilterPanel.js → filter/QueryBuilderFilterPanel.js} +35 -64
  71. package/lib/components/filter/QueryBuilderFilterPanel.js.map +1 -0
  72. package/lib/components/{QueryBuilderLambdaEditor.d.ts → shared/QueryBuilderLambdaEditor.d.ts} +2 -1
  73. package/lib/components/shared/QueryBuilderLambdaEditor.d.ts.map +1 -0
  74. package/lib/components/{QueryBuilderLambdaEditor.js → shared/QueryBuilderLambdaEditor.js} +2 -2
  75. package/lib/components/shared/QueryBuilderLambdaEditor.js.map +1 -0
  76. package/lib/components/shared/QueryBuilderPanelIssueCountBadge.d.ts +20 -0
  77. package/lib/components/shared/QueryBuilderPanelIssueCountBadge.d.ts.map +1 -0
  78. package/lib/components/shared/QueryBuilderPanelIssueCountBadge.js +28 -0
  79. package/lib/components/shared/QueryBuilderPanelIssueCountBadge.js.map +1 -0
  80. package/lib/components/{QueryBuilderPropertyInfoTooltip.d.ts → shared/QueryBuilderPropertyInfoTooltip.d.ts} +0 -0
  81. package/lib/components/shared/QueryBuilderPropertyInfoTooltip.d.ts.map +1 -0
  82. package/lib/components/{QueryBuilderPropertyInfoTooltip.js → shared/QueryBuilderPropertyInfoTooltip.js} +0 -0
  83. package/lib/components/shared/QueryBuilderPropertyInfoTooltip.js.map +1 -0
  84. package/lib/index.css +2 -2
  85. package/lib/index.css.map +1 -1
  86. package/lib/index.d.ts +0 -4
  87. package/lib/index.d.ts.map +1 -1
  88. package/lib/index.js +0 -4
  89. package/lib/index.js.map +1 -1
  90. package/lib/package.json +10 -9
  91. package/lib/stores/QueryBuilderGroupOperationHelper.d.ts +22 -0
  92. package/lib/stores/QueryBuilderGroupOperationHelper.d.ts.map +1 -0
  93. package/lib/stores/QueryBuilderGroupOperationHelper.js +43 -0
  94. package/lib/stores/QueryBuilderGroupOperationHelper.js.map +1 -0
  95. package/lib/stores/QueryBuilderPreviewDataHelper.d.ts.map +1 -1
  96. package/lib/stores/QueryBuilderPreviewDataHelper.js +16 -17
  97. package/lib/stores/QueryBuilderPreviewDataHelper.js.map +1 -1
  98. package/lib/stores/QueryBuilderPropertyEditorState.d.ts.map +1 -1
  99. package/lib/stores/QueryBuilderPropertyEditorState.js +5 -4
  100. package/lib/stores/QueryBuilderPropertyEditorState.js.map +1 -1
  101. package/lib/stores/QueryBuilderResultState.js +1 -1
  102. package/lib/stores/QueryBuilderResultState.js.map +1 -1
  103. package/lib/stores/QueryBuilderSetupState.js +1 -1
  104. package/lib/stores/QueryBuilderSetupState.js.map +1 -1
  105. package/lib/stores/QueryBuilderState.d.ts +14 -16
  106. package/lib/stores/QueryBuilderState.d.ts.map +1 -1
  107. package/lib/stores/QueryBuilderState.js +27 -34
  108. package/lib/stores/QueryBuilderState.js.map +1 -1
  109. package/lib/stores/QueryBuilderTestUtils.d.ts.map +1 -1
  110. package/lib/stores/QueryBuilderTestUtils.js +2 -1
  111. package/lib/stores/QueryBuilderTestUtils.js.map +1 -1
  112. package/lib/stores/QueryBuilderTypeaheadHelper.d.ts +7 -7
  113. package/lib/stores/QueryBuilderTypeaheadHelper.d.ts.map +1 -1
  114. package/lib/stores/QueryBuilderTypeaheadHelper.js +23 -28
  115. package/lib/stores/QueryBuilderTypeaheadHelper.js.map +1 -1
  116. package/lib/stores/{QueryBuilderLambdaBuilder.d.ts → QueryBuilderValueSpecificationBuilder.d.ts} +1 -3
  117. package/lib/stores/QueryBuilderValueSpecificationBuilder.d.ts.map +1 -0
  118. package/lib/stores/{QueryBuilderLambdaBuilder.js → QueryBuilderValueSpecificationBuilder.js} +179 -190
  119. package/lib/stores/QueryBuilderValueSpecificationBuilder.js.map +1 -0
  120. package/lib/stores/{QueryBuilderOperatorsHelper.d.ts → QueryBuilderValueSpecificationHelper.d.ts} +5 -9
  121. package/lib/stores/QueryBuilderValueSpecificationHelper.d.ts.map +1 -0
  122. package/lib/stores/{QueryBuilderOperatorsHelper.js → QueryBuilderValueSpecificationHelper.js} +38 -30
  123. package/lib/stores/QueryBuilderValueSpecificationHelper.js.map +1 -0
  124. package/lib/stores/{QueryBuilderLambdaProcessor.d.ts → QueryBuilderValueSpecificationProcessor.d.ts} +1 -1
  125. package/lib/stores/QueryBuilderValueSpecificationProcessor.d.ts.map +1 -0
  126. package/lib/stores/{QueryBuilderLambdaProcessor.js → QueryBuilderValueSpecificationProcessor.js} +18 -14
  127. package/lib/stores/QueryBuilderValueSpecificationProcessor.js.map +1 -0
  128. package/lib/stores/QueryEditorStore.d.ts.map +1 -1
  129. package/lib/stores/QueryEditorStore.js +14 -3
  130. package/lib/stores/QueryEditorStore.js.map +1 -1
  131. package/lib/stores/QueryParametersState.d.ts +1 -3
  132. package/lib/stores/QueryParametersState.d.ts.map +1 -1
  133. package/lib/stores/QueryParametersState.js +1 -4
  134. package/lib/stores/QueryParametersState.js.map +1 -1
  135. package/lib/stores/{QueryBuilderExplorerState.d.ts → explorer/QueryBuilderExplorerState.d.ts} +3 -2
  136. package/lib/stores/explorer/QueryBuilderExplorerState.d.ts.map +1 -0
  137. package/lib/stores/{QueryBuilderExplorerState.js → explorer/QueryBuilderExplorerState.js} +76 -3
  138. package/lib/stores/explorer/QueryBuilderExplorerState.js.map +1 -0
  139. package/lib/stores/{QueryBuilderPropertySearchPanelState.d.ts → explorer/QueryBuilderPropertySearchPanelState.d.ts} +2 -2
  140. package/lib/stores/explorer/QueryBuilderPropertySearchPanelState.d.ts.map +1 -0
  141. package/lib/stores/{QueryBuilderPropertySearchPanelState.js → explorer/QueryBuilderPropertySearchPanelState.js} +1 -1
  142. package/lib/stores/explorer/QueryBuilderPropertySearchPanelState.js.map +1 -0
  143. package/lib/stores/{QueryFunctionsExplorerState.d.ts → explorer/QueryFunctionsExplorerState.d.ts} +3 -7
  144. package/lib/stores/explorer/QueryFunctionsExplorerState.d.ts.map +1 -0
  145. package/lib/stores/{QueryFunctionsExplorerState.js → explorer/QueryFunctionsExplorerState.js} +2 -11
  146. package/lib/stores/explorer/QueryFunctionsExplorerState.js.map +1 -0
  147. package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.d.ts +23 -0
  148. package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.d.ts.map +1 -0
  149. package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.js +24 -0
  150. package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.js.map +1 -0
  151. package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.d.ts +44 -0
  152. package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.d.ts.map +1 -0
  153. package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.js +116 -0
  154. package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.js.map +1 -0
  155. package/lib/stores/{QueryBuilderGraphFetchTreeState.d.ts → fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.d.ts} +6 -5
  156. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.d.ts.map +1 -0
  157. package/lib/stores/{QueryBuilderGraphFetchTreeState.js → fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.js} +23 -20
  158. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.js.map +1 -0
  159. package/lib/stores/{QueryBuilderGraphFetchTreeUtil.d.ts → fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.d.ts} +2 -2
  160. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.d.ts.map +1 -0
  161. package/lib/stores/{QueryBuilderGraphFetchTreeUtil.js → fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.js} +1 -1
  162. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.js.map +1 -0
  163. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchValueSpecificationBuilder.d.ts +19 -0
  164. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchValueSpecificationBuilder.d.ts.map +1 -0
  165. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchValueSpecificationBuilder.js +49 -0
  166. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchValueSpecificationBuilder.js.map +1 -0
  167. package/lib/stores/{QueryBuilderProjectionState.d.ts → fetch-structure/projection/QueryBuilderProjectionColumnState.d.ts} +7 -40
  168. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.d.ts.map +1 -0
  169. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.js +187 -0
  170. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.js.map +1 -0
  171. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.d.ts +59 -0
  172. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.d.ts.map +1 -0
  173. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.js +203 -0
  174. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.js.map +1 -0
  175. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionValueSpecificationBuilder.d.ts +21 -0
  176. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionValueSpecificationBuilder.d.ts.map +1 -0
  177. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionValueSpecificationBuilder.js +73 -0
  178. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionValueSpecificationBuilder.js.map +1 -0
  179. package/lib/stores/{QueryResultSetModifierState.d.ts → fetch-structure/projection/QueryResultSetModifierState.d.ts} +5 -14
  180. package/lib/stores/fetch-structure/projection/QueryResultSetModifierState.d.ts.map +1 -0
  181. package/lib/stores/fetch-structure/projection/QueryResultSetModifierState.js +77 -0
  182. package/lib/stores/fetch-structure/projection/QueryResultSetModifierState.js.map +1 -0
  183. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.d.ts +32 -0
  184. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.d.ts.map +1 -0
  185. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.js +36 -0
  186. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.js.map +1 -0
  187. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperatorLoader.d.ts +18 -0
  188. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperatorLoader.d.ts.map +1 -0
  189. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperatorLoader.js +38 -0
  190. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperatorLoader.js.map +1 -0
  191. package/lib/stores/{QueryBuilderAggregationState.d.ts → fetch-structure/projection/aggregation/QueryBuilderAggregationState.d.ts} +4 -15
  192. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.d.ts.map +1 -0
  193. package/lib/stores/{QueryBuilderAggregationState.js → fetch-structure/projection/aggregation/QueryBuilderAggregationState.js} +2 -21
  194. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.js.map +1 -0
  195. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperatorHelper.d.ts +3 -2
  196. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperatorHelper.d.ts.map +1 -0
  197. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperatorHelper.js +1 -1
  198. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperatorHelper.js.map +1 -0
  199. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Average.d.ts +3 -2
  200. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.d.ts.map +1 -0
  201. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Average.js +3 -3
  202. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.js.map +1 -0
  203. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Count.d.ts +3 -2
  204. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.d.ts.map +1 -0
  205. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Count.js +3 -3
  206. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.js.map +1 -0
  207. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Distinct.d.ts +3 -2
  208. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.d.ts.map +1 -0
  209. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Distinct.js +3 -3
  210. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.js.map +1 -0
  211. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_DistinctCount.d.ts +3 -2
  212. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.d.ts.map +1 -0
  213. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_DistinctCount.js +4 -3
  214. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.js.map +1 -0
  215. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_JoinString.d.ts +3 -2
  216. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.d.ts.map +1 -0
  217. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_JoinString.js +4 -3
  218. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.js.map +1 -0
  219. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Max.d.ts +3 -2
  220. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.d.ts.map +1 -0
  221. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Max.js +3 -3
  222. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.js.map +1 -0
  223. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Min.d.ts +3 -2
  224. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.d.ts.map +1 -0
  225. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Min.js +3 -3
  226. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.js.map +1 -0
  227. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_StdDev_Population.d.ts +3 -2
  228. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.d.ts.map +1 -0
  229. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_StdDev_Population.js +3 -3
  230. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.js.map +1 -0
  231. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_StdDev_Sample.d.ts +3 -2
  232. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.d.ts.map +1 -0
  233. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_StdDev_Sample.js +3 -3
  234. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.js.map +1 -0
  235. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Sum.d.ts +3 -2
  236. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.d.ts.map +1 -0
  237. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Sum.js +3 -3
  238. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.js.map +1 -0
  239. package/lib/stores/{QueryBuilderPostFilterOperator.d.ts → fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.d.ts} +0 -0
  240. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.d.ts.map +1 -0
  241. package/lib/stores/{QueryBuilderPostFilterOperator.js → fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.js} +0 -0
  242. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.js.map +1 -0
  243. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperatorLoader.d.ts +18 -0
  244. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperatorLoader.d.ts.map +1 -0
  245. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperatorLoader.js +44 -0
  246. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperatorLoader.js.map +1 -0
  247. package/lib/stores/{QueryBuilderPostFilterState.d.ts → fetch-structure/projection/post-filter/QueryBuilderPostFilterState.d.ts} +10 -10
  248. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.d.ts.map +1 -0
  249. package/lib/stores/{QueryBuilderPostFilterState.js → fetch-structure/projection/post-filter/QueryBuilderPostFilterState.js} +24 -21
  250. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.js.map +1 -0
  251. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.d.ts +19 -0
  252. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.d.ts.map +1 -0
  253. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.js +82 -0
  254. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.js.map +1 -0
  255. package/lib/stores/{QueryBuilderPostFilterProcessor.d.ts → fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationProcessor.d.ts} +2 -5
  256. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationProcessor.d.ts.map +1 -0
  257. package/lib/stores/{QueryBuilderPostFilterProcessor.js → fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationProcessor.js} +13 -11
  258. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationProcessor.js.map +1 -0
  259. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperatorHelper.d.ts +2 -2
  260. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperatorHelper.d.ts.map +1 -0
  261. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperatorHelper.js +5 -5
  262. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperatorHelper.js.map +1 -0
  263. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_Contain.d.ts +0 -0
  264. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.d.ts.map +1 -0
  265. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_Contain.js +7 -8
  266. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.js.map +1 -0
  267. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_EndWith.d.ts +0 -0
  268. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.d.ts.map +1 -0
  269. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_EndWith.js +7 -8
  270. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.js.map +1 -0
  271. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_Equal.d.ts +0 -0
  272. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.d.ts.map +1 -0
  273. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_Equal.js +13 -11
  274. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.js.map +1 -0
  275. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_GreaterThan.d.ts +0 -0
  276. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.d.ts.map +1 -0
  277. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_GreaterThan.js +10 -8
  278. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.js.map +1 -0
  279. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_GreaterThanEqual.d.ts +0 -0
  280. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.d.ts.map +1 -0
  281. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_GreaterThanEqual.js +2 -2
  282. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.js.map +1 -0
  283. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_In.d.ts +0 -0
  284. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.d.ts.map +1 -0
  285. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_In.js +8 -8
  286. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.js.map +1 -0
  287. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_IsEmpty.d.ts +0 -0
  288. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.d.ts.map +1 -0
  289. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_IsEmpty.js +3 -3
  290. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.js.map +1 -0
  291. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_LessThan.d.ts +0 -0
  292. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.d.ts.map +1 -0
  293. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_LessThan.js +10 -8
  294. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.js.map +1 -0
  295. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_LessThanEqual.d.ts +0 -0
  296. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.d.ts.map +1 -0
  297. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_LessThanEqual.js +2 -2
  298. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.js.map +1 -0
  299. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_StartWith.d.ts +0 -0
  300. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.d.ts.map +1 -0
  301. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_StartWith.js +7 -8
  302. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.js.map +1 -0
  303. package/lib/stores/filter/QueryBuilderFilterOperator.d.ts +27 -0
  304. package/lib/stores/filter/QueryBuilderFilterOperator.d.ts.map +1 -0
  305. package/lib/stores/filter/QueryBuilderFilterOperator.js +20 -0
  306. package/lib/stores/filter/QueryBuilderFilterOperator.js.map +1 -0
  307. package/lib/stores/filter/QueryBuilderFilterOperatorLoader.d.ts +18 -0
  308. package/lib/stores/filter/QueryBuilderFilterOperatorLoader.d.ts.map +1 -0
  309. package/lib/stores/filter/QueryBuilderFilterOperatorLoader.js +44 -0
  310. package/lib/stores/filter/QueryBuilderFilterOperatorLoader.js.map +1 -0
  311. package/lib/stores/{QueryBuilderFilterState.d.ts → filter/QueryBuilderFilterState.d.ts} +11 -25
  312. package/lib/stores/filter/QueryBuilderFilterState.d.ts.map +1 -0
  313. package/lib/stores/{QueryBuilderFilterState.js → filter/QueryBuilderFilterState.js} +15 -81
  314. package/lib/stores/filter/QueryBuilderFilterState.js.map +1 -0
  315. package/lib/stores/filter/QueryBuilderValueSpecificationBuilder.d.ts +19 -0
  316. package/lib/stores/filter/QueryBuilderValueSpecificationBuilder.d.ts.map +1 -0
  317. package/lib/stores/filter/QueryBuilderValueSpecificationBuilder.js +78 -0
  318. package/lib/stores/filter/QueryBuilderValueSpecificationBuilder.js.map +1 -0
  319. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperatorHelper.d.ts +2 -1
  320. package/lib/stores/filter/operators/QueryBuilderFilterOperatorHelper.d.ts.map +1 -0
  321. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperatorHelper.js +3 -3
  322. package/lib/stores/filter/operators/QueryBuilderFilterOperatorHelper.js.map +1 -0
  323. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_Contain.d.ts +2 -1
  324. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.d.ts.map +1 -0
  325. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_Contain.js +3 -4
  326. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.js.map +1 -0
  327. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_EndWith.d.ts +2 -1
  328. package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.d.ts.map +1 -0
  329. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_EndWith.js +3 -4
  330. package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.js.map +1 -0
  331. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_Equal.d.ts +2 -1
  332. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.d.ts.map +1 -0
  333. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_Equal.js +8 -6
  334. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.js.map +1 -0
  335. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_GreaterThan.d.ts +2 -1
  336. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.d.ts.map +1 -0
  337. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_GreaterThan.js +8 -6
  338. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.js.map +1 -0
  339. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_GreaterThanEqual.d.ts +2 -1
  340. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.d.ts.map +1 -0
  341. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_GreaterThanEqual.js +8 -6
  342. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.js.map +1 -0
  343. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_In.d.ts +2 -1
  344. package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.d.ts.map +1 -0
  345. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_In.js +3 -3
  346. package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.js.map +1 -0
  347. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_IsEmpty.d.ts +2 -1
  348. package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.d.ts.map +1 -0
  349. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_IsEmpty.js +3 -3
  350. package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.js.map +1 -0
  351. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_LessThan.d.ts +2 -1
  352. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.d.ts.map +1 -0
  353. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_LessThan.js +8 -6
  354. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.js.map +1 -0
  355. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_LessThanEqual.d.ts +2 -1
  356. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.d.ts.map +1 -0
  357. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_LessThanEqual.js +8 -6
  358. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.js.map +1 -0
  359. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_StartWith.d.ts +2 -1
  360. package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.d.ts.map +1 -0
  361. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_StartWith.js +3 -4
  362. package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.js.map +1 -0
  363. package/package.json +17 -16
  364. package/src/application/LegendQueryApplicationConfig.ts +35 -1
  365. package/src/components/QueryBuilder.tsx +30 -12
  366. package/src/components/QueryBuilderParameterPanel.tsx +22 -54
  367. package/src/components/QueryBuilderPropertyExpressionEditor.tsx +63 -59
  368. package/src/components/QueryBuilderResultPanel.tsx +81 -59
  369. package/src/components/QueryBuilderSetupPanel.tsx +11 -12
  370. package/src/components/QueryBuilderTextEditor.tsx +1 -1
  371. package/src/components/QueryBuilderUnsupportedQueryEditor.tsx +4 -2
  372. package/src/components/QueryEditor.tsx +39 -1
  373. package/src/components/QueryEditorComponentTestUtils.tsx +0 -2
  374. package/src/components/{QueryBuilderExplorerPanel.tsx → explorer/QueryBuilderExplorerPanel.tsx} +35 -148
  375. package/src/components/{QueryBuilderFunctionsExplorerPanel.tsx → explorer/QueryBuilderFunctionsExplorerPanel.tsx} +25 -70
  376. package/src/components/{QueryBuilderMilestoneEditor.tsx → explorer/QueryBuilderMilestoneEditor.tsx} +38 -38
  377. package/src/components/{QueryBuilderPropertySearchPanel.tsx → explorer/QueryBuilderPropertySearchPanel.tsx} +14 -15
  378. package/src/components/fetch-structure/QueryBuilderFetchStructurePanel.tsx +246 -0
  379. package/src/components/{QueryBuilderGraphFetchTreePanel.tsx → fetch-structure/QueryBuilderGraphFetchTreePanel.tsx} +40 -31
  380. package/src/components/{QueryBuilderPostFilterPanel.tsx → fetch-structure/QueryBuilderPostFilterPanel.tsx} +228 -266
  381. package/src/components/{QueryBuilderProjectionPanel.tsx → fetch-structure/QueryBuilderProjectionPanel.tsx} +135 -181
  382. package/src/components/{QueryBuilderResultModifierPanel.tsx → fetch-structure/QueryBuilderResultModifierPanel.tsx} +20 -10
  383. package/src/components/{QueryBuilderFilterPanel.tsx → filter/QueryBuilderFilterPanel.tsx} +195 -243
  384. package/src/components/{QueryBuilderLambdaEditor.tsx → shared/QueryBuilderLambdaEditor.tsx} +4 -1
  385. package/src/components/shared/QueryBuilderPanelIssueCountBadge.tsx +38 -0
  386. package/src/components/{QueryBuilderPropertyInfoTooltip.tsx → shared/QueryBuilderPropertyInfoTooltip.tsx} +0 -0
  387. package/src/index.ts +0 -4
  388. package/src/stores/QueryBuilderGroupOperationHelper.ts +54 -0
  389. package/src/stores/QueryBuilderPreviewDataHelper.ts +17 -21
  390. package/src/stores/QueryBuilderPropertyEditorState.ts +6 -3
  391. package/src/stores/QueryBuilderResultState.ts +1 -1
  392. package/src/stores/QueryBuilderSetupState.ts +1 -1
  393. package/src/stores/QueryBuilderState.ts +31 -54
  394. package/src/stores/QueryBuilderTestUtils.ts +4 -1
  395. package/src/stores/QueryBuilderTypeaheadHelper.ts +31 -32
  396. package/src/stores/{QueryBuilderLambdaBuilder.ts → QueryBuilderValueSpecificationBuilder.ts} +331 -347
  397. package/src/stores/{QueryBuilderOperatorsHelper.ts → QueryBuilderValueSpecificationHelper.ts} +66 -47
  398. package/src/stores/{QueryBuilderLambdaProcessor.ts → QueryBuilderValueSpecificationProcessor.ts} +28 -13
  399. package/src/stores/QueryEditorStore.ts +19 -3
  400. package/src/stores/QueryParametersState.ts +1 -3
  401. package/src/stores/{QueryBuilderExplorerState.ts → explorer/QueryBuilderExplorerState.ts} +143 -3
  402. package/src/stores/{QueryBuilderPropertySearchPanelState.ts → explorer/QueryBuilderPropertySearchPanelState.ts} +2 -2
  403. package/src/stores/{QueryFunctionsExplorerState.ts → explorer/QueryFunctionsExplorerState.ts} +2 -12
  404. package/src/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.ts +34 -0
  405. package/src/stores/fetch-structure/QueryBuilderFetchStructureState.ts +173 -0
  406. package/src/stores/{QueryBuilderGraphFetchTreeState.ts → fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.ts} +43 -33
  407. package/src/stores/{QueryBuilderGraphFetchTreeUtil.ts → fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.ts} +2 -2
  408. package/src/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchValueSpecificationBuilder.ts +90 -0
  409. package/src/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.ts +329 -0
  410. package/src/stores/fetch-structure/projection/QueryBuilderProjectionState.ts +390 -0
  411. package/src/stores/fetch-structure/projection/QueryBuilderProjectionValueSpecificationBuilder.ts +170 -0
  412. package/src/stores/fetch-structure/projection/QueryResultSetModifierState.ts +95 -0
  413. package/src/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.ts +79 -0
  414. package/src/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperatorLoader.ts +41 -0
  415. package/src/stores/{QueryBuilderAggregationState.ts → fetch-structure/projection/aggregation/QueryBuilderAggregationState.ts} +6 -69
  416. package/src/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperatorHelper.ts +3 -5
  417. package/src/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Average.ts +4 -6
  418. package/src/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Count.ts +4 -6
  419. package/src/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Distinct.ts +4 -6
  420. package/src/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_DistinctCount.ts +4 -6
  421. package/src/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_JoinString.ts +4 -6
  422. package/src/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Max.ts +4 -6
  423. package/src/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Min.ts +4 -6
  424. package/src/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_StdDev_Population.ts +4 -6
  425. package/src/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_StdDev_Sample.ts +4 -6
  426. package/src/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Sum.ts +4 -6
  427. package/src/stores/{QueryBuilderPostFilterOperator.ts → fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.ts} +0 -0
  428. package/src/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperatorLoader.ts +65 -0
  429. package/src/stores/{QueryBuilderPostFilterState.ts → fetch-structure/projection/post-filter/QueryBuilderPostFilterState.ts} +42 -35
  430. package/src/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.ts +131 -0
  431. package/src/stores/{QueryBuilderPostFilterProcessor.ts → fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationProcessor.ts} +13 -11
  432. package/src/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperatorHelper.ts +5 -5
  433. package/src/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_Contain.ts +12 -12
  434. package/src/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_EndWith.ts +12 -12
  435. package/src/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_Equal.ts +23 -16
  436. package/src/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_GreaterThan.ts +18 -11
  437. package/src/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_GreaterThanEqual.ts +2 -2
  438. package/src/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_In.ts +12 -12
  439. package/src/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_IsEmpty.ts +3 -3
  440. package/src/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_LessThan.ts +18 -11
  441. package/src/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_LessThanEqual.ts +2 -2
  442. package/src/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_StartWith.ts +12 -12
  443. package/src/stores/filter/QueryBuilderFilterOperator.ts +52 -0
  444. package/src/stores/filter/QueryBuilderFilterOperatorLoader.ts +65 -0
  445. package/src/stores/{QueryBuilderFilterState.ts → filter/QueryBuilderFilterState.ts} +33 -160
  446. package/src/stores/filter/QueryBuilderValueSpecificationBuilder.ts +120 -0
  447. package/src/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperatorHelper.ts +4 -4
  448. package/src/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_Contain.ts +8 -8
  449. package/src/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_EndWith.ts +8 -8
  450. package/src/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_Equal.ts +18 -11
  451. package/src/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_GreaterThan.ts +17 -10
  452. package/src/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_GreaterThanEqual.ts +17 -10
  453. package/src/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_In.ts +7 -7
  454. package/src/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_IsEmpty.ts +6 -6
  455. package/src/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_LessThan.ts +17 -10
  456. package/src/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_LessThanEqual.ts +17 -10
  457. package/src/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_StartWith.ts +7 -7
  458. package/tsconfig.json +75 -64
  459. package/lib/components/QueryBuilderExplorerPanel.d.ts.map +0 -1
  460. package/lib/components/QueryBuilderExplorerPanel.js.map +0 -1
  461. package/lib/components/QueryBuilderFetchStructurePanel.d.ts.map +0 -1
  462. package/lib/components/QueryBuilderFetchStructurePanel.js +0 -121
  463. package/lib/components/QueryBuilderFetchStructurePanel.js.map +0 -1
  464. package/lib/components/QueryBuilderFilterPanel.d.ts.map +0 -1
  465. package/lib/components/QueryBuilderFilterPanel.js.map +0 -1
  466. package/lib/components/QueryBuilderFunctionsExplorerPanel.d.ts.map +0 -1
  467. package/lib/components/QueryBuilderFunctionsExplorerPanel.js.map +0 -1
  468. package/lib/components/QueryBuilderGraphFetchTreePanel.d.ts.map +0 -1
  469. package/lib/components/QueryBuilderGraphFetchTreePanel.js.map +0 -1
  470. package/lib/components/QueryBuilderLambdaEditor.d.ts.map +0 -1
  471. package/lib/components/QueryBuilderLambdaEditor.js.map +0 -1
  472. package/lib/components/QueryBuilderMilestoneEditor.d.ts.map +0 -1
  473. package/lib/components/QueryBuilderMilestoneEditor.js.map +0 -1
  474. package/lib/components/QueryBuilderPostFilterPanel.d.ts.map +0 -1
  475. package/lib/components/QueryBuilderPostFilterPanel.js.map +0 -1
  476. package/lib/components/QueryBuilderProjectionPanel.d.ts.map +0 -1
  477. package/lib/components/QueryBuilderProjectionPanel.js.map +0 -1
  478. package/lib/components/QueryBuilderPropertyInfoTooltip.d.ts.map +0 -1
  479. package/lib/components/QueryBuilderPropertyInfoTooltip.js.map +0 -1
  480. package/lib/components/QueryBuilderPropertySearchPanel.d.ts.map +0 -1
  481. package/lib/components/QueryBuilderPropertySearchPanel.js.map +0 -1
  482. package/lib/components/QueryBuilderResultModifierPanel.d.ts.map +0 -1
  483. package/lib/components/QueryBuilderResultModifierPanel.js.map +0 -1
  484. package/lib/stores/QueryBuilderAggregationState.d.ts.map +0 -1
  485. package/lib/stores/QueryBuilderAggregationState.js.map +0 -1
  486. package/lib/stores/QueryBuilderExplorerState.d.ts.map +0 -1
  487. package/lib/stores/QueryBuilderExplorerState.js.map +0 -1
  488. package/lib/stores/QueryBuilderFetchStructureState.d.ts +0 -34
  489. package/lib/stores/QueryBuilderFetchStructureState.d.ts.map +0 -1
  490. package/lib/stores/QueryBuilderFetchStructureState.js +0 -50
  491. package/lib/stores/QueryBuilderFetchStructureState.js.map +0 -1
  492. package/lib/stores/QueryBuilderFilterState.d.ts.map +0 -1
  493. package/lib/stores/QueryBuilderFilterState.js.map +0 -1
  494. package/lib/stores/QueryBuilderGraphFetchTreeState.d.ts.map +0 -1
  495. package/lib/stores/QueryBuilderGraphFetchTreeState.js.map +0 -1
  496. package/lib/stores/QueryBuilderGraphFetchTreeUtil.d.ts.map +0 -1
  497. package/lib/stores/QueryBuilderGraphFetchTreeUtil.js.map +0 -1
  498. package/lib/stores/QueryBuilderLambdaBuilder.d.ts.map +0 -1
  499. package/lib/stores/QueryBuilderLambdaBuilder.js.map +0 -1
  500. package/lib/stores/QueryBuilderLambdaProcessor.d.ts.map +0 -1
  501. package/lib/stores/QueryBuilderLambdaProcessor.js.map +0 -1
  502. package/lib/stores/QueryBuilderOperatorLoader.d.ts +0 -47
  503. package/lib/stores/QueryBuilderOperatorLoader.d.ts.map +0 -1
  504. package/lib/stores/QueryBuilderOperatorLoader.js +0 -94
  505. package/lib/stores/QueryBuilderOperatorLoader.js.map +0 -1
  506. package/lib/stores/QueryBuilderOperatorsHelper.d.ts.map +0 -1
  507. package/lib/stores/QueryBuilderOperatorsHelper.js.map +0 -1
  508. package/lib/stores/QueryBuilderPostFilterOperator.d.ts.map +0 -1
  509. package/lib/stores/QueryBuilderPostFilterOperator.js.map +0 -1
  510. package/lib/stores/QueryBuilderPostFilterProcessor.d.ts.map +0 -1
  511. package/lib/stores/QueryBuilderPostFilterProcessor.js.map +0 -1
  512. package/lib/stores/QueryBuilderPostFilterState.d.ts.map +0 -1
  513. package/lib/stores/QueryBuilderPostFilterState.js.map +0 -1
  514. package/lib/stores/QueryBuilderProjectionState.d.ts.map +0 -1
  515. package/lib/stores/QueryBuilderProjectionState.js +0 -428
  516. package/lib/stores/QueryBuilderProjectionState.js.map +0 -1
  517. package/lib/stores/QueryBuilderPropertySearchPanelState.d.ts.map +0 -1
  518. package/lib/stores/QueryBuilderPropertySearchPanelState.js.map +0 -1
  519. package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.d.ts +0 -19
  520. package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.d.ts.map +0 -1
  521. package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.js +0 -50
  522. package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.js.map +0 -1
  523. package/lib/stores/QueryFunctionsExplorerState.d.ts.map +0 -1
  524. package/lib/stores/QueryFunctionsExplorerState.js.map +0 -1
  525. package/lib/stores/QueryResultSetModifierState.d.ts.map +0 -1
  526. package/lib/stores/QueryResultSetModifierState.js +0 -165
  527. package/lib/stores/QueryResultSetModifierState.js.map +0 -1
  528. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperatorHelper.d.ts.map +0 -1
  529. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperatorHelper.js.map +0 -1
  530. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Average.d.ts.map +0 -1
  531. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Average.js.map +0 -1
  532. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Count.d.ts.map +0 -1
  533. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Count.js.map +0 -1
  534. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Distinct.d.ts.map +0 -1
  535. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Distinct.js.map +0 -1
  536. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_DistinctCount.d.ts.map +0 -1
  537. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_DistinctCount.js.map +0 -1
  538. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_JoinString.d.ts.map +0 -1
  539. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_JoinString.js.map +0 -1
  540. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Max.d.ts.map +0 -1
  541. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Max.js.map +0 -1
  542. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Min.d.ts.map +0 -1
  543. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Min.js.map +0 -1
  544. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Population.d.ts.map +0 -1
  545. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Population.js.map +0 -1
  546. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Sample.d.ts.map +0 -1
  547. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Sample.js.map +0 -1
  548. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Sum.d.ts.map +0 -1
  549. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Sum.js.map +0 -1
  550. package/lib/stores/filterOperators/QueryBuilderFilterOperatorHelper.d.ts.map +0 -1
  551. package/lib/stores/filterOperators/QueryBuilderFilterOperatorHelper.js.map +0 -1
  552. package/lib/stores/filterOperators/QueryBuilderFilterOperator_Contain.d.ts.map +0 -1
  553. package/lib/stores/filterOperators/QueryBuilderFilterOperator_Contain.js.map +0 -1
  554. package/lib/stores/filterOperators/QueryBuilderFilterOperator_EndWith.d.ts.map +0 -1
  555. package/lib/stores/filterOperators/QueryBuilderFilterOperator_EndWith.js.map +0 -1
  556. package/lib/stores/filterOperators/QueryBuilderFilterOperator_Equal.d.ts.map +0 -1
  557. package/lib/stores/filterOperators/QueryBuilderFilterOperator_Equal.js.map +0 -1
  558. package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThan.d.ts.map +0 -1
  559. package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThan.js.map +0 -1
  560. package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThanEqual.d.ts.map +0 -1
  561. package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThanEqual.js.map +0 -1
  562. package/lib/stores/filterOperators/QueryBuilderFilterOperator_In.d.ts.map +0 -1
  563. package/lib/stores/filterOperators/QueryBuilderFilterOperator_In.js.map +0 -1
  564. package/lib/stores/filterOperators/QueryBuilderFilterOperator_IsEmpty.d.ts.map +0 -1
  565. package/lib/stores/filterOperators/QueryBuilderFilterOperator_IsEmpty.js.map +0 -1
  566. package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThan.d.ts.map +0 -1
  567. package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThan.js.map +0 -1
  568. package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThanEqual.d.ts.map +0 -1
  569. package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThanEqual.js.map +0 -1
  570. package/lib/stores/filterOperators/QueryBuilderFilterOperator_StartWith.d.ts.map +0 -1
  571. package/lib/stores/filterOperators/QueryBuilderFilterOperator_StartWith.js.map +0 -1
  572. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperatorHelper.d.ts.map +0 -1
  573. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperatorHelper.js.map +0 -1
  574. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Contain.d.ts.map +0 -1
  575. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Contain.js.map +0 -1
  576. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_EndWith.d.ts.map +0 -1
  577. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_EndWith.js.map +0 -1
  578. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Equal.d.ts.map +0 -1
  579. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Equal.js.map +0 -1
  580. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThan.d.ts.map +0 -1
  581. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThan.js.map +0 -1
  582. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThanEqual.d.ts.map +0 -1
  583. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThanEqual.js.map +0 -1
  584. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_In.d.ts.map +0 -1
  585. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_In.js.map +0 -1
  586. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_IsEmpty.d.ts.map +0 -1
  587. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_IsEmpty.js.map +0 -1
  588. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThan.d.ts.map +0 -1
  589. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThan.js.map +0 -1
  590. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThanEqual.d.ts.map +0 -1
  591. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThanEqual.js.map +0 -1
  592. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_StartWith.d.ts.map +0 -1
  593. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_StartWith.js.map +0 -1
  594. package/src/components/QueryBuilderFetchStructurePanel.tsx +0 -224
  595. package/src/stores/QueryBuilderFetchStructureState.ts +0 -66
  596. package/src/stores/QueryBuilderOperatorLoader.ts +0 -133
  597. package/src/stores/QueryBuilderProjectionState.ts +0 -794
  598. package/src/stores/QueryBuilderValueSpecificationBuilderHelper.ts +0 -76
  599. package/src/stores/QueryResultSetModifierState.ts +0 -307
@@ -47,6 +47,10 @@ import {
47
47
  ToggleIcon,
48
48
  HashtagIcon,
49
49
  ClockIcon,
50
+ PanelDropZone,
51
+ DragPreviewLayer,
52
+ PanelEntryDropZonePlaceholder,
53
+ useDragPreviewLayer,
50
54
  } from '@finos/legend-art';
51
55
  import {
52
56
  type Type,
@@ -65,28 +69,11 @@ import {
65
69
  } from '@finos/legend-shared';
66
70
  import { flowResult } from 'mobx';
67
71
  import { observer } from 'mobx-react-lite';
68
- import {
69
- forwardRef,
70
- useCallback,
71
- useEffect,
72
- useMemo,
73
- useRef,
74
- useState,
75
- } from 'react';
76
- import {
77
- type DropTargetMonitor,
78
- useDragLayer,
79
- useDrop,
80
- useDrag,
81
- } from 'react-dnd';
82
- import { getEmptyImage } from 'react-dnd-html5-backend';
83
- import { getColumnMultiplicity } from '../stores/postFilterOperators/QueryBuilderPostFilterOperatorHelper.js';
84
- import { QueryBuilderAggregateColumnState } from '../stores/QueryBuilderAggregationState.js';
85
- import {
86
- isTypeCompatibleWithConditionValueType,
87
- QUERY_BUILDER_GROUP_OPERATION,
88
- } from '../stores/QueryBuilderOperatorsHelper.js';
89
- import type { QueryBuilderPostFilterOperator } from '../stores/QueryBuilderPostFilterOperator.js';
72
+ import { forwardRef, useCallback, useMemo, useRef, useState } from 'react';
73
+ import { useDrop, useDrag } from 'react-dnd';
74
+ import { getColumnMultiplicity } from '../../stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperatorHelper.js';
75
+ import { QueryBuilderAggregateColumnState } from '../../stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.js';
76
+ import type { QueryBuilderPostFilterOperator } from '../../stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.js';
90
77
  import {
91
78
  type QueryBuilderPostFilterTreeNodeData,
92
79
  type QueryBuilderPostFilterDropTarget,
@@ -96,58 +83,21 @@ import {
96
83
  QueryBuilderPostFilterTreeGroupNodeData,
97
84
  QUERY_BUILDER_POST_FILTER_DND_TYPE,
98
85
  QueryBuilderPostFilterTreeBlankConditionNodeData,
99
- } from '../stores/QueryBuilderPostFilterState.js';
86
+ } from '../../stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.js';
100
87
  import {
101
88
  type QueryBuilderProjectionColumnState,
102
89
  type QueryBuilderProjectionColumnDragSource,
103
- QUERY_BUILDER_PROJECTION_DND_TYPE,
90
+ QUERY_BUILDER_PROJECTION_COLUMN_DND_TYPE,
104
91
  QueryBuilderDerivationProjectionColumnState,
105
- } from '../stores/QueryBuilderProjectionState.js';
106
- import type { QueryBuilderState } from '../stores/QueryBuilderState.js';
92
+ } from '../../stores/fetch-structure/projection/QueryBuilderProjectionColumnState.js';
93
+ import type { QueryBuilderState } from '../../stores/QueryBuilderState.js';
107
94
  import {
108
95
  type QueryBuilderParameterDragSource,
109
- QUERY_BUILDER_PARAMETER_TREE_DND_TYPE,
110
- } from '../stores/QueryParametersState.js';
111
- import { QUERY_BUILDER_TEST_ID } from './QueryBuilder_TestID.js';
112
-
113
- const PostFilterConditionDragLayer: React.FC = () => {
114
- const { itemType, item, isDragging, currentPosition } = useDragLayer(
115
- (monitor) => ({
116
- itemType: monitor.getItemType() as QUERY_BUILDER_POST_FILTER_DND_TYPE,
117
- item: monitor.getItem<QueryBuilderPostFilterConditionDragSource | null>(),
118
- isDragging: monitor.isDragging(),
119
- initialOffset: monitor.getInitialSourceClientOffset(),
120
- currentPosition: monitor.getClientOffset(),
121
- }),
122
- );
123
-
124
- if (
125
- !isDragging ||
126
- !item ||
127
- !Object.values(QUERY_BUILDER_POST_FILTER_DND_TYPE).includes(itemType)
128
- ) {
129
- return null;
130
- }
131
- return (
132
- <div className="query-builder-post-filter-tree__drag-preview-layer">
133
- <div
134
- className="query-builder-post-filter-tree__drag-preview"
135
- // added some offset so the mouse doesn't overlap the label too much
136
- style={
137
- !currentPosition
138
- ? { display: 'none' }
139
- : {
140
- transform: `translate(${currentPosition.x + 20}px, ${
141
- currentPosition.y + 10
142
- }px)`,
143
- }
144
- }
145
- >
146
- {item.node.dragLayerLabel}
147
- </div>
148
- </div>
149
- );
150
- };
96
+ QUERY_BUILDER_PARAMETER_DND_TYPE,
97
+ } from '../../stores/QueryParametersState.js';
98
+ import { QUERY_BUILDER_TEST_ID } from '../QueryBuilder_TestID.js';
99
+ import { isTypeCompatibleForAssignment } from '../../stores/QueryBuilderValueSpecificationHelper.js';
100
+ import { QUERY_BUILDER_GROUP_OPERATION } from '../../stores/QueryBuilderGroupOperationHelper.js';
151
101
 
152
102
  const QueryBuilderPostFilterConditionContextMenu = observer(
153
103
  forwardRef<
@@ -158,7 +108,8 @@ const QueryBuilderPostFilterConditionContextMenu = observer(
158
108
  }
159
109
  >(function QueryBuilderPostFilterConditionContextMenu(props, ref) {
160
110
  const { queryBuilderState, node } = props;
161
- const postFilterState = queryBuilderState.postFilterState;
111
+ const postFilterState =
112
+ queryBuilderState.fetchStructureState.projectionState.postFilterState;
162
113
  const removeNode = (): void =>
163
114
  postFilterState.removeNodeAndPruneBranch(node);
164
115
  const createCondition = (): void => {
@@ -203,9 +154,9 @@ const QueryBuilderPostFilterConditionContextMenu = observer(
203
154
  const QueryBuilderPostFilterGroupConditionEditor = observer(
204
155
  (props: {
205
156
  node: QueryBuilderPostFilterTreeGroupNodeData;
206
- isPropertyDragOver: boolean;
157
+ isDragOver: boolean;
207
158
  }) => {
208
- const { node, isPropertyDragOver } = props;
159
+ const { node, isDragOver } = props;
209
160
  const switchOperation: React.MouseEventHandler<HTMLDivElement> = (
210
161
  event,
211
162
  ): void => {
@@ -217,29 +168,30 @@ const QueryBuilderPostFilterGroupConditionEditor = observer(
217
168
  );
218
169
  };
219
170
  return (
220
- <div className="query-builder-post-filter-tree__node__label__content dnd__overlay__container">
221
- {isPropertyDragOver && (
222
- <div className="query-builder-post-filter-tree__node__dnd__overlay">
223
- Add to Logical Group
224
- </div>
225
- )}
226
- <div
227
- className={clsx('query-builder-post-filter-tree__group-node', {
228
- 'query-builder-post-filter-tree__group-node--and':
229
- node.groupOperation === QUERY_BUILDER_GROUP_OPERATION.AND,
230
- 'query-builder-post-filter-tree__group-node--or':
231
- node.groupOperation === QUERY_BUILDER_GROUP_OPERATION.OR,
232
- })}
233
- title="Switch Operation"
234
- onClick={switchOperation}
171
+ <div className="query-builder-post-filter-tree__node__label__content">
172
+ <PanelEntryDropZonePlaceholder
173
+ showPlaceholder={isDragOver}
174
+ label="Add to Logical Group"
175
+ className="query-builder__dnd__placeholder"
235
176
  >
236
- <div className="query-builder-post-filter-tree__group-node__label">
237
- {node.groupOperation}
177
+ <div
178
+ className={clsx('query-builder-post-filter-tree__group-node', {
179
+ 'query-builder-post-filter-tree__group-node--and':
180
+ node.groupOperation === QUERY_BUILDER_GROUP_OPERATION.AND,
181
+ 'query-builder-post-filter-tree__group-node--or':
182
+ node.groupOperation === QUERY_BUILDER_GROUP_OPERATION.OR,
183
+ })}
184
+ title="Switch Operation"
185
+ onClick={switchOperation}
186
+ >
187
+ <div className="query-builder-post-filter-tree__group-node__label">
188
+ {node.groupOperation}
189
+ </div>
190
+ <button className="query-builder-post-filter-tree__group-node__action">
191
+ <FilledTriangleIcon />
192
+ </button>
238
193
  </div>
239
- <button className="query-builder-post-filter-tree__group-node__action">
240
- <FilledTriangleIcon />
241
- </button>
242
- </div>
194
+ </PanelEntryDropZonePlaceholder>
243
195
  </div>
244
196
  );
245
197
  },
@@ -338,41 +290,39 @@ export const QueryBuilderColumnBadge = observer(
338
290
  ) => Promise<void>;
339
291
  }) => {
340
292
  const { postFilterConditionState, onColumnChange } = props;
293
+ const applicationStore = useApplicationStore();
341
294
  const type = postFilterConditionState.columnState.getReturnType();
342
295
  const handleDrop = useCallback(
343
296
  (item: QueryBuilderProjectionColumnDragSource): Promise<void> =>
344
297
  onColumnChange(item.columnState),
345
298
  [onColumnChange],
346
299
  );
347
- const [{ isPropertyDragOver }, dropConnector] = useDrop(
300
+ const [{ isDragOver }, dropConnector] = useDrop<
301
+ QueryBuilderProjectionColumnDragSource,
302
+ void,
303
+ { isDragOver: boolean }
304
+ >(
348
305
  () => ({
349
- accept: [QUERY_BUILDER_PROJECTION_DND_TYPE.PROJECTION_COLUMN],
350
- drop: (
351
- item: QueryBuilderProjectionColumnDragSource,
352
- monitor: DropTargetMonitor,
353
- ): void => {
306
+ accept: [QUERY_BUILDER_PROJECTION_COLUMN_DND_TYPE],
307
+ drop: (item, monitor): void => {
354
308
  if (!monitor.didDrop()) {
355
- handleDrop(item).catch(
356
- postFilterConditionState.postFilterState.queryBuilderState
357
- .applicationStore.alertUnhandledError,
358
- );
359
- }
309
+ handleDrop(item).catch(applicationStore.alertUnhandledError);
310
+ } // prevent drop event propagation to accomondate for nested DnD
360
311
  },
361
- collect: (monitor): { isPropertyDragOver: boolean } => ({
362
- isPropertyDragOver: monitor.isOver({ shallow: true }),
312
+ collect: (monitor) => ({
313
+ isDragOver: monitor.isOver({ shallow: true }),
363
314
  }),
364
315
  }),
365
- [handleDrop],
316
+ [applicationStore, handleDrop],
366
317
  );
367
318
 
368
319
  return (
369
320
  <div ref={dropConnector} className="query-builder-column-badge">
370
- {isPropertyDragOver && (
371
- <div className="query-builder__dnd__placeholder query-builder-column-badge__dnd__placeholder">
372
- Change Property
373
- </div>
374
- )}
375
- {!isPropertyDragOver && (
321
+ <PanelEntryDropZonePlaceholder
322
+ showPlaceholder={isDragOver}
323
+ label="Change Property"
324
+ className="query-builder__dnd__placeholder"
325
+ >
376
326
  <div className="query-builder-column-badge__content">
377
327
  {type && (
378
328
  <div
@@ -403,7 +353,7 @@ export const QueryBuilderColumnBadge = observer(
403
353
  </div>
404
354
  </QueryBuilderColumnInfoTooltip>
405
355
  </div>
406
- )}
356
+ </PanelEntryDropZonePlaceholder>
407
357
  </div>
408
358
  );
409
359
  },
@@ -411,11 +361,12 @@ export const QueryBuilderColumnBadge = observer(
411
361
  const QueryBuilderPostFilterConditionEditor = observer(
412
362
  (props: {
413
363
  node: QueryBuilderPostFilterTreeConditionNodeData;
414
- isPropertyDragOver: boolean;
364
+ isDragOver: boolean;
415
365
  }) => {
416
- const { node, isPropertyDragOver } = props;
366
+ const { node, isDragOver } = props;
417
367
  const graph =
418
- node.condition.postFilterState.queryBuilderState.graphManagerState.graph;
368
+ node.condition.postFilterState.projectionState.queryBuilderState
369
+ .graphManagerState.graph;
419
370
  const applicationStore = useApplicationStore();
420
371
  const changeOperator = (val: QueryBuilderPostFilterOperator) => (): void =>
421
372
  node.condition.changeOperator(val);
@@ -438,10 +389,7 @@ const QueryBuilderPostFilterConditionEditor = observer(
438
389
  const conditionValueType = node.condition.columnState.getReturnType();
439
390
  if (
440
391
  conditionValueType &&
441
- isTypeCompatibleWithConditionValueType(
442
- parameterType,
443
- conditionValueType,
444
- )
392
+ isTypeCompatibleForAssignment(parameterType, conditionValueType)
445
393
  ) {
446
394
  node.condition.setValue(item.variable.parameter);
447
395
  } else {
@@ -452,18 +400,19 @@ const QueryBuilderPostFilterConditionEditor = observer(
452
400
  },
453
401
  [applicationStore, node.condition],
454
402
  );
455
- const [{ isFilterValueDragOver }, dropConnector] = useDrop(
403
+ const [{ isFilterValueDragOver }, dropConnector] = useDrop<
404
+ QueryBuilderParameterDragSource,
405
+ void,
406
+ { isFilterValueDragOver: boolean }
407
+ >(
456
408
  () => ({
457
- accept: [QUERY_BUILDER_PARAMETER_TREE_DND_TYPE.VARIABLE],
458
- drop: (
459
- item: QueryBuilderParameterDragSource,
460
- monitor: DropTargetMonitor,
461
- ): void => {
409
+ accept: [QUERY_BUILDER_PARAMETER_DND_TYPE],
410
+ drop: (item, monitor): void => {
462
411
  if (!monitor.didDrop()) {
463
412
  handleDrop(item);
464
- }
413
+ } // prevent drop event propagation to accomondate for nested DnD
465
414
  },
466
- collect: (monitor): { isFilterValueDragOver: boolean } => ({
415
+ collect: (monitor) => ({
467
416
  isFilterValueDragOver: monitor.isOver({ shallow: true }),
468
417
  }),
469
418
  }),
@@ -496,76 +445,78 @@ const QueryBuilderPostFilterConditionEditor = observer(
496
445
  };
497
446
 
498
447
  return (
499
- <div className="query-builder-post-filter-tree__node__label__content dnd__overlay__container">
500
- {isPropertyDragOver && (
501
- <div className="query-builder-post-filter-tree__node__dnd__overlay">
502
- Add New Logical Group
503
- </div>
504
- )}
505
- <div className="query-builder-post-filter-tree__condition-node">
506
- <div className="query-builder-post-filter-tree__condition-node__property">
507
- <QueryBuilderColumnBadge
508
- postFilterConditionState={node.condition}
509
- onColumnChange={changeColumn}
510
- />
511
- </div>
512
- <DropdownMenu
513
- className="query-builder-post-filter-tree__condition-node__operator"
514
- content={
515
- <MenuContent>
516
- {node.condition.operators.map((op) => (
517
- <MenuContentItem
518
- key={op.uuid}
519
- className="query-builder-post-filter-tree__condition-node__operator__dropdown__option"
520
- onClick={changeOperator(op)}
521
- >
522
- {op.getLabel()}
523
- </MenuContentItem>
524
- ))}
525
- </MenuContent>
526
- }
527
- menuProps={{
528
- anchorOrigin: { vertical: 'bottom', horizontal: 'left' },
529
- transformOrigin: { vertical: 'top', horizontal: 'left' },
530
- elevation: 7,
531
- }}
532
- >
533
- <div className="query-builder-post-filter-tree__condition-node__operator__label">
534
- {node.condition.operator.getLabel()}
535
- </div>
536
- <button
537
- className="query-builder-post-filter-tree__condition-node__operator__dropdown__trigger"
538
- tabIndex={-1}
539
- title="Choose Operator..."
540
- >
541
- <CaretDownIcon />
542
- </button>
543
- </DropdownMenu>
544
- {node.condition.value && (
545
- <div
546
- ref={dropConnector}
547
- className="query-builder-post-filter-tree__condition-node__value dnd__overlay__container"
548
- >
549
- {isFilterValueDragOver && (
550
- <div className="query-builder-post-filter-tree__node__dnd__overlay">
551
- Change Filter Value
552
- </div>
553
- )}
554
- <BasicValueSpecificationEditor
555
- valueSpecification={node.condition.value}
556
- setValueSpecification={changeValueSpecification}
557
- graph={graph}
558
- typeCheckOption={{
559
- expectedType: guaranteeNonNullable(
560
- node.condition.columnState.getReturnType(),
561
- ),
562
- }}
563
- resetValue={resetNode}
564
- selectorConfig={selectorConfig}
448
+ <div className="query-builder-post-filter-tree__node__label__content">
449
+ <PanelEntryDropZonePlaceholder
450
+ showPlaceholder={isDragOver}
451
+ label="Add New Logical Group"
452
+ className="query-builder__dnd__placeholder"
453
+ >
454
+ <div className="query-builder-post-filter-tree__condition-node">
455
+ <div className="query-builder-post-filter-tree__condition-node__property">
456
+ <QueryBuilderColumnBadge
457
+ postFilterConditionState={node.condition}
458
+ onColumnChange={changeColumn}
565
459
  />
566
460
  </div>
567
- )}
568
- </div>
461
+ <DropdownMenu
462
+ className="query-builder-post-filter-tree__condition-node__operator"
463
+ content={
464
+ <MenuContent>
465
+ {node.condition.operators.map((op) => (
466
+ <MenuContentItem
467
+ key={op.uuid}
468
+ className="query-builder-post-filter-tree__condition-node__operator__dropdown__option"
469
+ onClick={changeOperator(op)}
470
+ >
471
+ {op.getLabel()}
472
+ </MenuContentItem>
473
+ ))}
474
+ </MenuContent>
475
+ }
476
+ menuProps={{
477
+ anchorOrigin: { vertical: 'bottom', horizontal: 'left' },
478
+ transformOrigin: { vertical: 'top', horizontal: 'left' },
479
+ elevation: 7,
480
+ }}
481
+ >
482
+ <div className="query-builder-post-filter-tree__condition-node__operator__label">
483
+ {node.condition.operator.getLabel()}
484
+ </div>
485
+ <button
486
+ className="query-builder-post-filter-tree__condition-node__operator__dropdown__trigger"
487
+ tabIndex={-1}
488
+ title="Choose Operator..."
489
+ >
490
+ <CaretDownIcon />
491
+ </button>
492
+ </DropdownMenu>
493
+ {node.condition.value && (
494
+ <div
495
+ ref={dropConnector}
496
+ className="query-builder-post-filter-tree__condition-node__value"
497
+ >
498
+ <PanelEntryDropZonePlaceholder
499
+ showPlaceholder={isFilterValueDragOver}
500
+ label="Change Filter Value"
501
+ className="query-builder__dnd__placeholder"
502
+ >
503
+ <BasicValueSpecificationEditor
504
+ valueSpecification={node.condition.value}
505
+ setValueSpecification={changeValueSpecification}
506
+ graph={graph}
507
+ typeCheckOption={{
508
+ expectedType: guaranteeNonNullable(
509
+ node.condition.columnState.getReturnType(),
510
+ ),
511
+ }}
512
+ resetValue={resetNode}
513
+ selectorConfig={selectorConfig}
514
+ />
515
+ </PanelEntryDropZonePlaceholder>
516
+ </div>
517
+ )}
518
+ </div>
519
+ </PanelEntryDropZonePlaceholder>
569
520
  </div>
570
521
  );
571
522
  },
@@ -574,17 +525,20 @@ const QueryBuilderPostFilterConditionEditor = observer(
574
525
  const QueryBuilderPostFilterBlankConditionEditor = observer(
575
526
  (props: {
576
527
  node: QueryBuilderPostFilterTreeBlankConditionNodeData;
577
- isPropertyDragOver: boolean;
528
+ isDragOver: boolean;
578
529
  }) => {
579
- const { isPropertyDragOver } = props;
530
+ const { isDragOver } = props;
580
531
  return (
581
- <div className="query-builder-post-filter-tree__node__label__content dnd__overlay__container">
582
- {isPropertyDragOver && (
583
- <div className="query-builder-post-filter-tree__node__dnd__overlay">
584
- Create Condition
532
+ <div className="query-builder-post-filter-tree__node__label__content">
533
+ <PanelEntryDropZonePlaceholder
534
+ showPlaceholder={isDragOver}
535
+ label="Create Condition"
536
+ className="query-builder__dnd__placeholder"
537
+ >
538
+ <div className="query-builder-post-filter-tree__blank-node">
539
+ blank
585
540
  </div>
586
- )}
587
- <div className="query-builder-post-filter-tree__blank-node">blank</div>
541
+ </PanelEntryDropZonePlaceholder>
588
542
  </div>
589
543
  );
590
544
  },
@@ -605,7 +559,8 @@ const QueryBuilderPostFilterTreeNodeContainer = observer(
605
559
  const [isSelectedFromContextMenu, setIsSelectedFromContextMenu] =
606
560
  useState(false);
607
561
  const applicationStore = useApplicationStore();
608
- const postFilterState = queryBuilderState.postFilterState;
562
+ const postFilterState =
563
+ queryBuilderState.fetchStructureState.projectionState.postFilterState;
609
564
  const isExpandable =
610
565
  node instanceof QueryBuilderPostFilterTreeGroupNodeData;
611
566
  const selectNode = (): void => onNodeSelect?.(node);
@@ -614,7 +569,7 @@ const QueryBuilderPostFilterTreeNodeContainer = observer(
614
569
  postFilterState.removeNodeAndPruneBranch(node);
615
570
  const handleDrop = useCallback(
616
571
  (item: QueryBuilderPostFilterDropTarget, type: string): void => {
617
- if (type === QUERY_BUILDER_PROJECTION_DND_TYPE.PROJECTION_COLUMN) {
572
+ if (type === QUERY_BUILDER_PROJECTION_COLUMN_DND_TYPE) {
618
573
  const columnState = (item as QueryBuilderProjectionColumnDragSource)
619
574
  .columnState;
620
575
  let conditionState: PostFilterConditionState;
@@ -669,45 +624,45 @@ const QueryBuilderPostFilterTreeNodeContainer = observer(
669
624
  },
670
625
  [applicationStore, postFilterState, node],
671
626
  );
672
- const [{ isPropertyDragOver }, dropConnector] = useDrop(
627
+ const [{ isDragOver }, dropConnector] = useDrop<
628
+ QueryBuilderPostFilterConditionDragSource,
629
+ void,
630
+ { isDragOver: boolean }
631
+ >(
673
632
  () => ({
674
633
  accept: [
675
634
  ...Object.values(QUERY_BUILDER_POST_FILTER_DND_TYPE),
676
- QUERY_BUILDER_PROJECTION_DND_TYPE.PROJECTION_COLUMN,
635
+ QUERY_BUILDER_PROJECTION_COLUMN_DND_TYPE,
677
636
  ],
678
- drop: (
679
- item: QueryBuilderPostFilterConditionDragSource,
680
- monitor: DropTargetMonitor,
681
- ): void => {
637
+ drop: (item, monitor): void => {
682
638
  if (!monitor.didDrop()) {
683
639
  handleDrop(item, monitor.getItemType() as string);
684
640
  } // prevent drop event propagation to accomondate for nested DnD
685
641
  },
686
- collect: (monitor): { isPropertyDragOver: boolean } => ({
687
- isPropertyDragOver: monitor.isOver({ shallow: true }),
642
+ collect: (monitor) => ({
643
+ isDragOver: monitor.isOver({ shallow: true }),
688
644
  }),
689
645
  }),
690
646
  [handleDrop],
691
647
  );
692
648
 
693
- const [, dragConnector, dragPreviewConnector] = useDrag(
694
- () => ({
695
- type:
696
- node instanceof QueryBuilderPostFilterTreeGroupNodeData
697
- ? QUERY_BUILDER_POST_FILTER_DND_TYPE.GROUP_CONDITION
698
- : node instanceof QueryBuilderPostFilterTreeConditionNodeData
699
- ? QUERY_BUILDER_POST_FILTER_DND_TYPE.CONDITION
700
- : QUERY_BUILDER_POST_FILTER_DND_TYPE.BLANK_CONDITION,
701
- item: (): QueryBuilderPostFilterConditionDragSource => ({ node }),
702
- end: (): void => postFilterState.setRearrangingConditions(false),
703
- }),
704
- [node, postFilterState],
705
- );
649
+ const [, dragConnector, dragPreviewConnector] =
650
+ useDrag<QueryBuilderPostFilterConditionDragSource>(
651
+ () => ({
652
+ type:
653
+ node instanceof QueryBuilderPostFilterTreeGroupNodeData
654
+ ? QUERY_BUILDER_POST_FILTER_DND_TYPE.GROUP_CONDITION
655
+ : node instanceof QueryBuilderPostFilterTreeConditionNodeData
656
+ ? QUERY_BUILDER_POST_FILTER_DND_TYPE.CONDITION
657
+ : QUERY_BUILDER_POST_FILTER_DND_TYPE.BLANK_CONDITION,
658
+ item: () => ({ node }),
659
+ end: (): void => postFilterState.setRearrangingConditions(false),
660
+ }),
661
+ [node, postFilterState],
662
+ );
706
663
  dragConnector(dropConnector(ref));
707
- // hide default HTML5 preview image
708
- useEffect(() => {
709
- dragPreviewConnector(getEmptyImage(), { captureDraggingState: true });
710
- }, [dragPreviewConnector]);
664
+ useDragPreviewLayer(dragPreviewConnector);
665
+
711
666
  // context menu
712
667
  const onContextMenuOpen = (): void => setIsSelectedFromContextMenu(true);
713
668
  const onContextMenuClose = (): void => setIsSelectedFromContextMenu(false);
@@ -766,20 +721,20 @@ const QueryBuilderPostFilterTreeNodeContainer = observer(
766
721
  {node instanceof QueryBuilderPostFilterTreeGroupNodeData && (
767
722
  <QueryBuilderPostFilterGroupConditionEditor
768
723
  node={node}
769
- isPropertyDragOver={isPropertyDragOver}
724
+ isDragOver={isDragOver}
770
725
  />
771
726
  )}
772
727
  {node instanceof QueryBuilderPostFilterTreeConditionNodeData && (
773
728
  <QueryBuilderPostFilterConditionEditor
774
729
  node={node}
775
- isPropertyDragOver={isPropertyDragOver}
730
+ isDragOver={isDragOver}
776
731
  />
777
732
  )}
778
733
  {node instanceof
779
734
  QueryBuilderPostFilterTreeBlankConditionNodeData && (
780
735
  <QueryBuilderPostFilterBlankConditionEditor
781
736
  node={node}
782
- isPropertyDragOver={isPropertyDragOver}
737
+ isDragOver={isDragOver}
783
738
  />
784
739
  )}
785
740
  </div>
@@ -845,7 +800,8 @@ const QueryBuilderPostFilterTreeNodeView = observer(
845
800
  const QueryBuilderPostFilterTree = observer(
846
801
  (props: { queryBuilderState: QueryBuilderState }) => {
847
802
  const { queryBuilderState } = props;
848
- const postFilterState = queryBuilderState.postFilterState;
803
+ const postFilterState =
804
+ queryBuilderState.fetchStructureState.projectionState.postFilterState;
849
805
  const rootNodes = postFilterState.rootIds.map((rootId) =>
850
806
  postFilterState.getNode(rootId),
851
807
  );
@@ -885,7 +841,8 @@ export const QueryBuilderPostFilterPanel = observer(
885
841
  (props: { queryBuilderState: QueryBuilderState }) => {
886
842
  const { queryBuilderState } = props;
887
843
  const applicationStore = useApplicationStore();
888
- const postFilterState = queryBuilderState.postFilterState;
844
+ const postFilterState =
845
+ queryBuilderState.fetchStructureState.projectionState.postFilterState;
889
846
  const rootNode = postFilterState.getRootNode();
890
847
  // actions
891
848
  const collapseTree = (): void => {
@@ -987,24 +944,23 @@ export const QueryBuilderPostFilterPanel = observer(
987
944
  .columns,
988
945
  ],
989
946
  );
990
- const [{ isPropertyDragOver }, dropConnector] = useDrop(
947
+ const [{ isDragOver }, dropTargetConnector] = useDrop<
948
+ QueryBuilderProjectionColumnDragSource,
949
+ void,
950
+ { isDragOver: boolean }
951
+ >(
991
952
  () => ({
992
- accept: [QUERY_BUILDER_PROJECTION_DND_TYPE.PROJECTION_COLUMN],
993
- drop: (
994
- item: QueryBuilderProjectionColumnDragSource,
995
- monitor: DropTargetMonitor,
996
- ): void => {
953
+ accept: [QUERY_BUILDER_PROJECTION_COLUMN_DND_TYPE],
954
+ drop: (item, monitor): void => {
997
955
  if (!monitor.didDrop()) {
998
- handleDrop(item).catch(
999
- queryBuilderState.applicationStore.alertUnhandledError,
1000
- );
956
+ handleDrop(item).catch(applicationStore.alertUnhandledError);
1001
957
  } // prevent drop event propagation to accomondate for nested DnD
1002
958
  },
1003
- collect: (monitor): { isPropertyDragOver: boolean } => ({
1004
- isPropertyDragOver: monitor.isOver({ shallow: true }),
959
+ collect: (monitor) => ({
960
+ isDragOver: monitor.isOver({ shallow: true }),
1005
961
  }),
1006
962
  }),
1007
- [handleDrop],
963
+ [applicationStore, handleDrop],
1008
964
  );
1009
965
  return (
1010
966
  <div
@@ -1081,25 +1037,31 @@ export const QueryBuilderPostFilterPanel = observer(
1081
1037
  </button>
1082
1038
  </div>
1083
1039
  </div>
1084
- <div
1085
- className="panel__content query-builder__filter__content dnd__overlay__container"
1086
- ref={dropConnector}
1087
- >
1088
- <div className={clsx({ dnd__overlay: isPropertyDragOver })} />
1089
- {postFilterState.isEmpty && (
1090
- <BlankPanelPlaceholder
1091
- placeholderText="Add a post-filter condition"
1092
- tooltipText="Drag and drop properties here"
1093
- />
1094
- )}
1095
- {!postFilterState.isEmpty && (
1096
- <>
1097
- <PostFilterConditionDragLayer />
1098
- <QueryBuilderPostFilterTree
1099
- queryBuilderState={queryBuilderState}
1040
+ <div className="panel__content query-builder__filter__content">
1041
+ <PanelDropZone
1042
+ isDragOver={isDragOver}
1043
+ dropTargetConnector={dropTargetConnector}
1044
+ >
1045
+ {postFilterState.isEmpty && (
1046
+ <BlankPanelPlaceholder
1047
+ text="Add a post-filter condition"
1048
+ tooltipText="Drag and drop properties here"
1100
1049
  />
1101
- </>
1102
- )}
1050
+ )}
1051
+ {!postFilterState.isEmpty && (
1052
+ <>
1053
+ <DragPreviewLayer
1054
+ labelGetter={(
1055
+ item: QueryBuilderPostFilterConditionDragSource,
1056
+ ): string => item.node.dragPreviewLabel}
1057
+ types={Object.values(QUERY_BUILDER_POST_FILTER_DND_TYPE)}
1058
+ />
1059
+ <QueryBuilderPostFilterTree
1060
+ queryBuilderState={queryBuilderState}
1061
+ />
1062
+ </>
1063
+ )}
1064
+ </PanelDropZone>
1103
1065
  </div>
1104
1066
  </div>
1105
1067
  );