@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
@@ -15,11 +15,9 @@
15
15
  */
16
16
 
17
17
  import {
18
- assertTrue,
19
18
  getNullableFirstElement,
20
19
  guaranteeNonNullable,
21
20
  guaranteeType,
22
- isNonNullable,
23
21
  UnsupportedOperationError,
24
22
  } from '@finos/legend-shared';
25
23
  import {
@@ -51,21 +49,13 @@ import {
51
49
  INTERNAL__PropagatedValue,
52
50
  matchFunctionName,
53
51
  } from '@finos/legend-graph';
54
- import { isGraphFetchTreeDataEmpty } from './QueryBuilderGraphFetchTreeUtil.js';
52
+ import { isGraphFetchTreeDataEmpty } from './fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.js';
55
53
  import type { QueryBuilderState } from './QueryBuilderState.js';
56
- import { buildFilterExpression } from './QueryBuilderFilterState.js';
57
54
  import {
58
55
  QueryBuilderDerivationProjectionColumnState,
59
56
  QueryBuilderSimpleProjectionColumnState,
60
- } from './QueryBuilderProjectionState.js';
61
- import { buildGenericLambdaFunctionInstanceValue } from './QueryBuilderValueSpecificationBuilderHelper.js';
62
- import {
63
- type QueryBuilderPostFilterState,
64
- type QueryBuilderPostFilterTreeNodeData,
65
- QueryBuilderPostFilterTreeConditionNodeData,
66
- QueryBuilderPostFilterTreeGroupNodeData,
67
- } from './QueryBuilderPostFilterState.js';
68
- import { fromGroupOperation } from './QueryBuilderOperatorsHelper.js';
57
+ } from './fetch-structure/projection/QueryBuilderProjectionColumnState.js';
58
+ import { buildGenericLambdaFunctionInstanceValue } from './QueryBuilderValueSpecificationHelper.js';
69
59
  import { getDerivedPropertyMilestoningSteoreotype } from './QueryBuilderPropertyEditorState.js';
70
60
  import {
71
61
  functionExpression_setParametersValues,
@@ -73,6 +63,10 @@ import {
73
63
  buildParametersLetLambdaFunc,
74
64
  } from '@finos/legend-application';
75
65
  import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../QueryBuilder_Const.js';
66
+ import { FETCH_STRUCTURE_MODE } from './fetch-structure/QueryBuilderFetchStructureState.js';
67
+ import { appendPostFilter } from './fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.js';
68
+ import { appendResultSetModifiers } from './fetch-structure/projection/QueryBuilderProjectionValueSpecificationBuilder.js';
69
+ import { buildFilterExpression } from './filter/QueryBuilderValueSpecificationBuilder.js';
76
70
 
77
71
  /**
78
72
  * Checks if the provided property expression match the criteria for default
@@ -187,98 +181,6 @@ export const buildGetAllFunction = (
187
181
  return _func;
188
182
  };
189
183
 
190
- const buildPostFilterExpression = (
191
- filterState: QueryBuilderPostFilterState,
192
- node: QueryBuilderPostFilterTreeNodeData,
193
- ): ValueSpecification | undefined => {
194
- if (node instanceof QueryBuilderPostFilterTreeConditionNodeData) {
195
- return node.condition.operator.buildPostFilterConditionExpression(
196
- node.condition,
197
- );
198
- } else if (node instanceof QueryBuilderPostFilterTreeGroupNodeData) {
199
- const multiplicityOne =
200
- filterState.queryBuilderState.graphManagerState.graph.getTypicalMultiplicity(
201
- TYPICAL_MULTIPLICITY_TYPE.ONE,
202
- );
203
- const func = new SimpleFunctionExpression(
204
- extractElementNameFromPath(fromGroupOperation(node.groupOperation)),
205
- multiplicityOne,
206
- );
207
- const clauses = node.childrenIds
208
- .map((e) => filterState.nodes.get(e))
209
- .filter(isNonNullable)
210
- .map((e) => buildPostFilterExpression(filterState, e))
211
- .filter(isNonNullable);
212
- /**
213
- * NOTE: Due to a limitation (or perhaps design decision) in the engine, group operations
214
- * like and/or do not take more than 2 parameters, as such, if we have more than 2, we need
215
- * to create a chain of this operation to accomondate.
216
- *
217
- * This means that in the read direction, we might need to flatten the chains down to group with
218
- * multiple clauses. This means user's intended grouping will not be kept.
219
- */
220
- if (clauses.length > 2) {
221
- const firstClause = clauses[0] as ValueSpecification;
222
- let currentClause: ValueSpecification = clauses[
223
- clauses.length - 1
224
- ] as ValueSpecification;
225
- for (let i = clauses.length - 2; i > 0; --i) {
226
- const clause1 = clauses[i] as ValueSpecification;
227
- const clause2 = currentClause;
228
- const groupClause = new SimpleFunctionExpression(
229
- extractElementNameFromPath(fromGroupOperation(node.groupOperation)),
230
- multiplicityOne,
231
- );
232
- groupClause.parametersValues = [clause1, clause2];
233
- currentClause = groupClause;
234
- }
235
- func.parametersValues = [firstClause, currentClause];
236
- } else {
237
- func.parametersValues = clauses;
238
- }
239
- return func.parametersValues.length ? func : undefined;
240
- }
241
- return undefined;
242
- };
243
-
244
- export const processPostFilterOnLambda = (
245
- postFilterState: QueryBuilderPostFilterState,
246
- lambda: LambdaFunction,
247
- ): LambdaFunction => {
248
- const postFilterConditionExpressions = postFilterState.rootIds
249
- .map((e) => guaranteeNonNullable(postFilterState.nodes.get(e)))
250
- .map((e) => buildPostFilterExpression(postFilterState, e))
251
- .filter(isNonNullable);
252
- if (
253
- !postFilterConditionExpressions.length ||
254
- lambda.expressionSequence.length !== 1
255
- ) {
256
- return lambda;
257
- }
258
- assertTrue(
259
- postFilterState.queryBuilderState.fetchStructureState.isProjectionMode(),
260
- 'Can only apply post-filter while fetching projection columns',
261
- );
262
- const multiplicityOne =
263
- postFilterState.queryBuilderState.graphManagerState.graph.getTypicalMultiplicity(
264
- TYPICAL_MULTIPLICITY_TYPE.ONE,
265
- );
266
- const filterLambda = buildGenericLambdaFunctionInstanceValue(
267
- postFilterState.lambdaParameterName,
268
- postFilterConditionExpressions,
269
- postFilterState.queryBuilderState.graphManagerState.graph,
270
- );
271
- // main filter expression
272
- const filterExpression = new SimpleFunctionExpression(
273
- extractElementNameFromPath(QUERY_BUILDER_SUPPORTED_FUNCTIONS.FILTER),
274
- multiplicityOne,
275
- );
276
- const currentExpression = guaranteeNonNullable(lambda.expressionSequence[0]);
277
- filterExpression.parametersValues = [currentExpression, filterLambda];
278
- lambda.expressionSequence[0] = filterExpression;
279
- return lambda;
280
- };
281
-
282
184
  export const buildPropertyExpressionChain = (
283
185
  propertyExpression: AbstractPropertyExpression,
284
186
  queryBuilderState: QueryBuilderState,
@@ -468,272 +370,353 @@ export const buildLambdaFunction = (
468
370
  lambdaFunction.expressionSequence[0] = filterFunction;
469
371
  }
470
372
  // build fetch structure
471
- if (queryBuilderState.fetchStructureState.isProjectionMode()) {
472
- if (
473
- queryBuilderState.fetchStructureState.projectionState.aggregationState
474
- .columns.length
475
- ) {
476
- // aggregation
477
-
478
- const groupByFunction = new SimpleFunctionExpression(
479
- extractElementNameFromPath(
480
- QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_GROUP_BY,
481
- ),
482
- multiplicityOne,
483
- );
373
+ switch (queryBuilderState.fetchStructureState.fetchStructureMode) {
374
+ case FETCH_STRUCTURE_MODE.PROJECTION: {
375
+ if (
376
+ queryBuilderState.fetchStructureState.projectionState.aggregationState
377
+ .columns.length
378
+ ) {
379
+ // aggregation
484
380
 
485
- const colLambdas = new CollectionInstanceValue(
486
- new Multiplicity(
487
- queryBuilderState.fetchStructureState.projectionState.columns.length -
488
- queryBuilderState.fetchStructureState.projectionState
489
- .aggregationState.columns.length,
490
- queryBuilderState.fetchStructureState.projectionState.columns.length -
491
- queryBuilderState.fetchStructureState.projectionState
492
- .aggregationState.columns.length,
493
- ),
494
- );
495
- const aggregateLambdas = new CollectionInstanceValue(
496
- new Multiplicity(
497
- queryBuilderState.fetchStructureState.projectionState.aggregationState.columns.length,
498
- queryBuilderState.fetchStructureState.projectionState.aggregationState.columns.length,
499
- ),
500
- );
501
- const colAliases = new CollectionInstanceValue(
502
- new Multiplicity(
503
- queryBuilderState.fetchStructureState.projectionState.columns.length,
504
- queryBuilderState.fetchStructureState.projectionState.columns.length,
505
- ),
506
- );
507
- queryBuilderState.fetchStructureState.projectionState.columns.forEach(
508
- (projectionColumnState) => {
509
- // column alias
510
- const colAlias = new PrimitiveInstanceValue(
511
- GenericTypeExplicitReference.create(new GenericType(typeString)),
512
- multiplicityOne,
513
- );
514
- colAlias.values.push(projectionColumnState.columnName);
515
- colAliases.values.push(colAlias);
381
+ const groupByFunction = new SimpleFunctionExpression(
382
+ extractElementNameFromPath(
383
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_GROUP_BY,
384
+ ),
385
+ multiplicityOne,
386
+ );
516
387
 
517
- const aggregateColumnState =
518
- queryBuilderState.fetchStructureState.projectionState.aggregationState.columns.find(
519
- (column) =>
520
- column.projectionColumnState === projectionColumnState,
388
+ const colLambdas = new CollectionInstanceValue(
389
+ new Multiplicity(
390
+ queryBuilderState.fetchStructureState.projectionState.columns
391
+ .length -
392
+ queryBuilderState.fetchStructureState.projectionState
393
+ .aggregationState.columns.length,
394
+ queryBuilderState.fetchStructureState.projectionState.columns
395
+ .length -
396
+ queryBuilderState.fetchStructureState.projectionState
397
+ .aggregationState.columns.length,
398
+ ),
399
+ );
400
+ const aggregateLambdas = new CollectionInstanceValue(
401
+ new Multiplicity(
402
+ queryBuilderState.fetchStructureState.projectionState.aggregationState.columns.length,
403
+ queryBuilderState.fetchStructureState.projectionState.aggregationState.columns.length,
404
+ ),
405
+ );
406
+ const colAliases = new CollectionInstanceValue(
407
+ new Multiplicity(
408
+ queryBuilderState.fetchStructureState.projectionState.columns.length,
409
+ queryBuilderState.fetchStructureState.projectionState.columns.length,
410
+ ),
411
+ );
412
+ queryBuilderState.fetchStructureState.projectionState.columns.forEach(
413
+ (projectionColumnState) => {
414
+ // column alias
415
+ const colAlias = new PrimitiveInstanceValue(
416
+ GenericTypeExplicitReference.create(new GenericType(typeString)),
417
+ multiplicityOne,
521
418
  );
419
+ colAlias.values.push(projectionColumnState.columnName);
420
+ colAliases.values.push(colAlias);
522
421
 
523
- // column projection
524
- let columnLambda: ValueSpecification;
525
- if (
526
- projectionColumnState instanceof
527
- QueryBuilderSimpleProjectionColumnState
528
- ) {
529
- columnLambda = buildGenericLambdaFunctionInstanceValue(
530
- projectionColumnState.lambdaParameterName,
531
- [
532
- buildPropertyExpressionChain(
533
- projectionColumnState.propertyExpressionState
534
- .propertyExpression,
535
- projectionColumnState.propertyExpressionState
536
- .queryBuilderState,
537
- ),
538
- ],
539
- queryBuilderState.graphManagerState.graph,
540
- );
541
- } else if (
542
- projectionColumnState instanceof
543
- QueryBuilderDerivationProjectionColumnState
544
- ) {
545
- columnLambda = new INTERNAL__UnknownValueSpecification(
546
- V1_serializeRawValueSpecification(
547
- V1_transformRawLambda(
548
- projectionColumnState.lambda,
549
- new V1_GraphTransformerContextBuilder(
550
- // TODO?: do we need to include the plugins here?
551
- [],
552
- )
553
- .withKeepSourceInformationFlag(
554
- Boolean(options?.keepSourceInformation),
422
+ const aggregateColumnState =
423
+ queryBuilderState.fetchStructureState.projectionState.aggregationState.columns.find(
424
+ (column) =>
425
+ column.projectionColumnState === projectionColumnState,
426
+ );
427
+
428
+ // column projection
429
+ let columnLambda: ValueSpecification;
430
+ if (
431
+ projectionColumnState instanceof
432
+ QueryBuilderSimpleProjectionColumnState
433
+ ) {
434
+ columnLambda = buildGenericLambdaFunctionInstanceValue(
435
+ projectionColumnState.lambdaParameterName,
436
+ [
437
+ buildPropertyExpressionChain(
438
+ projectionColumnState.propertyExpressionState
439
+ .propertyExpression,
440
+ projectionColumnState.propertyExpressionState
441
+ .queryBuilderState,
442
+ ),
443
+ ],
444
+ queryBuilderState.graphManagerState.graph,
445
+ );
446
+ } else if (
447
+ projectionColumnState instanceof
448
+ QueryBuilderDerivationProjectionColumnState
449
+ ) {
450
+ columnLambda = new INTERNAL__UnknownValueSpecification(
451
+ V1_serializeRawValueSpecification(
452
+ V1_transformRawLambda(
453
+ projectionColumnState.lambda,
454
+ new V1_GraphTransformerContextBuilder(
455
+ // TODO?: do we need to include the plugins here?
456
+ [],
555
457
  )
556
- .build(),
458
+ .withKeepSourceInformationFlag(
459
+ Boolean(options?.keepSourceInformation),
460
+ )
461
+ .build(),
462
+ ),
557
463
  ),
558
- ),
559
- );
560
- } else {
561
- throw new UnsupportedOperationError(
562
- `Can't build project() column expression: unsupported projection column state`,
563
- projectionColumnState,
564
- );
565
- }
464
+ );
465
+ } else {
466
+ throw new UnsupportedOperationError(
467
+ `Can't build project() column expression: unsupported projection column state`,
468
+ projectionColumnState,
469
+ );
470
+ }
566
471
 
567
- // column aggregation
568
- if (aggregateColumnState) {
569
- const aggregateFunctionExpression = new SimpleFunctionExpression(
570
- extractElementNameFromPath(
571
- QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_AGG,
572
- ),
573
- multiplicityOne,
574
- );
575
- const aggregateLambda = buildGenericLambdaFunctionInstanceValue(
576
- aggregateColumnState.lambdaParameterName,
577
- [
578
- aggregateColumnState.operator.buildAggregateExpressionFromState(
579
- aggregateColumnState,
472
+ // column aggregation
473
+ if (aggregateColumnState) {
474
+ const aggregateFunctionExpression = new SimpleFunctionExpression(
475
+ extractElementNameFromPath(
476
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_AGG,
580
477
  ),
581
- ],
582
- aggregateColumnState.aggregationState.projectionState
583
- .queryBuilderState.graphManagerState.graph,
478
+ multiplicityOne,
479
+ );
480
+ const aggregateLambda = buildGenericLambdaFunctionInstanceValue(
481
+ aggregateColumnState.lambdaParameterName,
482
+ [
483
+ aggregateColumnState.operator.buildAggregateExpressionFromState(
484
+ aggregateColumnState,
485
+ ),
486
+ ],
487
+ aggregateColumnState.aggregationState.projectionState
488
+ .queryBuilderState.graphManagerState.graph,
489
+ );
490
+ aggregateFunctionExpression.parametersValues = [
491
+ columnLambda,
492
+ aggregateLambda,
493
+ ];
494
+
495
+ aggregateLambdas.values.push(aggregateFunctionExpression);
496
+ } else {
497
+ colLambdas.values.push(columnLambda);
498
+ }
499
+ },
500
+ );
501
+ const expression = lambdaFunction.expressionSequence[0];
502
+ groupByFunction.parametersValues = [
503
+ expression,
504
+ colLambdas,
505
+ aggregateLambdas,
506
+ colAliases,
507
+ ];
508
+ lambdaFunction.expressionSequence[0] = groupByFunction;
509
+ } else if (
510
+ queryBuilderState.fetchStructureState.projectionState.columns.length
511
+ ) {
512
+ // projection
513
+ const projectFunction = new SimpleFunctionExpression(
514
+ extractElementNameFromPath(
515
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_PROJECT,
516
+ ),
517
+ multiplicityOne,
518
+ );
519
+ const colLambdas = new CollectionInstanceValue(
520
+ new Multiplicity(
521
+ queryBuilderState.fetchStructureState.projectionState.columns.length,
522
+ queryBuilderState.fetchStructureState.projectionState.columns.length,
523
+ ),
524
+ );
525
+ const colAliases = new CollectionInstanceValue(
526
+ new Multiplicity(
527
+ queryBuilderState.fetchStructureState.projectionState.columns.length,
528
+ queryBuilderState.fetchStructureState.projectionState.columns.length,
529
+ ),
530
+ );
531
+ queryBuilderState.fetchStructureState.projectionState.columns.forEach(
532
+ (projectionColumnState) => {
533
+ // column alias
534
+ const colAlias = new PrimitiveInstanceValue(
535
+ GenericTypeExplicitReference.create(new GenericType(typeString)),
536
+ multiplicityOne,
584
537
  );
585
- aggregateFunctionExpression.parametersValues = [
586
- columnLambda,
587
- aggregateLambda,
588
- ];
538
+ colAlias.values.push(projectionColumnState.columnName);
539
+ colAliases.values.push(colAlias);
589
540
 
590
- aggregateLambdas.values.push(aggregateFunctionExpression);
591
- } else {
541
+ // column projection
542
+ let columnLambda: ValueSpecification;
543
+ if (
544
+ projectionColumnState instanceof
545
+ QueryBuilderSimpleProjectionColumnState
546
+ ) {
547
+ columnLambda = buildGenericLambdaFunctionInstanceValue(
548
+ projectionColumnState.lambdaParameterName,
549
+ [
550
+ buildPropertyExpressionChain(
551
+ projectionColumnState.propertyExpressionState
552
+ .propertyExpression,
553
+ projectionColumnState.propertyExpressionState
554
+ .queryBuilderState,
555
+ ),
556
+ ],
557
+ queryBuilderState.graphManagerState.graph,
558
+ );
559
+ } else if (
560
+ projectionColumnState instanceof
561
+ QueryBuilderDerivationProjectionColumnState
562
+ ) {
563
+ columnLambda = new INTERNAL__UnknownValueSpecification(
564
+ V1_serializeRawValueSpecification(
565
+ V1_transformRawLambda(
566
+ projectionColumnState.lambda,
567
+ new V1_GraphTransformerContextBuilder(
568
+ // TODO?: do we need to include the plugins here?
569
+ [],
570
+ )
571
+ .withKeepSourceInformationFlag(
572
+ Boolean(options?.keepSourceInformation),
573
+ )
574
+ .build(),
575
+ ),
576
+ ),
577
+ );
578
+ } else {
579
+ throw new UnsupportedOperationError(
580
+ `Can't build project() column expression: unsupported projection column state`,
581
+ projectionColumnState,
582
+ );
583
+ }
592
584
  colLambdas.values.push(columnLambda);
593
- }
594
- },
595
- );
596
- const expression = lambdaFunction.expressionSequence[0];
597
- groupByFunction.parametersValues = [
598
- expression,
599
- colLambdas,
600
- aggregateLambdas,
601
- colAliases,
602
- ];
603
- lambdaFunction.expressionSequence[0] = groupByFunction;
604
- } else if (
605
- queryBuilderState.fetchStructureState.projectionState.columns.length
606
- ) {
607
- // projection
608
- const projectFunction = new SimpleFunctionExpression(
609
- extractElementNameFromPath(
610
- QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_PROJECT,
611
- ),
612
- multiplicityOne,
613
- );
614
- const colLambdas = new CollectionInstanceValue(
615
- new Multiplicity(
616
- queryBuilderState.fetchStructureState.projectionState.columns.length,
617
- queryBuilderState.fetchStructureState.projectionState.columns.length,
618
- ),
585
+ },
586
+ );
587
+ const expression = lambdaFunction.expressionSequence[0];
588
+ projectFunction.parametersValues = [expression, colLambdas, colAliases];
589
+ lambdaFunction.expressionSequence[0] = projectFunction;
590
+ }
591
+
592
+ // build post-filter
593
+ appendPostFilter(
594
+ queryBuilderState.fetchStructureState.projectionState.postFilterState,
595
+ lambdaFunction,
619
596
  );
620
- const colAliases = new CollectionInstanceValue(
621
- new Multiplicity(
622
- queryBuilderState.fetchStructureState.projectionState.columns.length,
623
- queryBuilderState.fetchStructureState.projectionState.columns.length,
624
- ),
597
+
598
+ // build result set modifiers
599
+ appendResultSetModifiers(
600
+ queryBuilderState.fetchStructureState.projectionState
601
+ .resultSetModifierState,
602
+ lambdaFunction,
603
+ {
604
+ overridingLimit: options?.isBuildingExecutionQuery
605
+ ? queryBuilderState.resultState.previewLimit
606
+ : undefined,
607
+ },
625
608
  );
626
- queryBuilderState.fetchStructureState.projectionState.columns.forEach(
627
- (projectionColumnState) => {
628
- // column alias
629
- const colAlias = new PrimitiveInstanceValue(
630
- GenericTypeExplicitReference.create(new GenericType(typeString)),
631
- multiplicityOne,
632
- );
633
- colAlias.values.push(projectionColumnState.columnName);
634
- colAliases.values.push(colAlias);
635
609
 
636
- // column projection
637
- let columnLambda: ValueSpecification;
638
- if (
639
- projectionColumnState instanceof
640
- QueryBuilderSimpleProjectionColumnState
641
- ) {
642
- columnLambda = buildGenericLambdaFunctionInstanceValue(
643
- projectionColumnState.lambdaParameterName,
644
- [
645
- buildPropertyExpressionChain(
646
- projectionColumnState.propertyExpressionState
647
- .propertyExpression,
648
- projectionColumnState.propertyExpressionState
649
- .queryBuilderState,
610
+ break;
611
+ }
612
+ case FETCH_STRUCTURE_MODE.GRAPH_FETCH: {
613
+ // build fetch-structure
614
+ if (
615
+ queryBuilderState.fetchStructureState.graphFetchTreeState.treeData &&
616
+ !isGraphFetchTreeDataEmpty(
617
+ queryBuilderState.fetchStructureState.graphFetchTreeState.treeData,
618
+ )
619
+ ) {
620
+ const graphFetchInstance = new RootGraphFetchTreeInstanceValue(
621
+ multiplicityOne,
622
+ );
623
+ graphFetchInstance.values = [
624
+ queryBuilderState.fetchStructureState.graphFetchTreeState.treeData
625
+ .tree,
626
+ ];
627
+ const serializeFunction = new SimpleFunctionExpression(
628
+ extractElementNameFromPath(
629
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.SERIALIZE,
630
+ ),
631
+ multiplicityOne,
632
+ );
633
+ const graphFetchFunc = new SimpleFunctionExpression(
634
+ queryBuilderState.fetchStructureState.graphFetchTreeState.isChecked
635
+ ? extractElementNameFromPath(
636
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.GRAPH_FETCH_CHECKED,
637
+ )
638
+ : extractElementNameFromPath(
639
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.GRAPH_FETCH,
640
+ ),
641
+ multiplicityOne,
642
+ );
643
+ const expression = lambdaFunction.expressionSequence[0];
644
+ graphFetchFunc.parametersValues = [expression, graphFetchInstance];
645
+ serializeFunction.parametersValues = [
646
+ graphFetchFunc,
647
+ graphFetchInstance,
648
+ ];
649
+ lambdaFunction.expressionSequence[0] = serializeFunction;
650
+ }
651
+
652
+ // build result set modifier: i.e. preview limit
653
+ if (options?.isBuildingExecutionQuery) {
654
+ if (lambdaFunction.expressionSequence.length === 1) {
655
+ const func = lambdaFunction.expressionSequence[0];
656
+ if (func instanceof SimpleFunctionExpression) {
657
+ if (
658
+ matchFunctionName(
659
+ func.functionName,
660
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.SERIALIZE,
661
+ )
662
+ ) {
663
+ // NOTE: we have to separate the handling of `take()` for projection and
664
+ // graph-fetch as the latter use `meta::pure::functions::collection::take()`
665
+ // where the former uses `meta::pure::tds::take()`, therefore the placement
666
+ // in the query are different. Also, note that because of the above distinction,
667
+ // we won't support using `take()` as result set modifier operations for graph-fetch.
668
+ // Result set modifier should only be used for projection for now.
669
+ const limit = new PrimitiveInstanceValue(
670
+ GenericTypeExplicitReference.create(
671
+ new GenericType(
672
+ queryBuilderState.graphManagerState.graph.getPrimitiveType(
673
+ PRIMITIVE_TYPE.INTEGER,
674
+ ),
675
+ ),
650
676
  ),
651
- ],
652
- queryBuilderState.graphManagerState.graph,
653
- );
654
- } else if (
655
- projectionColumnState instanceof
656
- QueryBuilderDerivationProjectionColumnState
657
- ) {
658
- columnLambda = new INTERNAL__UnknownValueSpecification(
659
- V1_serializeRawValueSpecification(
660
- V1_transformRawLambda(
661
- projectionColumnState.lambda,
662
- new V1_GraphTransformerContextBuilder(
663
- // TODO?: do we need to include the plugins here?
664
- [],
665
- )
666
- .withKeepSourceInformationFlag(
667
- Boolean(options?.keepSourceInformation),
668
- )
669
- .build(),
677
+ multiplicityOne,
678
+ );
679
+ limit.values = [queryBuilderState.resultState.previewLimit];
680
+ const takeFunction = new SimpleFunctionExpression(
681
+ extractElementNameFromPath(
682
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.TAKE,
670
683
  ),
671
- ),
672
- );
673
- } else {
674
- throw new UnsupportedOperationError(
675
- `Can't build project() column expression: unsupported projection column state`,
676
- projectionColumnState,
677
- );
684
+ multiplicityOne,
685
+ );
686
+
687
+ // NOTE: `take()` does not work on `graphFetch()` or `serialize()` so we will put it
688
+ // right next to `all()`
689
+ const serializeFunction = func;
690
+ const graphFetchFunc = guaranteeType(
691
+ serializeFunction.parametersValues[0],
692
+ SimpleFunctionExpression,
693
+ );
694
+ const getAllFunc = graphFetchFunc
695
+ .parametersValues[0] as ValueSpecification;
696
+ takeFunction.parametersValues[0] = getAllFunc;
697
+ takeFunction.parametersValues[1] = limit;
698
+ graphFetchFunc.parametersValues = [
699
+ takeFunction,
700
+ graphFetchFunc.parametersValues[1] as ValueSpecification,
701
+ ];
702
+ }
678
703
  }
679
- colLambdas.values.push(columnLambda);
680
- },
681
- );
682
- const expression = lambdaFunction.expressionSequence[0];
683
- projectFunction.parametersValues = [expression, colLambdas, colAliases];
684
- lambdaFunction.expressionSequence[0] = projectFunction;
704
+ }
705
+ }
706
+ break;
685
707
  }
686
- } else if (
687
- queryBuilderState.fetchStructureState.isGraphFetchMode() &&
688
- queryBuilderState.fetchStructureState.graphFetchTreeState.treeData &&
689
- !isGraphFetchTreeDataEmpty(
690
- queryBuilderState.fetchStructureState.graphFetchTreeState.treeData,
691
- )
692
- ) {
693
- const graphFetchInstance = new RootGraphFetchTreeInstanceValue(
694
- multiplicityOne,
695
- );
696
- graphFetchInstance.values = [
697
- queryBuilderState.fetchStructureState.graphFetchTreeState.treeData.tree,
698
- ];
699
- const serializeFunction = new SimpleFunctionExpression(
700
- extractElementNameFromPath(QUERY_BUILDER_SUPPORTED_FUNCTIONS.SERIALIZE),
701
- multiplicityOne,
702
- );
703
- const graphFetchFunc = new SimpleFunctionExpression(
704
- queryBuilderState.fetchStructureState.graphFetchTreeState.isChecked
705
- ? extractElementNameFromPath(
706
- QUERY_BUILDER_SUPPORTED_FUNCTIONS.GRAPH_FETCH_CHECKED,
707
- )
708
- : extractElementNameFromPath(
709
- QUERY_BUILDER_SUPPORTED_FUNCTIONS.GRAPH_FETCH,
710
- ),
711
- multiplicityOne,
712
- );
713
- const expression = lambdaFunction.expressionSequence[0];
714
- graphFetchFunc.parametersValues = [expression, graphFetchInstance];
715
- serializeFunction.parametersValues = [graphFetchFunc, graphFetchInstance];
716
- lambdaFunction.expressionSequence[0] = serializeFunction;
708
+ default:
709
+ break;
717
710
  }
718
- // build post-filter
719
- processPostFilterOnLambda(queryBuilderState.postFilterState, lambdaFunction);
720
- // build result set modifiers
721
- queryBuilderState.resultSetModifierState.buildResultSetModifiers(
722
- lambdaFunction,
723
- {
724
- overridingLimit: options?.isBuildingExecutionQuery
725
- ? queryBuilderState.resultState.previewLimit
726
- : undefined,
727
- },
728
- );
711
+
729
712
  // build parameters
730
713
  if (
731
714
  !queryBuilderState.mode.isParametersDisabled &&
732
715
  queryBuilderState.queryParametersState.parameterStates.length
733
716
  ) {
734
- // if we are executing:
735
- // set the parameters to empty
736
- // add let statements for each parameter
717
+ // NOTE: if we are executing:
718
+ // 1. set the parameters to empty
719
+ // 2. add let statements for each parameter
737
720
  if (options?.isBuildingExecutionQuery) {
738
721
  lambdaFunction.functionType.parameters = [];
739
722
  const letsFuncs = buildParametersLetLambdaFunc(
@@ -751,5 +734,6 @@ export const buildLambdaFunction = (
751
734
  );
752
735
  }
753
736
  }
737
+
754
738
  return lambdaFunction;
755
739
  };