@finos/legend-application-query 5.2.1 → 5.2.4

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 (572) hide show
  1. package/lib/components/QueryBuilder.d.ts.map +1 -1
  2. package/lib/components/QueryBuilder.js +16 -9
  3. package/lib/components/QueryBuilder.js.map +1 -1
  4. package/lib/components/QueryBuilderParameterPanel.d.ts.map +1 -1
  5. package/lib/components/QueryBuilderParameterPanel.js +1 -1
  6. package/lib/components/QueryBuilderParameterPanel.js.map +1 -1
  7. package/lib/components/QueryBuilderPropertyExpressionEditor.d.ts +1 -1
  8. package/lib/components/QueryBuilderPropertyExpressionEditor.d.ts.map +1 -1
  9. package/lib/components/QueryBuilderPropertyExpressionEditor.js +2 -2
  10. package/lib/components/QueryBuilderPropertyExpressionEditor.js.map +1 -1
  11. package/lib/components/QueryBuilderResultPanel.d.ts.map +1 -1
  12. package/lib/components/QueryBuilderResultPanel.js +6 -6
  13. package/lib/components/QueryBuilderResultPanel.js.map +1 -1
  14. package/lib/components/QueryBuilderSetupPanel.js +1 -1
  15. package/lib/components/QueryBuilderSetupPanel.js.map +1 -1
  16. package/lib/components/QueryBuilderTextEditor.js +1 -1
  17. package/lib/components/QueryBuilderTextEditor.js.map +1 -1
  18. package/lib/components/QueryEditorComponentTestUtils.d.ts.map +1 -1
  19. package/lib/components/QueryEditorComponentTestUtils.js +0 -2
  20. package/lib/components/QueryEditorComponentTestUtils.js.map +1 -1
  21. package/lib/components/{QueryBuilderExplorerPanel.d.ts → explorer/QueryBuilderExplorerPanel.d.ts} +1 -1
  22. package/lib/components/explorer/QueryBuilderExplorerPanel.d.ts.map +1 -0
  23. package/lib/components/{QueryBuilderExplorerPanel.js → explorer/QueryBuilderExplorerPanel.js} +12 -47
  24. package/lib/components/explorer/QueryBuilderExplorerPanel.js.map +1 -0
  25. package/lib/components/{QueryBuilderFunctionsExplorerPanel.d.ts → explorer/QueryBuilderFunctionsExplorerPanel.d.ts} +1 -1
  26. package/lib/components/explorer/QueryBuilderFunctionsExplorerPanel.d.ts.map +1 -0
  27. package/lib/components/{QueryBuilderFunctionsExplorerPanel.js → explorer/QueryBuilderFunctionsExplorerPanel.js} +1 -1
  28. package/lib/components/explorer/QueryBuilderFunctionsExplorerPanel.js.map +1 -0
  29. package/lib/components/{QueryBuilderMilestoneEditor.d.ts → explorer/QueryBuilderMilestoneEditor.d.ts} +1 -1
  30. package/lib/components/explorer/QueryBuilderMilestoneEditor.d.ts.map +1 -0
  31. package/lib/components/{QueryBuilderMilestoneEditor.js → explorer/QueryBuilderMilestoneEditor.js} +3 -3
  32. package/lib/components/explorer/QueryBuilderMilestoneEditor.js.map +1 -0
  33. package/lib/components/{QueryBuilderPropertySearchPanel.d.ts → explorer/QueryBuilderPropertySearchPanel.d.ts} +1 -1
  34. package/lib/components/explorer/QueryBuilderPropertySearchPanel.d.ts.map +1 -0
  35. package/lib/components/{QueryBuilderPropertySearchPanel.js → explorer/QueryBuilderPropertySearchPanel.js} +5 -5
  36. package/lib/components/explorer/QueryBuilderPropertySearchPanel.js.map +1 -0
  37. package/lib/components/{QueryBuilderFetchStructurePanel.d.ts → fetch-structure/QueryBuilderFetchStructurePanel.d.ts} +1 -1
  38. package/lib/components/fetch-structure/QueryBuilderFetchStructurePanel.d.ts.map +1 -0
  39. package/lib/components/{QueryBuilderFetchStructurePanel.js → fetch-structure/QueryBuilderFetchStructurePanel.js} +15 -12
  40. package/lib/components/fetch-structure/QueryBuilderFetchStructurePanel.js.map +1 -0
  41. package/lib/components/{QueryBuilderGraphFetchTreePanel.d.ts → fetch-structure/QueryBuilderGraphFetchTreePanel.d.ts} +3 -3
  42. package/lib/components/fetch-structure/QueryBuilderGraphFetchTreePanel.d.ts.map +1 -0
  43. package/lib/components/{QueryBuilderGraphFetchTreePanel.js → fetch-structure/QueryBuilderGraphFetchTreePanel.js} +4 -4
  44. package/lib/components/fetch-structure/QueryBuilderGraphFetchTreePanel.js.map +1 -0
  45. package/lib/components/{QueryBuilderPostFilterPanel.d.ts → fetch-structure/QueryBuilderPostFilterPanel.d.ts} +3 -3
  46. package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.d.ts.map +1 -0
  47. package/lib/components/{QueryBuilderPostFilterPanel.js → fetch-structure/QueryBuilderPostFilterPanel.js} +20 -18
  48. package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.js.map +1 -0
  49. package/lib/components/{QueryBuilderProjectionPanel.d.ts → fetch-structure/QueryBuilderProjectionPanel.d.ts} +1 -1
  50. package/lib/components/fetch-structure/QueryBuilderProjectionPanel.d.ts.map +1 -0
  51. package/lib/components/{QueryBuilderProjectionPanel.js → fetch-structure/QueryBuilderProjectionPanel.js} +11 -11
  52. package/lib/components/fetch-structure/QueryBuilderProjectionPanel.js.map +1 -0
  53. package/lib/components/{QueryBuilderResultModifierPanel.d.ts → fetch-structure/QueryBuilderResultModifierPanel.d.ts} +1 -1
  54. package/lib/components/fetch-structure/QueryBuilderResultModifierPanel.d.ts.map +1 -0
  55. package/lib/components/{QueryBuilderResultModifierPanel.js → fetch-structure/QueryBuilderResultModifierPanel.js} +9 -6
  56. package/lib/components/fetch-structure/QueryBuilderResultModifierPanel.js.map +1 -0
  57. package/lib/components/{QueryBuilderFilterPanel.d.ts → filter/QueryBuilderFilterPanel.d.ts} +1 -1
  58. package/lib/components/filter/QueryBuilderFilterPanel.d.ts.map +1 -0
  59. package/lib/components/{QueryBuilderFilterPanel.js → filter/QueryBuilderFilterPanel.js} +10 -9
  60. package/lib/components/filter/QueryBuilderFilterPanel.js.map +1 -0
  61. package/lib/components/{QueryBuilderLambdaEditor.d.ts → shared/QueryBuilderLambdaEditor.d.ts} +1 -1
  62. package/lib/components/shared/QueryBuilderLambdaEditor.d.ts.map +1 -0
  63. package/lib/components/{QueryBuilderLambdaEditor.js → shared/QueryBuilderLambdaEditor.js} +0 -0
  64. package/lib/components/shared/QueryBuilderLambdaEditor.js.map +1 -0
  65. package/lib/components/{QueryBuilderPanelIssueCountBadge.d.ts → shared/QueryBuilderPanelIssueCountBadge.d.ts} +0 -0
  66. package/lib/components/shared/QueryBuilderPanelIssueCountBadge.d.ts.map +1 -0
  67. package/lib/components/{QueryBuilderPanelIssueCountBadge.js → shared/QueryBuilderPanelIssueCountBadge.js} +0 -0
  68. package/lib/components/shared/QueryBuilderPanelIssueCountBadge.js.map +1 -0
  69. package/lib/components/{QueryBuilderPropertyInfoTooltip.d.ts → shared/QueryBuilderPropertyInfoTooltip.d.ts} +0 -0
  70. package/lib/components/shared/QueryBuilderPropertyInfoTooltip.d.ts.map +1 -0
  71. package/lib/components/{QueryBuilderPropertyInfoTooltip.js → shared/QueryBuilderPropertyInfoTooltip.js} +0 -0
  72. package/lib/components/shared/QueryBuilderPropertyInfoTooltip.js.map +1 -0
  73. package/lib/index.css +2 -2
  74. package/lib/index.css.map +1 -1
  75. package/lib/index.d.ts +0 -4
  76. package/lib/index.d.ts.map +1 -1
  77. package/lib/index.js +0 -4
  78. package/lib/index.js.map +1 -1
  79. package/lib/package.json +1 -1
  80. package/lib/stores/QueryBuilderGroupOperationHelper.d.ts +22 -0
  81. package/lib/stores/QueryBuilderGroupOperationHelper.d.ts.map +1 -0
  82. package/lib/stores/QueryBuilderGroupOperationHelper.js +43 -0
  83. package/lib/stores/QueryBuilderGroupOperationHelper.js.map +1 -0
  84. package/lib/stores/QueryBuilderPreviewDataHelper.d.ts.map +1 -1
  85. package/lib/stores/QueryBuilderPreviewDataHelper.js +16 -17
  86. package/lib/stores/QueryBuilderPreviewDataHelper.js.map +1 -1
  87. package/lib/stores/QueryBuilderPropertyEditorState.d.ts.map +1 -1
  88. package/lib/stores/QueryBuilderPropertyEditorState.js +5 -4
  89. package/lib/stores/QueryBuilderPropertyEditorState.js.map +1 -1
  90. package/lib/stores/QueryBuilderResultState.js +1 -1
  91. package/lib/stores/QueryBuilderResultState.js.map +1 -1
  92. package/lib/stores/QueryBuilderState.d.ts +9 -16
  93. package/lib/stores/QueryBuilderState.d.ts.map +1 -1
  94. package/lib/stores/QueryBuilderState.js +19 -33
  95. package/lib/stores/QueryBuilderState.js.map +1 -1
  96. package/lib/stores/QueryBuilderTestUtils.d.ts.map +1 -1
  97. package/lib/stores/QueryBuilderTestUtils.js +2 -1
  98. package/lib/stores/QueryBuilderTestUtils.js.map +1 -1
  99. package/lib/stores/QueryBuilderTypeaheadHelper.d.ts +7 -7
  100. package/lib/stores/QueryBuilderTypeaheadHelper.d.ts.map +1 -1
  101. package/lib/stores/QueryBuilderTypeaheadHelper.js +23 -28
  102. package/lib/stores/QueryBuilderTypeaheadHelper.js.map +1 -1
  103. package/lib/stores/{QueryBuilderLambdaBuilder.d.ts → QueryBuilderValueSpecificationBuilder.d.ts} +1 -3
  104. package/lib/stores/QueryBuilderValueSpecificationBuilder.d.ts.map +1 -0
  105. package/lib/stores/{QueryBuilderLambdaBuilder.js → QueryBuilderValueSpecificationBuilder.js} +179 -190
  106. package/lib/stores/QueryBuilderValueSpecificationBuilder.js.map +1 -0
  107. package/lib/stores/{QueryBuilderOperatorsHelper.d.ts → QueryBuilderValueSpecificationHelper.d.ts} +5 -9
  108. package/lib/stores/QueryBuilderValueSpecificationHelper.d.ts.map +1 -0
  109. package/lib/stores/{QueryBuilderOperatorsHelper.js → QueryBuilderValueSpecificationHelper.js} +38 -30
  110. package/lib/stores/QueryBuilderValueSpecificationHelper.js.map +1 -0
  111. package/lib/stores/{QueryBuilderLambdaProcessor.d.ts → QueryBuilderValueSpecificationProcessor.d.ts} +1 -1
  112. package/lib/stores/QueryBuilderValueSpecificationProcessor.d.ts.map +1 -0
  113. package/lib/stores/{QueryBuilderLambdaProcessor.js → QueryBuilderValueSpecificationProcessor.js} +16 -14
  114. package/lib/stores/QueryBuilderValueSpecificationProcessor.js.map +1 -0
  115. package/lib/stores/{QueryBuilderExplorerState.d.ts → explorer/QueryBuilderExplorerState.d.ts} +3 -2
  116. package/lib/stores/explorer/QueryBuilderExplorerState.d.ts.map +1 -0
  117. package/lib/stores/{QueryBuilderExplorerState.js → explorer/QueryBuilderExplorerState.js} +77 -3
  118. package/lib/stores/explorer/QueryBuilderExplorerState.js.map +1 -0
  119. package/lib/stores/{QueryBuilderPropertySearchPanelState.d.ts → explorer/QueryBuilderPropertySearchPanelState.d.ts} +2 -2
  120. package/lib/stores/explorer/QueryBuilderPropertySearchPanelState.d.ts.map +1 -0
  121. package/lib/stores/{QueryBuilderPropertySearchPanelState.js → explorer/QueryBuilderPropertySearchPanelState.js} +1 -1
  122. package/lib/stores/explorer/QueryBuilderPropertySearchPanelState.js.map +1 -0
  123. package/lib/stores/{QueryFunctionsExplorerState.d.ts → explorer/QueryFunctionsExplorerState.d.ts} +1 -1
  124. package/lib/stores/explorer/QueryFunctionsExplorerState.d.ts.map +1 -0
  125. package/lib/stores/{QueryFunctionsExplorerState.js → explorer/QueryFunctionsExplorerState.js} +0 -0
  126. package/lib/stores/explorer/QueryFunctionsExplorerState.js.map +1 -0
  127. package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.d.ts +23 -0
  128. package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.d.ts.map +1 -0
  129. package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.js +24 -0
  130. package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.js.map +1 -0
  131. package/lib/stores/{QueryBuilderFetchStructureState.d.ts → fetch-structure/QueryBuilderFetchStructureState.d.ts} +11 -7
  132. package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.d.ts.map +1 -0
  133. package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.js +116 -0
  134. package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.js.map +1 -0
  135. package/lib/stores/{QueryBuilderGraphFetchTreeState.d.ts → fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.d.ts} +6 -5
  136. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.d.ts.map +1 -0
  137. package/lib/stores/{QueryBuilderGraphFetchTreeState.js → fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.js} +17 -17
  138. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.js.map +1 -0
  139. package/lib/stores/{QueryBuilderGraphFetchTreeUtil.d.ts → fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.d.ts} +2 -2
  140. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.d.ts.map +1 -0
  141. package/lib/stores/{QueryBuilderGraphFetchTreeUtil.js → fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.js} +1 -1
  142. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.js.map +1 -0
  143. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchValueSpecificationBuilder.d.ts +19 -0
  144. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchValueSpecificationBuilder.d.ts.map +1 -0
  145. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchValueSpecificationBuilder.js +49 -0
  146. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchValueSpecificationBuilder.js.map +1 -0
  147. package/lib/stores/{QueryBuilderProjectionState.d.ts → fetch-structure/projection/QueryBuilderProjectionColumnState.d.ts} +6 -34
  148. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.d.ts.map +1 -0
  149. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.js +187 -0
  150. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.js.map +1 -0
  151. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.d.ts +59 -0
  152. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.d.ts.map +1 -0
  153. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.js +203 -0
  154. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.js.map +1 -0
  155. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionValueSpecificationBuilder.d.ts +21 -0
  156. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionValueSpecificationBuilder.d.ts.map +1 -0
  157. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionValueSpecificationBuilder.js +73 -0
  158. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionValueSpecificationBuilder.js.map +1 -0
  159. package/lib/stores/{QueryResultSetModifierState.d.ts → fetch-structure/projection/QueryResultSetModifierState.d.ts} +5 -14
  160. package/lib/stores/fetch-structure/projection/QueryResultSetModifierState.d.ts.map +1 -0
  161. package/lib/stores/fetch-structure/projection/QueryResultSetModifierState.js +77 -0
  162. package/lib/stores/fetch-structure/projection/QueryResultSetModifierState.js.map +1 -0
  163. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.d.ts +32 -0
  164. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.d.ts.map +1 -0
  165. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.js +36 -0
  166. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.js.map +1 -0
  167. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperatorLoader.d.ts +18 -0
  168. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperatorLoader.d.ts.map +1 -0
  169. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperatorLoader.js +38 -0
  170. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperatorLoader.js.map +1 -0
  171. package/lib/stores/{QueryBuilderAggregationState.d.ts → fetch-structure/projection/aggregation/QueryBuilderAggregationState.d.ts} +4 -15
  172. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.d.ts.map +1 -0
  173. package/lib/stores/{QueryBuilderAggregationState.js → fetch-structure/projection/aggregation/QueryBuilderAggregationState.js} +2 -21
  174. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.js.map +1 -0
  175. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperatorHelper.d.ts +3 -2
  176. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperatorHelper.d.ts.map +1 -0
  177. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperatorHelper.js +1 -1
  178. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperatorHelper.js.map +1 -0
  179. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Average.d.ts +3 -2
  180. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.d.ts.map +1 -0
  181. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Average.js +3 -3
  182. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.js.map +1 -0
  183. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Count.d.ts +3 -2
  184. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.d.ts.map +1 -0
  185. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Count.js +3 -3
  186. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.js.map +1 -0
  187. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Distinct.d.ts +3 -2
  188. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.d.ts.map +1 -0
  189. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Distinct.js +3 -3
  190. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.js.map +1 -0
  191. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_DistinctCount.d.ts +3 -2
  192. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.d.ts.map +1 -0
  193. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_DistinctCount.js +4 -3
  194. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.js.map +1 -0
  195. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_JoinString.d.ts +3 -2
  196. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.d.ts.map +1 -0
  197. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_JoinString.js +4 -3
  198. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.js.map +1 -0
  199. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Max.d.ts +3 -2
  200. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.d.ts.map +1 -0
  201. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Max.js +3 -3
  202. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.js.map +1 -0
  203. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Min.d.ts +3 -2
  204. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.d.ts.map +1 -0
  205. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Min.js +3 -3
  206. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.js.map +1 -0
  207. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_StdDev_Population.d.ts +3 -2
  208. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.d.ts.map +1 -0
  209. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_StdDev_Population.js +3 -3
  210. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.js.map +1 -0
  211. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_StdDev_Sample.d.ts +3 -2
  212. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.d.ts.map +1 -0
  213. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_StdDev_Sample.js +3 -3
  214. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.js.map +1 -0
  215. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Sum.d.ts +3 -2
  216. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.d.ts.map +1 -0
  217. package/lib/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Sum.js +3 -3
  218. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.js.map +1 -0
  219. package/lib/stores/{QueryBuilderPostFilterOperator.d.ts → fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.d.ts} +0 -0
  220. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.d.ts.map +1 -0
  221. package/lib/stores/{QueryBuilderPostFilterOperator.js → fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.js} +0 -0
  222. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.js.map +1 -0
  223. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperatorLoader.d.ts +18 -0
  224. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperatorLoader.d.ts.map +1 -0
  225. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperatorLoader.js +44 -0
  226. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperatorLoader.js.map +1 -0
  227. package/lib/stores/{QueryBuilderPostFilterState.d.ts → fetch-structure/projection/post-filter/QueryBuilderPostFilterState.d.ts} +6 -6
  228. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.d.ts.map +1 -0
  229. package/lib/stores/{QueryBuilderPostFilterState.js → fetch-structure/projection/post-filter/QueryBuilderPostFilterState.js} +18 -15
  230. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.js.map +1 -0
  231. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.d.ts +19 -0
  232. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.d.ts.map +1 -0
  233. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.js +82 -0
  234. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.js.map +1 -0
  235. package/lib/stores/{QueryBuilderPostFilterProcessor.d.ts → fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationProcessor.d.ts} +2 -5
  236. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationProcessor.d.ts.map +1 -0
  237. package/lib/stores/{QueryBuilderPostFilterProcessor.js → fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationProcessor.js} +13 -11
  238. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationProcessor.js.map +1 -0
  239. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperatorHelper.d.ts +2 -2
  240. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperatorHelper.d.ts.map +1 -0
  241. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperatorHelper.js +5 -5
  242. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperatorHelper.js.map +1 -0
  243. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_Contain.d.ts +0 -0
  244. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.d.ts.map +1 -0
  245. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_Contain.js +7 -8
  246. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.js.map +1 -0
  247. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_EndWith.d.ts +0 -0
  248. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.d.ts.map +1 -0
  249. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_EndWith.js +7 -8
  250. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.js.map +1 -0
  251. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_Equal.d.ts +0 -0
  252. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.d.ts.map +1 -0
  253. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_Equal.js +11 -12
  254. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.js.map +1 -0
  255. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_GreaterThan.d.ts +0 -0
  256. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.d.ts.map +1 -0
  257. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_GreaterThan.js +8 -9
  258. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.js.map +1 -0
  259. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_GreaterThanEqual.d.ts +0 -0
  260. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.d.ts.map +1 -0
  261. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_GreaterThanEqual.js +2 -2
  262. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.js.map +1 -0
  263. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_In.d.ts +0 -0
  264. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.d.ts.map +1 -0
  265. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_In.js +8 -8
  266. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.js.map +1 -0
  267. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_IsEmpty.d.ts +0 -0
  268. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.d.ts.map +1 -0
  269. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_IsEmpty.js +3 -3
  270. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.js.map +1 -0
  271. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_LessThan.d.ts +0 -0
  272. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.d.ts.map +1 -0
  273. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_LessThan.js +8 -9
  274. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.js.map +1 -0
  275. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_LessThanEqual.d.ts +0 -0
  276. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.d.ts.map +1 -0
  277. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_LessThanEqual.js +2 -2
  278. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.js.map +1 -0
  279. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_StartWith.d.ts +0 -0
  280. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.d.ts.map +1 -0
  281. package/lib/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_StartWith.js +7 -8
  282. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.js.map +1 -0
  283. package/lib/stores/filter/QueryBuilderFilterOperator.d.ts +27 -0
  284. package/lib/stores/filter/QueryBuilderFilterOperator.d.ts.map +1 -0
  285. package/lib/stores/filter/QueryBuilderFilterOperator.js +20 -0
  286. package/lib/stores/filter/QueryBuilderFilterOperator.js.map +1 -0
  287. package/lib/stores/filter/QueryBuilderFilterOperatorLoader.d.ts +18 -0
  288. package/lib/stores/filter/QueryBuilderFilterOperatorLoader.d.ts.map +1 -0
  289. package/lib/stores/filter/QueryBuilderFilterOperatorLoader.js +44 -0
  290. package/lib/stores/filter/QueryBuilderFilterOperatorLoader.js.map +1 -0
  291. package/lib/stores/{QueryBuilderFilterState.d.ts → filter/QueryBuilderFilterState.d.ts} +7 -16
  292. package/lib/stores/filter/QueryBuilderFilterState.d.ts.map +1 -0
  293. package/lib/stores/{QueryBuilderFilterState.js → filter/QueryBuilderFilterState.js} +9 -70
  294. package/lib/stores/filter/QueryBuilderFilterState.js.map +1 -0
  295. package/lib/stores/filter/QueryBuilderValueSpecificationBuilder.d.ts +19 -0
  296. package/lib/stores/filter/QueryBuilderValueSpecificationBuilder.d.ts.map +1 -0
  297. package/lib/stores/filter/QueryBuilderValueSpecificationBuilder.js +78 -0
  298. package/lib/stores/filter/QueryBuilderValueSpecificationBuilder.js.map +1 -0
  299. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperatorHelper.d.ts +2 -1
  300. package/lib/stores/filter/operators/QueryBuilderFilterOperatorHelper.d.ts.map +1 -0
  301. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperatorHelper.js +3 -3
  302. package/lib/stores/filter/operators/QueryBuilderFilterOperatorHelper.js.map +1 -0
  303. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_Contain.d.ts +2 -1
  304. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.d.ts.map +1 -0
  305. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_Contain.js +3 -4
  306. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.js.map +1 -0
  307. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_EndWith.d.ts +2 -1
  308. package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.d.ts.map +1 -0
  309. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_EndWith.js +3 -4
  310. package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.js.map +1 -0
  311. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_Equal.d.ts +2 -1
  312. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.d.ts.map +1 -0
  313. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_Equal.js +4 -5
  314. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.js.map +1 -0
  315. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_GreaterThan.d.ts +2 -1
  316. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.d.ts.map +1 -0
  317. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_GreaterThan.js +4 -5
  318. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.js.map +1 -0
  319. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_GreaterThanEqual.d.ts +2 -1
  320. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.d.ts.map +1 -0
  321. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_GreaterThanEqual.js +4 -5
  322. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.js.map +1 -0
  323. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_In.d.ts +2 -1
  324. package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.d.ts.map +1 -0
  325. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_In.js +3 -3
  326. package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.js.map +1 -0
  327. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_IsEmpty.d.ts +2 -1
  328. package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.d.ts.map +1 -0
  329. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_IsEmpty.js +3 -3
  330. package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.js.map +1 -0
  331. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_LessThan.d.ts +2 -1
  332. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.d.ts.map +1 -0
  333. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_LessThan.js +4 -5
  334. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.js.map +1 -0
  335. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_LessThanEqual.d.ts +2 -1
  336. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.d.ts.map +1 -0
  337. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_LessThanEqual.js +4 -5
  338. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.js.map +1 -0
  339. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_StartWith.d.ts +2 -1
  340. package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.d.ts.map +1 -0
  341. package/lib/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_StartWith.js +3 -4
  342. package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.js.map +1 -0
  343. package/package.json +8 -8
  344. package/src/components/QueryBuilder.tsx +19 -12
  345. package/src/components/QueryBuilderParameterPanel.tsx +1 -0
  346. package/src/components/QueryBuilderPropertyExpressionEditor.tsx +2 -2
  347. package/src/components/QueryBuilderResultPanel.tsx +10 -7
  348. package/src/components/QueryBuilderSetupPanel.tsx +1 -1
  349. package/src/components/QueryBuilderTextEditor.tsx +1 -1
  350. package/src/components/QueryEditorComponentTestUtils.tsx +0 -2
  351. package/src/components/{QueryBuilderExplorerPanel.tsx → explorer/QueryBuilderExplorerPanel.tsx} +18 -92
  352. package/src/components/{QueryBuilderFunctionsExplorerPanel.tsx → explorer/QueryBuilderFunctionsExplorerPanel.tsx} +2 -2
  353. package/src/components/{QueryBuilderMilestoneEditor.tsx → explorer/QueryBuilderMilestoneEditor.tsx} +4 -4
  354. package/src/components/{QueryBuilderPropertySearchPanel.tsx → explorer/QueryBuilderPropertySearchPanel.tsx} +6 -6
  355. package/src/components/{QueryBuilderFetchStructurePanel.tsx → fetch-structure/QueryBuilderFetchStructurePanel.tsx} +23 -14
  356. package/src/components/{QueryBuilderGraphFetchTreePanel.tsx → fetch-structure/QueryBuilderGraphFetchTreePanel.tsx} +6 -6
  357. package/src/components/{QueryBuilderPostFilterPanel.tsx → fetch-structure/QueryBuilderPostFilterPanel.tsx} +26 -30
  358. package/src/components/{QueryBuilderProjectionPanel.tsx → fetch-structure/QueryBuilderProjectionPanel.tsx} +13 -15
  359. package/src/components/{QueryBuilderResultModifierPanel.tsx → fetch-structure/QueryBuilderResultModifierPanel.tsx} +16 -8
  360. package/src/components/{QueryBuilderFilterPanel.tsx → filter/QueryBuilderFilterPanel.tsx} +12 -19
  361. package/src/components/{QueryBuilderLambdaEditor.tsx → shared/QueryBuilderLambdaEditor.tsx} +1 -1
  362. package/src/components/{QueryBuilderPanelIssueCountBadge.tsx → shared/QueryBuilderPanelIssueCountBadge.tsx} +0 -0
  363. package/src/components/{QueryBuilderPropertyInfoTooltip.tsx → shared/QueryBuilderPropertyInfoTooltip.tsx} +0 -0
  364. package/src/index.ts +0 -4
  365. package/src/stores/QueryBuilderGroupOperationHelper.ts +54 -0
  366. package/src/stores/QueryBuilderPreviewDataHelper.ts +17 -21
  367. package/src/stores/QueryBuilderPropertyEditorState.ts +6 -3
  368. package/src/stores/QueryBuilderResultState.ts +1 -1
  369. package/src/stores/QueryBuilderState.ts +22 -53
  370. package/src/stores/QueryBuilderTestUtils.ts +4 -1
  371. package/src/stores/QueryBuilderTypeaheadHelper.ts +31 -32
  372. package/src/stores/{QueryBuilderLambdaBuilder.ts → QueryBuilderValueSpecificationBuilder.ts} +331 -347
  373. package/src/stores/{QueryBuilderOperatorsHelper.ts → QueryBuilderValueSpecificationHelper.ts} +66 -47
  374. package/src/stores/{QueryBuilderLambdaProcessor.ts → QueryBuilderValueSpecificationProcessor.ts} +20 -13
  375. package/src/stores/{QueryBuilderExplorerState.ts → explorer/QueryBuilderExplorerState.ts} +143 -3
  376. package/src/stores/{QueryBuilderPropertySearchPanelState.ts → explorer/QueryBuilderPropertySearchPanelState.ts} +2 -2
  377. package/src/stores/{QueryFunctionsExplorerState.ts → explorer/QueryFunctionsExplorerState.ts} +1 -1
  378. package/src/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.ts +34 -0
  379. package/src/stores/fetch-structure/QueryBuilderFetchStructureState.ts +173 -0
  380. package/src/stores/{QueryBuilderGraphFetchTreeState.ts → fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.ts} +29 -25
  381. package/src/stores/{QueryBuilderGraphFetchTreeUtil.ts → fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.ts} +2 -2
  382. package/src/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchValueSpecificationBuilder.ts +90 -0
  383. package/src/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.ts +329 -0
  384. package/src/stores/fetch-structure/projection/QueryBuilderProjectionState.ts +390 -0
  385. package/src/stores/fetch-structure/projection/QueryBuilderProjectionValueSpecificationBuilder.ts +170 -0
  386. package/src/stores/fetch-structure/projection/QueryResultSetModifierState.ts +95 -0
  387. package/src/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.ts +79 -0
  388. package/src/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperatorLoader.ts +41 -0
  389. package/src/stores/{QueryBuilderAggregationState.ts → fetch-structure/projection/aggregation/QueryBuilderAggregationState.ts} +6 -69
  390. package/src/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperatorHelper.ts +3 -5
  391. package/src/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Average.ts +4 -6
  392. package/src/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Count.ts +4 -6
  393. package/src/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Distinct.ts +4 -6
  394. package/src/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_DistinctCount.ts +4 -6
  395. package/src/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_JoinString.ts +4 -6
  396. package/src/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Max.ts +4 -6
  397. package/src/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Min.ts +4 -6
  398. package/src/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_StdDev_Population.ts +4 -6
  399. package/src/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_StdDev_Sample.ts +4 -6
  400. package/src/stores/{aggregateOperators → fetch-structure/projection/aggregation/operators}/QueryBuilderAggregateOperator_Sum.ts +4 -6
  401. package/src/stores/{QueryBuilderPostFilterOperator.ts → fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.ts} +0 -0
  402. package/src/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperatorLoader.ts +65 -0
  403. package/src/stores/{QueryBuilderPostFilterState.ts → fetch-structure/projection/post-filter/QueryBuilderPostFilterState.ts} +35 -28
  404. package/src/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.ts +131 -0
  405. package/src/stores/{QueryBuilderPostFilterProcessor.ts → fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationProcessor.ts} +13 -11
  406. package/src/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperatorHelper.ts +5 -5
  407. package/src/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_Contain.ts +12 -12
  408. package/src/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_EndWith.ts +12 -12
  409. package/src/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_Equal.ts +17 -17
  410. package/src/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_GreaterThan.ts +12 -12
  411. package/src/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_GreaterThanEqual.ts +2 -2
  412. package/src/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_In.ts +12 -12
  413. package/src/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_IsEmpty.ts +3 -3
  414. package/src/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_LessThan.ts +12 -12
  415. package/src/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_LessThanEqual.ts +2 -2
  416. package/src/stores/{postFilterOperators → fetch-structure/projection/post-filter/operators}/QueryBuilderPostFilterOperator_StartWith.ts +12 -12
  417. package/src/stores/filter/QueryBuilderFilterOperator.ts +52 -0
  418. package/src/stores/filter/QueryBuilderFilterOperatorLoader.ts +65 -0
  419. package/src/stores/{QueryBuilderFilterState.ts → filter/QueryBuilderFilterState.ts} +26 -148
  420. package/src/stores/filter/QueryBuilderValueSpecificationBuilder.ts +120 -0
  421. package/src/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperatorHelper.ts +4 -4
  422. package/src/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_Contain.ts +8 -8
  423. package/src/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_EndWith.ts +8 -8
  424. package/src/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_Equal.ts +10 -10
  425. package/src/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_GreaterThan.ts +9 -9
  426. package/src/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_GreaterThanEqual.ts +9 -9
  427. package/src/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_In.ts +7 -7
  428. package/src/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_IsEmpty.ts +6 -6
  429. package/src/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_LessThan.ts +9 -9
  430. package/src/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_LessThanEqual.ts +9 -9
  431. package/src/stores/{filterOperators → filter/operators}/QueryBuilderFilterOperator_StartWith.ts +7 -7
  432. package/tsconfig.json +75 -65
  433. package/lib/components/QueryBuilderExplorerPanel.d.ts.map +0 -1
  434. package/lib/components/QueryBuilderExplorerPanel.js.map +0 -1
  435. package/lib/components/QueryBuilderFetchStructurePanel.d.ts.map +0 -1
  436. package/lib/components/QueryBuilderFetchStructurePanel.js.map +0 -1
  437. package/lib/components/QueryBuilderFilterPanel.d.ts.map +0 -1
  438. package/lib/components/QueryBuilderFilterPanel.js.map +0 -1
  439. package/lib/components/QueryBuilderFunctionsExplorerPanel.d.ts.map +0 -1
  440. package/lib/components/QueryBuilderFunctionsExplorerPanel.js.map +0 -1
  441. package/lib/components/QueryBuilderGraphFetchTreePanel.d.ts.map +0 -1
  442. package/lib/components/QueryBuilderGraphFetchTreePanel.js.map +0 -1
  443. package/lib/components/QueryBuilderLambdaEditor.d.ts.map +0 -1
  444. package/lib/components/QueryBuilderLambdaEditor.js.map +0 -1
  445. package/lib/components/QueryBuilderMilestoneEditor.d.ts.map +0 -1
  446. package/lib/components/QueryBuilderMilestoneEditor.js.map +0 -1
  447. package/lib/components/QueryBuilderPanelIssueCountBadge.d.ts.map +0 -1
  448. package/lib/components/QueryBuilderPanelIssueCountBadge.js.map +0 -1
  449. package/lib/components/QueryBuilderPostFilterPanel.d.ts.map +0 -1
  450. package/lib/components/QueryBuilderPostFilterPanel.js.map +0 -1
  451. package/lib/components/QueryBuilderProjectionPanel.d.ts.map +0 -1
  452. package/lib/components/QueryBuilderProjectionPanel.js.map +0 -1
  453. package/lib/components/QueryBuilderPropertyInfoTooltip.d.ts.map +0 -1
  454. package/lib/components/QueryBuilderPropertyInfoTooltip.js.map +0 -1
  455. package/lib/components/QueryBuilderPropertySearchPanel.d.ts.map +0 -1
  456. package/lib/components/QueryBuilderPropertySearchPanel.js.map +0 -1
  457. package/lib/components/QueryBuilderResultModifierPanel.d.ts.map +0 -1
  458. package/lib/components/QueryBuilderResultModifierPanel.js.map +0 -1
  459. package/lib/stores/QueryBuilderAggregationState.d.ts.map +0 -1
  460. package/lib/stores/QueryBuilderAggregationState.js.map +0 -1
  461. package/lib/stores/QueryBuilderExplorerState.d.ts.map +0 -1
  462. package/lib/stores/QueryBuilderExplorerState.js.map +0 -1
  463. package/lib/stores/QueryBuilderFetchStructureState.d.ts.map +0 -1
  464. package/lib/stores/QueryBuilderFetchStructureState.js +0 -58
  465. package/lib/stores/QueryBuilderFetchStructureState.js.map +0 -1
  466. package/lib/stores/QueryBuilderFilterState.d.ts.map +0 -1
  467. package/lib/stores/QueryBuilderFilterState.js.map +0 -1
  468. package/lib/stores/QueryBuilderGraphFetchTreeState.d.ts.map +0 -1
  469. package/lib/stores/QueryBuilderGraphFetchTreeState.js.map +0 -1
  470. package/lib/stores/QueryBuilderGraphFetchTreeUtil.d.ts.map +0 -1
  471. package/lib/stores/QueryBuilderGraphFetchTreeUtil.js.map +0 -1
  472. package/lib/stores/QueryBuilderLambdaBuilder.d.ts.map +0 -1
  473. package/lib/stores/QueryBuilderLambdaBuilder.js.map +0 -1
  474. package/lib/stores/QueryBuilderLambdaProcessor.d.ts.map +0 -1
  475. package/lib/stores/QueryBuilderLambdaProcessor.js.map +0 -1
  476. package/lib/stores/QueryBuilderOperatorLoader.d.ts +0 -47
  477. package/lib/stores/QueryBuilderOperatorLoader.d.ts.map +0 -1
  478. package/lib/stores/QueryBuilderOperatorLoader.js +0 -94
  479. package/lib/stores/QueryBuilderOperatorLoader.js.map +0 -1
  480. package/lib/stores/QueryBuilderOperatorsHelper.d.ts.map +0 -1
  481. package/lib/stores/QueryBuilderOperatorsHelper.js.map +0 -1
  482. package/lib/stores/QueryBuilderPostFilterOperator.d.ts.map +0 -1
  483. package/lib/stores/QueryBuilderPostFilterOperator.js.map +0 -1
  484. package/lib/stores/QueryBuilderPostFilterProcessor.d.ts.map +0 -1
  485. package/lib/stores/QueryBuilderPostFilterProcessor.js.map +0 -1
  486. package/lib/stores/QueryBuilderPostFilterState.d.ts.map +0 -1
  487. package/lib/stores/QueryBuilderPostFilterState.js.map +0 -1
  488. package/lib/stores/QueryBuilderProjectionState.d.ts.map +0 -1
  489. package/lib/stores/QueryBuilderProjectionState.js +0 -416
  490. package/lib/stores/QueryBuilderProjectionState.js.map +0 -1
  491. package/lib/stores/QueryBuilderPropertySearchPanelState.d.ts.map +0 -1
  492. package/lib/stores/QueryBuilderPropertySearchPanelState.js.map +0 -1
  493. package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.d.ts +0 -19
  494. package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.d.ts.map +0 -1
  495. package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.js +0 -50
  496. package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.js.map +0 -1
  497. package/lib/stores/QueryFunctionsExplorerState.d.ts.map +0 -1
  498. package/lib/stores/QueryFunctionsExplorerState.js.map +0 -1
  499. package/lib/stores/QueryResultSetModifierState.d.ts.map +0 -1
  500. package/lib/stores/QueryResultSetModifierState.js +0 -165
  501. package/lib/stores/QueryResultSetModifierState.js.map +0 -1
  502. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperatorHelper.d.ts.map +0 -1
  503. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperatorHelper.js.map +0 -1
  504. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Average.d.ts.map +0 -1
  505. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Average.js.map +0 -1
  506. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Count.d.ts.map +0 -1
  507. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Count.js.map +0 -1
  508. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Distinct.d.ts.map +0 -1
  509. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Distinct.js.map +0 -1
  510. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_DistinctCount.d.ts.map +0 -1
  511. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_DistinctCount.js.map +0 -1
  512. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_JoinString.d.ts.map +0 -1
  513. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_JoinString.js.map +0 -1
  514. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Max.d.ts.map +0 -1
  515. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Max.js.map +0 -1
  516. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Min.d.ts.map +0 -1
  517. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Min.js.map +0 -1
  518. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Population.d.ts.map +0 -1
  519. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Population.js.map +0 -1
  520. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Sample.d.ts.map +0 -1
  521. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Sample.js.map +0 -1
  522. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Sum.d.ts.map +0 -1
  523. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Sum.js.map +0 -1
  524. package/lib/stores/filterOperators/QueryBuilderFilterOperatorHelper.d.ts.map +0 -1
  525. package/lib/stores/filterOperators/QueryBuilderFilterOperatorHelper.js.map +0 -1
  526. package/lib/stores/filterOperators/QueryBuilderFilterOperator_Contain.d.ts.map +0 -1
  527. package/lib/stores/filterOperators/QueryBuilderFilterOperator_Contain.js.map +0 -1
  528. package/lib/stores/filterOperators/QueryBuilderFilterOperator_EndWith.d.ts.map +0 -1
  529. package/lib/stores/filterOperators/QueryBuilderFilterOperator_EndWith.js.map +0 -1
  530. package/lib/stores/filterOperators/QueryBuilderFilterOperator_Equal.d.ts.map +0 -1
  531. package/lib/stores/filterOperators/QueryBuilderFilterOperator_Equal.js.map +0 -1
  532. package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThan.d.ts.map +0 -1
  533. package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThan.js.map +0 -1
  534. package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThanEqual.d.ts.map +0 -1
  535. package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThanEqual.js.map +0 -1
  536. package/lib/stores/filterOperators/QueryBuilderFilterOperator_In.d.ts.map +0 -1
  537. package/lib/stores/filterOperators/QueryBuilderFilterOperator_In.js.map +0 -1
  538. package/lib/stores/filterOperators/QueryBuilderFilterOperator_IsEmpty.d.ts.map +0 -1
  539. package/lib/stores/filterOperators/QueryBuilderFilterOperator_IsEmpty.js.map +0 -1
  540. package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThan.d.ts.map +0 -1
  541. package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThan.js.map +0 -1
  542. package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThanEqual.d.ts.map +0 -1
  543. package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThanEqual.js.map +0 -1
  544. package/lib/stores/filterOperators/QueryBuilderFilterOperator_StartWith.d.ts.map +0 -1
  545. package/lib/stores/filterOperators/QueryBuilderFilterOperator_StartWith.js.map +0 -1
  546. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperatorHelper.d.ts.map +0 -1
  547. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperatorHelper.js.map +0 -1
  548. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Contain.d.ts.map +0 -1
  549. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Contain.js.map +0 -1
  550. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_EndWith.d.ts.map +0 -1
  551. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_EndWith.js.map +0 -1
  552. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Equal.d.ts.map +0 -1
  553. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Equal.js.map +0 -1
  554. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThan.d.ts.map +0 -1
  555. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThan.js.map +0 -1
  556. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThanEqual.d.ts.map +0 -1
  557. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThanEqual.js.map +0 -1
  558. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_In.d.ts.map +0 -1
  559. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_In.js.map +0 -1
  560. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_IsEmpty.d.ts.map +0 -1
  561. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_IsEmpty.js.map +0 -1
  562. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThan.d.ts.map +0 -1
  563. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThan.js.map +0 -1
  564. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThanEqual.d.ts.map +0 -1
  565. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThanEqual.js.map +0 -1
  566. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_StartWith.d.ts.map +0 -1
  567. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_StartWith.js.map +0 -1
  568. package/src/stores/QueryBuilderFetchStructureState.ts +0 -75
  569. package/src/stores/QueryBuilderOperatorLoader.ts +0 -133
  570. package/src/stores/QueryBuilderProjectionState.ts +0 -783
  571. package/src/stores/QueryBuilderValueSpecificationBuilderHelper.ts +0 -78
  572. package/src/stores/QueryResultSetModifierState.ts +0 -307
@@ -15,19 +15,25 @@
15
15
  */
16
16
 
17
17
  import {
18
- type PrimitiveType,
19
- type Enumeration,
20
- type Type,
21
18
  type PureModel,
22
19
  type ValueSpecification,
20
+ CORE_PURE_PATH,
21
+ FunctionType,
22
+ LambdaFunction,
23
+ LambdaFunctionInstanceValue,
23
24
  PRIMITIVE_TYPE,
24
- extractElementNameFromPath,
25
- matchFunctionName,
26
- SimpleFunctionExpression,
27
25
  TYPICAL_MULTIPLICITY_TYPE,
26
+ VariableExpression,
27
+ DATE_FORMAT,
28
+ DATE_TIME_FORMAT,
29
+ matchFunctionName,
30
+ type Type,
28
31
  PrimitiveInstanceValue,
29
32
  EnumValueInstanceValue,
30
- VariableExpression,
33
+ SimpleFunctionExpression,
34
+ type PrimitiveType,
35
+ type Enumeration,
36
+ extractElementNameFromPath,
31
37
  AbstractPropertyExpression,
32
38
  isSuperType,
33
39
  } from '@finos/legend-graph';
@@ -37,43 +43,9 @@ import {
37
43
  guaranteeType,
38
44
  UnsupportedOperationError,
39
45
  } from '@finos/legend-shared';
46
+ import { format } from 'date-fns';
40
47
  import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../QueryBuilder_Const.js';
41
48
 
42
- export enum QUERY_BUILDER_GROUP_OPERATION {
43
- AND = 'and',
44
- OR = 'or',
45
- }
46
-
47
- export const fromGroupOperation = (
48
- operation: QUERY_BUILDER_GROUP_OPERATION,
49
- ): string => {
50
- switch (operation) {
51
- case QUERY_BUILDER_GROUP_OPERATION.AND:
52
- return QUERY_BUILDER_SUPPORTED_FUNCTIONS.AND;
53
- case QUERY_BUILDER_GROUP_OPERATION.OR:
54
- return QUERY_BUILDER_SUPPORTED_FUNCTIONS.OR;
55
- default:
56
- throw new UnsupportedOperationError(
57
- `Can't derive function name from group operation '${operation}'`,
58
- );
59
- }
60
- };
61
-
62
- export const toGroupOperation = (
63
- functionName: string,
64
- ): QUERY_BUILDER_GROUP_OPERATION => {
65
- if (matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.AND)) {
66
- return QUERY_BUILDER_GROUP_OPERATION.AND;
67
- } else if (
68
- matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.OR)
69
- ) {
70
- return QUERY_BUILDER_GROUP_OPERATION.OR;
71
- }
72
- throw new UnsupportedOperationError(
73
- `Can't derive group operation from function name '${functionName}'`,
74
- );
75
- };
76
-
77
49
  export const getNonCollectionValueSpecificationType = (
78
50
  valueSpecification: ValueSpecification,
79
51
  ): Type | undefined => {
@@ -191,9 +163,9 @@ export const isPropertyExpressionChainOptional = (
191
163
  return isOptional;
192
164
  };
193
165
 
194
- export const isTypeCompatibleWithConditionValueType = (
166
+ export const isTypeCompatibleForAssignment = (
195
167
  type: Type | undefined,
196
- conditionValueType: Type,
168
+ assignmentType: Type,
197
169
  ): boolean => {
198
170
  const NUMERIC_PRIMITIVE_TYPES = [
199
171
  PRIMITIVE_TYPE.NUMBER,
@@ -214,13 +186,60 @@ export const isTypeCompatibleWithConditionValueType = (
214
186
  // Numeric value is handled loosely because of autoboxing
215
187
  // e.g. LHS (integer) = RHS (float) is acceptable
216
188
  ((NUMERIC_PRIMITIVE_TYPES.includes(type.path) &&
217
- NUMERIC_PRIMITIVE_TYPES.includes(conditionValueType.path)) ||
189
+ NUMERIC_PRIMITIVE_TYPES.includes(assignmentType.path)) ||
218
190
  // Date value is handled loosely as well if the LHS is of type DateTime
219
191
  // This is because we would simulate auto-boxing for date by altering the
220
192
  // Pure function used for the operation
221
193
  // e.g. LHS(DateTime) = RHS(Date) -> we use isOnDay() instead of is()
222
194
  DATE_PRIMITIVE_TYPES.includes(type.path) ||
223
- type === conditionValueType ||
224
- isSuperType(conditionValueType, type))
195
+ type === assignmentType ||
196
+ isSuperType(assignmentType, type))
197
+ );
198
+ };
199
+
200
+ export const generateDefaultValueForPrimitiveType = (
201
+ type: PRIMITIVE_TYPE,
202
+ ): unknown => {
203
+ switch (type) {
204
+ case PRIMITIVE_TYPE.STRING:
205
+ return '';
206
+ case PRIMITIVE_TYPE.BOOLEAN:
207
+ return false;
208
+ case PRIMITIVE_TYPE.NUMBER:
209
+ case PRIMITIVE_TYPE.DECIMAL:
210
+ case PRIMITIVE_TYPE.FLOAT:
211
+ case PRIMITIVE_TYPE.INTEGER:
212
+ return 0;
213
+ case PRIMITIVE_TYPE.DATE:
214
+ case PRIMITIVE_TYPE.STRICTDATE:
215
+ return format(new Date(Date.now()), DATE_FORMAT);
216
+ case PRIMITIVE_TYPE.DATETIME:
217
+ return format(new Date(Date.now()), DATE_TIME_FORMAT);
218
+ default:
219
+ throw new UnsupportedOperationError(
220
+ `Can't generate default value for primitive type '${type}'`,
221
+ );
222
+ }
223
+ };
224
+
225
+ export const buildGenericLambdaFunctionInstanceValue = (
226
+ lambdaParameterName: string,
227
+ lambdaBodyExpressions: ValueSpecification[],
228
+ graph: PureModel,
229
+ ): LambdaFunctionInstanceValue => {
230
+ const multiplicityOne = graph.getTypicalMultiplicity(
231
+ TYPICAL_MULTIPLICITY_TYPE.ONE,
232
+ );
233
+ const typeAny = graph.getType(CORE_PURE_PATH.ANY);
234
+ const functionInstanceValue = new LambdaFunctionInstanceValue(
235
+ multiplicityOne,
236
+ );
237
+ const functionType = new FunctionType(typeAny, multiplicityOne);
238
+ functionType.parameters.push(
239
+ new VariableExpression(lambdaParameterName, multiplicityOne),
225
240
  );
241
+ const lambdaFunction = new LambdaFunction(functionType);
242
+ lambdaFunction.expressionSequence = lambdaBodyExpressions;
243
+ functionInstanceValue.values.push(lambdaFunction);
244
+ return functionInstanceValue;
226
245
  };
@@ -31,13 +31,13 @@ import type { QueryBuilderState } from './QueryBuilderState.js';
31
31
  import {
32
32
  COLUMN_SORT_TYPE,
33
33
  SortColumnState,
34
- } from './QueryResultSetModifierState.js';
34
+ } from './fetch-structure/projection/QueryResultSetModifierState.js';
35
35
  import {
36
36
  type QueryBuilderFilterState,
37
37
  QueryBuilderFilterTreeGroupNodeData,
38
38
  QueryBuilderFilterTreeConditionNodeData,
39
- } from './QueryBuilderFilterState.js';
40
- import { FETCH_STRUCTURE_MODE } from './QueryBuilderFetchStructureState.js';
39
+ } from './filter/QueryBuilderFilterState.js';
40
+ import { FETCH_STRUCTURE_MODE } from './fetch-structure/QueryBuilderFetchStructureState.js';
41
41
  import {
42
42
  type AlloySerializationConfigInstanceValue,
43
43
  type EnumValueInstanceValue,
@@ -76,13 +76,13 @@ import {
76
76
  type QueryBuilderProjectionColumnState,
77
77
  QueryBuilderDerivationProjectionColumnState,
78
78
  QueryBuilderSimpleProjectionColumnState,
79
- } from './QueryBuilderProjectionState.js';
80
- import type { QueryBuilderAggregationState } from './QueryBuilderAggregationState.js';
81
- import { toGroupOperation } from './QueryBuilderOperatorsHelper.js';
82
- import { processPostFilterLambda } from './QueryBuilderPostFilterProcessor.js';
79
+ } from './fetch-structure/projection/QueryBuilderProjectionColumnState.js';
80
+ import type { QueryBuilderAggregationState } from './fetch-structure/projection/aggregation/QueryBuilderAggregationState.js';
81
+ import { processPostFilterLambda } from './fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationProcessor.js';
83
82
  import { getDerivedPropertyMilestoningSteoreotype } from './QueryBuilderPropertyEditorState.js';
84
83
  import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../QueryBuilder_Const.js';
85
84
  import { LambdaParameterState } from '@finos/legend-application';
85
+ import { toGroupOperation } from './QueryBuilderGroupOperationHelper.js';
86
86
 
87
87
  const getNullableStringValueFromValueSpec = (
88
88
  valueSpec: ValueSpecification,
@@ -613,7 +613,9 @@ export class QueryBuilderLambdaProcessor
613
613
  ),
614
614
  `Can't process post-filter expression: only supports ${QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_FILTER}() immediately following TDS project()/groupBy() (got '${functionName}')`,
615
615
  );
616
- const postFilterState = this.queryBuilderState.postFilterState;
616
+ const postFilterState =
617
+ this.queryBuilderState.fetchStructureState.projectionState
618
+ .postFilterState;
617
619
  const postFilterLambda = valueSpecification.parametersValues[1];
618
620
  assertType(
619
621
  postFilterLambda,
@@ -621,7 +623,9 @@ export class QueryBuilderLambdaProcessor
621
623
  `Can't process post-filter expression: expects argument #1 to be a lambda function`,
622
624
  );
623
625
  processPostFilterLambda(postFilterLambda, postFilterState);
624
- this.queryBuilderState.setShowPostFilterPanel(true);
626
+ this.queryBuilderState.fetchStructureState.projectionState.setShowPostFilterPanel(
627
+ true,
628
+ );
625
629
  postFilterState.simplifyTree();
626
630
  return;
627
631
  } else {
@@ -733,7 +737,9 @@ export class QueryBuilderLambdaProcessor
733
737
  const takeValue = getNullableNumberValueFromValueSpec(
734
738
  guaranteeNonNullable(valueSpecification.parametersValues[1]),
735
739
  );
736
- this.queryBuilderState.resultSetModifierState.setLimit(takeValue);
740
+ this.queryBuilderState.fetchStructureState.projectionState.resultSetModifierState.setLimit(
741
+ takeValue,
742
+ );
737
743
 
738
744
  return;
739
745
  } else if (
@@ -769,7 +775,8 @@ export class QueryBuilderLambdaProcessor
769
775
  `Can't process distinct() expression: only support distinct() in TDS expression`,
770
776
  );
771
777
 
772
- this.queryBuilderState.resultSetModifierState.distinct = true;
778
+ this.queryBuilderState.fetchStructureState.projectionState.resultSetModifierState.distinct =
779
+ true;
773
780
 
774
781
  return;
775
782
  } else if (
@@ -850,7 +857,6 @@ export class QueryBuilderLambdaProcessor
850
857
  );
851
858
  if (queryBuilderProjectionColumnState) {
852
859
  const sortColumnState = new SortColumnState(
853
- this.queryBuilderState,
854
860
  queryBuilderProjectionColumnState,
855
861
  );
856
862
  sortColumnState.sortType = matchFunctionName(
@@ -859,7 +865,7 @@ export class QueryBuilderLambdaProcessor
859
865
  )
860
866
  ? COLUMN_SORT_TYPE.ASC
861
867
  : COLUMN_SORT_TYPE.DESC;
862
- this.queryBuilderState.resultSetModifierState.addSortColumn(
868
+ this.queryBuilderState.fetchStructureState.projectionState.resultSetModifierState.addSortColumn(
863
869
  sortColumnState,
864
870
  );
865
871
  }
@@ -1223,6 +1229,7 @@ export const processQueryParameters = (
1223
1229
  const parameterState = new LambdaParameterState(
1224
1230
  parameter,
1225
1231
  queryBuilderState.observableContext,
1232
+ queryBuilderState.graphManagerState.graph,
1226
1233
  );
1227
1234
  parameterState.mockParameterValue();
1228
1235
  queryParameterState.addParameter(parameterState);
@@ -21,6 +21,8 @@ import {
21
21
  ActionState,
22
22
  assertErrorThrown,
23
23
  type GeneratorFn,
24
+ assertType,
25
+ UnsupportedOperationError,
24
26
  } from '@finos/legend-shared';
25
27
  import {
26
28
  type AbstractProperty,
@@ -52,8 +54,11 @@ import {
52
54
  DerivedProperty,
53
55
  Property,
54
56
  Association,
57
+ PRIMITIVE_TYPE,
58
+ TdsExecutionResult,
59
+ type ExecutionResult,
55
60
  } from '@finos/legend-graph';
56
- import type { QueryBuilderState } from './QueryBuilderState.js';
61
+ import type { QueryBuilderState } from '../QueryBuilderState.js';
57
62
  import {
58
63
  action,
59
64
  flow,
@@ -65,8 +70,12 @@ import {
65
70
  import {
66
71
  DEFAULT_LAMBDA_VARIABLE_NAME,
67
72
  QUERY_BUILDER_SUPPORTED_FUNCTIONS,
68
- } from '../QueryBuilder_Const.js';
69
- import type { QueryBuilderPreviewData } from './QueryBuilderPreviewDataHelper.js';
73
+ } from '../../QueryBuilder_Const.js';
74
+ import {
75
+ buildNonNumericPreviewDataQuery,
76
+ buildNumericPreviewDataQuery,
77
+ type QueryBuilderPreviewData,
78
+ } from '../QueryBuilderPreviewDataHelper.js';
70
79
  import { QueryBuilderPropertySearchPanelState } from './QueryBuilderPropertySearchPanelState.js';
71
80
 
72
81
  export enum QUERY_BUILDER_EXPLORER_TREE_DND_TYPE {
@@ -310,6 +319,11 @@ const generateSubtypeNodeMappingData = (
310
319
  (mappedProperty[0] as EntityMappedProperty).entityPath,
311
320
  ),
312
321
  };
322
+ } else if (parentMappingData.mappedEntity.path === subclass.path) {
323
+ return {
324
+ mapped: true,
325
+ mappedEntity: parentMappingData.mappedEntity,
326
+ };
313
327
  }
314
328
  }
315
329
  return { mapped: false };
@@ -536,6 +550,7 @@ export class QueryBuilderExplorerState {
536
550
  refreshTreeData: action,
537
551
  setHumanizePropertyName: action,
538
552
  setShowUnmappedProperties: action,
553
+ previewData: flow,
539
554
  analyzeMappingModelCoverage: flow,
540
555
  });
541
556
 
@@ -606,4 +621,129 @@ export class QueryBuilderExplorerState {
606
621
  this.queryBuilderState.explorerState.mappingModelCoverageAnalysisState.pass();
607
622
  }
608
623
  }
624
+
625
+ *previewData(
626
+ node: QueryBuilderExplorerTreePropertyNodeData,
627
+ ): GeneratorFn<void> {
628
+ const runtime = this.queryBuilderState.querySetupState.runtimeValue;
629
+ if (!runtime) {
630
+ this.queryBuilderState.applicationStore.notifyWarning(
631
+ `Can't preview data for property '${node.property.name}': runtime is not specified`,
632
+ );
633
+ return;
634
+ }
635
+ if (
636
+ !node.mappingData.mapped ||
637
+ !this.queryBuilderState.querySetupState._class ||
638
+ !this.queryBuilderState.querySetupState.mapping
639
+ ) {
640
+ return;
641
+ }
642
+ if (
643
+ this.queryBuilderState.explorerState.previewDataState
644
+ .isGeneratingPreviewData
645
+ ) {
646
+ this.queryBuilderState.applicationStore.notifyWarning(
647
+ `Can't preview data for property '${node.property.name}': another preview request is being executed`,
648
+ );
649
+ return;
650
+ }
651
+ this.queryBuilderState.explorerState.previewDataState.setPropertyName(
652
+ node.property.name,
653
+ );
654
+ this.queryBuilderState.explorerState.previewDataState.setIsGeneratingPreviewData(
655
+ true,
656
+ );
657
+ const propertyExpression = buildPropertyExpressionFromExplorerTreeNodeData(
658
+ this.queryBuilderState.explorerState.nonNullableTreeData,
659
+ node,
660
+ this.queryBuilderState.graphManagerState.graph,
661
+ this.queryBuilderState.explorerState.propertySearchPanelState
662
+ .allMappedPropertyNodes,
663
+ );
664
+ const propertyType = node.property.genericType.value.rawType;
665
+ try {
666
+ switch (propertyType.path) {
667
+ case PRIMITIVE_TYPE.NUMBER:
668
+ case PRIMITIVE_TYPE.INTEGER:
669
+ case PRIMITIVE_TYPE.DECIMAL:
670
+ case PRIMITIVE_TYPE.FLOAT: {
671
+ const previewResult =
672
+ (yield this.queryBuilderState.graphManagerState.graphManager.executeMapping(
673
+ buildNumericPreviewDataQuery(
674
+ this.queryBuilderState,
675
+ propertyExpression,
676
+ ),
677
+ this.queryBuilderState.querySetupState.mapping,
678
+ runtime,
679
+ this.queryBuilderState.graphManagerState.graph,
680
+ )) as ExecutionResult;
681
+ assertType(
682
+ previewResult,
683
+ TdsExecutionResult,
684
+ `Unexpected preview data format`,
685
+ );
686
+ const previewResultData =
687
+ previewResult.result as QueryBuilderPreviewData;
688
+ // transpose the result
689
+ const transposedPreviewResultData = {
690
+ columns: ['Aggregation', 'Value'],
691
+ rows: previewResultData.columns.map((column, idx) => ({
692
+ values: [
693
+ column,
694
+ guaranteeNonNullable(previewResultData.rows[0]).values[
695
+ idx
696
+ ] as string,
697
+ ],
698
+ })),
699
+ };
700
+ this.queryBuilderState.explorerState.previewDataState.setPreviewData(
701
+ transposedPreviewResultData,
702
+ );
703
+ break;
704
+ }
705
+ case PRIMITIVE_TYPE.BOOLEAN:
706
+ case PRIMITIVE_TYPE.STRING:
707
+ case PRIMITIVE_TYPE.DATE:
708
+ case PRIMITIVE_TYPE.STRICTDATE:
709
+ case PRIMITIVE_TYPE.DATETIME: {
710
+ const previewResult =
711
+ (yield this.queryBuilderState.graphManagerState.graphManager.executeMapping(
712
+ buildNonNumericPreviewDataQuery(
713
+ this.queryBuilderState,
714
+ propertyExpression,
715
+ ),
716
+ this.queryBuilderState.querySetupState.mapping,
717
+ runtime,
718
+ this.queryBuilderState.graphManagerState.graph,
719
+ )) as ExecutionResult;
720
+ assertType(
721
+ previewResult,
722
+ TdsExecutionResult,
723
+ `Unexpected preview data format`,
724
+ );
725
+ this.queryBuilderState.explorerState.previewDataState.setPreviewData(
726
+ previewResult.result as QueryBuilderPreviewData,
727
+ );
728
+ break;
729
+ }
730
+ default:
731
+ throw new UnsupportedOperationError(
732
+ `No preview support for property of type '${propertyType.path}'`,
733
+ );
734
+ }
735
+ } catch (error) {
736
+ assertErrorThrown(error);
737
+ this.queryBuilderState.applicationStore.notifyWarning(
738
+ `Can't preview data for property '${node.property.name}'. Error: ${error.message}`,
739
+ );
740
+ this.queryBuilderState.explorerState.previewDataState.setPreviewData(
741
+ undefined,
742
+ );
743
+ } finally {
744
+ this.queryBuilderState.explorerState.previewDataState.setIsGeneratingPreviewData(
745
+ false,
746
+ );
747
+ }
748
+ }
609
749
  }
@@ -32,7 +32,7 @@ import {
32
32
  QUERY_BUILDER_PROPERTY_SEARCH_MAX_DEPTH,
33
33
  QUERY_BUILDER_PROPERTY_SEARCH_RESULTS_LIMIT,
34
34
  QUERY_BUILDER_PROPERTY_SEARCH_TYPE,
35
- } from '../QueryBuilder_Const.js';
35
+ } from '../../QueryBuilder_Const.js';
36
36
  import {
37
37
  getQueryBuilderPropertyNodeData,
38
38
  getQueryBuilderSubTypeNodeData,
@@ -40,7 +40,7 @@ import {
40
40
  QueryBuilderExplorerTreePropertyNodeData,
41
41
  QueryBuilderExplorerTreeSubTypeNodeData,
42
42
  } from './QueryBuilderExplorerState.js';
43
- import type { QueryBuilderState } from './QueryBuilderState.js';
43
+ import type { QueryBuilderState } from '../QueryBuilderState.js';
44
44
 
45
45
  export class QueryBuilderPropertySearchPanelState {
46
46
  queryBuilderState: QueryBuilderState;
@@ -28,7 +28,7 @@ import {
28
28
  uuid,
29
29
  } from '@finos/legend-shared';
30
30
  import { action, makeObservable, observable } from 'mobx';
31
- import type { QueryBuilderState } from './QueryBuilderState.js';
31
+ import type { QueryBuilderState } from '../QueryBuilderState.js';
32
32
  import type { TreeNodeData, TreeData } from '@finos/legend-art';
33
33
 
34
34
  export const QUERY_BUILDER_FUNCTION_DND_TYPE = 'QUERY_BUILDER_FUNCTION';
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ import type { QueryBuilderState } from '../QueryBuilderState.js';
18
+ import type { QueryBuilderFetchStructureState } from './QueryBuilderFetchStructureState.js';
19
+
20
+ export abstract class QueryBuilderFetchStructureImplementationState {
21
+ queryBuilderState: QueryBuilderState;
22
+ fetchStructureState: QueryBuilderFetchStructureState;
23
+
24
+ constructor(
25
+ queryBuilderState: QueryBuilderState,
26
+ fetchStructureState: QueryBuilderFetchStructureState,
27
+ ) {
28
+ this.queryBuilderState = queryBuilderState;
29
+ this.fetchStructureState = fetchStructureState;
30
+ }
31
+
32
+ // abstract addProperty(node: QueryBuilderExplorerTreePropertyNodeData): void;
33
+ // abstract addChildrenProperties(node: QueryBuilderExplorerTreePropertyNodeData): void;
34
+ }
@@ -0,0 +1,173 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ import { action, makeAutoObservable } from 'mobx';
18
+ import type { QueryBuilderState } from '../QueryBuilderState.js';
19
+ import { QueryBuilderGraphFetchTreeState } from './graph-fetch/QueryBuilderGraphFetchTreeState.js';
20
+ import { QueryBuilderProjectionState } from './projection/QueryBuilderProjectionState.js';
21
+ import {
22
+ buildPropertyExpressionFromExplorerTreeNodeData,
23
+ type QueryBuilderExplorerTreeNodeData,
24
+ QueryBuilderExplorerTreePropertyNodeData,
25
+ } from '../explorer/QueryBuilderExplorerState.js';
26
+ import { Class } from '@finos/legend-graph';
27
+ import { filterByType } from '@finos/legend-shared';
28
+ import { addQueryBuilderPropertyNode } from './graph-fetch/QueryBuilderGraphFetchTreeUtil.js';
29
+ import { QueryBuilderSimpleProjectionColumnState } from './projection/QueryBuilderProjectionColumnState.js';
30
+
31
+ export enum FETCH_STRUCTURE_MODE {
32
+ PROJECTION = 'PROJECTION',
33
+ GRAPH_FETCH = 'GRAPH_FETCH',
34
+ }
35
+
36
+ export class QueryBuilderFetchStructureState {
37
+ queryBuilderState: QueryBuilderState;
38
+ /**
39
+ * TODO: refactor this so we could reduce this to
40
+ * `implementationState: QueryBuilderFetchStructureImplementationState`
41
+ * so we don't have graph fetch and projection at the same time
42
+ *
43
+ * TODO?: perhaps it would eventually make sense to default to
44
+ * graph-fetch since `getAll()` naturally works for graph-fetch case
45
+ * and graph-fetch allows somewhat an empty tree
46
+ */
47
+ fetchStructureMode = FETCH_STRUCTURE_MODE.PROJECTION;
48
+ projectionState: QueryBuilderProjectionState;
49
+ graphFetchTreeState: QueryBuilderGraphFetchTreeState;
50
+
51
+ constructor(queryBuilderState: QueryBuilderState) {
52
+ makeAutoObservable(this, {
53
+ queryBuilderState: false,
54
+ setFetchStructureMode: action,
55
+ });
56
+
57
+ this.queryBuilderState = queryBuilderState;
58
+ // TODO: we probably should modularize this a bit better
59
+ // See https://github.com/finos/legend-studio/issues/731
60
+ this.projectionState = new QueryBuilderProjectionState(
61
+ queryBuilderState,
62
+ this,
63
+ );
64
+ this.graphFetchTreeState = new QueryBuilderGraphFetchTreeState(
65
+ queryBuilderState,
66
+ this,
67
+ );
68
+ }
69
+
70
+ setFetchStructureMode(val: FETCH_STRUCTURE_MODE): void {
71
+ this.fetchStructureMode = val;
72
+ }
73
+
74
+ fetchProperty(node: QueryBuilderExplorerTreeNodeData): void {
75
+ if (
76
+ node instanceof QueryBuilderExplorerTreePropertyNodeData &&
77
+ !(node.type instanceof Class)
78
+ ) {
79
+ switch (this.fetchStructureMode) {
80
+ case FETCH_STRUCTURE_MODE.GRAPH_FETCH: {
81
+ this.graphFetchTreeState.addProperty(node);
82
+ return;
83
+ }
84
+ case FETCH_STRUCTURE_MODE.PROJECTION: {
85
+ this.projectionState.addColumn(
86
+ new QueryBuilderSimpleProjectionColumnState(
87
+ this.projectionState,
88
+ buildPropertyExpressionFromExplorerTreeNodeData(
89
+ this.queryBuilderState.explorerState.nonNullableTreeData,
90
+ node,
91
+ this.queryBuilderState.graphManagerState.graph,
92
+ this.queryBuilderState.explorerState.propertySearchPanelState
93
+ .allMappedPropertyNodes,
94
+ ),
95
+ this.queryBuilderState.explorerState.humanizePropertyName,
96
+ ),
97
+ );
98
+ return;
99
+ }
100
+ default:
101
+ return;
102
+ }
103
+ }
104
+ }
105
+
106
+ fetchNodeChildrenProperties(node: QueryBuilderExplorerTreeNodeData): void {
107
+ if (node.type instanceof Class) {
108
+ // NOTE: here we require the node to already been expanded so the child nodes are generated
109
+ // we don't allow adding unopened node. Maybe if it helps, we can show a warning.
110
+ const nodesToAdd = node.childrenIds
111
+ .map((childId) =>
112
+ this.queryBuilderState.explorerState.nonNullableTreeData.nodes.get(
113
+ childId,
114
+ ),
115
+ )
116
+ .filter(filterByType(QueryBuilderExplorerTreePropertyNodeData))
117
+ .filter(
118
+ (childNode) =>
119
+ !(childNode.type instanceof Class) && childNode.mappingData.mapped,
120
+ );
121
+
122
+ switch (this.fetchStructureMode) {
123
+ case FETCH_STRUCTURE_MODE.GRAPH_FETCH: {
124
+ const graphFetchTreeData = this.graphFetchTreeState.treeData;
125
+ if (graphFetchTreeData) {
126
+ nodesToAdd.forEach((nodeToAdd) =>
127
+ addQueryBuilderPropertyNode(
128
+ graphFetchTreeData,
129
+ this.queryBuilderState.explorerState.nonNullableTreeData,
130
+ nodeToAdd,
131
+ this.queryBuilderState,
132
+ ),
133
+ );
134
+ this.graphFetchTreeState.setGraphFetchTree({
135
+ ...graphFetchTreeData,
136
+ });
137
+ }
138
+ return;
139
+ }
140
+ case FETCH_STRUCTURE_MODE.PROJECTION: {
141
+ nodesToAdd.forEach((nodeToAdd) => {
142
+ this.projectionState.addColumn(
143
+ new QueryBuilderSimpleProjectionColumnState(
144
+ this.projectionState,
145
+ buildPropertyExpressionFromExplorerTreeNodeData(
146
+ this.queryBuilderState.explorerState.nonNullableTreeData,
147
+ nodeToAdd,
148
+ this.queryBuilderState.graphManagerState.graph,
149
+ this.queryBuilderState.explorerState.propertySearchPanelState
150
+ .allMappedPropertyNodes,
151
+ ),
152
+ this.queryBuilderState.explorerState.humanizePropertyName,
153
+ ),
154
+ );
155
+ });
156
+ return;
157
+ }
158
+ default:
159
+ return;
160
+ }
161
+ }
162
+ }
163
+
164
+ get validationIssues(): string[] | undefined {
165
+ switch (this.fetchStructureMode) {
166
+ case FETCH_STRUCTURE_MODE.PROJECTION:
167
+ return this.projectionState.validationIssues;
168
+ case FETCH_STRUCTURE_MODE.GRAPH_FETCH:
169
+ default:
170
+ return undefined;
171
+ }
172
+ }
173
+ }