@finos/legend-query-builder 0.4.4 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (295) hide show
  1. package/lib/components/QueryBuilder.d.ts +1 -0
  2. package/lib/components/QueryBuilder.d.ts.map +1 -1
  3. package/lib/components/QueryBuilder.js +11 -2
  4. package/lib/components/QueryBuilder.js.map +1 -1
  5. package/lib/components/QueryBuilderConstantExpressionPanel.d.ts +23 -0
  6. package/lib/components/QueryBuilderConstantExpressionPanel.d.ts.map +1 -0
  7. package/lib/components/QueryBuilderConstantExpressionPanel.js +105 -0
  8. package/lib/components/QueryBuilderConstantExpressionPanel.js.map +1 -0
  9. package/lib/components/QueryBuilderDiffPanel.d.ts +1 -0
  10. package/lib/components/QueryBuilderDiffPanel.d.ts.map +1 -1
  11. package/lib/components/QueryBuilderDiffPanel.js +1 -2
  12. package/lib/components/QueryBuilderDiffPanel.js.map +1 -1
  13. package/lib/components/QueryBuilderParametersPanel.d.ts +1 -9
  14. package/lib/components/QueryBuilderParametersPanel.d.ts.map +1 -1
  15. package/lib/components/QueryBuilderParametersPanel.js +10 -27
  16. package/lib/components/QueryBuilderParametersPanel.js.map +1 -1
  17. package/lib/components/QueryBuilderPropertyExpressionEditor.d.ts +1 -0
  18. package/lib/components/QueryBuilderPropertyExpressionEditor.d.ts.map +1 -1
  19. package/lib/components/QueryBuilderPropertyExpressionEditor.js +60 -12
  20. package/lib/components/QueryBuilderPropertyExpressionEditor.js.map +1 -1
  21. package/lib/components/QueryBuilderResultPanel.d.ts +1 -0
  22. package/lib/components/QueryBuilderResultPanel.d.ts.map +1 -1
  23. package/lib/components/QueryBuilderSideBar.d.ts +3 -1
  24. package/lib/components/QueryBuilderSideBar.d.ts.map +1 -1
  25. package/lib/components/QueryBuilderSideBar.js +6 -14
  26. package/lib/components/QueryBuilderSideBar.js.map +1 -1
  27. package/lib/components/QueryBuilderTextEditor.d.ts +1 -0
  28. package/lib/components/QueryBuilderTextEditor.d.ts.map +1 -1
  29. package/lib/components/QueryBuilderUnsupportedQueryEditor.d.ts +1 -0
  30. package/lib/components/QueryBuilderUnsupportedQueryEditor.d.ts.map +1 -1
  31. package/lib/components/explorer/QueryBuilderFunctionsExplorerPanel.d.ts +1 -0
  32. package/lib/components/explorer/QueryBuilderFunctionsExplorerPanel.d.ts.map +1 -1
  33. package/lib/components/explorer/QueryBuilderMilestoningEditor.d.ts +1 -0
  34. package/lib/components/explorer/QueryBuilderMilestoningEditor.d.ts.map +1 -1
  35. package/lib/components/explorer/QueryBuilderMilestoningEditor.js +12 -18
  36. package/lib/components/explorer/QueryBuilderMilestoningEditor.js.map +1 -1
  37. package/lib/components/explorer/QueryBuilderPropertySearchPanel.d.ts +1 -0
  38. package/lib/components/explorer/QueryBuilderPropertySearchPanel.d.ts.map +1 -1
  39. package/lib/components/fetch-structure/QueryBuilderFetchStructurePanel.d.ts +1 -0
  40. package/lib/components/fetch-structure/QueryBuilderFetchStructurePanel.d.ts.map +1 -1
  41. package/lib/components/fetch-structure/QueryBuilderGraphFetchTreePanel.d.ts +1 -0
  42. package/lib/components/fetch-structure/QueryBuilderGraphFetchTreePanel.d.ts.map +1 -1
  43. package/lib/components/fetch-structure/{QueryBuilderOLAPGroupByPanel_.d.ts → QueryBuilderOLAPGroupByPanel.d.ts} +3 -2
  44. package/lib/components/fetch-structure/QueryBuilderOLAPGroupByPanel.d.ts.map +1 -0
  45. package/lib/components/fetch-structure/{QueryBuilderOLAPGroupByPanel_.js → QueryBuilderOLAPGroupByPanel.js} +2 -2
  46. package/lib/components/fetch-structure/QueryBuilderOLAPGroupByPanel.js.map +1 -0
  47. package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.d.ts +1 -0
  48. package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.d.ts.map +1 -1
  49. package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.js +9 -11
  50. package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.js.map +1 -1
  51. package/lib/components/fetch-structure/QueryBuilderPostTDSPanel.d.ts +1 -0
  52. package/lib/components/fetch-structure/QueryBuilderPostTDSPanel.d.ts.map +1 -1
  53. package/lib/components/fetch-structure/QueryBuilderPostTDSPanel.js +1 -1
  54. package/lib/components/fetch-structure/QueryBuilderPostTDSPanel.js.map +1 -1
  55. package/lib/components/fetch-structure/QueryBuilderResultModifierPanel.d.ts +1 -0
  56. package/lib/components/fetch-structure/QueryBuilderResultModifierPanel.d.ts.map +1 -1
  57. package/lib/components/fetch-structure/QueryBuilderTDSPanel.d.ts +1 -0
  58. package/lib/components/fetch-structure/QueryBuilderTDSPanel.d.ts.map +1 -1
  59. package/lib/components/fetch-structure/QueryBuilderTDSPanel.js +4 -4
  60. package/lib/components/fetch-structure/QueryBuilderTDSPanel.js.map +1 -1
  61. package/lib/components/filter/QueryBuilderFilterPanel.d.ts +1 -0
  62. package/lib/components/filter/QueryBuilderFilterPanel.d.ts.map +1 -1
  63. package/lib/components/filter/QueryBuilderFilterPanel.js +8 -9
  64. package/lib/components/filter/QueryBuilderFilterPanel.js.map +1 -1
  65. package/lib/components/shared/BasicValueSpecificationEditor.d.ts +12 -1
  66. package/lib/components/shared/BasicValueSpecificationEditor.d.ts.map +1 -1
  67. package/lib/components/shared/BasicValueSpecificationEditor.js +11 -7
  68. package/lib/components/shared/BasicValueSpecificationEditor.js.map +1 -1
  69. package/lib/components/shared/CustomDatePicker.d.ts.map +1 -1
  70. package/lib/components/shared/CustomDatePicker.js +3 -3
  71. package/lib/components/shared/CustomDatePicker.js.map +1 -1
  72. package/lib/components/shared/LambdaEditor.d.ts +1 -0
  73. package/lib/components/shared/LambdaEditor.d.ts.map +1 -1
  74. package/lib/components/shared/LambdaEditor.js +1 -15
  75. package/lib/components/shared/LambdaEditor.js.map +1 -1
  76. package/lib/components/shared/LambdaParameterValuesEditor.d.ts +1 -0
  77. package/lib/components/shared/LambdaParameterValuesEditor.d.ts.map +1 -1
  78. package/lib/components/shared/QueryBuilderVariableSelector.d.ts +37 -0
  79. package/lib/components/shared/QueryBuilderVariableSelector.d.ts.map +1 -0
  80. package/lib/components/shared/QueryBuilderVariableSelector.js +53 -0
  81. package/lib/components/shared/QueryBuilderVariableSelector.js.map +1 -0
  82. package/lib/components/watermark/QueryBuilderWatermark.d.ts +1 -0
  83. package/lib/components/watermark/QueryBuilderWatermark.d.ts.map +1 -1
  84. package/lib/components/watermark/QueryBuilderWatermark.js +9 -11
  85. package/lib/components/watermark/QueryBuilderWatermark.js.map +1 -1
  86. package/lib/graphManager/QueryBuilderHashUtils.d.ts +2 -0
  87. package/lib/graphManager/QueryBuilderHashUtils.d.ts.map +1 -1
  88. package/lib/graphManager/QueryBuilderHashUtils.js +2 -0
  89. package/lib/graphManager/QueryBuilderHashUtils.js.map +1 -1
  90. package/lib/index.css +1 -17
  91. package/lib/index.css.map +1 -1
  92. package/lib/package.json +6 -6
  93. package/lib/stores/QueryBuilderConfig.d.ts +1 -0
  94. package/lib/stores/QueryBuilderConfig.d.ts.map +1 -1
  95. package/lib/stores/QueryBuilderConfig.js +1 -0
  96. package/lib/stores/QueryBuilderConfig.js.map +1 -1
  97. package/lib/stores/QueryBuilderConstantsState.d.ts +43 -0
  98. package/lib/stores/QueryBuilderConstantsState.d.ts.map +1 -0
  99. package/lib/stores/QueryBuilderConstantsState.js +116 -0
  100. package/lib/stores/QueryBuilderConstantsState.js.map +1 -0
  101. package/lib/stores/QueryBuilderParametersState.d.ts +0 -4
  102. package/lib/stores/QueryBuilderParametersState.d.ts.map +1 -1
  103. package/lib/stores/QueryBuilderParametersState.js +0 -1
  104. package/lib/stores/QueryBuilderParametersState.js.map +1 -1
  105. package/lib/stores/QueryBuilderPropertyEditorState.d.ts +3 -10
  106. package/lib/stores/QueryBuilderPropertyEditorState.d.ts.map +1 -1
  107. package/lib/stores/QueryBuilderPropertyEditorState.js +6 -140
  108. package/lib/stores/QueryBuilderPropertyEditorState.js.map +1 -1
  109. package/lib/stores/QueryBuilderState.d.ts +10 -3
  110. package/lib/stores/QueryBuilderState.d.ts.map +1 -1
  111. package/lib/stores/QueryBuilderState.js +27 -4
  112. package/lib/stores/QueryBuilderState.js.map +1 -1
  113. package/lib/stores/QueryBuilderStateBuilder.d.ts +4 -3
  114. package/lib/stores/QueryBuilderStateBuilder.d.ts.map +1 -1
  115. package/lib/stores/QueryBuilderStateBuilder.js +50 -42
  116. package/lib/stores/QueryBuilderStateBuilder.js.map +1 -1
  117. package/lib/stores/QueryBuilderValueSpecificationBuilder.d.ts.map +1 -1
  118. package/lib/stores/QueryBuilderValueSpecificationBuilder.js +23 -25
  119. package/lib/stores/QueryBuilderValueSpecificationBuilder.js.map +1 -1
  120. package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.d.ts.map +1 -1
  121. package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.js +14 -78
  122. package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.js.map +1 -1
  123. package/lib/stores/QueryBuilderValueSpecificationHelper.d.ts +2 -1
  124. package/lib/stores/QueryBuilderValueSpecificationHelper.d.ts.map +1 -1
  125. package/lib/stores/QueryBuilderValueSpecificationHelper.js +13 -20
  126. package/lib/stores/QueryBuilderValueSpecificationHelper.js.map +1 -1
  127. package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.d.ts +2 -1
  128. package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.d.ts.map +1 -1
  129. package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.js.map +1 -1
  130. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.d.ts +2 -1
  131. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.d.ts.map +1 -1
  132. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.js +4 -0
  133. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.js.map +1 -1
  134. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeStateBuilder.d.ts +3 -3
  135. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeStateBuilder.d.ts.map +1 -1
  136. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeStateBuilder.js +4 -4
  137. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeStateBuilder.js.map +1 -1
  138. package/lib/stores/fetch-structure/tds/QueryBuilderTDSState.d.ts +3 -2
  139. package/lib/stores/fetch-structure/tds/QueryBuilderTDSState.d.ts.map +1 -1
  140. package/lib/stores/fetch-structure/tds/QueryBuilderTDSState.js +15 -2
  141. package/lib/stores/fetch-structure/tds/QueryBuilderTDSState.js.map +1 -1
  142. package/lib/stores/fetch-structure/tds/aggregation/QueryBuilderAggregationStateBuilder.d.ts +3 -3
  143. package/lib/stores/fetch-structure/tds/aggregation/QueryBuilderAggregationStateBuilder.d.ts.map +1 -1
  144. package/lib/stores/fetch-structure/tds/aggregation/QueryBuilderAggregationStateBuilder.js +6 -6
  145. package/lib/stores/fetch-structure/tds/aggregation/QueryBuilderAggregationStateBuilder.js.map +1 -1
  146. package/lib/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByOperatorLoader_.d.ts → QueryBuilderOLAPGroupByOperatorLoader.d.ts} +1 -1
  147. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByOperatorLoader.d.ts.map +1 -0
  148. package/lib/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByOperatorLoader_.js → QueryBuilderOLAPGroupByOperatorLoader.js} +1 -1
  149. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByOperatorLoader.js.map +1 -0
  150. package/lib/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByState_.d.ts → QueryBuilderOLAPGroupByState.d.ts} +1 -1
  151. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByState.d.ts.map +1 -0
  152. package/lib/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByState_.js → QueryBuilderOLAPGroupByState.js} +1 -1
  153. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByState.js.map +1 -0
  154. package/lib/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByStateBuilder_.d.ts → QueryBuilderOLAPGroupByStateBuilder.d.ts} +3 -3
  155. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByStateBuilder.d.ts.map +1 -0
  156. package/lib/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByStateBuilder_.js → QueryBuilderOLAPGroupByStateBuilder.js} +4 -4
  157. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByStateBuilder.js.map +1 -0
  158. package/lib/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByValueSpecificationBuilder_.d.ts → QueryBuilderOLAPGroupByValueSpecificationBuilder.d.ts} +2 -2
  159. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByValueSpecificationBuilder.d.ts.map +1 -0
  160. package/lib/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByValueSpecificationBuilder_.js → QueryBuilderOLAPGroupByValueSpecificationBuilder.js} +2 -2
  161. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByValueSpecificationBuilder.js.map +1 -0
  162. package/lib/stores/fetch-structure/tds/post-filter/QueryBuilderPostFilterState.d.ts +2 -1
  163. package/lib/stores/fetch-structure/tds/post-filter/QueryBuilderPostFilterState.d.ts.map +1 -1
  164. package/lib/stores/fetch-structure/tds/post-filter/QueryBuilderPostFilterState.js +9 -1
  165. package/lib/stores/fetch-structure/tds/post-filter/QueryBuilderPostFilterState.js.map +1 -1
  166. package/lib/stores/fetch-structure/tds/post-filter/operators/QueryBuilderPostFilterOperatorHelper.js +1 -1
  167. package/lib/stores/fetch-structure/tds/post-filter/operators/QueryBuilderPostFilterOperatorHelper.js.map +1 -1
  168. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionColumnState.d.ts +2 -1
  169. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionColumnState.d.ts.map +1 -1
  170. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionColumnState.js +4 -0
  171. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionColumnState.js.map +1 -1
  172. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionStateBuilder.d.ts +5 -5
  173. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionStateBuilder.d.ts.map +1 -1
  174. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionStateBuilder.js +10 -10
  175. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionStateBuilder.js.map +1 -1
  176. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionValueSpecificationBuilder.js +1 -1
  177. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionValueSpecificationBuilder.js.map +1 -1
  178. package/lib/stores/filter/QueryBuilderFilterState.d.ts +2 -1
  179. package/lib/stores/filter/QueryBuilderFilterState.d.ts.map +1 -1
  180. package/lib/stores/filter/QueryBuilderFilterState.js +9 -1
  181. package/lib/stores/filter/QueryBuilderFilterState.js.map +1 -1
  182. package/lib/stores/filter/QueryBuilderFilterValueSpecificationBuilder.d.ts +2 -2
  183. package/lib/stores/filter/QueryBuilderFilterValueSpecificationBuilder.d.ts.map +1 -1
  184. package/lib/stores/filter/QueryBuilderFilterValueSpecificationBuilder.js +6 -4
  185. package/lib/stores/filter/QueryBuilderFilterValueSpecificationBuilder.js.map +1 -1
  186. package/lib/stores/milestoning/QueryBuilderBitemporalMilestoningImplementation.d.ts +27 -0
  187. package/lib/stores/milestoning/QueryBuilderBitemporalMilestoningImplementation.d.ts.map +1 -0
  188. package/lib/stores/milestoning/QueryBuilderBitemporalMilestoningImplementation.js +93 -0
  189. package/lib/stores/milestoning/QueryBuilderBitemporalMilestoningImplementation.js.map +1 -0
  190. package/lib/stores/milestoning/QueryBuilderBusinessTemporalMilestoningImplementation.d.ts +26 -0
  191. package/lib/stores/milestoning/QueryBuilderBusinessTemporalMilestoningImplementation.d.ts.map +1 -0
  192. package/lib/stores/milestoning/QueryBuilderBusinessTemporalMilestoningImplementation.js +60 -0
  193. package/lib/stores/milestoning/QueryBuilderBusinessTemporalMilestoningImplementation.js.map +1 -0
  194. package/lib/stores/milestoning/QueryBuilderMilestoningHelper.d.ts +70 -0
  195. package/lib/stores/milestoning/QueryBuilderMilestoningHelper.d.ts.map +1 -0
  196. package/lib/stores/milestoning/QueryBuilderMilestoningHelper.js +199 -0
  197. package/lib/stores/milestoning/QueryBuilderMilestoningHelper.js.map +1 -0
  198. package/lib/stores/milestoning/QueryBuilderMilestoningImplementation.d.ts +49 -0
  199. package/lib/stores/milestoning/QueryBuilderMilestoningImplementation.d.ts.map +1 -0
  200. package/lib/stores/milestoning/QueryBuilderMilestoningImplementation.js +24 -0
  201. package/lib/stores/milestoning/QueryBuilderMilestoningImplementation.js.map +1 -0
  202. package/lib/stores/{QueryBuilderMilestoningState.d.ts → milestoning/QueryBuilderMilestoningState.d.ts} +7 -2
  203. package/lib/stores/milestoning/QueryBuilderMilestoningState.d.ts.map +1 -0
  204. package/lib/stores/{QueryBuilderMilestoningState.js → milestoning/QueryBuilderMilestoningState.js} +30 -20
  205. package/lib/stores/milestoning/QueryBuilderMilestoningState.js.map +1 -0
  206. package/lib/stores/milestoning/QueryBuilderProcessingTemporalMilestoningImplementation.d.ts +26 -0
  207. package/lib/stores/milestoning/QueryBuilderProcessingTemporalMilestoningImplementation.d.ts.map +1 -0
  208. package/lib/stores/milestoning/QueryBuilderProcessingTemporalMilestoningImplementation.js +55 -0
  209. package/lib/stores/milestoning/QueryBuilderProcessingTemporalMilestoningImplementation.js.map +1 -0
  210. package/lib/stores/shared/ValueSpecificationEditorHelper.d.ts +3 -1
  211. package/lib/stores/shared/ValueSpecificationEditorHelper.d.ts.map +1 -1
  212. package/lib/stores/shared/ValueSpecificationEditorHelper.js +58 -2
  213. package/lib/stores/shared/ValueSpecificationEditorHelper.js.map +1 -1
  214. package/lib/stores/watermark/QueryBuilderWatermarkState.d.ts +2 -1
  215. package/lib/stores/watermark/QueryBuilderWatermarkState.d.ts.map +1 -1
  216. package/lib/stores/watermark/QueryBuilderWatermarkState.js +6 -0
  217. package/lib/stores/watermark/QueryBuilderWatermarkState.js.map +1 -1
  218. package/lib/stores/watermark/QueryBuilderWatermarkStateBuilder.d.ts +2 -2
  219. package/lib/stores/watermark/QueryBuilderWatermarkStateBuilder.d.ts.map +1 -1
  220. package/lib/stores/watermark/QueryBuilderWatermarkStateBuilder.js +2 -2
  221. package/lib/stores/watermark/QueryBuilderWatermarkStateBuilder.js.map +1 -1
  222. package/lib/stores/watermark/QueryBuilderWatermarkValueSpecificationBuilder.d.ts +2 -2
  223. package/lib/stores/watermark/QueryBuilderWatermarkValueSpecificationBuilder.d.ts.map +1 -1
  224. package/lib/stores/watermark/QueryBuilderWatermarkValueSpecificationBuilder.js +7 -4
  225. package/lib/stores/watermark/QueryBuilderWatermarkValueSpecificationBuilder.js.map +1 -1
  226. package/lib/stores/workflows/ServiceQueryBuilderState.js +1 -1
  227. package/lib/stores/workflows/ServiceQueryBuilderState.js.map +1 -1
  228. package/package.json +13 -13
  229. package/src/components/QueryBuilder.tsx +38 -0
  230. package/src/components/QueryBuilderConstantExpressionPanel.tsx +291 -0
  231. package/src/components/QueryBuilderDiffPanel.tsx +0 -2
  232. package/src/components/QueryBuilderParametersPanel.tsx +29 -103
  233. package/src/components/QueryBuilderPropertyExpressionEditor.tsx +119 -36
  234. package/src/components/QueryBuilderSideBar.tsx +5 -22
  235. package/src/components/explorer/QueryBuilderMilestoningEditor.tsx +29 -39
  236. package/src/components/fetch-structure/{QueryBuilderOLAPGroupByPanel_.tsx → QueryBuilderOLAPGroupByPanel.tsx} +1 -1
  237. package/src/components/fetch-structure/QueryBuilderPostFilterPanel.tsx +18 -19
  238. package/src/components/fetch-structure/QueryBuilderPostTDSPanel.tsx +1 -1
  239. package/src/components/fetch-structure/QueryBuilderTDSPanel.tsx +9 -9
  240. package/src/components/filter/QueryBuilderFilterPanel.tsx +16 -17
  241. package/src/components/shared/BasicValueSpecificationEditor.tsx +47 -22
  242. package/src/components/shared/CustomDatePicker.tsx +3 -2
  243. package/src/components/shared/LambdaEditor.tsx +0 -15
  244. package/src/components/shared/QueryBuilderVariableSelector.tsx +193 -0
  245. package/src/components/watermark/QueryBuilderWatermark.tsx +19 -31
  246. package/src/graphManager/QueryBuilderHashUtils.ts +2 -0
  247. package/src/stores/QueryBuilderConfig.ts +1 -0
  248. package/src/stores/QueryBuilderConstantsState.ts +173 -0
  249. package/src/stores/QueryBuilderParametersState.ts +0 -6
  250. package/src/stores/QueryBuilderPropertyEditorState.ts +6 -235
  251. package/src/stores/QueryBuilderState.ts +36 -4
  252. package/src/stores/QueryBuilderStateBuilder.ts +111 -52
  253. package/src/stores/QueryBuilderValueSpecificationBuilder.ts +34 -51
  254. package/src/stores/QueryBuilderValueSpecificationBuilderHelper.ts +16 -105
  255. package/src/stores/QueryBuilderValueSpecificationHelper.ts +23 -29
  256. package/src/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.ts +2 -0
  257. package/src/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.ts +14 -2
  258. package/src/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeStateBuilder.ts +5 -0
  259. package/src/stores/fetch-structure/tds/QueryBuilderTDSState.ts +21 -4
  260. package/src/stores/fetch-structure/tds/aggregation/QueryBuilderAggregationStateBuilder.ts +7 -0
  261. package/src/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByOperatorLoader_.ts → QueryBuilderOLAPGroupByOperatorLoader.ts} +0 -0
  262. package/src/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByState_.ts → QueryBuilderOLAPGroupByState.ts} +0 -0
  263. package/src/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByStateBuilder_.ts → QueryBuilderOLAPGroupByStateBuilder.ts} +3 -1
  264. package/src/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByValueSpecificationBuilder_.ts → QueryBuilderOLAPGroupByValueSpecificationBuilder.ts} +1 -1
  265. package/src/stores/fetch-structure/tds/post-filter/QueryBuilderPostFilterState.ts +13 -0
  266. package/src/stores/fetch-structure/tds/post-filter/operators/QueryBuilderPostFilterOperatorHelper.ts +1 -1
  267. package/src/stores/fetch-structure/tds/projection/QueryBuilderProjectionColumnState.ts +12 -0
  268. package/src/stores/fetch-structure/tds/projection/QueryBuilderProjectionStateBuilder.ts +11 -0
  269. package/src/stores/fetch-structure/tds/projection/QueryBuilderProjectionValueSpecificationBuilder.ts +1 -1
  270. package/src/stores/filter/QueryBuilderFilterState.ts +13 -0
  271. package/src/stores/filter/QueryBuilderFilterValueSpecificationBuilder.ts +10 -5
  272. package/src/stores/milestoning/QueryBuilderBitemporalMilestoningImplementation.ts +165 -0
  273. package/src/stores/milestoning/QueryBuilderBusinessTemporalMilestoningImplementation.ts +96 -0
  274. package/src/stores/milestoning/QueryBuilderMilestoningHelper.ts +311 -0
  275. package/src/stores/milestoning/QueryBuilderMilestoningImplementation.ts +77 -0
  276. package/src/stores/{QueryBuilderMilestoningState.ts → milestoning/QueryBuilderMilestoningState.ts} +66 -39
  277. package/src/stores/milestoning/QueryBuilderProcessingTemporalMilestoningImplementation.ts +88 -0
  278. package/src/stores/shared/ValueSpecificationEditorHelper.ts +84 -2
  279. package/src/stores/watermark/QueryBuilderWatermarkState.ts +8 -0
  280. package/src/stores/watermark/QueryBuilderWatermarkStateBuilder.ts +3 -0
  281. package/src/stores/watermark/QueryBuilderWatermarkValueSpecificationBuilder.ts +11 -5
  282. package/src/stores/workflows/ServiceQueryBuilderState.ts +1 -1
  283. package/tsconfig.json +14 -6
  284. package/lib/components/fetch-structure/QueryBuilderOLAPGroupByPanel_.d.ts.map +0 -1
  285. package/lib/components/fetch-structure/QueryBuilderOLAPGroupByPanel_.js.map +0 -1
  286. package/lib/stores/QueryBuilderMilestoningState.d.ts.map +0 -1
  287. package/lib/stores/QueryBuilderMilestoningState.js.map +0 -1
  288. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByOperatorLoader_.d.ts.map +0 -1
  289. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByOperatorLoader_.js.map +0 -1
  290. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByStateBuilder_.d.ts.map +0 -1
  291. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByStateBuilder_.js.map +0 -1
  292. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByState_.d.ts.map +0 -1
  293. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByState_.js.map +0 -1
  294. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByValueSpecificationBuilder_.d.ts.map +0 -1
  295. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByValueSpecificationBuilder_.js.map +0 -1
@@ -28,7 +28,6 @@ import {
28
28
  } from '@finos/legend-art';
29
29
  import { observer } from 'mobx-react-lite';
30
30
  import {
31
- generateMilestonedPropertyParameterValue,
32
31
  generateValueSpecificationForParameter,
33
32
  getPropertyPath,
34
33
  type QueryBuilderDerivedPropertyExpressionState,
@@ -41,11 +40,6 @@ import {
41
40
  type QueryBuilderExplorerTreePropertyNodeData,
42
41
  } from '../stores/explorer/QueryBuilderExplorerState.js';
43
42
  import { QueryBuilderPropertyInfoTooltip } from './shared/QueryBuilderPropertyInfoTooltip.js';
44
- import { VariableExpressionViewer } from './QueryBuilderParametersPanel.js';
45
- import {
46
- type QueryBuilderParameterDragSource,
47
- QUERY_BUILDER_PARAMETER_DND_TYPE,
48
- } from '../stores/QueryBuilderParametersState.js';
49
43
  import {
50
44
  type ValueSpecification,
51
45
  type VariableExpression,
@@ -53,10 +47,27 @@ import {
53
47
  Enumeration,
54
48
  PrimitiveType,
55
49
  isSuperType,
50
+ AbstractPropertyExpression,
51
+ INTERNAL__PropagatedValue,
52
+ getMilestoneTemporalStereotype,
56
53
  } from '@finos/legend-graph';
57
- import { guaranteeNonNullable } from '@finos/legend-shared';
58
- import { BasicValueSpecificationEditor } from './shared/BasicValueSpecificationEditor.js';
54
+ import { guaranteeNonNullable, guaranteeType } from '@finos/legend-shared';
55
+ import {
56
+ type QueryBuilderVariableDragSource,
57
+ BasicValueSpecificationEditor,
58
+ QUERY_BUILDER_VARIABLE_DND_TYPE,
59
+ } from './shared/BasicValueSpecificationEditor.js';
59
60
  import { functionExpression_setParameterValue } from '../stores/shared/ValueSpecificationModifierHelper.js';
61
+ import {
62
+ ActionAlertActionType,
63
+ ActionAlertType,
64
+ } from '@finos/legend-application';
65
+ import { VariableSelector } from './shared/QueryBuilderVariableSelector.js';
66
+ import {
67
+ generateMilestonedPropertyParameterValue,
68
+ isDefaultDatePropagationSupported,
69
+ matchMilestoningParameterValue,
70
+ } from '../stores/milestoning/QueryBuilderMilestoningHelper.js';
60
71
 
61
72
  const DerivedPropertyParameterValueEditor = observer(
62
73
  (props: {
@@ -71,10 +82,10 @@ const DerivedPropertyParameterValueEditor = observer(
71
82
  derivedPropertyExpressionState.parameters[idx]?.genericType,
72
83
  ).value.rawType;
73
84
  const handleDrop = useCallback(
74
- (item: QueryBuilderParameterDragSource): void => {
85
+ (item: QueryBuilderVariableDragSource): void => {
75
86
  functionExpression_setParameterValue(
76
87
  derivedPropertyExpressionState.propertyExpression,
77
- item.variable.parameter,
88
+ item.variable,
78
89
  idx + 1,
79
90
  derivedPropertyExpressionState.queryBuilderState.observableContext,
80
91
  );
@@ -82,14 +93,14 @@ const DerivedPropertyParameterValueEditor = observer(
82
93
  [derivedPropertyExpressionState, idx],
83
94
  );
84
95
  const [{ isParameterValueDragOver }, dropTargetConnector] = useDrop<
85
- QueryBuilderParameterDragSource,
96
+ QueryBuilderVariableDragSource,
86
97
  void,
87
98
  { isParameterValueDragOver: boolean }
88
99
  >(
89
100
  () => ({
90
- accept: [QUERY_BUILDER_PARAMETER_DND_TYPE],
101
+ accept: [QUERY_BUILDER_VARIABLE_DND_TYPE],
91
102
  drop: (item, monitor): void => {
92
- const itemType = item.variable.parameter.genericType?.value.rawType;
103
+ const itemType = item.variable.genericType?.value.rawType;
93
104
  if (
94
105
  !monitor.didDrop() &&
95
106
  // Doing a type check, which only allows dragging and dropping parameters of the same type or of child types
@@ -108,6 +119,76 @@ const DerivedPropertyParameterValueEditor = observer(
108
119
  }),
109
120
  [handleDrop],
110
121
  );
122
+ const queryBuilderState = derivedPropertyExpressionState.queryBuilderState;
123
+ // Resets the next property expression in the property chain for milestoned properties when the user changes
124
+ // the milestoned dates of current property expression and it propagates those dates to next property expression.
125
+ const resetNextExpression = (
126
+ nextExpression: AbstractPropertyExpression,
127
+ ): void => {
128
+ const milestoningStereotype = getMilestoneTemporalStereotype(
129
+ guaranteeType(
130
+ nextExpression.func.value.genericType.value.rawType,
131
+ Class,
132
+ ),
133
+ queryBuilderState.graphManagerState.graph,
134
+ );
135
+ nextExpression.parametersValues.slice(1).forEach((parameter, index) => {
136
+ if (
137
+ milestoningStereotype &&
138
+ parameter instanceof INTERNAL__PropagatedValue &&
139
+ !matchMilestoningParameterValue(
140
+ milestoningStereotype,
141
+ index,
142
+ parameter.getValue(),
143
+ queryBuilderState.milestoningState,
144
+ )
145
+ ) {
146
+ const newParameterValue = new INTERNAL__PropagatedValue(() =>
147
+ guaranteeNonNullable(
148
+ queryBuilderState.milestoningState
149
+ .getMilestoningImplementation(milestoningStereotype)
150
+ .getMilestoningDate(index),
151
+ ),
152
+ );
153
+ newParameterValue.isPropagatedValue = false;
154
+ functionExpression_setParameterValue(
155
+ guaranteeType(nextExpression, AbstractPropertyExpression),
156
+ guaranteeNonNullable(newParameterValue),
157
+ index + 1,
158
+ queryBuilderState.observableContext,
159
+ );
160
+ }
161
+ });
162
+ };
163
+ const checkDatePropagation = (
164
+ nextExpression: ValueSpecification | undefined,
165
+ ): void => {
166
+ if (
167
+ nextExpression instanceof AbstractPropertyExpression &&
168
+ isDefaultDatePropagationSupported(nextExpression, queryBuilderState) &&
169
+ nextExpression.func.value.genericType.value.rawType instanceof Class
170
+ ) {
171
+ queryBuilderState.applicationStore.setActionAlertInfo({
172
+ message:
173
+ 'You have just changed a milestoning date in the property expression chain, this date will be propagated down the rest of the chain. Do you want to proceed? Otherwise, you can choose to propagate the default milestoning dates instead.',
174
+ type: ActionAlertType.CAUTION,
175
+ actions: [
176
+ {
177
+ label: 'Proceed',
178
+ type: ActionAlertActionType.PROCEED_WITH_CAUTION,
179
+ default: true,
180
+ },
181
+ {
182
+ label: 'Propagate default milestoning date(s)',
183
+ type: ActionAlertActionType.PROCEED,
184
+ handler: queryBuilderState.applicationStore.guardUnhandledError(
185
+ async () => resetNextExpression(nextExpression),
186
+ ),
187
+ },
188
+ ],
189
+ });
190
+ }
191
+ };
111
192
  const resetParameterValue = (): void => {
112
193
  functionExpression_setParameterValue(
113
194
  derivedPropertyExpressionState.propertyExpression,
@@ -123,7 +204,23 @@ const DerivedPropertyParameterValueEditor = observer(
123
204
  idx + 1,
124
205
  derivedPropertyExpressionState.queryBuilderState.observableContext,
125
206
  );
207
+ const derivedPropertyExpressionStates =
208
+ derivedPropertyExpressionState.propertyExpressionState
209
+ .derivedPropertyExpressionStates;
210
+ const currentDerivedPropertyStateindex =
211
+ derivedPropertyExpressionStates.indexOf(derivedPropertyExpressionState);
212
+ checkDatePropagation(
213
+ currentDerivedPropertyStateindex + 1 <
214
+ derivedPropertyExpressionStates.length
215
+ ? derivedPropertyExpressionStates[
216
+ currentDerivedPropertyStateindex + 1
217
+ ]?.propertyExpression
218
+ : undefined,
219
+ );
126
220
  };
221
+ const valueSpec = guaranteeNonNullable(
222
+ derivedPropertyExpressionState.parameterValues[idx],
223
+ );
127
224
 
128
225
  return (
129
226
  <div key={variable.name} className="panel__content__form__section">
@@ -133,15 +230,13 @@ const DerivedPropertyParameterValueEditor = observer(
133
230
  <div className="panel__content__form__section__header__prompt">{`${
134
231
  variable.multiplicity.lowerBound === 0 ? 'optional' : ''
135
232
  }`}</div>
136
- <div className="query-builder__parameter-editor">
233
+ <div className="query-builder__variable-editor">
137
234
  <PanelDropZone
138
235
  isDragOver={isParameterValueDragOver}
139
236
  dropTargetConnector={dropTargetConnector}
140
237
  >
141
238
  <BasicValueSpecificationEditor
142
- valueSpecification={guaranteeNonNullable(
143
- derivedPropertyExpressionState.parameterValues[idx],
144
- )}
239
+ valueSpecification={valueSpec}
145
240
  setValueSpecification={(val: ValueSpecification): void => {
146
241
  functionExpression_setParameterValue(
147
242
  derivedPropertyExpressionState.propertyExpression,
@@ -161,6 +256,9 @@ const DerivedPropertyParameterValueEditor = observer(
161
256
  match: parameterType === PrimitiveType.DATETIME,
162
257
  }}
163
258
  resetValue={resetParameterValue}
259
+ isConstant={queryBuilderState.constantState.isValueSpecConstant(
260
+ valueSpec,
261
+ )}
164
262
  />
165
263
  </PanelDropZone>
166
264
  </div>
@@ -233,25 +331,10 @@ export const QueryBuilderPropertyExpressionEditor = observer(
233
331
  />
234
332
  ),
235
333
  )}
236
- <ModalBody className="query-builder__parameters__modal__body">
237
- <div className="panel__content__form__section__header__label">
238
- List of available parameters
239
- </div>
240
- <div className="panel__content__form__section__list__items">
241
- {propertyExpressionState.queryBuilderState.parametersState.parameterStates.map(
242
- (parameter) => (
243
- <VariableExpressionViewer
244
- key={parameter.uuid}
245
- queryBuilderState={
246
- propertyExpressionState.queryBuilderState
247
- }
248
- variableExpressionState={parameter}
249
- isReadOnly={true}
250
- hideActions={true}
251
- />
252
- ),
253
- )}
254
- </div>
334
+ <ModalBody className="query-builder__variables__modal__body">
335
+ <VariableSelector
336
+ queryBuilderState={propertyExpressionState.queryBuilderState}
337
+ />
255
338
  </ModalBody>
256
339
  </ModalBody>
257
340
  <ModalFooter>
@@ -33,7 +33,6 @@ import {
33
33
  type Runtime,
34
34
  type ValueSpecification,
35
35
  LATEST_DATE,
36
- MILESTONING_STEREOTYPE,
37
36
  PrimitiveInstanceValue,
38
37
  VariableExpression,
39
38
  getMilestoneTemporalStereotype,
@@ -51,7 +50,7 @@ import {
51
50
  } from '@finos/legend-application';
52
51
  import { MilestoningParametersEditor } from './explorer/QueryBuilderMilestoningEditor.js';
53
52
 
54
- const getParameterValue = (
53
+ export const getParameterValue = (
55
54
  parameter: ValueSpecification | undefined,
56
55
  ): string | undefined => {
57
56
  if (parameter instanceof VariableExpression) {
@@ -87,26 +86,10 @@ const generateClassLabel = (
87
86
  );
88
87
 
89
88
  let milestoningTooltipText: string | undefined;
90
- switch (milestoneStereotype) {
91
- case MILESTONING_STEREOTYPE.BUSINESS_TEMPORAL:
92
- milestoningTooltipText = `Business Date: ${getParameterValue(
93
- queryBuilderState.milestoningState.businessDate,
94
- )}`;
95
- break;
96
- case MILESTONING_STEREOTYPE.PROCESSING_TEMPORAL:
97
- milestoningTooltipText = `Processing Date: ${getParameterValue(
98
- queryBuilderState.milestoningState.processingDate,
99
- )}`;
100
- break;
101
- case MILESTONING_STEREOTYPE.BITEMPORAL:
102
- milestoningTooltipText = `Processing Date: ${getParameterValue(
103
- queryBuilderState.milestoningState.processingDate,
104
- )}, Business Date: ${getParameterValue(
105
- queryBuilderState.milestoningState.businessDate,
106
- )}`;
107
- break;
108
- default:
109
- milestoningTooltipText = undefined;
89
+ if (milestoneStereotype) {
90
+ milestoningTooltipText = queryBuilderState.milestoningState
91
+ .getMilestoningImplementation(milestoneStereotype)
92
+ .getMilestoningToolTipText();
110
93
  }
111
94
 
112
95
  return (
@@ -16,13 +16,10 @@
16
16
 
17
17
  import { observer } from 'mobx-react-lite';
18
18
  import type { QueryBuilderState } from '../../stores/QueryBuilderState.js';
19
- import {
20
- type QueryBuilderParameterDragSource,
21
- QUERY_BUILDER_PARAMETER_DND_TYPE,
22
- } from '../../stores/QueryBuilderParametersState.js';
23
19
  import { useCallback } from 'react';
24
20
  import {
25
21
  type ValueSpecification,
22
+ type VariableExpression,
26
23
  GenericType,
27
24
  GenericTypeExplicitReference,
28
25
  MILESTONING_STEREOTYPE,
@@ -33,7 +30,6 @@ import {
33
30
  } from '@finos/legend-graph';
34
31
  import { guaranteeNonNullable } from '@finos/legend-shared';
35
32
  import { useDrop } from 'react-dnd';
36
- import { VariableExpressionViewer } from '../QueryBuilderParametersPanel.js';
37
33
  import {
38
34
  Dialog,
39
35
  Modal,
@@ -44,8 +40,13 @@ import {
44
40
  PanelFormSection,
45
41
  } from '@finos/legend-art';
46
42
  import { generateDefaultValueForPrimitiveType } from '../../stores/QueryBuilderValueSpecificationHelper.js';
47
- import { BasicValueSpecificationEditor } from '../shared/BasicValueSpecificationEditor.js';
43
+ import {
44
+ BasicValueSpecificationEditor,
45
+ type QueryBuilderVariableDragSource,
46
+ QUERY_BUILDER_VARIABLE_DND_TYPE,
47
+ } from '../shared/BasicValueSpecificationEditor.js';
48
48
  import { instanceValue_setValues } from '../../stores/shared/ValueSpecificationModifierHelper.js';
49
+ import { VariableSelector } from '../shared/QueryBuilderVariableSelector.js';
49
50
 
50
51
  const MilestoningParameterEditor = observer(
51
52
  (props: {
@@ -54,26 +55,22 @@ const MilestoningParameterEditor = observer(
54
55
  }) => {
55
56
  const { queryBuilderState, stereotype } = props;
56
57
  const handleDrop = useCallback(
57
- (item: QueryBuilderParameterDragSource): void => {
58
+ (item: QueryBuilderVariableDragSource): void => {
58
59
  if (stereotype === MILESTONING_STEREOTYPE.BUSINESS_TEMPORAL) {
59
- queryBuilderState.milestoningState.setBusinessDate(
60
- item.variable.parameter,
61
- );
60
+ queryBuilderState.milestoningState.setBusinessDate(item.variable);
62
61
  } else {
63
- queryBuilderState.milestoningState.setProcessingDate(
64
- item.variable.parameter,
65
- );
62
+ queryBuilderState.milestoningState.setProcessingDate(item.variable);
66
63
  }
67
64
  },
68
65
  [queryBuilderState, stereotype],
69
66
  );
70
67
  const [{ isMilestoningParameterValueDragOver }, dropConnector] = useDrop<
71
- QueryBuilderParameterDragSource,
68
+ QueryBuilderVariableDragSource,
72
69
  void,
73
70
  { isMilestoningParameterValueDragOver: boolean }
74
71
  >(
75
72
  () => ({
76
- accept: [QUERY_BUILDER_PARAMETER_DND_TYPE],
73
+ accept: [QUERY_BUILDER_VARIABLE_DND_TYPE],
77
74
  drop: (item, monitor): void => {
78
75
  if (!monitor.didDrop()) {
79
76
  handleDrop(item);
@@ -119,7 +116,7 @@ const MilestoningParameterEditor = observer(
119
116
  };
120
117
 
121
118
  return (
122
- <div ref={dropConnector} className="query-builder__parameter-editor">
119
+ <div ref={dropConnector} className="query-builder__variable-editor">
123
120
  <PanelEntryDropZonePlaceholder
124
121
  showPlaceholder={isMilestoningParameterValueDragOver}
125
122
  label="Change Milestoning Parameter Value"
@@ -138,6 +135,9 @@ const MilestoningParameterEditor = observer(
138
135
  expectedType: PrimitiveType.DATE,
139
136
  }}
140
137
  resetValue={resetMilestoningParameter}
138
+ isConstant={queryBuilderState.constantState.isValueSpecConstant(
139
+ milestoningParameter,
140
+ )}
141
141
  />
142
142
  </PanelEntryDropZonePlaceholder>
143
143
  </div>
@@ -243,6 +243,13 @@ export const MilestoningParametersEditor = observer(
243
243
  const { queryBuilderState } = props;
244
244
  const milestoningState = queryBuilderState.milestoningState;
245
245
  const close = (): void => milestoningState.setShowMilestoningEditor(false);
246
+ const isCompatibleMilestoningParameter = (
247
+ variable: VariableExpression,
248
+ ): boolean =>
249
+ variable.genericType?.value.rawType.name === PRIMITIVE_TYPE.STRICTDATE ||
250
+ variable.genericType?.value.rawType.name === PRIMITIVE_TYPE.LATESTDATE ||
251
+ variable.genericType?.value.rawType.name === PRIMITIVE_TYPE.DATE ||
252
+ variable.genericType?.value.rawType.name === PRIMITIVE_TYPE.DATETIME;
246
253
 
247
254
  return (
248
255
  <Dialog
@@ -256,36 +263,19 @@ export const MilestoningParametersEditor = observer(
256
263
  >
257
264
  <Modal
258
265
  darkMode={true}
259
- className="editor-modal query-builder__parameters__modal"
266
+ className="editor-modal query-builder__variables__modal"
260
267
  >
261
268
  <ModalHeader title="Milestoning Parameters" />
262
- <ModalBody className="query-builder__parameters__modal__body">
269
+ <ModalBody className="query-builder__variables__modal__body">
263
270
  <TemporalMilestoningEditor queryBuilderState={queryBuilderState} />
264
271
  <div className="panel__content__form__section__header__label">
265
272
  List of compatible milestoning parameters
266
273
  </div>
267
274
  <div className="panel__content__form__section__list__items">
268
- {queryBuilderState.parametersState.parameterStates
269
- .filter(
270
- (parameter) =>
271
- parameter.parameter.genericType?.value.rawType.name ===
272
- PRIMITIVE_TYPE.STRICTDATE ||
273
- parameter.parameter.genericType?.value.rawType.name ===
274
- PRIMITIVE_TYPE.LATESTDATE ||
275
- parameter.parameter.genericType?.value.rawType.name ===
276
- PRIMITIVE_TYPE.DATE ||
277
- parameter.parameter.genericType?.value.rawType.name ===
278
- PRIMITIVE_TYPE.DATETIME,
279
- )
280
- .map((parameter) => (
281
- <VariableExpressionViewer
282
- key={parameter.uuid}
283
- queryBuilderState={queryBuilderState}
284
- variableExpressionState={parameter}
285
- isReadOnly={true}
286
- hideActions={true}
287
- />
288
- ))}
275
+ <VariableSelector
276
+ queryBuilderState={queryBuilderState}
277
+ filterBy={isCompatibleMilestoningParameter}
278
+ />
289
279
  </div>
290
280
  </ModalBody>
291
281
  <ModalFooter>
@@ -56,7 +56,7 @@ import {
56
56
  QueryBuilderTDS_OLAPRankOperatorState,
57
57
  QueryBuilderTDS_OLAPAggreationOperatorState,
58
58
  QUERY_BUILDER_OLAP_COLUMN_DND_TYPE,
59
- } from '../../stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByState_.js';
59
+ } from '../../stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByState.js';
60
60
  import { QUERY_BUILDER_PROJECTION_COLUMN_DND_TYPE } from '../../stores/fetch-structure/tds/projection/QueryBuilderProjectionColumnState.js';
61
61
  import type { QueryBuilderTDSColumnState } from '../../stores/fetch-structure/tds/QueryBuilderTDSColumnState.js';
62
62
  import type { QueryBuilderTDSState } from '../../stores/fetch-structure/tds/QueryBuilderTDSState.js';
@@ -79,15 +79,15 @@ import {
79
79
  QueryBuilderDerivationProjectionColumnState,
80
80
  } from '../../stores/fetch-structure/tds/projection/QueryBuilderProjectionColumnState.js';
81
81
  import type { QueryBuilderState } from '../../stores/QueryBuilderState.js';
82
- import {
83
- type QueryBuilderParameterDragSource,
84
- QUERY_BUILDER_PARAMETER_DND_TYPE,
85
- } from '../../stores/QueryBuilderParametersState.js';
86
82
  import { QUERY_BUILDER_TEST_ID } from '../QueryBuilder_TestID.js';
87
83
  import { isTypeCompatibleForAssignment } from '../../stores/QueryBuilderValueSpecificationHelper.js';
88
84
  import { QUERY_BUILDER_GROUP_OPERATION } from '../../stores/QueryBuilderGroupOperationHelper.js';
89
85
  import { QueryBuilderTDSState } from '../../stores/fetch-structure/tds/QueryBuilderTDSState.js';
90
- import { BasicValueSpecificationEditor } from '../shared/BasicValueSpecificationEditor.js';
86
+ import {
87
+ type QueryBuilderVariableDragSource,
88
+ BasicValueSpecificationEditor,
89
+ QUERY_BUILDER_VARIABLE_DND_TYPE,
90
+ } from '../shared/BasicValueSpecificationEditor.js';
91
91
  import {
92
92
  QueryBuilderColumnInfoTooltip,
93
93
  renderPropertyTypeIcon,
@@ -95,7 +95,7 @@ import {
95
95
  import {
96
96
  type QueryBuilderOLAPColumnDragSource,
97
97
  QUERY_BUILDER_OLAP_COLUMN_DND_TYPE,
98
- } from '../../stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByState_.js';
98
+ } from '../../stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByState.js';
99
99
  import type { QueryBuilderTDSColumnState } from '../../stores/fetch-structure/tds/QueryBuilderTDSColumnState.js';
100
100
 
101
101
  const QueryBuilderPostFilterConditionContextMenu = observer(
@@ -280,9 +280,9 @@ const QueryBuilderPostFilterConditionEditor = observer(
280
280
  isDragOver: boolean;
281
281
  }) => {
282
282
  const { node, isDragOver } = props;
283
- const graph =
284
- node.condition.postFilterState.tdsState.queryBuilderState
285
- .graphManagerState.graph;
283
+ const queryBuilderState =
284
+ node.condition.postFilterState.tdsState.queryBuilderState;
285
+ const graph = queryBuilderState.graphManagerState.graph;
286
286
  const applicationStore = useApplicationStore();
287
287
  const changeOperator = (val: QueryBuilderPostFilterOperator) => (): void =>
288
288
  node.condition.changeOperator(val);
@@ -299,15 +299,14 @@ const QueryBuilderPostFilterConditionEditor = observer(
299
299
  };
300
300
  // Drag and Drop on filter condition value
301
301
  const handleDrop = useCallback(
302
- (item: QueryBuilderParameterDragSource): void => {
303
- const parameterType =
304
- item.variable.parameter.genericType?.value.rawType;
302
+ (item: QueryBuilderVariableDragSource): void => {
303
+ const parameterType = item.variable.genericType?.value.rawType;
305
304
  const conditionValueType = node.condition.columnState.getColumnType();
306
305
  if (
307
306
  conditionValueType &&
308
307
  isTypeCompatibleForAssignment(parameterType, conditionValueType)
309
308
  ) {
310
- node.condition.setValue(item.variable.parameter);
309
+ node.condition.setValue(item.variable);
311
310
  } else {
312
311
  applicationStore.notifyWarning(
313
312
  `Incompatible parameter type ${parameterType?.name}. ${parameterType?.name} is not compatible with type ${conditionValueType?.name}.`,
@@ -317,12 +316,12 @@ const QueryBuilderPostFilterConditionEditor = observer(
317
316
  [applicationStore, node.condition],
318
317
  );
319
318
  const [{ isFilterValueDragOver }, dropConnector] = useDrop<
320
- QueryBuilderParameterDragSource,
319
+ QueryBuilderVariableDragSource,
321
320
  void,
322
321
  { isFilterValueDragOver: boolean }
323
322
  >(
324
323
  () => ({
325
- accept: [QUERY_BUILDER_PARAMETER_DND_TYPE],
324
+ accept: [QUERY_BUILDER_VARIABLE_DND_TYPE],
326
325
  drop: (item, monitor): void => {
327
326
  if (!monitor.didDrop()) {
328
327
  handleDrop(item);
@@ -417,10 +416,7 @@ const QueryBuilderPostFilterConditionEditor = observer(
417
416
  valueSpecification={node.condition.value}
418
417
  setValueSpecification={changeValueSpecification}
419
418
  graph={graph}
420
- obseverContext={
421
- node.condition.postFilterState.tdsState.queryBuilderState
422
- .observableContext
423
- }
419
+ obseverContext={queryBuilderState.observableContext}
424
420
  typeCheckOption={{
425
421
  expectedType: guaranteeNonNullable(
426
422
  node.condition.columnState.getColumnType(),
@@ -428,6 +424,9 @@ const QueryBuilderPostFilterConditionEditor = observer(
428
424
  }}
429
425
  resetValue={resetNode}
430
426
  selectorConfig={selectorConfig}
427
+ isConstant={queryBuilderState.constantState.isValueSpecConstant(
428
+ node.condition.value,
429
+ )}
431
430
  />
432
431
  </PanelEntryDropZonePlaceholder>
433
432
  </div>
@@ -21,7 +21,7 @@ import {
21
21
  ResizablePanelSplitter,
22
22
  } from '@finos/legend-art';
23
23
  import { QueryBuilderFilterPanel } from '../filter/QueryBuilderFilterPanel.js';
24
- import { QueryBuilderOlapGroupByPanel } from './QueryBuilderOLAPGroupByPanel_.js';
24
+ import { QueryBuilderOlapGroupByPanel } from './QueryBuilderOLAPGroupByPanel.js';
25
25
  import { QueryBuilderPostFilterPanel } from './QueryBuilderPostFilterPanel.js';
26
26
  import type { QueryBuilderTDSState } from '../../stores/fetch-structure/tds/QueryBuilderTDSState.js';
27
27
 
@@ -55,10 +55,6 @@ import { QueryResultModifierModal } from './QueryBuilderResultModifierPanel.js';
55
55
  import { QUERY_BUILDER_TEST_ID } from '../QueryBuilder_TestID.js';
56
56
  import { flowResult } from 'mobx';
57
57
  import { useApplicationStore } from '@finos/legend-application';
58
- import {
59
- type QueryBuilderParameterDragSource,
60
- QUERY_BUILDER_PARAMETER_DND_TYPE,
61
- } from '../../stores/QueryBuilderParametersState.js';
62
58
  import {
63
59
  type ConcreteFunctionDefinition,
64
60
  generateFunctionCallString,
@@ -73,6 +69,10 @@ import { DEFAULT_LAMBDA_VARIABLE_NAME } from '../../stores/QueryBuilderConfig.js
73
69
  import type { QueryBuilderAggregateOperator } from '../../stores/fetch-structure/tds/aggregation/QueryBuilderAggregateOperator.js';
74
70
  import type { QueryBuilderTDSState } from '../../stores/fetch-structure/tds/QueryBuilderTDSState.js';
75
71
  import { LambdaEditor } from '../shared/LambdaEditor.js';
72
+ import {
73
+ type QueryBuilderVariableDragSource,
74
+ QUERY_BUILDER_VARIABLE_DND_TYPE,
75
+ } from '../shared/BasicValueSpecificationEditor.js';
76
76
 
77
77
  const QueryBuilderProjectionColumnContextMenu = observer(
78
78
  forwardRef<
@@ -146,16 +146,16 @@ const QueryBuilderDerivationProjectionColumnEditor = observer(
146
146
  (
147
147
  item:
148
148
  | QueryBuilderExplorerTreeDragSource
149
- | QueryBuilderParameterDragSource
149
+ | QueryBuilderVariableDragSource
150
150
  | QueryBuilderFunctionsExplorerDragSource,
151
151
  type: string,
152
152
  ): void => {
153
- if (type === QUERY_BUILDER_PARAMETER_DND_TYPE) {
153
+ if (type === QUERY_BUILDER_VARIABLE_DND_TYPE) {
154
154
  projectionColumnState.derivationLambdaEditorState.setLambdaString(
155
155
  `${
156
156
  projectionColumnState.derivationLambdaEditorState.lambdaString
157
157
  }${VARIABLE_REFERENCE_TOKEN}${
158
- (item as QueryBuilderParameterDragSource).variable.variableName
158
+ (item as QueryBuilderVariableDragSource).variable.name
159
159
  }`,
160
160
  );
161
161
  } else if (type === QUERY_BUILDER_FUNCTION_DND_TYPE) {
@@ -178,7 +178,7 @@ const QueryBuilderDerivationProjectionColumnEditor = observer(
178
178
  );
179
179
  const [, dropConnector] = useDrop<
180
180
  | QueryBuilderExplorerTreeDragSource
181
- | QueryBuilderParameterDragSource
181
+ | QueryBuilderVariableDragSource
182
182
  | QueryBuilderFunctionsExplorerDragSource
183
183
  >(
184
184
  () => ({
@@ -187,7 +187,7 @@ const QueryBuilderDerivationProjectionColumnEditor = observer(
187
187
  QUERY_BUILDER_EXPLORER_TREE_DND_TYPE.CLASS_PROPERTY,
188
188
  QUERY_BUILDER_EXPLORER_TREE_DND_TYPE.ENUM_PROPERTY,
189
189
  QUERY_BUILDER_EXPLORER_TREE_DND_TYPE.PRIMITIVE_PROPERTY,
190
- QUERY_BUILDER_PARAMETER_DND_TYPE,
190
+ QUERY_BUILDER_VARIABLE_DND_TYPE,
191
191
  QUERY_BUILDER_FUNCTION_DND_TYPE,
192
192
  ],
193
193
  drop: (item, monitor): void => {