@finos/legend-query-builder 0.4.4 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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":"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"}
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,iBAAiB,EACjB,oBAAoB,EACpB,aAAa,EACb,yBAAyB,GAC1B,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAQL,iBAAiB,EACjB,KAAK,EAGL,sBAAsB,EACtB,wBAAwB,EAGxB,8BAA8B,EAG9B,mBAAmB,GACpB,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,0EAA0E,CAAC;AAC5H,OAAO,EAAE,0BAA0B,EAAE,MAAM,kDAAkD,CAAC;AAC9F,OAAO,EAAE,mCAAmC,EAAE,MAAM,iCAAiC,CAAC;AAEtF,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,qBAAqB,EAAE,CAAC;IAC3D,iBAAiB,CAAC,aAAa,CAAC,eAAe,EAAE,CAAC;IAElD,iDAAiD;IACjD,MAAM,sBAAsB,GAAG,CAAC,CAAC;IACjC,MAAM,UAAU,GAAG,8BAA8B,CAC/C,MAAM,EACN,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,CAC1C,CAAC;IACF,IAAI,UAAU,EAAE;QACd,iBAAiB,CAAC,gBAAgB;aAC/B,4BAA4B,CAAC,UAAU,CAAC;aACxC,uBAAuB,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;KACzD;SAAM;QACL,UAAU,CACR,UAAU,CAAC,gBAAgB,CAAC,MAAM,KAAK,sBAAsB,EAC7D,kEAAkE,CACnE,CAAC;KACH;AACH,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAC3B,UAAoC,EACpC,iBAAoC,EACpC,YAA4B,EACtB,EAAE;IACR,MAAM,UAAU,GAAG,UAAU,CAAC,gBAAgB,CAAC;IAC/C,UAAU,CACR,UAAU,CAAC,gBAAgB,CAAC,MAAM,KAAK,CAAC,EACxC,0EAA0E,CAC3E,CAAC;IACF,0BAA0B;IAC1B,MAAM,WAAW,GAAG,iBAAiB,CACnC,aAAa,CACX,UAAU,CAAC,CAAC,CAAC,EACb,sBAAsB,EACtB,4EAA4E,CAC7E,CAAC,MAAM,CAAC,CAAC,CAAC,EACX,mFAAmF,CACpF,CAAC;IACF,MAAM,MAAM,GAAG,oBAAoB,CACjC,YAAY,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,EAC3C,2BAA2B,WAAW,qBAAqB,CAC5D,CAAC;IACF,6BAA6B;IAC7B,MAAM,SAAS,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IACtD,QAAQ;IACR,MAAM,kBAAkB,GAAG,IAAI,mCAAmC,CAChE,iBAAiB,EACjB,MAAM,EACN,SAAS,CACV,CAAC;IACF,iBAAiB,CAAC,aAAa,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAC3D,iBAAiB,CAAC,aAAa,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;AAClE,CAAC,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,uCAAuC;IAGzC,iBAAiB,CAAoB;IAC9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4DG;IACM,gBAAgB,CAAwC;IACxD,YAAY,CAAiB;IAEtC,YACE,iBAAoC,EACpC,YAA4B,EAC5B,gBAAsD;QAEtD,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACzC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAED,MAAM,CAAC,OAAO,CACZ,kBAAsC,EACtC,YAA4B,EAC5B,iBAAoC;QAEpC,kBAAkB,CAAC,gCAAgC,CACjD,IAAI,uCAAuC,CACzC,iBAAiB,EACjB,YAAY,EACZ,SAAS,CACV,CACF,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,YAAY,CACjB,kBAAsC,EACtC,gBAA0C,EAC1C,YAA4B,EAC5B,iBAAoC;QAEpC,kBAAkB,CAAC,gCAAgC,CACjD,IAAI,uCAAuC,CACzC,iBAAiB,EACjB,YAAY,EACZ,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,YAAY,EACjB,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,CACxB,kBAAkB,EAClB,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,YAAY,CAClB,CAAC;YACF,OAAO;SACR;aAAM,IACL,iBAAiB,CACf,YAAY,EACZ,iCAAiC,CAAC,WAAW,CAC9C,EACD;YACA,2BAA2B,CACzB,kBAAkB,EAClB,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,YAAY,CAClB,CAAC;YACF,OAAO;SACR;aAAM,IACL,iBAAiB,CACf,YAAY,EACZ,iCAAiC,CAAC,QAAQ,CAC3C,EACD;YACA,wBAAwB,CACtB,kBAAkB,EAClB,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,YAAY,CAClB,CAAC;YACF,OAAO;SACR;aAAM,IACL,iBAAiB,CACf,YAAY,EACZ,iCAAiC,CAAC,YAAY,CAC/C,EACD;YACA,4BAA4B,CAC1B,kBAAkB,EAClB,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,YAAY,CAClB,CAAC;YACF,OAAO;SACR;aAAM,IACL,iBAAiB,CACf,YAAY,EACZ,iCAAiC,CAAC,QAAQ,CAC3C,EACD;YACA,wBAAwB,CACtB,kBAAkB,EAClB,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,YAAY,CAClB,CAAC;YACF,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,CACzB,kBAAkB,EAClB,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,YAAY,CAClB,CAAC;YACF,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,EACtB,IAAI,CAAC,YAAY,CAClB,CAAC;YACF,OAAO;SACR;aAAM,IACL,iBAAiB,CACf,YAAY,EACZ,iCAAiC,CAAC,YAAY,CAC/C,EACD;YACA,gCAAgC,CAC9B,kBAAkB,EAClB,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,YAAY,CAClB,CAAC;YACF,OAAO;SACR;aAAM,IACL,iBAAiB,CACf,YAAY,EACZ,iCAAiC,CAAC,SAAS,CAC5C,EACD;YACA,oCAAoC,CAClC,kBAAkB,EAClB,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,YAAY,CAClB,CAAC;YACF,OAAO;SACR;aAAM,IACL,iBAAiB,CAAC,YAAY,EAAE;YAC9B,iCAAiC,CAAC,mBAAmB;YACrD,iCAAiC,CAAC,WAAW;SAC9C,CAAC,EACF;YACA,2BAA2B,CACzB,kBAAkB,EAClB,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,YAAY,CAClB,CAAC;YACF,OAAO;SACR;aAAM,IAAI,iBAAiB,CAAC,YAAY,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,EAAE;YACrE,oBAAoB,CAClB,kBAAkB,EAClB,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,YAAY,CAClB,CAAC;YACF,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,YAAY,EACjB,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,cAAc,EACd,iBAAiB,CAClB,CACF,CAAC;AACJ,CAAC,CAAC"}
@@ -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":"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"}
@@ -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
  }