@finos/legend-query-builder 0.4.4 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (261) 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 +104 -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 +8 -26
  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/LambdaEditor.d.ts +1 -0
  70. package/lib/components/shared/LambdaEditor.d.ts.map +1 -1
  71. package/lib/components/shared/LambdaEditor.js +1 -15
  72. package/lib/components/shared/LambdaEditor.js.map +1 -1
  73. package/lib/components/shared/LambdaParameterValuesEditor.d.ts +1 -0
  74. package/lib/components/shared/LambdaParameterValuesEditor.d.ts.map +1 -1
  75. package/lib/components/shared/QueryBuilderVariableSelector.d.ts +36 -0
  76. package/lib/components/shared/QueryBuilderVariableSelector.d.ts.map +1 -0
  77. package/lib/components/shared/QueryBuilderVariableSelector.js +50 -0
  78. package/lib/components/shared/QueryBuilderVariableSelector.js.map +1 -0
  79. package/lib/components/watermark/QueryBuilderWatermark.d.ts +1 -0
  80. package/lib/components/watermark/QueryBuilderWatermark.d.ts.map +1 -1
  81. package/lib/components/watermark/QueryBuilderWatermark.js +9 -11
  82. package/lib/components/watermark/QueryBuilderWatermark.js.map +1 -1
  83. package/lib/graphManager/QueryBuilderHashUtils.d.ts +2 -0
  84. package/lib/graphManager/QueryBuilderHashUtils.d.ts.map +1 -1
  85. package/lib/graphManager/QueryBuilderHashUtils.js +2 -0
  86. package/lib/graphManager/QueryBuilderHashUtils.js.map +1 -1
  87. package/lib/index.css +2 -2
  88. package/lib/index.css.map +1 -1
  89. package/lib/package.json +6 -6
  90. package/lib/stores/QueryBuilderConfig.d.ts +1 -0
  91. package/lib/stores/QueryBuilderConfig.d.ts.map +1 -1
  92. package/lib/stores/QueryBuilderConfig.js +1 -0
  93. package/lib/stores/QueryBuilderConfig.js.map +1 -1
  94. package/lib/stores/QueryBuilderConstantsState.d.ts +43 -0
  95. package/lib/stores/QueryBuilderConstantsState.d.ts.map +1 -0
  96. package/lib/stores/QueryBuilderConstantsState.js +116 -0
  97. package/lib/stores/QueryBuilderConstantsState.js.map +1 -0
  98. package/lib/stores/QueryBuilderParametersState.d.ts +0 -4
  99. package/lib/stores/QueryBuilderParametersState.d.ts.map +1 -1
  100. package/lib/stores/QueryBuilderParametersState.js +0 -1
  101. package/lib/stores/QueryBuilderParametersState.js.map +1 -1
  102. package/lib/stores/QueryBuilderPropertyEditorState.d.ts +3 -10
  103. package/lib/stores/QueryBuilderPropertyEditorState.d.ts.map +1 -1
  104. package/lib/stores/QueryBuilderPropertyEditorState.js +6 -140
  105. package/lib/stores/QueryBuilderPropertyEditorState.js.map +1 -1
  106. package/lib/stores/QueryBuilderState.d.ts +9 -3
  107. package/lib/stores/QueryBuilderState.d.ts.map +1 -1
  108. package/lib/stores/QueryBuilderState.js +19 -4
  109. package/lib/stores/QueryBuilderState.js.map +1 -1
  110. package/lib/stores/QueryBuilderStateBuilder.d.ts +4 -3
  111. package/lib/stores/QueryBuilderStateBuilder.d.ts.map +1 -1
  112. package/lib/stores/QueryBuilderStateBuilder.js +50 -42
  113. package/lib/stores/QueryBuilderStateBuilder.js.map +1 -1
  114. package/lib/stores/QueryBuilderValueSpecificationBuilder.d.ts.map +1 -1
  115. package/lib/stores/QueryBuilderValueSpecificationBuilder.js +23 -25
  116. package/lib/stores/QueryBuilderValueSpecificationBuilder.js.map +1 -1
  117. package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.d.ts.map +1 -1
  118. package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.js +14 -78
  119. package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.js.map +1 -1
  120. package/lib/stores/QueryBuilderValueSpecificationHelper.d.ts.map +1 -1
  121. package/lib/stores/QueryBuilderValueSpecificationHelper.js +4 -20
  122. package/lib/stores/QueryBuilderValueSpecificationHelper.js.map +1 -1
  123. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeStateBuilder.d.ts +3 -3
  124. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeStateBuilder.d.ts.map +1 -1
  125. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeStateBuilder.js +4 -4
  126. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeStateBuilder.js.map +1 -1
  127. package/lib/stores/fetch-structure/tds/QueryBuilderTDSState.d.ts +1 -1
  128. package/lib/stores/fetch-structure/tds/QueryBuilderTDSState.d.ts.map +1 -1
  129. package/lib/stores/fetch-structure/tds/QueryBuilderTDSState.js +2 -2
  130. package/lib/stores/fetch-structure/tds/QueryBuilderTDSState.js.map +1 -1
  131. package/lib/stores/fetch-structure/tds/aggregation/QueryBuilderAggregationStateBuilder.d.ts +3 -3
  132. package/lib/stores/fetch-structure/tds/aggregation/QueryBuilderAggregationStateBuilder.d.ts.map +1 -1
  133. package/lib/stores/fetch-structure/tds/aggregation/QueryBuilderAggregationStateBuilder.js +6 -6
  134. package/lib/stores/fetch-structure/tds/aggregation/QueryBuilderAggregationStateBuilder.js.map +1 -1
  135. package/lib/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByOperatorLoader_.d.ts → QueryBuilderOLAPGroupByOperatorLoader.d.ts} +1 -1
  136. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByOperatorLoader.d.ts.map +1 -0
  137. package/lib/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByOperatorLoader_.js → QueryBuilderOLAPGroupByOperatorLoader.js} +1 -1
  138. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByOperatorLoader.js.map +1 -0
  139. package/lib/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByState_.d.ts → QueryBuilderOLAPGroupByState.d.ts} +1 -1
  140. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByState.d.ts.map +1 -0
  141. package/lib/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByState_.js → QueryBuilderOLAPGroupByState.js} +1 -1
  142. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByState.js.map +1 -0
  143. package/lib/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByStateBuilder_.d.ts → QueryBuilderOLAPGroupByStateBuilder.d.ts} +3 -3
  144. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByStateBuilder.d.ts.map +1 -0
  145. package/lib/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByStateBuilder_.js → QueryBuilderOLAPGroupByStateBuilder.js} +4 -4
  146. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByStateBuilder.js.map +1 -0
  147. package/lib/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByValueSpecificationBuilder_.d.ts → QueryBuilderOLAPGroupByValueSpecificationBuilder.d.ts} +2 -2
  148. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByValueSpecificationBuilder.d.ts.map +1 -0
  149. package/lib/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByValueSpecificationBuilder_.js → QueryBuilderOLAPGroupByValueSpecificationBuilder.js} +2 -2
  150. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByValueSpecificationBuilder.js.map +1 -0
  151. package/lib/stores/fetch-structure/tds/post-filter/operators/QueryBuilderPostFilterOperatorHelper.js +1 -1
  152. package/lib/stores/fetch-structure/tds/post-filter/operators/QueryBuilderPostFilterOperatorHelper.js.map +1 -1
  153. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionStateBuilder.d.ts +5 -5
  154. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionStateBuilder.d.ts.map +1 -1
  155. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionStateBuilder.js +10 -10
  156. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionStateBuilder.js.map +1 -1
  157. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionValueSpecificationBuilder.js +1 -1
  158. package/lib/stores/fetch-structure/tds/projection/QueryBuilderProjectionValueSpecificationBuilder.js.map +1 -1
  159. package/lib/stores/filter/QueryBuilderFilterValueSpecificationBuilder.d.ts +2 -2
  160. package/lib/stores/filter/QueryBuilderFilterValueSpecificationBuilder.d.ts.map +1 -1
  161. package/lib/stores/filter/QueryBuilderFilterValueSpecificationBuilder.js +6 -4
  162. package/lib/stores/filter/QueryBuilderFilterValueSpecificationBuilder.js.map +1 -1
  163. package/lib/stores/milestoning/QueryBuilderBitemporalMilestoningImplementation.d.ts +27 -0
  164. package/lib/stores/milestoning/QueryBuilderBitemporalMilestoningImplementation.d.ts.map +1 -0
  165. package/lib/stores/milestoning/QueryBuilderBitemporalMilestoningImplementation.js +93 -0
  166. package/lib/stores/milestoning/QueryBuilderBitemporalMilestoningImplementation.js.map +1 -0
  167. package/lib/stores/milestoning/QueryBuilderBusinessTemporalMilestoningImplementation.d.ts +26 -0
  168. package/lib/stores/milestoning/QueryBuilderBusinessTemporalMilestoningImplementation.d.ts.map +1 -0
  169. package/lib/stores/milestoning/QueryBuilderBusinessTemporalMilestoningImplementation.js +60 -0
  170. package/lib/stores/milestoning/QueryBuilderBusinessTemporalMilestoningImplementation.js.map +1 -0
  171. package/lib/stores/milestoning/QueryBuilderMilestoningHelper.d.ts +70 -0
  172. package/lib/stores/milestoning/QueryBuilderMilestoningHelper.d.ts.map +1 -0
  173. package/lib/stores/milestoning/QueryBuilderMilestoningHelper.js +199 -0
  174. package/lib/stores/milestoning/QueryBuilderMilestoningHelper.js.map +1 -0
  175. package/lib/stores/milestoning/QueryBuilderMilestoningImplementation.d.ts +49 -0
  176. package/lib/stores/milestoning/QueryBuilderMilestoningImplementation.d.ts.map +1 -0
  177. package/lib/stores/milestoning/QueryBuilderMilestoningImplementation.js +24 -0
  178. package/lib/stores/milestoning/QueryBuilderMilestoningImplementation.js.map +1 -0
  179. package/lib/stores/{QueryBuilderMilestoningState.d.ts → milestoning/QueryBuilderMilestoningState.d.ts} +6 -2
  180. package/lib/stores/milestoning/QueryBuilderMilestoningState.d.ts.map +1 -0
  181. package/lib/stores/{QueryBuilderMilestoningState.js → milestoning/QueryBuilderMilestoningState.js} +20 -20
  182. package/lib/stores/milestoning/QueryBuilderMilestoningState.js.map +1 -0
  183. package/lib/stores/milestoning/QueryBuilderProcessingTemporalMilestoningImplementation.d.ts +26 -0
  184. package/lib/stores/milestoning/QueryBuilderProcessingTemporalMilestoningImplementation.d.ts.map +1 -0
  185. package/lib/stores/milestoning/QueryBuilderProcessingTemporalMilestoningImplementation.js +55 -0
  186. package/lib/stores/milestoning/QueryBuilderProcessingTemporalMilestoningImplementation.js.map +1 -0
  187. package/lib/stores/shared/ValueSpecificationEditorHelper.d.ts +3 -1
  188. package/lib/stores/shared/ValueSpecificationEditorHelper.d.ts.map +1 -1
  189. package/lib/stores/shared/ValueSpecificationEditorHelper.js +58 -2
  190. package/lib/stores/shared/ValueSpecificationEditorHelper.js.map +1 -1
  191. package/lib/stores/watermark/QueryBuilderWatermarkStateBuilder.d.ts +2 -2
  192. package/lib/stores/watermark/QueryBuilderWatermarkStateBuilder.d.ts.map +1 -1
  193. package/lib/stores/watermark/QueryBuilderWatermarkStateBuilder.js +2 -2
  194. package/lib/stores/watermark/QueryBuilderWatermarkStateBuilder.js.map +1 -1
  195. package/lib/stores/watermark/QueryBuilderWatermarkValueSpecificationBuilder.d.ts +2 -2
  196. package/lib/stores/watermark/QueryBuilderWatermarkValueSpecificationBuilder.d.ts.map +1 -1
  197. package/lib/stores/watermark/QueryBuilderWatermarkValueSpecificationBuilder.js +7 -4
  198. package/lib/stores/watermark/QueryBuilderWatermarkValueSpecificationBuilder.js.map +1 -1
  199. package/lib/stores/workflows/ServiceQueryBuilderState.js +1 -1
  200. package/lib/stores/workflows/ServiceQueryBuilderState.js.map +1 -1
  201. package/package.json +13 -13
  202. package/src/components/QueryBuilder.tsx +38 -0
  203. package/src/components/QueryBuilderConstantExpressionPanel.tsx +284 -0
  204. package/src/components/QueryBuilderDiffPanel.tsx +0 -2
  205. package/src/components/QueryBuilderParametersPanel.tsx +22 -103
  206. package/src/components/QueryBuilderPropertyExpressionEditor.tsx +119 -36
  207. package/src/components/QueryBuilderSideBar.tsx +5 -22
  208. package/src/components/explorer/QueryBuilderMilestoningEditor.tsx +29 -39
  209. package/src/components/fetch-structure/{QueryBuilderOLAPGroupByPanel_.tsx → QueryBuilderOLAPGroupByPanel.tsx} +1 -1
  210. package/src/components/fetch-structure/QueryBuilderPostFilterPanel.tsx +18 -19
  211. package/src/components/fetch-structure/QueryBuilderPostTDSPanel.tsx +1 -1
  212. package/src/components/fetch-structure/QueryBuilderTDSPanel.tsx +9 -9
  213. package/src/components/filter/QueryBuilderFilterPanel.tsx +16 -17
  214. package/src/components/shared/BasicValueSpecificationEditor.tsx +47 -22
  215. package/src/components/shared/LambdaEditor.tsx +0 -15
  216. package/src/components/shared/QueryBuilderVariableSelector.tsx +186 -0
  217. package/src/components/watermark/QueryBuilderWatermark.tsx +19 -31
  218. package/src/graphManager/QueryBuilderHashUtils.ts +2 -0
  219. package/src/stores/QueryBuilderConfig.ts +1 -0
  220. package/src/stores/QueryBuilderConstantsState.ts +173 -0
  221. package/src/stores/QueryBuilderParametersState.ts +0 -6
  222. package/src/stores/QueryBuilderPropertyEditorState.ts +6 -235
  223. package/src/stores/QueryBuilderState.ts +25 -4
  224. package/src/stores/QueryBuilderStateBuilder.ts +111 -52
  225. package/src/stores/QueryBuilderValueSpecificationBuilder.ts +34 -51
  226. package/src/stores/QueryBuilderValueSpecificationBuilderHelper.ts +16 -105
  227. package/src/stores/QueryBuilderValueSpecificationHelper.ts +10 -29
  228. package/src/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeStateBuilder.ts +5 -0
  229. package/src/stores/fetch-structure/tds/QueryBuilderTDSState.ts +2 -2
  230. package/src/stores/fetch-structure/tds/aggregation/QueryBuilderAggregationStateBuilder.ts +7 -0
  231. package/src/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByOperatorLoader_.ts → QueryBuilderOLAPGroupByOperatorLoader.ts} +0 -0
  232. package/src/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByState_.ts → QueryBuilderOLAPGroupByState.ts} +0 -0
  233. package/src/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByStateBuilder_.ts → QueryBuilderOLAPGroupByStateBuilder.ts} +3 -1
  234. package/src/stores/fetch-structure/tds/olapGroupBy/{QueryBuilderOLAPGroupByValueSpecificationBuilder_.ts → QueryBuilderOLAPGroupByValueSpecificationBuilder.ts} +1 -1
  235. package/src/stores/fetch-structure/tds/post-filter/operators/QueryBuilderPostFilterOperatorHelper.ts +1 -1
  236. package/src/stores/fetch-structure/tds/projection/QueryBuilderProjectionStateBuilder.ts +11 -0
  237. package/src/stores/fetch-structure/tds/projection/QueryBuilderProjectionValueSpecificationBuilder.ts +1 -1
  238. package/src/stores/filter/QueryBuilderFilterValueSpecificationBuilder.ts +10 -5
  239. package/src/stores/milestoning/QueryBuilderBitemporalMilestoningImplementation.ts +165 -0
  240. package/src/stores/milestoning/QueryBuilderBusinessTemporalMilestoningImplementation.ts +96 -0
  241. package/src/stores/milestoning/QueryBuilderMilestoningHelper.ts +311 -0
  242. package/src/stores/milestoning/QueryBuilderMilestoningImplementation.ts +77 -0
  243. package/src/stores/{QueryBuilderMilestoningState.ts → milestoning/QueryBuilderMilestoningState.ts} +55 -39
  244. package/src/stores/milestoning/QueryBuilderProcessingTemporalMilestoningImplementation.ts +88 -0
  245. package/src/stores/shared/ValueSpecificationEditorHelper.ts +84 -2
  246. package/src/stores/watermark/QueryBuilderWatermarkStateBuilder.ts +3 -0
  247. package/src/stores/watermark/QueryBuilderWatermarkValueSpecificationBuilder.ts +11 -5
  248. package/src/stores/workflows/ServiceQueryBuilderState.ts +1 -1
  249. package/tsconfig.json +14 -6
  250. package/lib/components/fetch-structure/QueryBuilderOLAPGroupByPanel_.d.ts.map +0 -1
  251. package/lib/components/fetch-structure/QueryBuilderOLAPGroupByPanel_.js.map +0 -1
  252. package/lib/stores/QueryBuilderMilestoningState.d.ts.map +0 -1
  253. package/lib/stores/QueryBuilderMilestoningState.js.map +0 -1
  254. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByOperatorLoader_.d.ts.map +0 -1
  255. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByOperatorLoader_.js.map +0 -1
  256. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByStateBuilder_.d.ts.map +0 -1
  257. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByStateBuilder_.js.map +0 -1
  258. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByState_.d.ts.map +0 -1
  259. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByState_.js.map +0 -1
  260. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByValueSpecificationBuilder_.d.ts.map +0 -1
  261. package/lib/stores/fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByValueSpecificationBuilder_.js.map +0 -1
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
  import type { QueryBuilderState } from './QueryBuilderState.js';
17
- import { type EnumValueInstanceValue, type FunctionExpression, type GraphFetchTreeInstanceValue, type ValueSpecificationVisitor, type InstanceValue, type INTERNAL__UnknownValueSpecification, type LambdaFunction, type CollectionInstanceValue, type LambdaFunctionInstanceValue, type PrimitiveInstanceValue, SimpleFunctionExpression, type VariableExpression, type AbstractPropertyExpression, type INTERNAL__PropagatedValue, type ValueSpecification } from '@finos/legend-graph';
17
+ import { type EnumValueInstanceValue, type FunctionExpression, type GraphFetchTreeInstanceValue, type ValueSpecificationVisitor, type InstanceValue, type INTERNAL__UnknownValueSpecification, type LambdaFunction, type CollectionInstanceValue, type LambdaFunctionInstanceValue, PrimitiveInstanceValue, SimpleFunctionExpression, type VariableExpression, type AbstractPropertyExpression, type INTERNAL__PropagatedValue, type ValueSpecification } from '@finos/legend-graph';
18
18
  /**
19
19
  * This is the value specification processor (a.k.a state builder) for query builder.
20
20
  *
@@ -93,13 +93,14 @@ export declare class QueryBuilderValueSpecificationProcessor implements ValueSpe
93
93
  * value specification.
94
94
  */
95
95
  readonly parentExpression?: SimpleFunctionExpression | undefined;
96
+ readonly parentLambda: LambdaFunction;
96
97
  private constructor();
97
- static process(valueSpecification: ValueSpecification, queryBuilderState: QueryBuilderState): void;
98
+ static process(valueSpecification: ValueSpecification, parentLambda: LambdaFunction, queryBuilderState: QueryBuilderState): void;
98
99
  /**
99
100
  * Process value specification with information about parent function expression
100
101
  * in order to be used in some validation/assertion
101
102
  */
102
- static processChild(valueSpecification: ValueSpecification, parentExpression: SimpleFunctionExpression, queryBuilderState: QueryBuilderState): void;
103
+ static processChild(valueSpecification: ValueSpecification, parentExpression: SimpleFunctionExpression, parentLambda: LambdaFunction, queryBuilderState: QueryBuilderState): void;
103
104
  visit_INTERNAL__UnknownValueSpecification(valueSpecification: INTERNAL__UnknownValueSpecification): void;
104
105
  visit_INTERNAL__PropagatedValue(valueSpecification: INTERNAL__PropagatedValue): void;
105
106
  visit_FunctionExpression(valueSpecification: FunctionExpression): void;
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderStateBuilder.d.ts","sourceRoot":"","sources":["../../src/stores/QueryBuilderStateBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AASH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,EAChC,KAAK,yBAAyB,EAC9B,KAAK,aAAa,EAClB,KAAK,mCAAmC,EACxC,KAAK,cAAc,EAInB,KAAK,uBAAuB,EAC5B,KAAK,2BAA2B,EAChC,KAAK,sBAAsB,EAC3B,wBAAwB,EACxB,KAAK,kBAAkB,EACvB,KAAK,0BAA0B,EAE/B,KAAK,yBAAyB,EAC9B,KAAK,kBAAkB,EACxB,MAAM,qBAAqB,CAAC;AAuF7B;;;;;;;;;;;;;GAaG;AACH,qBAAa,uCACX,YAAW,yBAAyB,CAAC,IAAI,CAAC;IAE1C,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAC9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4DG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,wBAAwB,GAAG,SAAS,CAAC;IAEjE,OAAO;IAQP,MAAM,CAAC,OAAO,CACZ,kBAAkB,EAAE,kBAAkB,EACtC,iBAAiB,EAAE,iBAAiB,GACnC,IAAI;IAMP;;;OAGG;IACH,MAAM,CAAC,YAAY,CACjB,kBAAkB,EAAE,kBAAkB,EACtC,gBAAgB,EAAE,wBAAwB,EAC1C,iBAAiB,EAAE,iBAAiB,GACnC,IAAI;IASP,yCAAyC,CACvC,kBAAkB,EAAE,mCAAmC,GACtD,IAAI;IA0BP,+BAA+B,CAC7B,kBAAkB,EAAE,yBAAyB,GAC5C,IAAI;IAIP,wBAAwB,CAAC,kBAAkB,EAAE,kBAAkB,GAAG,IAAI;IAItE,8BAA8B,CAC5B,kBAAkB,EAAE,wBAAwB,GAC3C,IAAI;IA0LP,wBAAwB,CAAC,kBAAkB,EAAE,kBAAkB,GAAG,IAAI;IAItE,gCAAgC,CAC9B,kBAAkB,EAAE,0BAA0B,GAC7C,IAAI;IAyBP,mBAAmB,CAAC,kBAAkB,EAAE,aAAa,GAAG,IAAI;IAI5D,6BAA6B,CAC3B,kBAAkB,EAAE,uBAAuB,GAC1C,IAAI;IAIP,4BAA4B,CAC1B,kBAAkB,EAAE,sBAAsB,GACzC,IAAI;IAIP,4BAA4B,CAC1B,kBAAkB,EAAE,sBAAsB,GACzC,IAAI;IAIP,iCAAiC,CAC/B,kBAAkB,EAAE,2BAA2B,GAC9C,IAAI;IAaP,iCAAiC,CAC/B,kBAAkB,EAAE,2BAA2B,GAC9C,IAAI;CAGR;AAED,eAAO,MAAM,iBAAiB,eAChB,kBAAkB,EAAE,qBACb,iBAAiB,KACnC,IAWF,CAAC;AAEF,eAAO,MAAM,0BAA0B,mBACrB,cAAc,qBACX,iBAAiB,KACnC,IAaF,CAAC"}
1
+ {"version":3,"file":"QueryBuilderStateBuilder.d.ts","sourceRoot":"","sources":["../../src/stores/QueryBuilderStateBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAWH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,EAChC,KAAK,yBAAyB,EAC9B,KAAK,aAAa,EAClB,KAAK,mCAAmC,EACxC,KAAK,cAAc,EAGnB,KAAK,uBAAuB,EAC5B,KAAK,2BAA2B,EAChC,sBAAsB,EACtB,wBAAwB,EACxB,KAAK,kBAAkB,EACvB,KAAK,0BAA0B,EAE/B,KAAK,yBAAyB,EAC9B,KAAK,kBAAkB,EAExB,MAAM,qBAAqB,CAAC;AA6F7B;;;;;;;;;;;;;GAaG;AACH,qBAAa,uCACX,YAAW,yBAAyB,CAAC,IAAI,CAAC;IAE1C,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAC9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4DG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,wBAAwB,GAAG,SAAS,CAAC;IACjE,QAAQ,CAAC,YAAY,EAAE,cAAc,CAAC;IAEtC,OAAO;IAUP,MAAM,CAAC,OAAO,CACZ,kBAAkB,EAAE,kBAAkB,EACtC,YAAY,EAAE,cAAc,EAC5B,iBAAiB,EAAE,iBAAiB,GACnC,IAAI;IAUP;;;OAGG;IACH,MAAM,CAAC,YAAY,CACjB,kBAAkB,EAAE,kBAAkB,EACtC,gBAAgB,EAAE,wBAAwB,EAC1C,YAAY,EAAE,cAAc,EAC5B,iBAAiB,EAAE,iBAAiB,GACnC,IAAI;IAUP,yCAAyC,CACvC,kBAAkB,EAAE,mCAAmC,GACtD,IAAI;IA0BP,+BAA+B,CAC7B,kBAAkB,EAAE,yBAAyB,GAC5C,IAAI;IAIP,wBAAwB,CAAC,kBAAkB,EAAE,kBAAkB,GAAG,IAAI;IAItE,8BAA8B,CAC5B,kBAAkB,EAAE,wBAAwB,GAC3C,IAAI;IAiOP,wBAAwB,CAAC,kBAAkB,EAAE,kBAAkB,GAAG,IAAI;IAItE,gCAAgC,CAC9B,kBAAkB,EAAE,0BAA0B,GAC7C,IAAI;IAyBP,mBAAmB,CAAC,kBAAkB,EAAE,aAAa,GAAG,IAAI;IAI5D,6BAA6B,CAC3B,kBAAkB,EAAE,uBAAuB,GAC1C,IAAI;IAIP,4BAA4B,CAC1B,kBAAkB,EAAE,sBAAsB,GACzC,IAAI;IAIP,4BAA4B,CAC1B,kBAAkB,EAAE,sBAAsB,GACzC,IAAI;IAIP,iCAAiC,CAC/B,kBAAkB,EAAE,2BAA2B,GAC9C,IAAI;IAcP,iCAAiC,CAC/B,kBAAkB,EAAE,2BAA2B,GAC9C,IAAI;CAGR;AAED,eAAO,MAAM,iBAAiB,eAChB,kBAAkB,EAAE,qBACb,iBAAiB,KACnC,IAWF,CAAC;AAEF,eAAO,MAAM,0BAA0B,mBACrB,cAAc,qBACX,iBAAiB,KACnC,IAcF,CAAC"}
@@ -13,8 +13,8 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { assertNonNullable, assertTrue, assertType, guaranteeType, UnsupportedOperationError, } from '@finos/legend-shared';
17
- import { MILESTONING_STEREOTYPE, matchFunctionName, Class, SimpleFunctionExpression, getMilestoneTemporalStereotype, } from '@finos/legend-graph';
16
+ import { assertNonNullable, assertTrue, assertType, guaranteeIsString, guaranteeNonNullable, guaranteeType, UnsupportedOperationError, } from '@finos/legend-shared';
17
+ import { matchFunctionName, Class, PrimitiveInstanceValue, SimpleFunctionExpression, getMilestoneTemporalStereotype, SUPPORTED_FUNCTIONS, } from '@finos/legend-graph';
18
18
  import { processTDSPostFilterExpression } from './fetch-structure/tds/post-filter/QueryBuilderPostFilterStateBuilder.js';
19
19
  import { processFilterExpression } from './filter/QueryBuilderFilterStateBuilder.js';
20
20
  import { processTDSAggregateExpression, processTDSGroupByExpression, } from './fetch-structure/tds/aggregation/QueryBuilderAggregationStateBuilder.js';
@@ -22,37 +22,39 @@ import { processGraphFetchExpression, processGraphFetchSerializeExpression, } fr
22
22
  import { processTDSDistinctExpression, processTDSProjectExpression, processTDSProjectionColumnPropertyExpression, processTDSProjectionDerivationExpression, processTDSSortDirectionExpression, processTDSSortExpression, processTDSTakeExpression, } from './fetch-structure/tds/projection/QueryBuilderProjectionStateBuilder.js';
23
23
  import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../graphManager/QueryBuilderSupportedFunctions.js';
24
24
  import { LambdaParameterState } from './shared/LambdaParameterState.js';
25
- import { processTDS_OLAPGroupByExpression } from './fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByStateBuilder_.js';
25
+ import { processTDS_OLAPGroupByExpression } from './fetch-structure/tds/olapGroupBy/QueryBuilderOLAPGroupByStateBuilder.js';
26
26
  import { processWatermarkExpression } from './watermark/QueryBuilderWatermarkStateBuilder.js';
27
+ import { QueryBuilderConstantExpressionState } from './QueryBuilderConstantsState.js';
27
28
  const processGetAllExpression = (expression, queryBuilderState) => {
28
29
  const _class = expression.genericType?.value.rawType;
29
30
  assertType(_class, Class, `Can't process getAll() expression: getAll() return type is missing`);
30
31
  queryBuilderState.setClass(_class);
31
- queryBuilderState.milestoningState.updateMilestoningConfiguration();
32
+ queryBuilderState.milestoningState.clearMilestoningDates();
32
33
  queryBuilderState.explorerState.refreshTreeData();
33
34
  // check parameters (milestoning) and build state
34
- let acceptedNoOfParameters = 1;
35
+ const acceptedNoOfParameters = 1;
35
36
  const stereotype = getMilestoneTemporalStereotype(_class, queryBuilderState.graphManagerState.graph);
36
- switch (stereotype) {
37
- case MILESTONING_STEREOTYPE.BITEMPORAL:
38
- acceptedNoOfParameters = 3;
39
- assertTrue(expression.parametersValues.length === acceptedNoOfParameters, `Can't process getAll() expression: when used with a bitemporal milestoned class getAll() expects two parameters`);
40
- queryBuilderState.milestoningState.setProcessingDate(expression.parametersValues[1]);
41
- queryBuilderState.milestoningState.setBusinessDate(expression.parametersValues[2]);
42
- break;
43
- case MILESTONING_STEREOTYPE.BUSINESS_TEMPORAL:
44
- acceptedNoOfParameters = 2;
45
- assertTrue(expression.parametersValues.length === acceptedNoOfParameters, `Can't process getAll() expression: when used with a milestoned class getAll() expects a parameter`);
46
- queryBuilderState.milestoningState.setBusinessDate(expression.parametersValues[1]);
47
- break;
48
- case MILESTONING_STEREOTYPE.PROCESSING_TEMPORAL:
49
- acceptedNoOfParameters = 2;
50
- assertTrue(expression.parametersValues.length === acceptedNoOfParameters, `Can't process getAll() expression: when used with a milestoned class getAll() expects a parameter`);
51
- queryBuilderState.milestoningState.setProcessingDate(expression.parametersValues[1]);
52
- break;
53
- default:
54
- assertTrue(expression.parametersValues.length === acceptedNoOfParameters, `Can't process getAll() expression: getAll() expects no arguments`);
37
+ if (stereotype) {
38
+ queryBuilderState.milestoningState
39
+ .getMilestoningImplementation(stereotype)
40
+ .processGetAllParamaters(expression.parametersValues);
55
41
  }
42
+ else {
43
+ assertTrue(expression.parametersValues.length === acceptedNoOfParameters, `Can't process getAll() expression: getAll() expects no arguments`);
44
+ }
45
+ };
46
+ const processLetExpression = (expression, queryBuilderState, parentLambda) => {
47
+ const parameters = expression.parametersValues;
48
+ assertTrue(expression.parametersValues.length === 2, 'Let function expected to have two parameters (left and right side value)');
49
+ // process left side (var)
50
+ const letVariable = guaranteeIsString(guaranteeType(parameters[0], PrimitiveInstanceValue, 'Can`t process let function: left side should be a primitive instance value').values[0], 'Can`t process let function: left side should be a string primitive instance value');
51
+ const varExp = guaranteeNonNullable(parentLambda.openVariables.get(letVariable), `Unable to find variable ${letVariable} in lambda function`);
52
+ // process right side (value)
53
+ const rightSide = guaranteeNonNullable(parameters[1]);
54
+ // final
55
+ const constantExpression = new QueryBuilderConstantExpressionState(queryBuilderState, varExp, rightSide);
56
+ queryBuilderState.constantState.setShowConstantPanel(true);
57
+ queryBuilderState.constantState.addConstant(constantExpression);
56
58
  };
57
59
  /**
58
60
  * This is the value specification processor (a.k.a state builder) for query builder.
@@ -132,19 +134,21 @@ export class QueryBuilderValueSpecificationProcessor {
132
134
  * value specification.
133
135
  */
134
136
  parentExpression;
135
- constructor(queryBuilderState, parentExpression) {
137
+ parentLambda;
138
+ constructor(queryBuilderState, parentLambda, parentExpression) {
136
139
  this.queryBuilderState = queryBuilderState;
137
140
  this.parentExpression = parentExpression;
141
+ this.parentLambda = parentLambda;
138
142
  }
139
- static process(valueSpecification, queryBuilderState) {
140
- valueSpecification.accept_ValueSpecificationVisitor(new QueryBuilderValueSpecificationProcessor(queryBuilderState, undefined));
143
+ static process(valueSpecification, parentLambda, queryBuilderState) {
144
+ valueSpecification.accept_ValueSpecificationVisitor(new QueryBuilderValueSpecificationProcessor(queryBuilderState, parentLambda, undefined));
141
145
  }
142
146
  /**
143
147
  * Process value specification with information about parent function expression
144
148
  * in order to be used in some validation/assertion
145
149
  */
146
- static processChild(valueSpecification, parentExpression, queryBuilderState) {
147
- valueSpecification.accept_ValueSpecificationVisitor(new QueryBuilderValueSpecificationProcessor(queryBuilderState, parentExpression));
150
+ static processChild(valueSpecification, parentExpression, parentLambda, queryBuilderState) {
151
+ valueSpecification.accept_ValueSpecificationVisitor(new QueryBuilderValueSpecificationProcessor(queryBuilderState, parentLambda, parentExpression));
148
152
  }
149
153
  visit_INTERNAL__UnknownValueSpecification(valueSpecification) {
150
154
  assertNonNullable(this.parentExpression, `Can't process unknown value: parent expression cannot be retrieved`);
@@ -182,7 +186,7 @@ export class QueryBuilderValueSpecificationProcessor {
182
186
  assertTrue(valueSpecification.parametersValues.length === 2, `Can't process filter() expression: filter() expects 1 argument`);
183
187
  // check preceding expression
184
188
  const precedingExpression = guaranteeType(valueSpecification.parametersValues[0], SimpleFunctionExpression, `Can't process filter() expression: only support filter() immediately following an expression`);
185
- QueryBuilderValueSpecificationProcessor.process(precedingExpression, this.queryBuilderState);
189
+ QueryBuilderValueSpecificationProcessor.process(precedingExpression, this.parentLambda, this.queryBuilderState);
186
190
  if (matchFunctionName(precedingExpression.functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.GET_ALL)) {
187
191
  assertTrue(matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.FILTER), `Can't process filter() expression: only supports ${QUERY_BUILDER_SUPPORTED_FUNCTIONS.FILTER}() immediately following getAll() (got '${functionName}')`);
188
192
  processFilterExpression(valueSpecification, this.queryBuilderState);
@@ -208,23 +212,23 @@ export class QueryBuilderValueSpecificationProcessor {
208
212
  }
209
213
  }
210
214
  else if (matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.WATERMARK)) {
211
- processWatermarkExpression(valueSpecification, this.queryBuilderState);
215
+ processWatermarkExpression(valueSpecification, this.queryBuilderState, this.parentLambda);
212
216
  return;
213
217
  }
214
218
  else if (matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_PROJECT)) {
215
- processTDSProjectExpression(valueSpecification, this.queryBuilderState);
219
+ processTDSProjectExpression(valueSpecification, this.queryBuilderState, this.parentLambda);
216
220
  return;
217
221
  }
218
222
  else if (matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_TAKE)) {
219
- processTDSTakeExpression(valueSpecification, this.queryBuilderState);
223
+ processTDSTakeExpression(valueSpecification, this.queryBuilderState, this.parentLambda);
220
224
  return;
221
225
  }
222
226
  else if (matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_DISTINCT)) {
223
- processTDSDistinctExpression(valueSpecification, this.queryBuilderState);
227
+ processTDSDistinctExpression(valueSpecification, this.queryBuilderState, this.parentLambda);
224
228
  return;
225
229
  }
226
230
  else if (matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_SORT)) {
227
- processTDSSortExpression(valueSpecification, this.queryBuilderState);
231
+ processTDSSortExpression(valueSpecification, this.queryBuilderState, this.parentLambda);
228
232
  return;
229
233
  }
230
234
  else if (matchFunctionName(functionName, [
@@ -235,26 +239,30 @@ export class QueryBuilderValueSpecificationProcessor {
235
239
  return;
236
240
  }
237
241
  else if (matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_GROUP_BY)) {
238
- processTDSGroupByExpression(valueSpecification, this.queryBuilderState);
242
+ processTDSGroupByExpression(valueSpecification, this.queryBuilderState, this.parentLambda);
239
243
  return;
240
244
  }
241
245
  else if (matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_AGG)) {
242
- processTDSAggregateExpression(valueSpecification, this.parentExpression, this.queryBuilderState);
246
+ processTDSAggregateExpression(valueSpecification, this.parentExpression, this.queryBuilderState, this.parentLambda);
243
247
  return;
244
248
  }
245
249
  else if (matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.OLAP_GROUPBY)) {
246
- processTDS_OLAPGroupByExpression(valueSpecification, this.queryBuilderState);
250
+ processTDS_OLAPGroupByExpression(valueSpecification, this.queryBuilderState, this.parentLambda);
247
251
  return;
248
252
  }
249
253
  else if (matchFunctionName(functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.SERIALIZE)) {
250
- processGraphFetchSerializeExpression(valueSpecification, this.queryBuilderState);
254
+ processGraphFetchSerializeExpression(valueSpecification, this.queryBuilderState, this.parentLambda);
251
255
  return;
252
256
  }
253
257
  else if (matchFunctionName(functionName, [
254
258
  QUERY_BUILDER_SUPPORTED_FUNCTIONS.GRAPH_FETCH_CHECKED,
255
259
  QUERY_BUILDER_SUPPORTED_FUNCTIONS.GRAPH_FETCH,
256
260
  ])) {
257
- processGraphFetchExpression(valueSpecification, this.queryBuilderState);
261
+ processGraphFetchExpression(valueSpecification, this.queryBuilderState, this.parentLambda);
262
+ return;
263
+ }
264
+ else if (matchFunctionName(functionName, [SUPPORTED_FUNCTIONS.LET])) {
265
+ processLetExpression(valueSpecification, this.queryBuilderState, this.parentLambda);
258
266
  return;
259
267
  }
260
268
  throw new UnsupportedOperationError(`Can't process expression of function ${functionName}()`);
@@ -287,7 +295,7 @@ export class QueryBuilderValueSpecificationProcessor {
287
295
  throw new UnsupportedOperationError();
288
296
  }
289
297
  visit_LambdaFunctionInstanceValue(valueSpecification) {
290
- valueSpecification.values.forEach((value) => value.expressionSequence.forEach((expression) => expression.accept_ValueSpecificationVisitor(new QueryBuilderValueSpecificationProcessor(this.queryBuilderState, this.parentExpression))));
298
+ valueSpecification.values.forEach((value) => value.expressionSequence.forEach((expression) => expression.accept_ValueSpecificationVisitor(new QueryBuilderValueSpecificationProcessor(this.queryBuilderState, this.parentLambda, this.parentExpression))));
291
299
  }
292
300
  visit_GraphFetchTreeInstanceValue(valueSpecification) {
293
301
  throw new UnsupportedOperationError();
@@ -305,6 +313,6 @@ export const processQueryLambdaFunction = (lambdaFunction, queryBuilderState) =>
305
313
  if (lambdaFunction.functionType.parameters.length) {
306
314
  processParameters(lambdaFunction.functionType.parameters, queryBuilderState);
307
315
  }
308
- lambdaFunction.expressionSequence.map((expression) => QueryBuilderValueSpecificationProcessor.process(expression, queryBuilderState));
316
+ lambdaFunction.expressionSequence.map((expression) => QueryBuilderValueSpecificationProcessor.process(expression, lambdaFunction, queryBuilderState));
309
317
  };
310
318
  //# sourceMappingURL=QueryBuilderStateBuilder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderStateBuilder.js","sourceRoot":"","sources":["../../src/stores/QueryBuilderStateBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,iBAAiB,EACjB,UAAU,EACV,UAAU,EACV,aAAa,EACb,yBAAyB,GAC1B,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAQL,sBAAsB,EACtB,iBAAiB,EACjB,KAAK,EAIL,wBAAwB,EAGxB,8BAA8B,GAG/B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,8BAA8B,EAAE,MAAM,yEAAyE,CAAC;AACzH,OAAO,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AACrF,OAAO,EACL,6BAA6B,EAC7B,2BAA2B,GAC5B,MAAM,0EAA0E,CAAC;AAClF,OAAO,EACL,2BAA2B,EAC3B,oCAAoC,GACrC,MAAM,yEAAyE,CAAC;AACjF,OAAO,EACL,4BAA4B,EAC5B,2BAA2B,EAC3B,4CAA4C,EAC5C,wCAAwC,EACxC,iCAAiC,EACjC,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,wEAAwE,CAAC;AAChF,OAAO,EAAE,iCAAiC,EAAE,MAAM,mDAAmD,CAAC;AACtG,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,gCAAgC,EAAE,MAAM,2EAA2E,CAAC;AAC7H,OAAO,EAAE,0BAA0B,EAAE,MAAM,kDAAkD,CAAC;AAE9F,MAAM,uBAAuB,GAAG,CAC9B,UAAoC,EACpC,iBAAoC,EAC9B,EAAE;IACR,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC;IACrD,UAAU,CACR,MAAM,EACN,KAAK,EACL,oEAAoE,CACrE,CAAC;IACF,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACnC,iBAAiB,CAAC,gBAAgB,CAAC,8BAA8B,EAAE,CAAC;IACpE,iBAAiB,CAAC,aAAa,CAAC,eAAe,EAAE,CAAC;IAElD,iDAAiD;IACjD,IAAI,sBAAsB,GAAG,CAAC,CAAC;IAC/B,MAAM,UAAU,GAAG,8BAA8B,CAC/C,MAAM,EACN,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,CAC1C,CAAC;IACF,QAAQ,UAAU,EAAE;QAClB,KAAK,sBAAsB,CAAC,UAAU;YACpC,sBAAsB,GAAG,CAAC,CAAC;YAC3B,UAAU,CACR,UAAU,CAAC,gBAAgB,CAAC,MAAM,KAAK,sBAAsB,EAC7D,iHAAiH,CAClH,CAAC;YACF,iBAAiB,CAAC,gBAAgB,CAAC,iBAAiB,CAClD,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAC/B,CAAC;YACF,iBAAiB,CAAC,gBAAgB,CAAC,eAAe,CAChD,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAC/B,CAAC;YACF,MAAM;QACR,KAAK,sBAAsB,CAAC,iBAAiB;YAC3C,sBAAsB,GAAG,CAAC,CAAC;YAC3B,UAAU,CACR,UAAU,CAAC,gBAAgB,CAAC,MAAM,KAAK,sBAAsB,EAC7D,mGAAmG,CACpG,CAAC;YACF,iBAAiB,CAAC,gBAAgB,CAAC,eAAe,CAChD,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAC/B,CAAC;YACF,MAAM;QACR,KAAK,sBAAsB,CAAC,mBAAmB;YAC7C,sBAAsB,GAAG,CAAC,CAAC;YAC3B,UAAU,CACR,UAAU,CAAC,gBAAgB,CAAC,MAAM,KAAK,sBAAsB,EAC7D,mGAAmG,CACpG,CAAC;YACF,iBAAiB,CAAC,gBAAgB,CAAC,iBAAiB,CAClD,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAC/B,CAAC;YACF,MAAM;QACR;YACE,UAAU,CACR,UAAU,CAAC,gBAAgB,CAAC,MAAM,KAAK,sBAAsB,EAC7D,kEAAkE,CACnE,CAAC;KACL;AACH,CAAC,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,uCAAuC;IAGzC,iBAAiB,CAAoB;IAC9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4DG;IACM,gBAAgB,CAAwC;IAEjE,YACE,iBAAoC,EACpC,gBAAsD;QAEtD,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;IAED,MAAM,CAAC,OAAO,CACZ,kBAAsC,EACtC,iBAAoC;QAEpC,kBAAkB,CAAC,gCAAgC,CACjD,IAAI,uCAAuC,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAC1E,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,YAAY,CACjB,kBAAsC,EACtC,gBAA0C,EAC1C,iBAAoC;QAEpC,kBAAkB,CAAC,gCAAgC,CACjD,IAAI,uCAAuC,CACzC,iBAAiB,EACjB,gBAAgB,CACjB,CACF,CAAC;IACJ,CAAC;IAED,yCAAyC,CACvC,kBAAuD;QAEvD,iBAAiB,CACf,IAAI,CAAC,gBAAgB,EACrB,oEAAoE,CACrE,CAAC;QAEF,IACE,iBAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE;YACpD,iCAAiC,CAAC,WAAW;YAC7C,iCAAiC,CAAC,YAAY;YAC9C,iCAAiC,CAAC,OAAO;SAC1C,CAAC,EACF;YACA,wCAAwC,CACtC,kBAAkB,EAClB,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,iBAAiB,CACvB,CAAC;YACF,OAAO;SACR;QAED,MAAM,IAAI,yBAAyB,CACjC,kEAAkE,IAAI,CAAC,gBAAgB,CAAC,YAAY,IAAI,CACzG,CAAC;IACJ,CAAC;IAED,+BAA+B,CAC7B,kBAA6C;QAE7C,MAAM,IAAI,yBAAyB,EAAE,CAAC;IACxC,CAAC;IAED,wBAAwB,CAAC,kBAAsC;QAC7D,MAAM,IAAI,yBAAyB,EAAE,CAAC;IACxC,CAAC;IAED,8BAA8B,CAC5B,kBAA4C;QAE5C,MAAM,YAAY,GAAG,kBAAkB,CAAC,YAAY,CAAC;QACrD,IACE,iBAAiB,CAAC,YAAY,EAAE,iCAAiC,CAAC,OAAO,CAAC,EAC1E;YACA,uBAAuB,CAAC,kBAAkB,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACpE,OAAO;SACR;aAAM,IACL,iBAAiB,CAAC,YAAY,EAAE;YAC9B,iCAAiC,CAAC,MAAM;YACxC,iCAAiC,CAAC,UAAU;SAC7C,CAAC,EACF;YACA,wDAAwD;YACxD,+DAA+D;YAC/D,sEAAsE;YACtE,eAAe;YAEf,mBAAmB;YACnB,UAAU,CACR,kBAAkB,CAAC,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAChD,gEAAgE,CACjE,CAAC;YAEF,6BAA6B;YAC7B,MAAM,mBAAmB,GAAG,aAAa,CACvC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,CAAC,EACtC,wBAAwB,EACxB,8FAA8F,CAC/F,CAAC;YACF,uCAAuC,CAAC,OAAO,CAC7C,mBAAmB,EACnB,IAAI,CAAC,iBAAiB,CACvB,CAAC;YAEF,IACE,iBAAiB,CACf,mBAAmB,CAAC,YAAY,EAChC,iCAAiC,CAAC,OAAO,CAC1C,EACD;gBACA,UAAU,CACR,iBAAiB,CACf,YAAY,EACZ,iCAAiC,CAAC,MAAM,CACzC,EACD,oDAAoD,iCAAiC,CAAC,MAAM,2CAA2C,YAAY,IAAI,CACxJ,CAAC;gBACF,uBAAuB,CAAC,kBAAkB,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;gBACpE,OAAO;aACR;iBAAM,IACL,iBAAiB,CAAC,mBAAmB,CAAC,YAAY,EAAE;gBAClD,iCAAiC,CAAC,WAAW;gBAC7C,iCAAiC,CAAC,YAAY;gBAC9C,iCAAiC,CAAC,YAAY;aAC/C,CAAC,EACF;gBACA,UAAU,CACR,iBAAiB,CACf,YAAY,EACZ,iCAAiC,CAAC,UAAU,CAC7C,EACD,uDAAuD,iCAAiC,CAAC,UAAU,sDAAsD,YAAY,IAAI,CAC1K,CAAC;gBACF,8BAA8B,CAC5B,kBAAkB,EAClB,IAAI,CAAC,iBAAiB,CACvB,CAAC;gBACF,OAAO;aACR;iBAAM,IACL,iBAAiB,CAAC,mBAAmB,CAAC,YAAY,EAAE;gBAClD,iCAAiC,CAAC,SAAS;aAC5C,CAAC,EACF;gBACA,uBAAuB,CAAC,kBAAkB,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;gBACpE,OAAO;aACR;iBAAM;gBACL,MAAM,IAAI,yBAAyB,CACjC,6IAA6I,CAC9I,CAAC;aACH;SACF;aAAM,IACL,iBAAiB,CACf,YAAY,EACZ,iCAAiC,CAAC,SAAS,CAC5C,EACD;YACA,0BAA0B,CAAC,kBAAkB,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACvE,OAAO;SACR;aAAM,IACL,iBAAiB,CACf,YAAY,EACZ,iCAAiC,CAAC,WAAW,CAC9C,EACD;YACA,2BAA2B,CAAC,kBAAkB,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACxE,OAAO;SACR;aAAM,IACL,iBAAiB,CACf,YAAY,EACZ,iCAAiC,CAAC,QAAQ,CAC3C,EACD;YACA,wBAAwB,CAAC,kBAAkB,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACrE,OAAO;SACR;aAAM,IACL,iBAAiB,CACf,YAAY,EACZ,iCAAiC,CAAC,YAAY,CAC/C,EACD;YACA,4BAA4B,CAAC,kBAAkB,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACzE,OAAO;SACR;aAAM,IACL,iBAAiB,CACf,YAAY,EACZ,iCAAiC,CAAC,QAAQ,CAC3C,EACD;YACA,wBAAwB,CAAC,kBAAkB,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACrE,OAAO;SACR;aAAM,IACL,iBAAiB,CAAC,YAAY,EAAE;YAC9B,iCAAiC,CAAC,OAAO;YACzC,iCAAiC,CAAC,QAAQ;SAC3C,CAAC,EACF;YACA,iCAAiC,CAC/B,kBAAkB,EAClB,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,iBAAiB,CACvB,CAAC;YACF,OAAO;SACR;aAAM,IACL,iBAAiB,CACf,YAAY,EACZ,iCAAiC,CAAC,YAAY,CAC/C,EACD;YACA,2BAA2B,CAAC,kBAAkB,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACxE,OAAO;SACR;aAAM,IACL,iBAAiB,CAAC,YAAY,EAAE,iCAAiC,CAAC,OAAO,CAAC,EAC1E;YACA,6BAA6B,CAC3B,kBAAkB,EAClB,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,iBAAiB,CACvB,CAAC;YACF,OAAO;SACR;aAAM,IACL,iBAAiB,CACf,YAAY,EACZ,iCAAiC,CAAC,YAAY,CAC/C,EACD;YACA,gCAAgC,CAC9B,kBAAkB,EAClB,IAAI,CAAC,iBAAiB,CACvB,CAAC;YACF,OAAO;SACR;aAAM,IACL,iBAAiB,CACf,YAAY,EACZ,iCAAiC,CAAC,SAAS,CAC5C,EACD;YACA,oCAAoC,CAClC,kBAAkB,EAClB,IAAI,CAAC,iBAAiB,CACvB,CAAC;YACF,OAAO;SACR;aAAM,IACL,iBAAiB,CAAC,YAAY,EAAE;YAC9B,iCAAiC,CAAC,mBAAmB;YACrD,iCAAiC,CAAC,WAAW;SAC9C,CAAC,EACF;YACA,2BAA2B,CAAC,kBAAkB,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACxE,OAAO;SACR;QACD,MAAM,IAAI,yBAAyB,CACjC,wCAAwC,YAAY,IAAI,CACzD,CAAC;IACJ,CAAC;IAED,wBAAwB,CAAC,kBAAsC;QAC7D,MAAM,IAAI,yBAAyB,EAAE,CAAC;IACxC,CAAC;IAED,gCAAgC,CAC9B,kBAA8C;QAE9C,iBAAiB,CACf,IAAI,CAAC,gBAAgB,EACrB,0EAA0E,CAC3E,CAAC;QAEF,IACE,iBAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE;YACpD,iCAAiC,CAAC,WAAW;YAC7C,iCAAiC,CAAC,YAAY;YAC9C,iCAAiC,CAAC,OAAO;SAC1C,CAAC,EACF;YACA,4CAA4C,CAC1C,kBAAkB,EAClB,IAAI,CAAC,iBAAiB,CACvB,CAAC;YACF,OAAO;SACR;QAED,MAAM,IAAI,yBAAyB,CACjC,wEAAwE,IAAI,CAAC,gBAAgB,CAAC,YAAY,IAAI,CAC/G,CAAC;IACJ,CAAC;IAED,mBAAmB,CAAC,kBAAiC;QACnD,MAAM,IAAI,yBAAyB,EAAE,CAAC;IACxC,CAAC;IAED,6BAA6B,CAC3B,kBAA2C;QAE3C,MAAM,IAAI,yBAAyB,EAAE,CAAC;IACxC,CAAC;IAED,4BAA4B,CAC1B,kBAA0C;QAE1C,MAAM,IAAI,yBAAyB,EAAE,CAAC;IACxC,CAAC;IAED,4BAA4B,CAC1B,kBAA0C;QAE1C,MAAM,IAAI,yBAAyB,EAAE,CAAC;IACxC,CAAC;IAED,iCAAiC,CAC/B,kBAA+C;QAE/C,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAC1C,KAAK,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE,CAC9C,UAAU,CAAC,gCAAgC,CACzC,IAAI,uCAAuC,CACzC,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,gBAAgB,CACtB,CACF,CACF,CACF,CAAC;IACJ,CAAC;IAED,iCAAiC,CAC/B,kBAA+C;QAE/C,MAAM,IAAI,yBAAyB,EAAE,CAAC;IACxC,CAAC;CACF;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,UAAgC,EAChC,iBAAoC,EAC9B,EAAE;IACR,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,eAAe,CAAC;IAC9D,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;QAC/B,MAAM,cAAc,GAAG,IAAI,oBAAoB,CAC7C,SAAS,EACT,iBAAiB,CAAC,iBAAiB,EACnC,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,CAC1C,CAAC;QACF,cAAc,CAAC,kBAAkB,EAAE,CAAC;QACpC,mBAAmB,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,CACxC,cAA8B,EAC9B,iBAAoC,EAC9B,EAAE;IACR,IAAI,cAAc,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,EAAE;QACjD,iBAAiB,CACf,cAAc,CAAC,YAAY,CAAC,UAAU,EACtC,iBAAiB,CAClB,CAAC;KACH;IACD,cAAc,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CACnD,uCAAuC,CAAC,OAAO,CAC7C,UAAU,EACV,iBAAiB,CAClB,CACF,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"QueryBuilderStateBuilder.js","sourceRoot":"","sources":["../../src/stores/QueryBuilderStateBuilder.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderValueSpecificationBuilder.d.ts","sourceRoot":"","sources":["../../src/stores/QueryBuilderValueSpecificationBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EAWL,cAAc,EAGf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAEhE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kDAAkD,CAAC;AAiCpG,eAAO,MAAM,mBAAmB,sBACX,iBAAiB,YAC1B,2BAA2B,KACpC,cAuGF,CAAC"}
1
+ {"version":3,"file":"QueryBuilderValueSpecificationBuilder.d.ts","sourceRoot":"","sources":["../../src/stores/QueryBuilderValueSpecificationBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EAWL,cAAc,EAKf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAEhE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kDAAkD,CAAC;AAkDpG,eAAO,MAAM,mBAAmB,sBACX,iBAAiB,YAC1B,2BAA2B,KACpC,cAmEF,CAAC"}
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
  import { guaranteeNonNullable } from '@finos/legend-shared';
17
- import { Multiplicity, getMilestoneTemporalStereotype, extractElementNameFromPath, InstanceValue, PackageableElementExplicitReference, CORE_PURE_PATH, FunctionType, GenericType, GenericTypeExplicitReference, LambdaFunction, SimpleFunctionExpression, MILESTONING_STEREOTYPE, } from '@finos/legend-graph';
17
+ import { Multiplicity, getMilestoneTemporalStereotype, extractElementNameFromPath, InstanceValue, PackageableElementExplicitReference, CORE_PURE_PATH, FunctionType, GenericType, GenericTypeExplicitReference, LambdaFunction, SimpleFunctionExpression, PrimitiveInstanceValue, PrimitiveType, SUPPORTED_FUNCTIONS, } from '@finos/legend-graph';
18
18
  import { buildFilterExpression } from './filter/QueryBuilderFilterValueSpecificationBuilder.js';
19
19
  import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../graphManager/QueryBuilderSupportedFunctions.js';
20
20
  import { buildWatermarkExpression } from './watermark/QueryBuilderWatermarkValueSpecificationBuilder.js';
@@ -26,6 +26,15 @@ const buildGetAllFunction = (_class, multiplicity) => {
26
26
  _func.parametersValues.push(classInstance);
27
27
  return _func;
28
28
  };
29
+ const buildLetExpression = (constantExpressionState) => {
30
+ const varName = constantExpressionState.variable.name;
31
+ const value = constantExpressionState.value;
32
+ const leftSide = new PrimitiveInstanceValue(GenericTypeExplicitReference.create(new GenericType(PrimitiveType.STRING)));
33
+ leftSide.values = [varName];
34
+ const letFunc = new SimpleFunctionExpression(extractElementNameFromPath(SUPPORTED_FUNCTIONS.LET));
35
+ letFunc.parametersValues = [leftSide, value];
36
+ return letFunc;
37
+ };
29
38
  const buildFetchStructure = (fetchStructureState, lambdaFunction, options) => {
30
39
  fetchStructureState.implementation.appendFetchStructure(lambdaFunction, options);
31
40
  };
@@ -37,36 +46,25 @@ export const buildLambdaFunction = (queryBuilderState, options) => {
37
46
  // build milestoning parameter(s) for getAll()
38
47
  const milestoningStereotype = getMilestoneTemporalStereotype(_class, queryBuilderState.graphManagerState.graph);
39
48
  if (milestoningStereotype) {
40
- switch (milestoningStereotype) {
41
- case MILESTONING_STEREOTYPE.BUSINESS_TEMPORAL: {
42
- getAllFunction.parametersValues.push(guaranteeNonNullable(queryBuilderState.milestoningState.businessDate, `Milestoning class should have a parameter of type 'Date'`));
43
- break;
44
- }
45
- case MILESTONING_STEREOTYPE.PROCESSING_TEMPORAL: {
46
- getAllFunction.parametersValues.push(guaranteeNonNullable(queryBuilderState.milestoningState.processingDate, `Milestoning class should have a parameter of type 'Date'`));
47
- break;
48
- }
49
- case MILESTONING_STEREOTYPE.BITEMPORAL: {
50
- getAllFunction.parametersValues.push(guaranteeNonNullable(queryBuilderState.milestoningState.processingDate, `Milestoning class should have a parameter of type 'Date'`));
51
- getAllFunction.parametersValues.push(guaranteeNonNullable(queryBuilderState.milestoningState.businessDate, `Milestoning class should have a parameter of type 'Date'`));
52
- break;
53
- }
54
- default:
55
- }
49
+ queryBuilderState.milestoningState
50
+ .getMilestoningImplementation(milestoningStereotype)
51
+ .buildGetAllParameters(getAllFunction);
56
52
  }
57
53
  lambdaFunction.expressionSequence[0] = getAllFunction;
58
54
  // build watermark
59
- const watermarkFunction = buildWatermarkExpression(queryBuilderState.watermarkState, getAllFunction);
60
- if (watermarkFunction) {
61
- lambdaFunction.expressionSequence[0] = watermarkFunction;
62
- }
55
+ buildWatermarkExpression(queryBuilderState.watermarkState, lambdaFunction);
63
56
  // build filter
64
- const filterFunction = buildFilterExpression(queryBuilderState.filterState, watermarkFunction ?? getAllFunction);
65
- if (filterFunction) {
66
- lambdaFunction.expressionSequence[0] = filterFunction;
67
- }
57
+ buildFilterExpression(queryBuilderState.filterState, lambdaFunction);
68
58
  // build fetch-structure
69
59
  buildFetchStructure(queryBuilderState.fetchStructureState, lambdaFunction, options);
60
+ // build variable expressions
61
+ if (queryBuilderState.constantState.constants.length) {
62
+ const letExpressions = queryBuilderState.constantState.constants.map(buildLetExpression);
63
+ lambdaFunction.expressionSequence = [
64
+ ...letExpressions,
65
+ ...lambdaFunction.expressionSequence,
66
+ ];
67
+ }
70
68
  // build parameters
71
69
  if (queryBuilderState.parametersState.parameterStates.length) {
72
70
  if (options?.isBuildingExecutionQuery) {
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderValueSpecificationBuilder.js","sourceRoot":"","sources":["../../src/stores/QueryBuilderValueSpecificationBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QueryBuilderValueSpecificationBuilder.js","sourceRoot":"","sources":["../../src/stores/QueryBuilderValueSpecificationBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAEL,YAAY,EACZ,8BAA8B,EAC9B,0BAA0B,EAC1B,aAAa,EACb,mCAAmC,EACnC,cAAc,EACd,YAAY,EACZ,WAAW,EACX,4BAA4B,EAC5B,cAAc,EACd,wBAAwB,EACxB,sBAAsB,EACtB,aAAa,EACb,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,qBAAqB,EAAE,MAAM,yDAAyD,CAAC;AAGhG,OAAO,EAAE,iCAAiC,EAAE,MAAM,mDAAmD,CAAC;AACtG,OAAO,EAAE,wBAAwB,EAAE,MAAM,+DAA+D,CAAC;AACzG,OAAO,EAAE,qCAAqC,EAAE,MAAM,kCAAkC,CAAC;AAGzF,MAAM,mBAAmB,GAAG,CAC1B,MAAa,EACb,YAA0B,EACA,EAAE;IAC5B,MAAM,KAAK,GAAG,IAAI,wBAAwB,CACxC,0BAA0B,CAAC,iCAAiC,CAAC,OAAO,CAAC,CACtE,CAAC;IACF,MAAM,aAAa,GAAG,IAAI,aAAa,CACrC,YAAY,EACZ,4BAA4B,CAAC,MAAM,CAAC,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC,CAC7D,CAAC;IACF,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,mCAAmC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC7E,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC3C,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CACzB,uBAA4D,EAClC,EAAE;IAC5B,MAAM,OAAO,GAAG,uBAAuB,CAAC,QAAQ,CAAC,IAAI,CAAC;IACtD,MAAM,KAAK,GAAG,uBAAuB,CAAC,KAAK,CAAC;IAC5C,MAAM,QAAQ,GAAG,IAAI,sBAAsB,CACzC,4BAA4B,CAAC,MAAM,CAAC,IAAI,WAAW,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAC3E,CAAC;IACF,QAAQ,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC;IAC5B,MAAM,OAAO,GAAG,IAAI,wBAAwB,CAC1C,0BAA0B,CAAC,mBAAmB,CAAC,GAAG,CAAC,CACpD,CAAC;IACF,OAAO,CAAC,gBAAgB,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC7C,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAC1B,mBAAoD,EACpD,cAA8B,EAC9B,OAAqC,EAC/B,EAAE;IACR,mBAAmB,CAAC,cAAc,CAAC,oBAAoB,CACrD,cAAc,EACd,OAAO,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,iBAAoC,EACpC,OAAqC,EACrB,EAAE;IAClB,MAAM,MAAM,GAAG,oBAAoB,CACjC,iBAAiB,CAAC,KAAK,EACvB,kCAAkC,CACnC,CAAC;IACF,MAAM,cAAc,GAAG,IAAI,cAAc,CACvC,IAAI,YAAY,CACd,mCAAmC,CAAC,MAAM,CACxC,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CACtE,EACD,YAAY,CAAC,GAAG,CACjB,CACF,CAAC;IAEF,iBAAiB;IACjB,MAAM,cAAc,GAAG,mBAAmB,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;IAErE,8CAA8C;IAC9C,MAAM,qBAAqB,GAAG,8BAA8B,CAC1D,MAAM,EACN,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,CAC1C,CAAC;IACF,IAAI,qBAAqB,EAAE;QACzB,iBAAiB,CAAC,gBAAgB;aAC/B,4BAA4B,CAAC,qBAAqB,CAAC;aACnD,qBAAqB,CAAC,cAAc,CAAC,CAAC;KAC1C;IACD,cAAc,CAAC,kBAAkB,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC;IAEtD,kBAAkB;IAClB,wBAAwB,CAAC,iBAAiB,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;IAE3E,eAAe;IACf,qBAAqB,CAAC,iBAAiB,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IAErE,wBAAwB;IACxB,mBAAmB,CACjB,iBAAiB,CAAC,mBAAmB,EACrC,cAAc,EACd,OAAO,CACR,CAAC;IAEF,6BAA6B;IAC7B,IAAI,iBAAiB,CAAC,aAAa,CAAC,SAAS,CAAC,MAAM,EAAE;QACpD,MAAM,cAAc,GAClB,iBAAiB,CAAC,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QACpE,cAAc,CAAC,kBAAkB,GAAG;YAClC,GAAG,cAAc;YACjB,GAAG,cAAc,CAAC,kBAAkB;SACrC,CAAC;KACH;IACD,mBAAmB;IACnB,IAAI,iBAAiB,CAAC,eAAe,CAAC,eAAe,CAAC,MAAM,EAAE;QAC5D,IAAI,OAAO,EAAE,wBAAwB,EAAE;YACrC,qCAAqC,CACnC,cAAc,EACd,iBAAiB,CAAC,eAAe,CAAC,eAAe,EACjD,iBAAiB,CAAC,iBAAiB,CACpC,CAAC;SACH;aAAM;YACL,cAAc,CAAC,YAAY,CAAC,UAAU;gBACpC,iBAAiB,CAAC,eAAe,CAAC,eAAe,CAAC,GAAG,CACnD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CACnB,CAAC;SACL;KACF;IACD,OAAO,cAAc,CAAC;AACxB,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderValueSpecificationBuilderHelper.d.ts","sourceRoot":"","sources":["../../src/stores/QueryBuilderValueSpecificationBuilderHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,0BAA0B,EAS1B,KAAK,kBAAkB,EACxB,MAAM,qBAAqB,CAAC;AAQ7B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAkGhE,eAAO,MAAM,4BAA4B,uBACnB,0BAA0B,qBAC3B,iBAAiB,uBACf,MAAM,sCAOS,OAAO,KAC1C,kBAyFF,CAAC;AAEF,oBAAY,2BAA2B,GAAG;IACxC;;;OAGG;IACH,wBAAwB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC/C,qBAAqB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC7C,CAAC"}
1
+ {"version":3,"file":"QueryBuilderValueSpecificationBuilderHelper.d.ts","sourceRoot":"","sources":["../../src/stores/QueryBuilderValueSpecificationBuilderHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,0BAA0B,EAM1B,KAAK,kBAAkB,EACxB,MAAM,qBAAqB,CAAC;AAO7B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAiBhE,eAAO,MAAM,4BAA4B,uBACnB,0BAA0B,qBAC3B,iBAAiB,uBACf,MAAM,sCAOS,OAAO,KAC1C,kBAqFF,CAAC;AAEF,oBAAY,2BAA2B,GAAG;IACxC;;;OAGG;IACH,wBAAwB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC/C,qBAAqB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC7C,CAAC"}
@@ -13,82 +13,18 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { AbstractPropertyExpression, Class, DerivedProperty, getMilestoneTemporalStereotype, INTERNAL__PropagatedValue, matchFunctionName, MILESTONING_STEREOTYPE, SimpleFunctionExpression, VariableExpression, } from '@finos/legend-graph';
16
+ import { AbstractPropertyExpression, DerivedProperty, INTERNAL__PropagatedValue, matchFunctionName, SimpleFunctionExpression, VariableExpression, } from '@finos/legend-graph';
17
17
  import { getNullableFirstElement, guaranteeNonNullable, guaranteeType, } from '@finos/legend-shared';
18
18
  import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../graphManager/QueryBuilderSupportedFunctions.js';
19
- import { getDerivedPropertyMilestoningSteoreotype } from './QueryBuilderPropertyEditorState.js';
19
+ import { variableExpression_setName } from './shared/ValueSpecificationModifierHelper.js';
20
20
  /**
21
- * Checks if the provided property expression match the criteria for default
22
- * date propagation so we know whether we need to fill in values for the parameter
23
- * or just propgate values from the parent's expression
24
- *
25
- * NOTE: this takes date propgation into account. See the table below for all
26
- * the combination:
27
- *
28
- * | [source] | | | | |
29
- * ----------------------------------------------------------------------
30
- * [target] | | NONE | PR_TMP | BI_TMP | BU_TMP |
31
- * ----------------------------------------------------------------------
32
- * | NONE | N.A. | PRD | PRD,BUD | BUD |
33
- * ----------------------------------------------------------------------
34
- * | PR_TMP | N.A. | X | PRD,BUD | BUD |
35
- * ----------------------------------------------------------------------
36
- * | BI_TMP | N.A. | X | X | X |
37
- * ----------------------------------------------------------------------
38
- * | BU_TMP | N.A. | PRD | PRD,BUD | X |
39
- * ----------------------------------------------------------------------
40
- *
41
- * Annotations:
42
- *
43
- * [source]: source temporal type
44
- * [target]: target temporal type
45
- *
46
- * PR_TMP : processing temporal
47
- * BI_TMP : bitemporal
48
- * BU_TMP : business temporal
49
- *
50
- * X : no default date propagated
51
- * PRD : default processing date is propagated
52
- * BUD : default business date is propgated
21
+ * Gets the value of ValueSpecification given INTERNAL__PropagatedValue is pointing to.
53
22
  */
54
- const isDefaultDatePropagationSupported = (currentPropertyExpression, queryBuilderState, prevPropertyExpression) => {
55
- const property = currentPropertyExpression.func.value;
56
- const graph = queryBuilderState.graphManagerState.graph;
57
- // Default date propagation is not supported for current expression when the previous property expression is a derived property.
58
- if (prevPropertyExpression &&
59
- prevPropertyExpression.func.value instanceof DerivedProperty &&
60
- prevPropertyExpression.func.value._OWNER.derivedProperties.includes(prevPropertyExpression.func.value)) {
61
- return false;
62
- }
63
- // Default date propagation is not supported for current expression when the milestonedParameterValues of
64
- // the previous property expression doesn't match with the global milestonedParameterValues
65
- if (prevPropertyExpression &&
66
- prevPropertyExpression.func.value.genericType.value.rawType instanceof Class) {
67
- const milestoningStereotype = getMilestoneTemporalStereotype(prevPropertyExpression.func.value.genericType.value.rawType, graph);
68
- if (milestoningStereotype &&
69
- !prevPropertyExpression.parametersValues
70
- .slice(1)
71
- .every((parameterValue) => parameterValue instanceof INTERNAL__PropagatedValue)) {
72
- return false;
73
- }
74
- }
75
- if (property.genericType.value.rawType instanceof Class) {
76
- // the stereotype of source class of current property expression.
77
- const sourceStereotype = property instanceof DerivedProperty
78
- ? getDerivedPropertyMilestoningSteoreotype(property, graph)
79
- : undefined;
80
- // Default date propagation is always supported if the source is `bitemporal`
81
- if (sourceStereotype === MILESTONING_STEREOTYPE.BITEMPORAL) {
82
- return true;
83
- }
84
- // the stereotype (if exists) of the generic type of current property expression.
85
- const targetStereotype = getMilestoneTemporalStereotype(property.genericType.value.rawType, graph);
86
- // Default date propagation is supported when stereotype of both source and target matches
87
- if (sourceStereotype && targetStereotype) {
88
- return sourceStereotype === targetStereotype;
89
- }
23
+ const getValueOfInternalPropagatedValue = (valueSpec) => {
24
+ if (valueSpec.getValue() instanceof INTERNAL__PropagatedValue) {
25
+ return getValueOfInternalPropagatedValue(guaranteeType(valueSpec.getValue(), INTERNAL__PropagatedValue));
90
26
  }
91
- return false;
27
+ return valueSpec.getValue();
92
28
  };
93
29
  export const buildPropertyExpressionChain = (propertyExpression, queryBuilderState, lambdaParameterName,
94
30
  /**
@@ -122,9 +58,7 @@ TEMPORARY__disableDatePropagation) => {
122
58
  if (parameterValue instanceof INTERNAL__PropagatedValue) {
123
59
  // Replace with argumentless derived property expression only when default date propagation is supported
124
60
  if (!TEMPORARY__disableDatePropagation &&
125
- isDefaultDatePropagationSupported(currentPropertyExpression, queryBuilderState, nextExpression instanceof AbstractPropertyExpression
126
- ? nextExpression
127
- : undefined)) {
61
+ parameterValue.isPropagatedValue) {
128
62
  // NOTE: For `bitemporal` property check if the property expression has parameters which are not instance of
129
63
  // `INTERNAL_PropagatedValue` then pass the parameters as user explicitly changed values of either of the parameters.
130
64
  if ((index === 1 &&
@@ -132,9 +66,11 @@ TEMPORARY__disableDatePropagation) => {
132
66
  (index === 0 &&
133
67
  currentPropertyExpression.parametersValues.length === 3 &&
134
68
  !(currentPropertyExpression.parametersValues[2] instanceof
135
- INTERNAL__PropagatedValue))) {
69
+ INTERNAL__PropagatedValue &&
70
+ currentPropertyExpression.parametersValues[2]
71
+ .isPropagatedValue === true))) {
136
72
  currentPropertyExpression.parametersValues[index + 1] =
137
- parameterValue.getValue();
73
+ getValueOfInternalPropagatedValue(parameterValue);
138
74
  }
139
75
  else {
140
76
  currentPropertyExpression.parametersValues = [
@@ -145,7 +81,7 @@ TEMPORARY__disableDatePropagation) => {
145
81
  }
146
82
  else {
147
83
  currentPropertyExpression.parametersValues[index + 1] =
148
- parameterValue.getValue();
84
+ getValueOfInternalPropagatedValue(parameterValue);
149
85
  }
150
86
  }
151
87
  });
@@ -160,7 +96,7 @@ TEMPORARY__disableDatePropagation) => {
160
96
  }
161
97
  // Update the root lambda name based on the parent's lambda parameter name.
162
98
  if (currentExpression instanceof VariableExpression) {
163
- currentExpression.name = lambdaParameterName;
99
+ variableExpression_setName(currentExpression, lambdaParameterName);
164
100
  }
165
101
  return newPropertyExpression;
166
102
  };
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderValueSpecificationBuilderHelper.js","sourceRoot":"","sources":["../../src/stores/QueryBuilderValueSpecificationBuilderHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QueryBuilderValueSpecificationBuilderHelper.js","sourceRoot":"","sources":["../../src/stores/QueryBuilderValueSpecificationBuilderHelper.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderValueSpecificationHelper.d.ts","sourceRoot":"","sources":["../../src/stores/QueryBuilderValueSpecificationHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,SAAS,EACd,KAAK,kBAAkB,EAIvB,2BAA2B,EAC3B,cAAc,EAKd,KAAK,IAAI,EAGT,wBAAwB,EAIxB,0BAA0B,EAQ1B,uBAAuB,EAGxB,MAAM,qBAAqB,CAAC;AAa7B,eAAO,MAAM,sCAAsC,uBAC7B,kBAAkB,KACrC,IAAI,GAAG,SAWT,CAAC;AAEF,eAAO,MAAM,mCAAmC,UACvC,SAAS,UACR,kBAAkB,EAAE,KAC3B,IAAI,GAAG,SAsCT,CAAC;AAEF,eAAO,MAAM,mBAAmB,eAClB,wBAAwB,KACnC,wBAAwB,GAAG,SAa7B,CAAC;AAEF,eAAO,MAAM,kBAAkB,eACjB,kBAAkB,KAC7B,kBAMF,CAAC;AAEF,eAAO,MAAM,iCAAiC,eAChC,kBAAkB,GAAG,SAAS,KACzC,OAiBF,CAAC;AAEF,eAAO,MAAM,6BAA6B,SAClC,IAAI,GAAG,SAAS,kBACN,IAAI,KACnB,OA6BF,CAAC;AAEF,eAAO,MAAM,oCAAoC,SACzC,cAAc,KACnB,OAqBF,CAAC;AAEF,eAAO,MAAM,uCAAuC,wBAC7B,MAAM,yBACJ,kBAAkB,EAAE,SACpC,SAAS,KACf,2BAeF,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,eAAO,MAAM,+BAA+B,uBACtB,0BAA0B,SACvC,SAAS,KACf,IAoDF,CAAC;AAEF,eAAO,MAAM,sCAAsC,UAC1C,kBAAkB,KACxB,MAAM,GAAG,SAKX,CAAC;AAEF,eAAO,MAAM,sCAAsC,UAC1C,kBAAkB,KACxB,MAAM,GAAG,SAKX,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,UAAW,SAAS,KAAG,uBAMnD,CAAC"}
1
+ {"version":3,"file":"QueryBuilderValueSpecificationHelper.d.ts","sourceRoot":"","sources":["../../src/stores/QueryBuilderValueSpecificationHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,SAAS,EACd,KAAK,kBAAkB,EAIvB,2BAA2B,EAC3B,cAAc,EAKd,KAAK,IAAI,EAGT,wBAAwB,EAIxB,0BAA0B,EAO1B,uBAAuB,EAGxB,MAAM,qBAAqB,CAAC;AAgB7B,eAAO,MAAM,sCAAsC,uBAC7B,kBAAkB,KACrC,IAAI,GAAG,SAWT,CAAC;AAEF,eAAO,MAAM,mCAAmC,UACvC,SAAS,UACR,kBAAkB,EAAE,KAC3B,IAAI,GAAG,SAsCT,CAAC;AAEF,eAAO,MAAM,mBAAmB,eAClB,wBAAwB,KACnC,wBAAwB,GAAG,SAa7B,CAAC;AAEF,eAAO,MAAM,kBAAkB,eACjB,kBAAkB,KAC7B,kBAMF,CAAC;AAEF,eAAO,MAAM,iCAAiC,eAChC,kBAAkB,GAAG,SAAS,KACzC,OAiBF,CAAC;AAEF,eAAO,MAAM,6BAA6B,SAClC,IAAI,GAAG,SAAS,kBACN,IAAI,KACnB,OA6BF,CAAC;AAEF,eAAO,MAAM,oCAAoC,SACzC,cAAc,KACnB,OAsBF,CAAC;AAEF,eAAO,MAAM,uCAAuC,wBAC7B,MAAM,yBACJ,kBAAkB,EAAE,SACpC,SAAS,KACf,2BAeF,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,eAAO,MAAM,+BAA+B,uBACtB,0BAA0B,SACvC,SAAS,KACf,IA8BF,CAAC;AAEF,eAAO,MAAM,sCAAsC,UAC1C,kBAAkB,KACxB,MAAM,GAAG,SAKX,CAAC;AAEF,eAAO,MAAM,sCAAsC,UAC1C,kBAAkB,KACxB,MAAM,GAAG,SAKX,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,UAAW,SAAS,KAAG,uBAMnD,CAAC"}
@@ -13,10 +13,10 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { CORE_PURE_PATH, FunctionType, LambdaFunction, LambdaFunctionInstanceValue, PRIMITIVE_TYPE, VariableExpression, DATE_FORMAT, DATE_TIME_FORMAT, matchFunctionName, PrimitiveInstanceValue, EnumValueInstanceValue, SimpleFunctionExpression, PrimitiveType, extractElementNameFromPath, AbstractPropertyExpression, isSuperType, Class, getMilestoneTemporalStereotype, DerivedProperty, MILESTONING_STEREOTYPE, PackageableElementExplicitReference, Multiplicity, CollectionInstanceValue, GenericTypeExplicitReference, GenericType, } from '@finos/legend-graph';
16
+ import { CORE_PURE_PATH, FunctionType, LambdaFunction, LambdaFunctionInstanceValue, PRIMITIVE_TYPE, VariableExpression, DATE_FORMAT, DATE_TIME_FORMAT, matchFunctionName, PrimitiveInstanceValue, EnumValueInstanceValue, SimpleFunctionExpression, PrimitiveType, extractElementNameFromPath, AbstractPropertyExpression, isSuperType, Class, getMilestoneTemporalStereotype, DerivedProperty, PackageableElementExplicitReference, Multiplicity, CollectionInstanceValue, GenericTypeExplicitReference, GenericType, } from '@finos/legend-graph';
17
17
  import { addUniqueEntry, formatDate, guaranteeNonNullable, guaranteeType, isNumber, isString, UnsupportedOperationError, } from '@finos/legend-shared';
18
18
  import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../graphManager/QueryBuilderSupportedFunctions.js';
19
- import { getDerivedPropertyMilestoningSteoreotype } from './QueryBuilderPropertyEditorState.js';
19
+ import { getDerivedPropertyMilestoningSteoreotype, validateMilestoningPropertyExpressionChain, } from './milestoning/QueryBuilderMilestoningHelper.js';
20
20
  export const getNonCollectionValueSpecificationType = (valueSpecification) => {
21
21
  if (valueSpecification instanceof PrimitiveInstanceValue) {
22
22
  return valueSpecification.genericType.value.rawType;
@@ -133,6 +133,7 @@ export const generateDefaultValueForPrimitiveType = (type) => {
133
133
  case PRIMITIVE_TYPE.DECIMAL:
134
134
  case PRIMITIVE_TYPE.FLOAT:
135
135
  case PRIMITIVE_TYPE.INTEGER:
136
+ case PRIMITIVE_TYPE.BINARY:
136
137
  return 0;
137
138
  case PRIMITIVE_TYPE.DATE:
138
139
  case PRIMITIVE_TYPE.STRICTDATE:
@@ -195,24 +196,7 @@ export const validatePropertyExpressionChain = (propertyExpression, graph) => {
195
196
  const targetStereotype = getMilestoneTemporalStereotype(propertyExpression.func.value.genericType.value.rawType, graph);
196
197
  if (targetStereotype) {
197
198
  const sourceStereotype = getDerivedPropertyMilestoningSteoreotype(guaranteeType(func, DerivedProperty), graph);
198
- if (sourceStereotype !== MILESTONING_STEREOTYPE.BITEMPORAL &&
199
- targetStereotype !== sourceStereotype) {
200
- if (targetStereotype === MILESTONING_STEREOTYPE.BITEMPORAL) {
201
- if (propertyExpression.parametersValues.length !== 3 &&
202
- !sourceStereotype) {
203
- throw new UnsupportedOperationError(`Property of milestoning sterotype '${MILESTONING_STEREOTYPE.BITEMPORAL}' should have exactly two parameters`);
204
- }
205
- else if (propertyExpression.parametersValues.length < 2) {
206
- throw new UnsupportedOperationError(`Property of milestoning sterotype '${MILESTONING_STEREOTYPE.BITEMPORAL}' should have at least one parameter`);
207
- }
208
- else if (propertyExpression.parametersValues.length > 3) {
209
- throw new UnsupportedOperationError(`Property of milestoning sterotype '${MILESTONING_STEREOTYPE.BITEMPORAL}' should not have more than two parameters`);
210
- }
211
- }
212
- else if (propertyExpression.parametersValues.length !== 2) {
213
- throw new UnsupportedOperationError(`Property of milestoning sterotype '${targetStereotype}' should have exactly one parameter`);
214
- }
215
- }
199
+ validateMilestoningPropertyExpressionChain(sourceStereotype, targetStereotype, propertyExpression);
216
200
  }
217
201
  }
218
202
  }