@finos/legend-application-query 5.0.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 (553) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +3 -0
  3. package/lib/LegendQueryAppEvent.d.ts +19 -0
  4. package/lib/LegendQueryAppEvent.d.ts.map +1 -0
  5. package/lib/LegendQueryAppEvent.js +21 -0
  6. package/lib/LegendQueryAppEvent.js.map +1 -0
  7. package/lib/QueryBuilder_Const.d.ts +77 -0
  8. package/lib/QueryBuilder_Const.d.ts.map +1 -0
  9. package/lib/QueryBuilder_Const.js +85 -0
  10. package/lib/QueryBuilder_Const.js.map +1 -0
  11. package/lib/application/LegendQuery.d.ts +27 -0
  12. package/lib/application/LegendQuery.d.ts.map +1 -0
  13. package/lib/application/LegendQuery.js +58 -0
  14. package/lib/application/LegendQuery.js.map +1 -0
  15. package/lib/application/LegendQueryApplicationConfig.d.ts +46 -0
  16. package/lib/application/LegendQueryApplicationConfig.d.ts.map +1 -0
  17. package/lib/application/LegendQueryApplicationConfig.js +35 -0
  18. package/lib/application/LegendQueryApplicationConfig.js.map +1 -0
  19. package/lib/application/LegendQueryPluginManager.d.ts +32 -0
  20. package/lib/application/LegendQueryPluginManager.d.ts.map +1 -0
  21. package/lib/application/LegendQueryPluginManager.js +46 -0
  22. package/lib/application/LegendQueryPluginManager.js.map +1 -0
  23. package/lib/components/LegendQueryApplication.d.ts +25 -0
  24. package/lib/components/LegendQueryApplication.d.ts.map +1 -0
  25. package/lib/components/LegendQueryApplication.js +39 -0
  26. package/lib/components/LegendQueryApplication.js.map +1 -0
  27. package/lib/components/LegendQueryBaseStoreProvider.d.ts +28 -0
  28. package/lib/components/LegendQueryBaseStoreProvider.d.ts.map +1 -0
  29. package/lib/components/LegendQueryBaseStoreProvider.js +32 -0
  30. package/lib/components/LegendQueryBaseStoreProvider.js.map +1 -0
  31. package/lib/components/QueryBuilder.d.ts +23 -0
  32. package/lib/components/QueryBuilder.d.ts.map +1 -0
  33. package/lib/components/QueryBuilder.js +91 -0
  34. package/lib/components/QueryBuilder.js.map +1 -0
  35. package/lib/components/QueryBuilderExplorerPanel.d.ts +34 -0
  36. package/lib/components/QueryBuilderExplorerPanel.d.ts.map +1 -0
  37. package/lib/components/QueryBuilderExplorerPanel.js +379 -0
  38. package/lib/components/QueryBuilderExplorerPanel.js.map +1 -0
  39. package/lib/components/QueryBuilderFetchStructurePanel.d.ts +23 -0
  40. package/lib/components/QueryBuilderFetchStructurePanel.d.ts.map +1 -0
  41. package/lib/components/QueryBuilderFetchStructurePanel.js +89 -0
  42. package/lib/components/QueryBuilderFetchStructurePanel.js.map +1 -0
  43. package/lib/components/QueryBuilderFilterPanel.d.ts +23 -0
  44. package/lib/components/QueryBuilderFilterPanel.d.ts.map +1 -0
  45. package/lib/components/QueryBuilderFilterPanel.js +301 -0
  46. package/lib/components/QueryBuilderFilterPanel.js.map +1 -0
  47. package/lib/components/QueryBuilderFunctionsExplorerPanel.d.ts +23 -0
  48. package/lib/components/QueryBuilderFunctionsExplorerPanel.d.ts.map +1 -0
  49. package/lib/components/QueryBuilderFunctionsExplorerPanel.js +177 -0
  50. package/lib/components/QueryBuilderFunctionsExplorerPanel.js.map +1 -0
  51. package/lib/components/QueryBuilderGraphFetchTreePanel.d.ts +33 -0
  52. package/lib/components/QueryBuilderGraphFetchTreePanel.d.ts.map +1 -0
  53. package/lib/components/QueryBuilderGraphFetchTreePanel.js +96 -0
  54. package/lib/components/QueryBuilderGraphFetchTreePanel.js.map +1 -0
  55. package/lib/components/QueryBuilderLambdaEditor.d.ts +42 -0
  56. package/lib/components/QueryBuilderLambdaEditor.d.ts.map +1 -0
  57. package/lib/components/QueryBuilderLambdaEditor.js +47 -0
  58. package/lib/components/QueryBuilderLambdaEditor.js.map +1 -0
  59. package/lib/components/QueryBuilderMilestoneEditor.d.ts +24 -0
  60. package/lib/components/QueryBuilderMilestoneEditor.d.ts.map +1 -0
  61. package/lib/components/QueryBuilderMilestoneEditor.js +120 -0
  62. package/lib/components/QueryBuilderMilestoneEditor.js.map +1 -0
  63. package/lib/components/QueryBuilderParameterPanel.d.ts +30 -0
  64. package/lib/components/QueryBuilderParameterPanel.d.ts.map +1 -0
  65. package/lib/components/QueryBuilderParameterPanel.js +148 -0
  66. package/lib/components/QueryBuilderParameterPanel.js.map +1 -0
  67. package/lib/components/QueryBuilderPostFilterPanel.d.ts +31 -0
  68. package/lib/components/QueryBuilderPostFilterPanel.d.ts.map +1 -0
  69. package/lib/components/QueryBuilderPostFilterPanel.js +373 -0
  70. package/lib/components/QueryBuilderPostFilterPanel.js.map +1 -0
  71. package/lib/components/QueryBuilderProjectionPanel.d.ts +23 -0
  72. package/lib/components/QueryBuilderProjectionPanel.d.ts.map +1 -0
  73. package/lib/components/QueryBuilderProjectionPanel.js +229 -0
  74. package/lib/components/QueryBuilderProjectionPanel.js.map +1 -0
  75. package/lib/components/QueryBuilderPropertyExpressionEditor.d.ts +30 -0
  76. package/lib/components/QueryBuilderPropertyExpressionEditor.d.ts.map +1 -0
  77. package/lib/components/QueryBuilderPropertyExpressionEditor.js +116 -0
  78. package/lib/components/QueryBuilderPropertyExpressionEditor.js.map +1 -0
  79. package/lib/components/QueryBuilderPropertyInfoTooltip.d.ts +26 -0
  80. package/lib/components/QueryBuilderPropertyInfoTooltip.d.ts.map +1 -0
  81. package/lib/components/QueryBuilderPropertyInfoTooltip.js +32 -0
  82. package/lib/components/QueryBuilderPropertyInfoTooltip.js.map +1 -0
  83. package/lib/components/QueryBuilderPropertySearchPanel.d.ts +24 -0
  84. package/lib/components/QueryBuilderPropertySearchPanel.d.ts.map +1 -0
  85. package/lib/components/QueryBuilderPropertySearchPanel.js +202 -0
  86. package/lib/components/QueryBuilderPropertySearchPanel.js.map +1 -0
  87. package/lib/components/QueryBuilderResultModifierPanel.d.ts +23 -0
  88. package/lib/components/QueryBuilderResultModifierPanel.d.ts.map +1 -0
  89. package/lib/components/QueryBuilderResultModifierPanel.js +88 -0
  90. package/lib/components/QueryBuilderResultModifierPanel.js.map +1 -0
  91. package/lib/components/QueryBuilderResultPanel.d.ts +23 -0
  92. package/lib/components/QueryBuilderResultPanel.d.ts.map +1 -0
  93. package/lib/components/QueryBuilderResultPanel.js +223 -0
  94. package/lib/components/QueryBuilderResultPanel.js.map +1 -0
  95. package/lib/components/QueryBuilderSetupPanel.d.ts +23 -0
  96. package/lib/components/QueryBuilderSetupPanel.d.ts.map +1 -0
  97. package/lib/components/QueryBuilderSetupPanel.js +148 -0
  98. package/lib/components/QueryBuilderSetupPanel.js.map +1 -0
  99. package/lib/components/QueryBuilderTextEditor.d.ts +23 -0
  100. package/lib/components/QueryBuilderTextEditor.d.ts.map +1 -0
  101. package/lib/components/QueryBuilderTextEditor.js +48 -0
  102. package/lib/components/QueryBuilderTextEditor.js.map +1 -0
  103. package/lib/components/QueryBuilderUnsupportedQueryEditor.d.ts +23 -0
  104. package/lib/components/QueryBuilderUnsupportedQueryEditor.d.ts.map +1 -0
  105. package/lib/components/QueryBuilderUnsupportedQueryEditor.js +35 -0
  106. package/lib/components/QueryBuilderUnsupportedQueryEditor.js.map +1 -0
  107. package/lib/components/QueryBuilder_TestID.d.ts +26 -0
  108. package/lib/components/QueryBuilder_TestID.d.ts.map +1 -0
  109. package/lib/components/QueryBuilder_TestID.js +27 -0
  110. package/lib/components/QueryBuilder_TestID.js.map +1 -0
  111. package/lib/components/QueryEditor.d.ts +29 -0
  112. package/lib/components/QueryEditor.d.ts.map +1 -0
  113. package/lib/components/QueryEditor.js +130 -0
  114. package/lib/components/QueryEditor.js.map +1 -0
  115. package/lib/components/QueryEditorComponentTestUtils.d.ts +35 -0
  116. package/lib/components/QueryEditorComponentTestUtils.d.ts.map +1 -0
  117. package/lib/components/QueryEditorComponentTestUtils.js +108 -0
  118. package/lib/components/QueryEditorComponentTestUtils.js.map +1 -0
  119. package/lib/components/QueryEditorStoreProvider.d.ts +37 -0
  120. package/lib/components/QueryEditorStoreProvider.d.ts.map +1 -0
  121. package/lib/components/QueryEditorStoreProvider.js +48 -0
  122. package/lib/components/QueryEditorStoreProvider.js.map +1 -0
  123. package/lib/components/QuerySetup.d.ts +18 -0
  124. package/lib/components/QuerySetup.d.ts.map +1 -0
  125. package/lib/components/QuerySetup.js +388 -0
  126. package/lib/components/QuerySetup.js.map +1 -0
  127. package/lib/components/QuerySetupStoreProvider.d.ts +23 -0
  128. package/lib/components/QuerySetupStoreProvider.d.ts.map +1 -0
  129. package/lib/components/QuerySetupStoreProvider.js +35 -0
  130. package/lib/components/QuerySetupStoreProvider.js.map +1 -0
  131. package/lib/components/shared/ElementIconUtils.d.ts +18 -0
  132. package/lib/components/shared/ElementIconUtils.d.ts.map +1 -0
  133. package/lib/components/shared/ElementIconUtils.js +37 -0
  134. package/lib/components/shared/ElementIconUtils.js.map +1 -0
  135. package/lib/graphManager/QueryBuilder_GraphManagerPlugin.d.ts +21 -0
  136. package/lib/graphManager/QueryBuilder_GraphManagerPlugin.d.ts.map +1 -0
  137. package/lib/graphManager/QueryBuilder_GraphManagerPlugin.js +27 -0
  138. package/lib/graphManager/QueryBuilder_GraphManagerPlugin.js.map +1 -0
  139. package/lib/graphManager/QueryBuilder_GraphManagerPreset.d.ts +24 -0
  140. package/lib/graphManager/QueryBuilder_GraphManagerPreset.d.ts.map +1 -0
  141. package/lib/graphManager/QueryBuilder_GraphManagerPreset.js +32 -0
  142. package/lib/graphManager/QueryBuilder_GraphManagerPreset.js.map +1 -0
  143. package/lib/graphManager/action/analytics/MappingRuntimeCompatibilityAnalysis.d.ts +21 -0
  144. package/lib/graphManager/action/analytics/MappingRuntimeCompatibilityAnalysis.d.ts.map +1 -0
  145. package/lib/graphManager/action/analytics/MappingRuntimeCompatibilityAnalysis.js +20 -0
  146. package/lib/graphManager/action/analytics/MappingRuntimeCompatibilityAnalysis.js.map +1 -0
  147. package/lib/graphManager/action/analytics/ServiceExecutionAnalysis.d.ts +21 -0
  148. package/lib/graphManager/action/analytics/ServiceExecutionAnalysis.d.ts.map +1 -0
  149. package/lib/graphManager/action/analytics/ServiceExecutionAnalysis.js +20 -0
  150. package/lib/graphManager/action/analytics/ServiceExecutionAnalysis.js.map +1 -0
  151. package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtension.d.ts +25 -0
  152. package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtension.d.ts.map +1 -0
  153. package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtension.js +21 -0
  154. package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtension.js.map +1 -0
  155. package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtensionBuilder.d.ts +18 -0
  156. package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtensionBuilder.d.ts.map +1 -0
  157. package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtensionBuilder.js +20 -0
  158. package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtensionBuilder.js.map +1 -0
  159. package/lib/graphManager/protocol/pure/QueryBuilder_PureProtocolProcessorPlugin.d.ts +22 -0
  160. package/lib/graphManager/protocol/pure/QueryBuilder_PureProtocolProcessorPlugin.d.ts.map +1 -0
  161. package/lib/graphManager/protocol/pure/QueryBuilder_PureProtocolProcessorPlugin.js +68 -0
  162. package/lib/graphManager/protocol/pure/QueryBuilder_PureProtocolProcessorPlugin.js.map +1 -0
  163. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_FunctionExpressionBuilder.d.ts +22 -0
  164. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_FunctionExpressionBuilder.d.ts.map +1 -0
  165. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_FunctionExpressionBuilder.js +207 -0
  166. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_FunctionExpressionBuilder.js.map +1 -0
  167. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PropertyExpressionTypeInferenceBuilder.d.ts +18 -0
  168. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PropertyExpressionTypeInferenceBuilder.d.ts.map +1 -0
  169. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PropertyExpressionTypeInferenceBuilder.js +18 -0
  170. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PropertyExpressionTypeInferenceBuilder.js.map +1 -0
  171. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PureGraphManagerExtension.d.ts +29 -0
  172. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PureGraphManagerExtension.d.ts.map +1 -0
  173. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PureGraphManagerExtension.js +182 -0
  174. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PureGraphManagerExtension.js.map +1 -0
  175. package/lib/index.css +17 -0
  176. package/lib/index.css.map +1 -0
  177. package/lib/index.d.ts +36 -0
  178. package/lib/index.d.ts.map +1 -0
  179. package/lib/index.js +36 -0
  180. package/lib/index.js.map +1 -0
  181. package/lib/package.json +99 -0
  182. package/lib/stores/LegendQueryApplicationPlugin.d.ts +47 -0
  183. package/lib/stores/LegendQueryApplicationPlugin.d.ts.map +1 -0
  184. package/lib/stores/LegendQueryApplicationPlugin.js +27 -0
  185. package/lib/stores/LegendQueryApplicationPlugin.js.map +1 -0
  186. package/lib/stores/LegendQueryBaseStore.d.ts +28 -0
  187. package/lib/stores/LegendQueryBaseStore.d.ts.map +1 -0
  188. package/lib/stores/LegendQueryBaseStore.js +28 -0
  189. package/lib/stores/LegendQueryBaseStore.js.map +1 -0
  190. package/lib/stores/LegendQueryEventService.d.ts +27 -0
  191. package/lib/stores/LegendQueryEventService.d.ts.map +1 -0
  192. package/lib/stores/LegendQueryEventService.js +29 -0
  193. package/lib/stores/LegendQueryEventService.js.map +1 -0
  194. package/lib/stores/LegendQueryRouter.d.ts +55 -0
  195. package/lib/stores/LegendQueryRouter.d.ts.map +1 -0
  196. package/lib/stores/LegendQueryRouter.js +50 -0
  197. package/lib/stores/LegendQueryRouter.js.map +1 -0
  198. package/lib/stores/QueryBuilderAggregationState.d.ts +53 -0
  199. package/lib/stores/QueryBuilderAggregationState.d.ts.map +1 -0
  200. package/lib/stores/QueryBuilderAggregationState.js +122 -0
  201. package/lib/stores/QueryBuilderAggregationState.js.map +1 -0
  202. package/lib/stores/QueryBuilderExplorerState.d.ts +93 -0
  203. package/lib/stores/QueryBuilderExplorerState.d.ts.map +1 -0
  204. package/lib/stores/QueryBuilderExplorerState.js +310 -0
  205. package/lib/stores/QueryBuilderExplorerState.js.map +1 -0
  206. package/lib/stores/QueryBuilderFetchStructureState.d.ts +33 -0
  207. package/lib/stores/QueryBuilderFetchStructureState.d.ts.map +1 -0
  208. package/lib/stores/QueryBuilderFetchStructureState.js +50 -0
  209. package/lib/stores/QueryBuilderFetchStructureState.js.map +1 -0
  210. package/lib/stores/QueryBuilderFilterState.d.ts +127 -0
  211. package/lib/stores/QueryBuilderFilterState.d.ts.map +1 -0
  212. package/lib/stores/QueryBuilderFilterState.js +566 -0
  213. package/lib/stores/QueryBuilderFilterState.js.map +1 -0
  214. package/lib/stores/QueryBuilderGraphFetchTreeState.d.ts +35 -0
  215. package/lib/stores/QueryBuilderGraphFetchTreeState.d.ts.map +1 -0
  216. package/lib/stores/QueryBuilderGraphFetchTreeState.js +65 -0
  217. package/lib/stores/QueryBuilderGraphFetchTreeState.js.map +1 -0
  218. package/lib/stores/QueryBuilderGraphFetchTreeUtil.d.ts +41 -0
  219. package/lib/stores/QueryBuilderGraphFetchTreeUtil.d.ts.map +1 -0
  220. package/lib/stores/QueryBuilderGraphFetchTreeUtil.js +173 -0
  221. package/lib/stores/QueryBuilderGraphFetchTreeUtil.js.map +1 -0
  222. package/lib/stores/QueryBuilderLambdaBuilder.d.ts +30 -0
  223. package/lib/stores/QueryBuilderLambdaBuilder.d.ts.map +1 -0
  224. package/lib/stores/QueryBuilderLambdaBuilder.js +407 -0
  225. package/lib/stores/QueryBuilderLambdaBuilder.js.map +1 -0
  226. package/lib/stores/QueryBuilderLambdaProcessor.d.ts +56 -0
  227. package/lib/stores/QueryBuilderLambdaProcessor.d.ts.map +1 -0
  228. package/lib/stores/QueryBuilderLambdaProcessor.js +544 -0
  229. package/lib/stores/QueryBuilderLambdaProcessor.js.map +1 -0
  230. package/lib/stores/QueryBuilderOperatorsHelper.d.ts +28 -0
  231. package/lib/stores/QueryBuilderOperatorsHelper.d.ts.map +1 -0
  232. package/lib/stores/QueryBuilderOperatorsHelper.js +123 -0
  233. package/lib/stores/QueryBuilderOperatorsHelper.js.map +1 -0
  234. package/lib/stores/QueryBuilderPostFilterOperator.d.ts +29 -0
  235. package/lib/stores/QueryBuilderPostFilterOperator.d.ts.map +1 -0
  236. package/lib/stores/QueryBuilderPostFilterOperator.js +30 -0
  237. package/lib/stores/QueryBuilderPostFilterOperator.js.map +1 -0
  238. package/lib/stores/QueryBuilderPostFilterProcessor.d.ts +24 -0
  239. package/lib/stores/QueryBuilderPostFilterProcessor.d.ts.map +1 -0
  240. package/lib/stores/QueryBuilderPostFilterProcessor.js +111 -0
  241. package/lib/stores/QueryBuilderPostFilterProcessor.js.map +1 -0
  242. package/lib/stores/QueryBuilderPostFilterState.d.ts +132 -0
  243. package/lib/stores/QueryBuilderPostFilterState.d.ts.map +1 -0
  244. package/lib/stores/QueryBuilderPostFilterState.js +559 -0
  245. package/lib/stores/QueryBuilderPostFilterState.js.map +1 -0
  246. package/lib/stores/QueryBuilderPreviewDataHelper.d.ts +25 -0
  247. package/lib/stores/QueryBuilderPreviewDataHelper.d.ts.map +1 -0
  248. package/lib/stores/QueryBuilderPreviewDataHelper.js +161 -0
  249. package/lib/stores/QueryBuilderPreviewDataHelper.js.map +1 -0
  250. package/lib/stores/QueryBuilderProjectionState.d.ts +104 -0
  251. package/lib/stores/QueryBuilderProjectionState.d.ts.map +1 -0
  252. package/lib/stores/QueryBuilderProjectionState.js +432 -0
  253. package/lib/stores/QueryBuilderProjectionState.js.map +1 -0
  254. package/lib/stores/QueryBuilderPropertyEditorState.d.ts +62 -0
  255. package/lib/stores/QueryBuilderPropertyEditorState.d.ts.map +1 -0
  256. package/lib/stores/QueryBuilderPropertyEditorState.js +384 -0
  257. package/lib/stores/QueryBuilderPropertyEditorState.js.map +1 -0
  258. package/lib/stores/QueryBuilderPropertySearchPanelState.d.ts +46 -0
  259. package/lib/stores/QueryBuilderPropertySearchPanelState.d.ts.map +1 -0
  260. package/lib/stores/QueryBuilderPropertySearchPanelState.js +240 -0
  261. package/lib/stores/QueryBuilderPropertySearchPanelState.js.map +1 -0
  262. package/lib/stores/QueryBuilderResultState.d.ts +38 -0
  263. package/lib/stores/QueryBuilderResultState.d.ts.map +1 -0
  264. package/lib/stores/QueryBuilderResultState.js +164 -0
  265. package/lib/stores/QueryBuilderResultState.js.map +1 -0
  266. package/lib/stores/QueryBuilderSetupState.d.ts +46 -0
  267. package/lib/stores/QueryBuilderSetupState.d.ts.map +1 -0
  268. package/lib/stores/QueryBuilderSetupState.js +163 -0
  269. package/lib/stores/QueryBuilderSetupState.js.map +1 -0
  270. package/lib/stores/QueryBuilderState.d.ts +101 -0
  271. package/lib/stores/QueryBuilderState.d.ts.map +1 -0
  272. package/lib/stores/QueryBuilderState.js +371 -0
  273. package/lib/stores/QueryBuilderState.js.map +1 -0
  274. package/lib/stores/QueryBuilderUnsupportedState.d.ts +26 -0
  275. package/lib/stores/QueryBuilderUnsupportedState.d.ts.map +1 -0
  276. package/lib/stores/QueryBuilderUnsupportedState.js +36 -0
  277. package/lib/stores/QueryBuilderUnsupportedState.js.map +1 -0
  278. package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.d.ts +19 -0
  279. package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.d.ts.map +1 -0
  280. package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.js +50 -0
  281. package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.js.map +1 -0
  282. package/lib/stores/QueryEditorStore.d.ts +98 -0
  283. package/lib/stores/QueryEditorStore.d.ts.map +1 -0
  284. package/lib/stores/QueryEditorStore.js +370 -0
  285. package/lib/stores/QueryEditorStore.js.map +1 -0
  286. package/lib/stores/QueryEditorStoreTestUtils.d.ts +18 -0
  287. package/lib/stores/QueryEditorStoreTestUtils.d.ts.map +1 -0
  288. package/lib/stores/QueryEditorStoreTestUtils.js +42 -0
  289. package/lib/stores/QueryEditorStoreTestUtils.js.map +1 -0
  290. package/lib/stores/QueryFunctionsExplorerState.d.ts +63 -0
  291. package/lib/stores/QueryFunctionsExplorerState.d.ts.map +1 -0
  292. package/lib/stores/QueryFunctionsExplorerState.js +238 -0
  293. package/lib/stores/QueryFunctionsExplorerState.js.map +1 -0
  294. package/lib/stores/QueryParametersState.d.ts +30 -0
  295. package/lib/stores/QueryParametersState.d.ts.map +1 -0
  296. package/lib/stores/QueryParametersState.js +42 -0
  297. package/lib/stores/QueryParametersState.js.map +1 -0
  298. package/lib/stores/QueryResultSetModifierState.d.ts +52 -0
  299. package/lib/stores/QueryResultSetModifierState.d.ts.map +1 -0
  300. package/lib/stores/QueryResultSetModifierState.js +165 -0
  301. package/lib/stores/QueryResultSetModifierState.js.map +1 -0
  302. package/lib/stores/QuerySetupStore.d.ts +86 -0
  303. package/lib/stores/QuerySetupStore.d.ts.map +1 -0
  304. package/lib/stores/QuerySetupStore.js +297 -0
  305. package/lib/stores/QuerySetupStore.js.map +1 -0
  306. package/lib/stores/QueryTextEditorState.d.ts +49 -0
  307. package/lib/stores/QueryTextEditorState.d.ts.map +1 -0
  308. package/lib/stores/QueryTextEditorState.js +145 -0
  309. package/lib/stores/QueryTextEditorState.js.map +1 -0
  310. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperatorHelper.d.ts +21 -0
  311. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperatorHelper.d.ts.map +1 -0
  312. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperatorHelper.js +40 -0
  313. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperatorHelper.js.map +1 -0
  314. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Average.d.ts +26 -0
  315. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Average.d.ts.map +1 -0
  316. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Average.js +50 -0
  317. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Average.js.map +1 -0
  318. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Count.d.ts +26 -0
  319. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Count.d.ts.map +1 -0
  320. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Count.js +55 -0
  321. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Count.js.map +1 -0
  322. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Distinct.d.ts +25 -0
  323. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Distinct.d.ts.map +1 -0
  324. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Distinct.js +50 -0
  325. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Distinct.js.map +1 -0
  326. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_DistinctCount.d.ts +26 -0
  327. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_DistinctCount.d.ts.map +1 -0
  328. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_DistinctCount.js +77 -0
  329. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_DistinctCount.js.map +1 -0
  330. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_JoinString.d.ts +26 -0
  331. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_JoinString.d.ts.map +1 -0
  332. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_JoinString.js +66 -0
  333. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_JoinString.js.map +1 -0
  334. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Max.d.ts +25 -0
  335. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Max.d.ts.map +1 -0
  336. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Max.js +86 -0
  337. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Max.js.map +1 -0
  338. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Min.d.ts +25 -0
  339. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Min.d.ts.map +1 -0
  340. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Min.js +86 -0
  341. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Min.js.map +1 -0
  342. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Population.d.ts +26 -0
  343. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Population.d.ts.map +1 -0
  344. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Population.js +50 -0
  345. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Population.js.map +1 -0
  346. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Sample.d.ts +26 -0
  347. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Sample.d.ts.map +1 -0
  348. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Sample.js +50 -0
  349. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Sample.js.map +1 -0
  350. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Sum.d.ts +25 -0
  351. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Sum.d.ts.map +1 -0
  352. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Sum.js +45 -0
  353. package/lib/stores/aggregateOperators/QueryBuilderAggregateOperator_Sum.js.map +1 -0
  354. package/lib/stores/filterOperators/QueryBuilderFilterOperatorHelper.d.ts +20 -0
  355. package/lib/stores/filterOperators/QueryBuilderFilterOperatorHelper.d.ts.map +1 -0
  356. package/lib/stores/filterOperators/QueryBuilderFilterOperatorHelper.js +257 -0
  357. package/lib/stores/filterOperators/QueryBuilderFilterOperatorHelper.js.map +1 -0
  358. package/lib/stores/filterOperators/QueryBuilderFilterOperator_Contain.d.ts +31 -0
  359. package/lib/stores/filterOperators/QueryBuilderFilterOperator_Contain.d.ts.map +1 -0
  360. package/lib/stores/filterOperators/QueryBuilderFilterOperator_Contain.js +72 -0
  361. package/lib/stores/filterOperators/QueryBuilderFilterOperator_Contain.js.map +1 -0
  362. package/lib/stores/filterOperators/QueryBuilderFilterOperator_EndWith.d.ts +31 -0
  363. package/lib/stores/filterOperators/QueryBuilderFilterOperator_EndWith.d.ts.map +1 -0
  364. package/lib/stores/filterOperators/QueryBuilderFilterOperator_EndWith.js +72 -0
  365. package/lib/stores/filterOperators/QueryBuilderFilterOperator_EndWith.js.map +1 -0
  366. package/lib/stores/filterOperators/QueryBuilderFilterOperator_Equal.d.ts +31 -0
  367. package/lib/stores/filterOperators/QueryBuilderFilterOperator_Equal.d.ts.map +1 -0
  368. package/lib/stores/filterOperators/QueryBuilderFilterOperator_Equal.js +139 -0
  369. package/lib/stores/filterOperators/QueryBuilderFilterOperator_Equal.js.map +1 -0
  370. package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThan.d.ts +26 -0
  371. package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThan.d.ts.map +1 -0
  372. package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThan.js +107 -0
  373. package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThan.js.map +1 -0
  374. package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThanEqual.d.ts +26 -0
  375. package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThanEqual.d.ts.map +1 -0
  376. package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThanEqual.js +107 -0
  377. package/lib/stores/filterOperators/QueryBuilderFilterOperator_GreaterThanEqual.js.map +1 -0
  378. package/lib/stores/filterOperators/QueryBuilderFilterOperator_In.d.ts +31 -0
  379. package/lib/stores/filterOperators/QueryBuilderFilterOperator_In.d.ts.map +1 -0
  380. package/lib/stores/filterOperators/QueryBuilderFilterOperator_In.js +103 -0
  381. package/lib/stores/filterOperators/QueryBuilderFilterOperator_In.js.map +1 -0
  382. package/lib/stores/filterOperators/QueryBuilderFilterOperator_IsEmpty.d.ts +31 -0
  383. package/lib/stores/filterOperators/QueryBuilderFilterOperator_IsEmpty.d.ts.map +1 -0
  384. package/lib/stores/filterOperators/QueryBuilderFilterOperator_IsEmpty.js +65 -0
  385. package/lib/stores/filterOperators/QueryBuilderFilterOperator_IsEmpty.js.map +1 -0
  386. package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThan.d.ts +26 -0
  387. package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThan.d.ts.map +1 -0
  388. package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThan.js +108 -0
  389. package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThan.js.map +1 -0
  390. package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThanEqual.d.ts +26 -0
  391. package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThanEqual.d.ts.map +1 -0
  392. package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThanEqual.js +107 -0
  393. package/lib/stores/filterOperators/QueryBuilderFilterOperator_LessThanEqual.js.map +1 -0
  394. package/lib/stores/filterOperators/QueryBuilderFilterOperator_StartWith.d.ts +31 -0
  395. package/lib/stores/filterOperators/QueryBuilderFilterOperator_StartWith.d.ts.map +1 -0
  396. package/lib/stores/filterOperators/QueryBuilderFilterOperator_StartWith.js +72 -0
  397. package/lib/stores/filterOperators/QueryBuilderFilterOperator_StartWith.js.map +1 -0
  398. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperatorHelper.d.ts +23 -0
  399. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperatorHelper.d.ts.map +1 -0
  400. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperatorHelper.js +74 -0
  401. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperatorHelper.js.map +1 -0
  402. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Contain.d.ts +32 -0
  403. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Contain.d.ts.map +1 -0
  404. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Contain.js +76 -0
  405. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Contain.js.map +1 -0
  406. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_EndWith.d.ts +32 -0
  407. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_EndWith.d.ts.map +1 -0
  408. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_EndWith.js +76 -0
  409. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_EndWith.js.map +1 -0
  410. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Equal.d.ts +32 -0
  411. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Equal.d.ts.map +1 -0
  412. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Equal.js +142 -0
  413. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_Equal.js.map +1 -0
  414. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThan.d.ts +27 -0
  415. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThan.d.ts.map +1 -0
  416. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThan.js +105 -0
  417. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThan.js.map +1 -0
  418. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThanEqual.d.ts +24 -0
  419. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThanEqual.d.ts.map +1 -0
  420. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThanEqual.js +43 -0
  421. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThanEqual.js.map +1 -0
  422. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_In.d.ts +32 -0
  423. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_In.d.ts.map +1 -0
  424. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_In.js +104 -0
  425. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_In.js.map +1 -0
  426. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_IsEmpty.d.ts +33 -0
  427. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_IsEmpty.d.ts.map +1 -0
  428. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_IsEmpty.js +67 -0
  429. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_IsEmpty.js.map +1 -0
  430. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThan.d.ts +27 -0
  431. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThan.d.ts.map +1 -0
  432. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThan.js +105 -0
  433. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThan.js.map +1 -0
  434. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThanEqual.d.ts +24 -0
  435. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThanEqual.d.ts.map +1 -0
  436. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThanEqual.js +43 -0
  437. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThanEqual.js.map +1 -0
  438. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_StartWith.d.ts +32 -0
  439. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_StartWith.d.ts.map +1 -0
  440. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_StartWith.js +76 -0
  441. package/lib/stores/postFilterOperators/QueryBuilderPostFilterOperator_StartWith.js.map +1 -0
  442. package/package.json +99 -0
  443. package/src/LegendQueryAppEvent.ts +20 -0
  444. package/src/QueryBuilder_Const.ts +88 -0
  445. package/src/application/LegendQuery.tsx +92 -0
  446. package/src/application/LegendQueryApplicationConfig.ts +77 -0
  447. package/src/application/LegendQueryPluginManager.ts +67 -0
  448. package/src/components/LegendQueryApplication.tsx +104 -0
  449. package/src/components/LegendQueryBaseStoreProvider.tsx +68 -0
  450. package/src/components/QueryBuilder.tsx +375 -0
  451. package/src/components/QueryBuilderExplorerPanel.tsx +998 -0
  452. package/src/components/QueryBuilderFetchStructurePanel.tsx +184 -0
  453. package/src/components/QueryBuilderFilterPanel.tsx +858 -0
  454. package/src/components/QueryBuilderFunctionsExplorerPanel.tsx +598 -0
  455. package/src/components/QueryBuilderGraphFetchTreePanel.tsx +270 -0
  456. package/src/components/QueryBuilderLambdaEditor.tsx +117 -0
  457. package/src/components/QueryBuilderMilestoneEditor.tsx +291 -0
  458. package/src/components/QueryBuilderParameterPanel.tsx +434 -0
  459. package/src/components/QueryBuilderPostFilterPanel.tsx +1061 -0
  460. package/src/components/QueryBuilderProjectionPanel.tsx +652 -0
  461. package/src/components/QueryBuilderPropertyExpressionEditor.tsx +370 -0
  462. package/src/components/QueryBuilderPropertyInfoTooltip.tsx +87 -0
  463. package/src/components/QueryBuilderPropertySearchPanel.tsx +617 -0
  464. package/src/components/QueryBuilderResultModifierPanel.tsx +252 -0
  465. package/src/components/QueryBuilderResultPanel.tsx +582 -0
  466. package/src/components/QueryBuilderSetupPanel.tsx +341 -0
  467. package/src/components/QueryBuilderTextEditor.tsx +127 -0
  468. package/src/components/QueryBuilderUnsupportedQueryEditor.tsx +110 -0
  469. package/src/components/QueryBuilder_TestID.ts +26 -0
  470. package/src/components/QueryEditor.tsx +345 -0
  471. package/src/components/QueryEditorComponentTestUtils.tsx +200 -0
  472. package/src/components/QueryEditorStoreProvider.tsx +128 -0
  473. package/src/components/QuerySetup.tsx +907 -0
  474. package/src/components/QuerySetupStoreProvider.tsx +65 -0
  475. package/src/components/shared/ElementIconUtils.tsx +47 -0
  476. package/src/graphManager/QueryBuilder_GraphManagerPlugin.ts +32 -0
  477. package/src/graphManager/QueryBuilder_GraphManagerPreset.ts +33 -0
  478. package/src/graphManager/action/analytics/MappingRuntimeCompatibilityAnalysis.ts +22 -0
  479. package/src/graphManager/action/analytics/ServiceExecutionAnalysis.ts +22 -0
  480. package/src/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtension.ts +47 -0
  481. package/src/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtensionBuilder.ts +27 -0
  482. package/src/graphManager/protocol/pure/QueryBuilder_PureProtocolProcessorPlugin.ts +170 -0
  483. package/src/graphManager/protocol/pure/v1/V1_QueryBuilder_FunctionExpressionBuilder.ts +573 -0
  484. package/src/graphManager/protocol/pure/v1/V1_QueryBuilder_PropertyExpressionTypeInferenceBuilder.ts +28 -0
  485. package/src/graphManager/protocol/pure/v1/V1_QueryBuilder_PureGraphManagerExtension.ts +296 -0
  486. package/src/index.ts +57 -0
  487. package/src/stores/LegendQueryApplicationPlugin.ts +61 -0
  488. package/src/stores/LegendQueryBaseStore.ts +47 -0
  489. package/src/stores/LegendQueryEventService.ts +38 -0
  490. package/src/stores/LegendQueryRouter.ts +114 -0
  491. package/src/stores/QueryBuilderAggregationState.ts +208 -0
  492. package/src/stores/QueryBuilderExplorerState.ts +590 -0
  493. package/src/stores/QueryBuilderFetchStructureState.ts +59 -0
  494. package/src/stores/QueryBuilderFilterState.ts +815 -0
  495. package/src/stores/QueryBuilderGraphFetchTreeState.ts +90 -0
  496. package/src/stores/QueryBuilderGraphFetchTreeUtil.ts +281 -0
  497. package/src/stores/QueryBuilderLambdaBuilder.ts +755 -0
  498. package/src/stores/QueryBuilderLambdaProcessor.ts +1239 -0
  499. package/src/stores/QueryBuilderOperatorsHelper.ts +191 -0
  500. package/src/stores/QueryBuilderPostFilterOperator.ts +66 -0
  501. package/src/stores/QueryBuilderPostFilterProcessor.ts +275 -0
  502. package/src/stores/QueryBuilderPostFilterState.ts +762 -0
  503. package/src/stores/QueryBuilderPreviewDataHelper.ts +300 -0
  504. package/src/stores/QueryBuilderProjectionState.ts +796 -0
  505. package/src/stores/QueryBuilderPropertyEditorState.ts +656 -0
  506. package/src/stores/QueryBuilderPropertySearchPanelState.ts +331 -0
  507. package/src/stores/QueryBuilderResultState.ts +263 -0
  508. package/src/stores/QueryBuilderSetupState.ts +236 -0
  509. package/src/stores/QueryBuilderState.ts +561 -0
  510. package/src/stores/QueryBuilderUnsupportedState.ts +42 -0
  511. package/src/stores/QueryBuilderValueSpecificationBuilderHelper.ts +76 -0
  512. package/src/stores/QueryEditorStore.ts +648 -0
  513. package/src/stores/QueryEditorStoreTestUtils.ts +46 -0
  514. package/src/stores/QueryFunctionsExplorerState.ts +386 -0
  515. package/src/stores/QueryParametersState.ts +54 -0
  516. package/src/stores/QueryResultSetModifierState.ts +307 -0
  517. package/src/stores/QuerySetupStore.ts +430 -0
  518. package/src/stores/QueryTextEditorState.ts +203 -0
  519. package/src/stores/aggregateOperators/QueryBuilderAggregateOperatorHelper.ts +111 -0
  520. package/src/stores/aggregateOperators/QueryBuilderAggregateOperator_Average.ts +100 -0
  521. package/src/stores/aggregateOperators/QueryBuilderAggregateOperator_Count.ts +108 -0
  522. package/src/stores/aggregateOperators/QueryBuilderAggregateOperator_Distinct.ts +98 -0
  523. package/src/stores/aggregateOperators/QueryBuilderAggregateOperator_DistinctCount.ts +175 -0
  524. package/src/stores/aggregateOperators/QueryBuilderAggregateOperator_JoinString.ts +157 -0
  525. package/src/stores/aggregateOperators/QueryBuilderAggregateOperator_Max.ts +176 -0
  526. package/src/stores/aggregateOperators/QueryBuilderAggregateOperator_Min.ts +176 -0
  527. package/src/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Population.ts +100 -0
  528. package/src/stores/aggregateOperators/QueryBuilderAggregateOperator_StdDev_Sample.ts +100 -0
  529. package/src/stores/aggregateOperators/QueryBuilderAggregateOperator_Sum.ts +90 -0
  530. package/src/stores/filterOperators/QueryBuilderFilterOperatorHelper.ts +524 -0
  531. package/src/stores/filterOperators/QueryBuilderFilterOperator_Contain.ts +134 -0
  532. package/src/stores/filterOperators/QueryBuilderFilterOperator_EndWith.ts +134 -0
  533. package/src/stores/filterOperators/QueryBuilderFilterOperator_Equal.ts +233 -0
  534. package/src/stores/filterOperators/QueryBuilderFilterOperator_GreaterThan.ts +164 -0
  535. package/src/stores/filterOperators/QueryBuilderFilterOperator_GreaterThanEqual.ts +164 -0
  536. package/src/stores/filterOperators/QueryBuilderFilterOperator_In.ts +181 -0
  537. package/src/stores/filterOperators/QueryBuilderFilterOperator_IsEmpty.ts +125 -0
  538. package/src/stores/filterOperators/QueryBuilderFilterOperator_LessThan.ts +165 -0
  539. package/src/stores/filterOperators/QueryBuilderFilterOperator_LessThanEqual.ts +164 -0
  540. package/src/stores/filterOperators/QueryBuilderFilterOperator_StartWith.ts +134 -0
  541. package/src/stores/postFilterOperators/QueryBuilderPostFilterOperatorHelper.ts +129 -0
  542. package/src/stores/postFilterOperators/QueryBuilderPostFilterOperator_Contain.ts +140 -0
  543. package/src/stores/postFilterOperators/QueryBuilderPostFilterOperator_EndWith.ts +135 -0
  544. package/src/stores/postFilterOperators/QueryBuilderPostFilterOperator_Equal.ts +238 -0
  545. package/src/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThan.ts +161 -0
  546. package/src/stores/postFilterOperators/QueryBuilderPostFilterOperator_GreaterThanEqual.ts +70 -0
  547. package/src/stores/postFilterOperators/QueryBuilderPostFilterOperator_In.ts +183 -0
  548. package/src/stores/postFilterOperators/QueryBuilderPostFilterOperator_IsEmpty.ts +113 -0
  549. package/src/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThan.ts +161 -0
  550. package/src/stores/postFilterOperators/QueryBuilderPostFilterOperator_LessThanEqual.ts +70 -0
  551. package/src/stores/postFilterOperators/QueryBuilderPostFilterOperator_StartWith.ts +135 -0
  552. package/tsconfig.json +155 -0
  553. package/tsconfig.package.json +38 -0
@@ -0,0 +1,145 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { GRAPH_MANAGER_EVENT, buildSourceInformationSourceId, ParserError, RawLambda, stub_RawLambda, pruneSourceInformation, } from '@finos/legend-graph';
17
+ import { assertErrorThrown, LogEvent, } from '@finos/legend-shared';
18
+ import { observable, action, flow, makeObservable, flowResult } from 'mobx';
19
+ import { LambdaEditorState, TAB_SIZE } from '@finos/legend-application';
20
+ export class QueryRawLambdaState {
21
+ lambda;
22
+ constructor(lambda) {
23
+ this.lambda = lambda;
24
+ makeObservable(this, {
25
+ lambda: observable,
26
+ setLambda: action,
27
+ });
28
+ }
29
+ setLambda(lambda) {
30
+ this.lambda = lambda;
31
+ }
32
+ }
33
+ export var QueryTextEditorMode;
34
+ (function (QueryTextEditorMode) {
35
+ QueryTextEditorMode["TEXT"] = "TEXT";
36
+ QueryTextEditorMode["JSON"] = "JSON";
37
+ })(QueryTextEditorMode = QueryTextEditorMode || (QueryTextEditorMode = {}));
38
+ export class QueryTextEditorState extends LambdaEditorState {
39
+ queryBuilderState;
40
+ rawLambdaState;
41
+ isConvertingLambdaToString = false;
42
+ mode;
43
+ /**
44
+ * This is used to store the JSON string when viewing the query in JSON mode
45
+ * TODO: consider moving this to another state if we need to simplify the logic of text-mode
46
+ */
47
+ readOnlylambdaJson = '';
48
+ constructor(queryBuilderState) {
49
+ super('', '');
50
+ makeObservable(this, {
51
+ rawLambdaState: observable,
52
+ isConvertingLambdaToString: observable,
53
+ mode: observable,
54
+ setQueryRawLambdaState: action,
55
+ setMode: action,
56
+ openModal: action,
57
+ closeModal: flow,
58
+ });
59
+ this.queryBuilderState = queryBuilderState;
60
+ this.rawLambdaState = new QueryRawLambdaState(stub_RawLambda());
61
+ }
62
+ get lambdaId() {
63
+ return buildSourceInformationSourceId(['query-builder']);
64
+ }
65
+ setQueryRawLambdaState(rawLambdaState) {
66
+ this.rawLambdaState = rawLambdaState;
67
+ }
68
+ setMode(openModal) {
69
+ this.mode = openModal;
70
+ }
71
+ setLambdaJson(lambdaJson) {
72
+ this.readOnlylambdaJson = lambdaJson;
73
+ }
74
+ *convertLambdaGrammarStringToObject() {
75
+ const emptyLambda = stub_RawLambda();
76
+ if (this.lambdaString) {
77
+ try {
78
+ const lambda = (yield this.queryBuilderState.graphManagerState.graphManager.pureCodeToLambda(this.fullLambdaString, this.lambdaId, { pruneSourceInformation: true }));
79
+ this.setParserError(undefined);
80
+ this.rawLambdaState.setLambda(lambda);
81
+ }
82
+ catch (error) {
83
+ assertErrorThrown(error);
84
+ if (error instanceof ParserError) {
85
+ this.setParserError(error);
86
+ }
87
+ this.queryBuilderState.applicationStore.log.error(LogEvent.create(GRAPH_MANAGER_EVENT.PARSING_FAILURE), error);
88
+ }
89
+ }
90
+ else {
91
+ this.clearErrors();
92
+ this.rawLambdaState.setLambda(emptyLambda);
93
+ }
94
+ }
95
+ *convertLambdaObjectToGrammarString(pretty) {
96
+ if (this.rawLambdaState.lambda.body) {
97
+ this.isConvertingLambdaToString = true;
98
+ try {
99
+ const lambdas = new Map();
100
+ lambdas.set(this.lambdaId, new RawLambda(this.rawLambdaState.lambda.parameters, this.rawLambdaState.lambda.body));
101
+ const isolatedLambdas = (yield this.queryBuilderState.graphManagerState.graphManager.lambdasToPureCode(lambdas, pretty));
102
+ const grammarText = isolatedLambdas.get(this.lambdaId);
103
+ this.setLambdaString(grammarText !== undefined
104
+ ? this.extractLambdaString(grammarText)
105
+ : '');
106
+ this.clearErrors();
107
+ this.isConvertingLambdaToString = false;
108
+ }
109
+ catch (error) {
110
+ assertErrorThrown(error);
111
+ this.queryBuilderState.applicationStore.log.error(LogEvent.create(GRAPH_MANAGER_EVENT.PARSING_FAILURE), error);
112
+ this.isConvertingLambdaToString = false;
113
+ }
114
+ }
115
+ else {
116
+ this.clearErrors();
117
+ this.setLambdaString('');
118
+ }
119
+ }
120
+ openModal(mode) {
121
+ const rawLambda = this.queryBuilderState.getQuery();
122
+ if (mode === QueryTextEditorMode.TEXT) {
123
+ this.setQueryRawLambdaState(new QueryRawLambdaState(rawLambda));
124
+ }
125
+ if (mode === QueryTextEditorMode.JSON) {
126
+ this.setLambdaJson(JSON.stringify(pruneSourceInformation(this.queryBuilderState.graphManagerState.graphManager.serializeRawValueSpecification(rawLambda)), null, TAB_SIZE));
127
+ }
128
+ this.setMode(mode);
129
+ }
130
+ *closeModal() {
131
+ if (this.mode === QueryTextEditorMode.TEXT) {
132
+ yield flowResult(this.convertLambdaGrammarStringToObject());
133
+ if (this.parserError) {
134
+ this.queryBuilderState.applicationStore.notifyError(`Can't parse query. Please fix error before closing: ${this.parserError.message}`);
135
+ }
136
+ else {
137
+ this.queryBuilderState.initialize(this.rawLambdaState.lambda);
138
+ this.setMode(undefined);
139
+ }
140
+ return;
141
+ }
142
+ this.setMode(undefined);
143
+ }
144
+ }
145
+ //# sourceMappingURL=QueryTextEditorState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryTextEditorState.js","sourceRoot":"","sources":["../../src/stores/QueryTextEditorState.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { type PureModel, type ValueSpecification, SimpleFunctionExpression, VariableExpression } from '@finos/legend-graph';
17
+ import { type QueryBuilderAggregateOperator, QueryBuilderAggregateColumnState } from '../QueryBuilderAggregationState.js';
18
+ import type { QueryBuilderProjectionColumnState } from '../QueryBuilderProjectionState.js';
19
+ export declare const buildAggregateExpression: (operatorFunctionFullPath: string, graph: PureModel, variableName: string) => ValueSpecification;
20
+ export declare const buildAggregateColumnState: (projectionColumnState: QueryBuilderProjectionColumnState, lambdaParam: VariableExpression, expression: SimpleFunctionExpression, operatorFunctionFullPath: string, operator: QueryBuilderAggregateOperator) => QueryBuilderAggregateColumnState | undefined;
21
+ //# sourceMappingURL=QueryBuilderAggregateOperatorHelper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderAggregateOperatorHelper.d.ts","sourceRoot":"","sources":["../../../src/stores/aggregateOperators/QueryBuilderAggregateOperatorHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,SAAS,EACd,KAAK,kBAAkB,EACvB,wBAAwB,EAGxB,kBAAkB,EAEnB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,KAAK,6BAA6B,EAClC,gCAAgC,EACjC,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,mCAAmC,CAAC;AAE3F,eAAO,MAAM,wBAAwB,6BACT,MAAM,SACzB,SAAS,gBACF,MAAM,KACnB,kBAYF,CAAC;AAEF,eAAO,MAAM,yBAAyB,0BACb,iCAAiC,eAC3C,kBAAkB,cACnB,wBAAwB,4BACV,MAAM,YACtB,6BAA6B,KACtC,gCAAgC,GAAG,SAsDrC,CAAC"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { SimpleFunctionExpression, extractElementNameFromPath, matchFunctionName, VariableExpression, TYPICAL_MULTIPLICITY_TYPE, } from '@finos/legend-graph';
17
+ import { guaranteeType, assertTrue } from '@finos/legend-shared';
18
+ import { QueryBuilderAggregateColumnState, } from '../QueryBuilderAggregationState.js';
19
+ export const buildAggregateExpression = (operatorFunctionFullPath, graph, variableName) => {
20
+ const multiplicityOne = graph.getTypicalMultiplicity(TYPICAL_MULTIPLICITY_TYPE.ONE);
21
+ const expression = new SimpleFunctionExpression(extractElementNameFromPath(operatorFunctionFullPath), multiplicityOne);
22
+ expression.parametersValues.push(new VariableExpression(variableName, multiplicityOne));
23
+ return expression;
24
+ };
25
+ export const buildAggregateColumnState = (projectionColumnState, lambdaParam, expression, operatorFunctionFullPath, operator) => {
26
+ if (matchFunctionName(expression.functionName, operatorFunctionFullPath)) {
27
+ const aggregateColumnState = new QueryBuilderAggregateColumnState(projectionColumnState.projectionState.aggregationState, projectionColumnState, operator);
28
+ aggregateColumnState.setLambdaParameterName(lambdaParam.name);
29
+ assertTrue(expression.parametersValues.length === 1, `Can't process ${extractElementNameFromPath(operatorFunctionFullPath)}() expression: ${extractElementNameFromPath(operatorFunctionFullPath)}() expects no argument`);
30
+ // variable
31
+ const variableExpression = guaranteeType(expression.parametersValues[0], VariableExpression, `Can't process ${extractElementNameFromPath(operatorFunctionFullPath)}() expression: only support ${extractElementNameFromPath(operatorFunctionFullPath)}() immediately following a variable expression`);
32
+ assertTrue(aggregateColumnState.lambdaParameterName === variableExpression.name, `Can't process ${extractElementNameFromPath(operatorFunctionFullPath)}() expression: expects variable used in lambda body '${variableExpression.name}' to match lambda parameter '${aggregateColumnState.lambdaParameterName}'`);
33
+ // operator
34
+ assertTrue(operator.isCompatibleWithColumn(aggregateColumnState.projectionColumnState), `Can't process ${extractElementNameFromPath(operatorFunctionFullPath)}() expression: property is not compatible with operator`);
35
+ aggregateColumnState.setOperator(operator);
36
+ return aggregateColumnState;
37
+ }
38
+ return undefined;
39
+ };
40
+ //# sourceMappingURL=QueryBuilderAggregateOperatorHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderAggregateOperatorHelper.js","sourceRoot":"","sources":["../../../src/stores/aggregateOperators/QueryBuilderAggregateOperatorHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAGL,wBAAwB,EACxB,0BAA0B,EAC1B,iBAAiB,EACjB,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAEL,gCAAgC,GACjC,MAAM,oCAAoC,CAAC;AAG5C,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,wBAAgC,EAChC,KAAgB,EAChB,YAAoB,EACA,EAAE;IACtB,MAAM,eAAe,GAAG,KAAK,CAAC,sBAAsB,CAClD,yBAAyB,CAAC,GAAG,CAC9B,CAAC;IACF,MAAM,UAAU,GAAG,IAAI,wBAAwB,CAC7C,0BAA0B,CAAC,wBAAwB,CAAC,EACpD,eAAe,CAChB,CAAC;IACF,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAC9B,IAAI,kBAAkB,CAAC,YAAY,EAAE,eAAe,CAAC,CACtD,CAAC;IACF,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,qBAAwD,EACxD,WAA+B,EAC/B,UAAoC,EACpC,wBAAgC,EAChC,QAAuC,EACO,EAAE;IAChD,IAAI,iBAAiB,CAAC,UAAU,CAAC,YAAY,EAAE,wBAAwB,CAAC,EAAE;QACxE,MAAM,oBAAoB,GAAG,IAAI,gCAAgC,CAC/D,qBAAqB,CAAC,eAAe,CAAC,gBAAgB,EACtD,qBAAqB,EACrB,QAAQ,CACT,CAAC;QACF,oBAAoB,CAAC,sBAAsB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAE9D,UAAU,CACR,UAAU,CAAC,gBAAgB,CAAC,MAAM,KAAK,CAAC,EACxC,iBAAiB,0BAA0B,CACzC,wBAAwB,CACzB,kBAAkB,0BAA0B,CAC3C,wBAAwB,CACzB,wBAAwB,CAC1B,CAAC;QAEF,WAAW;QACX,MAAM,kBAAkB,GAAG,aAAa,CACtC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAC9B,kBAAkB,EAClB,iBAAiB,0BAA0B,CACzC,wBAAwB,CACzB,+BAA+B,0BAA0B,CACxD,wBAAwB,CACzB,gDAAgD,CAClD,CAAC;QACF,UAAU,CACR,oBAAoB,CAAC,mBAAmB,KAAK,kBAAkB,CAAC,IAAI,EACpE,iBAAiB,0BAA0B,CACzC,wBAAwB,CACzB,wDACC,kBAAkB,CAAC,IACrB,gCACE,oBAAoB,CAAC,mBACvB,GAAG,CACJ,CAAC;QAEF,WAAW;QACX,UAAU,CACR,QAAQ,CAAC,sBAAsB,CAC7B,oBAAoB,CAAC,qBAAqB,CAC3C,EACD,iBAAiB,0BAA0B,CACzC,wBAAwB,CACzB,yDAAyD,CAC3D,CAAC;QACF,oBAAoB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE3C,OAAO,oBAAoB,CAAC;KAC7B;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { type ValueSpecification, type SimpleFunctionExpression, type VariableExpression, type PureModel, type AbstractPropertyExpression, type Type } from '@finos/legend-graph';
17
+ import { type QueryBuilderAggregateColumnState, QueryBuilderAggregateOperator } from '../QueryBuilderAggregationState.js';
18
+ import { type QueryBuilderProjectionColumnState } from '../QueryBuilderProjectionState.js';
19
+ export declare class QueryBuilderAggregateOperator_Average extends QueryBuilderAggregateOperator {
20
+ getLabel(projectionColumnState: QueryBuilderProjectionColumnState): string;
21
+ isCompatibleWithColumn(projectionColumnState: QueryBuilderProjectionColumnState): boolean;
22
+ buildAggregateExpression(propertyExpression: AbstractPropertyExpression | undefined, variableName: string, graph: PureModel): ValueSpecification;
23
+ buildAggregateColumnState(expression: SimpleFunctionExpression, lambdaParam: VariableExpression, projectionColumnState: QueryBuilderProjectionColumnState): QueryBuilderAggregateColumnState | undefined;
24
+ getReturnType(aggregateColumnState: QueryBuilderAggregateColumnState): Type;
25
+ }
26
+ //# sourceMappingURL=QueryBuilderAggregateOperator_Average.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderAggregateOperator_Average.d.ts","sourceRoot":"","sources":["../../../src/stores/aggregateOperators/QueryBuilderAggregateOperator_Average.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,0BAA0B,EAC/B,KAAK,IAAI,EACV,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,KAAK,gCAAgC,EACrC,6BAA6B,EAC9B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,KAAK,iCAAiC,EAEvC,MAAM,mCAAmC,CAAC;AAM3C,qBAAa,qCAAsC,SAAQ,6BAA6B;IACtF,QAAQ,CAAC,qBAAqB,EAAE,iCAAiC,GAAG,MAAM;IAI1E,sBAAsB,CACpB,qBAAqB,EAAE,iCAAiC,GACvD,OAAO;IAmBV,wBAAwB,CACtB,kBAAkB,EAAE,0BAA0B,GAAG,SAAS,EAC1D,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,SAAS,GACf,kBAAkB;IAQrB,yBAAyB,CACvB,UAAU,EAAE,wBAAwB,EACpC,WAAW,EAAE,kBAAkB,EAC/B,qBAAqB,EAAE,iCAAiC,GACvD,gCAAgC,GAAG,SAAS;IAUtC,aAAa,CACpB,oBAAoB,EAAE,gCAAgC,GACrD,IAAI;CAMR"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { PRIMITIVE_TYPE, } from '@finos/legend-graph';
17
+ import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../QueryBuilder_Const.js';
18
+ import { QueryBuilderAggregateOperator, } from '../QueryBuilderAggregationState.js';
19
+ import { QueryBuilderSimpleProjectionColumnState, } from '../QueryBuilderProjectionState.js';
20
+ import { buildAggregateColumnState, buildAggregateExpression, } from './QueryBuilderAggregateOperatorHelper.js';
21
+ export class QueryBuilderAggregateOperator_Average extends QueryBuilderAggregateOperator {
22
+ getLabel(projectionColumnState) {
23
+ return 'average';
24
+ }
25
+ isCompatibleWithColumn(projectionColumnState) {
26
+ if (projectionColumnState instanceof QueryBuilderSimpleProjectionColumnState) {
27
+ const propertyType = projectionColumnState.propertyExpressionState.propertyExpression.func
28
+ .genericType.value.rawType;
29
+ return [
30
+ PRIMITIVE_TYPE.NUMBER,
31
+ PRIMITIVE_TYPE.INTEGER,
32
+ PRIMITIVE_TYPE.DECIMAL,
33
+ PRIMITIVE_TYPE.FLOAT,
34
+ ].includes(propertyType.path);
35
+ }
36
+ return true;
37
+ }
38
+ buildAggregateExpression(propertyExpression, variableName, graph) {
39
+ return buildAggregateExpression(QUERY_BUILDER_SUPPORTED_FUNCTIONS.AVERAGE, graph, variableName);
40
+ }
41
+ buildAggregateColumnState(expression, lambdaParam, projectionColumnState) {
42
+ return buildAggregateColumnState(projectionColumnState, lambdaParam, expression, QUERY_BUILDER_SUPPORTED_FUNCTIONS.AVERAGE, this);
43
+ }
44
+ getReturnType(aggregateColumnState) {
45
+ const graph = aggregateColumnState.aggregationState.projectionState.queryBuilderState
46
+ .graphManagerState.graph;
47
+ return graph.getType(PRIMITIVE_TYPE.FLOAT);
48
+ }
49
+ }
50
+ //# sourceMappingURL=QueryBuilderAggregateOperator_Average.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderAggregateOperator_Average.js","sourceRoot":"","sources":["../../../src/stores/aggregateOperators/QueryBuilderAggregateOperator_Average.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,cAAc,GAOf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,iCAAiC,EAAE,MAAM,6BAA6B,CAAC;AAChF,OAAO,EAEL,6BAA6B,GAC9B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAEL,uCAAuC,GACxC,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,0CAA0C,CAAC;AAElD,MAAM,OAAO,qCAAsC,SAAQ,6BAA6B;IACtF,QAAQ,CAAC,qBAAwD;QAC/D,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,sBAAsB,CACpB,qBAAwD;QAExD,IACE,qBAAqB,YAAY,uCAAuC,EACxE;YACA,MAAM,YAAY,GAChB,qBAAqB,CAAC,uBAAuB,CAAC,kBAAkB,CAAC,IAAI;iBAClE,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC;YAC/B,OACE;gBACE,cAAc,CAAC,MAAM;gBACrB,cAAc,CAAC,OAAO;gBACtB,cAAc,CAAC,OAAO;gBACtB,cAAc,CAAC,KAAK;aAEvB,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;SAC/B;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wBAAwB,CACtB,kBAA0D,EAC1D,YAAoB,EACpB,KAAgB;QAEhB,OAAO,wBAAwB,CAC7B,iCAAiC,CAAC,OAAO,EACzC,KAAK,EACL,YAAY,CACb,CAAC;IACJ,CAAC;IAED,yBAAyB,CACvB,UAAoC,EACpC,WAA+B,EAC/B,qBAAwD;QAExD,OAAO,yBAAyB,CAC9B,qBAAqB,EACrB,WAAW,EACX,UAAU,EACV,iCAAiC,CAAC,OAAO,EACzC,IAAI,CACL,CAAC;IACJ,CAAC;IAEQ,aAAa,CACpB,oBAAsD;QAEtD,MAAM,KAAK,GACT,oBAAoB,CAAC,gBAAgB,CAAC,eAAe,CAAC,iBAAiB;aACpE,iBAAiB,CAAC,KAAK,CAAC;QAC7B,OAAO,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC;CACF"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { type Type, type ValueSpecification, type SimpleFunctionExpression, type VariableExpression, type PureModel, type AbstractPropertyExpression } from '@finos/legend-graph';
17
+ import { type QueryBuilderAggregateColumnState, QueryBuilderAggregateOperator } from '../QueryBuilderAggregationState.js';
18
+ import { type QueryBuilderProjectionColumnState } from '../QueryBuilderProjectionState.js';
19
+ export declare class QueryBuilderAggregateOperator_Count extends QueryBuilderAggregateOperator {
20
+ getLabel(projectionColumnState: QueryBuilderProjectionColumnState): string;
21
+ isCompatibleWithColumn(projectionColumnState: QueryBuilderProjectionColumnState): boolean;
22
+ buildAggregateExpression(propertyExpression: AbstractPropertyExpression | undefined, variableName: string, graph: PureModel): ValueSpecification;
23
+ buildAggregateColumnState(expression: SimpleFunctionExpression, lambdaParam: VariableExpression, projectionColumnState: QueryBuilderProjectionColumnState): QueryBuilderAggregateColumnState | undefined;
24
+ getReturnType(aggregateColumnState: QueryBuilderAggregateColumnState): Type;
25
+ }
26
+ //# sourceMappingURL=QueryBuilderAggregateOperator_Count.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderAggregateOperator_Count.d.ts","sourceRoot":"","sources":["../../../src/stores/aggregateOperators/QueryBuilderAggregateOperator_Count.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAEL,KAAK,IAAI,EACT,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,0BAA0B,EAEhC,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,KAAK,gCAAgC,EACrC,6BAA6B,EAC9B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,KAAK,iCAAiC,EAEvC,MAAM,mCAAmC,CAAC;AAM3C,qBAAa,mCAAoC,SAAQ,6BAA6B;IACpF,QAAQ,CAAC,qBAAqB,EAAE,iCAAiC,GAAG,MAAM;IAI1E,sBAAsB,CACpB,qBAAqB,EAAE,iCAAiC,GACvD,OAAO;IA0BV,wBAAwB,CACtB,kBAAkB,EAAE,0BAA0B,GAAG,SAAS,EAC1D,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,SAAS,GACf,kBAAkB;IAQrB,yBAAyB,CACvB,UAAU,EAAE,wBAAwB,EACpC,WAAW,EAAE,kBAAkB,EAC/B,qBAAqB,EAAE,iCAAiC,GACvD,gCAAgC,GAAG,SAAS;IAUtC,aAAa,CACpB,oBAAoB,EAAE,gCAAgC,GACrD,IAAI;CAMR"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { PRIMITIVE_TYPE, Enumeration, } from '@finos/legend-graph';
17
+ import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../QueryBuilder_Const.js';
18
+ import { QueryBuilderAggregateOperator, } from '../QueryBuilderAggregationState.js';
19
+ import { QueryBuilderSimpleProjectionColumnState, } from '../QueryBuilderProjectionState.js';
20
+ import { buildAggregateColumnState, buildAggregateExpression, } from './QueryBuilderAggregateOperatorHelper.js';
21
+ export class QueryBuilderAggregateOperator_Count extends QueryBuilderAggregateOperator {
22
+ getLabel(projectionColumnState) {
23
+ return 'count';
24
+ }
25
+ isCompatibleWithColumn(projectionColumnState) {
26
+ if (projectionColumnState instanceof QueryBuilderSimpleProjectionColumnState) {
27
+ const propertyType = projectionColumnState.propertyExpressionState.propertyExpression.func
28
+ .genericType.value.rawType;
29
+ return ([
30
+ PRIMITIVE_TYPE.STRING,
31
+ PRIMITIVE_TYPE.BOOLEAN,
32
+ PRIMITIVE_TYPE.NUMBER,
33
+ PRIMITIVE_TYPE.INTEGER,
34
+ PRIMITIVE_TYPE.DECIMAL,
35
+ PRIMITIVE_TYPE.FLOAT,
36
+ PRIMITIVE_TYPE.DATE,
37
+ PRIMITIVE_TYPE.STRICTDATE,
38
+ PRIMITIVE_TYPE.DATETIME,
39
+ ].includes(propertyType.path) || propertyType instanceof Enumeration);
40
+ }
41
+ return true;
42
+ }
43
+ buildAggregateExpression(propertyExpression, variableName, graph) {
44
+ return buildAggregateExpression(QUERY_BUILDER_SUPPORTED_FUNCTIONS.COUNT, graph, variableName);
45
+ }
46
+ buildAggregateColumnState(expression, lambdaParam, projectionColumnState) {
47
+ return buildAggregateColumnState(projectionColumnState, lambdaParam, expression, QUERY_BUILDER_SUPPORTED_FUNCTIONS.COUNT, this);
48
+ }
49
+ getReturnType(aggregateColumnState) {
50
+ const graph = aggregateColumnState.aggregationState.projectionState.queryBuilderState
51
+ .graphManagerState.graph;
52
+ return graph.getType(PRIMITIVE_TYPE.INTEGER);
53
+ }
54
+ }
55
+ //# sourceMappingURL=QueryBuilderAggregateOperator_Count.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderAggregateOperator_Count.js","sourceRoot":"","sources":["../../../src/stores/aggregateOperators/QueryBuilderAggregateOperator_Count.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,cAAc,EAOd,WAAW,GACZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,iCAAiC,EAAE,MAAM,6BAA6B,CAAC;AAChF,OAAO,EAEL,6BAA6B,GAC9B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAEL,uCAAuC,GACxC,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,0CAA0C,CAAC;AAElD,MAAM,OAAO,mCAAoC,SAAQ,6BAA6B;IACpF,QAAQ,CAAC,qBAAwD;QAC/D,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,sBAAsB,CACpB,qBAAwD;QAExD,IACE,qBAAqB,YAAY,uCAAuC,EACxE;YACA,MAAM,YAAY,GAChB,qBAAqB,CAAC,uBAAuB,CAAC,kBAAkB,CAAC,IAAI;iBAClE,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC;YAC/B,OAAO,CAEH;gBACE,cAAc,CAAC,MAAM;gBACrB,cAAc,CAAC,OAAO;gBACtB,cAAc,CAAC,MAAM;gBACrB,cAAc,CAAC,OAAO;gBACtB,cAAc,CAAC,OAAO;gBACtB,cAAc,CAAC,KAAK;gBACpB,cAAc,CAAC,IAAI;gBACnB,cAAc,CAAC,UAAU;gBACzB,cAAc,CAAC,QAAQ;aAE1B,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,YAAY,YAAY,WAAW,CACrE,CAAC;SACH;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wBAAwB,CACtB,kBAA0D,EAC1D,YAAoB,EACpB,KAAgB;QAEhB,OAAO,wBAAwB,CAC7B,iCAAiC,CAAC,KAAK,EACvC,KAAK,EACL,YAAY,CACb,CAAC;IACJ,CAAC;IAED,yBAAyB,CACvB,UAAoC,EACpC,WAA+B,EAC/B,qBAAwD;QAExD,OAAO,yBAAyB,CAC9B,qBAAqB,EACrB,WAAW,EACX,UAAU,EACV,iCAAiC,CAAC,KAAK,EACvC,IAAI,CACL,CAAC;IACJ,CAAC;IAEQ,aAAa,CACpB,oBAAsD;QAEtD,MAAM,KAAK,GACT,oBAAoB,CAAC,gBAAgB,CAAC,eAAe,CAAC,iBAAiB;aACpE,iBAAiB,CAAC,KAAK,CAAC;QAC7B,OAAO,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;CACF"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { type ValueSpecification, type SimpleFunctionExpression, type VariableExpression, type PureModel, type AbstractPropertyExpression } from '@finos/legend-graph';
17
+ import { type QueryBuilderAggregateColumnState, QueryBuilderAggregateOperator } from '../QueryBuilderAggregationState.js';
18
+ import { type QueryBuilderProjectionColumnState } from '../QueryBuilderProjectionState.js';
19
+ export declare class QueryBuilderAggregateOperator_Distinct extends QueryBuilderAggregateOperator {
20
+ getLabel(projectionColumnState: QueryBuilderProjectionColumnState): string;
21
+ isCompatibleWithColumn(projectionColumnState: QueryBuilderProjectionColumnState): boolean;
22
+ buildAggregateExpression(propertyExpression: AbstractPropertyExpression | undefined, variableName: string, graph: PureModel): ValueSpecification;
23
+ buildAggregateColumnState(expression: SimpleFunctionExpression, lambdaParam: VariableExpression, projectionColumnState: QueryBuilderProjectionColumnState): QueryBuilderAggregateColumnState | undefined;
24
+ }
25
+ //# sourceMappingURL=QueryBuilderAggregateOperator_Distinct.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderAggregateOperator_Distinct.d.ts","sourceRoot":"","sources":["../../../src/stores/aggregateOperators/QueryBuilderAggregateOperator_Distinct.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,0BAA0B,EAEhC,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,KAAK,gCAAgC,EACrC,6BAA6B,EAC9B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,KAAK,iCAAiC,EAEvC,MAAM,mCAAmC,CAAC;AAM3C,qBAAa,sCAAuC,SAAQ,6BAA6B;IACvF,QAAQ,CAAC,qBAAqB,EAAE,iCAAiC,GAAG,MAAM;IAI1E,sBAAsB,CACpB,qBAAqB,EAAE,iCAAiC,GACvD,OAAO;IA0BV,wBAAwB,CACtB,kBAAkB,EAAE,0BAA0B,GAAG,SAAS,EAC1D,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,SAAS,GACf,kBAAkB;IAQrB,yBAAyB,CACvB,UAAU,EAAE,wBAAwB,EACpC,WAAW,EAAE,kBAAkB,EAC/B,qBAAqB,EAAE,iCAAiC,GACvD,gCAAgC,GAAG,SAAS;CAShD"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { PRIMITIVE_TYPE, Enumeration, } from '@finos/legend-graph';
17
+ import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../QueryBuilder_Const.js';
18
+ import { QueryBuilderAggregateOperator, } from '../QueryBuilderAggregationState.js';
19
+ import { QueryBuilderSimpleProjectionColumnState, } from '../QueryBuilderProjectionState.js';
20
+ import { buildAggregateColumnState, buildAggregateExpression, } from './QueryBuilderAggregateOperatorHelper.js';
21
+ export class QueryBuilderAggregateOperator_Distinct extends QueryBuilderAggregateOperator {
22
+ getLabel(projectionColumnState) {
23
+ return 'distinct';
24
+ }
25
+ isCompatibleWithColumn(projectionColumnState) {
26
+ if (projectionColumnState instanceof QueryBuilderSimpleProjectionColumnState) {
27
+ const propertyType = projectionColumnState.propertyExpressionState.propertyExpression.func
28
+ .genericType.value.rawType;
29
+ return ([
30
+ PRIMITIVE_TYPE.STRING,
31
+ PRIMITIVE_TYPE.BOOLEAN,
32
+ PRIMITIVE_TYPE.NUMBER,
33
+ PRIMITIVE_TYPE.INTEGER,
34
+ PRIMITIVE_TYPE.DECIMAL,
35
+ PRIMITIVE_TYPE.FLOAT,
36
+ PRIMITIVE_TYPE.DATE,
37
+ PRIMITIVE_TYPE.STRICTDATE,
38
+ PRIMITIVE_TYPE.DATETIME,
39
+ ].includes(propertyType.path) || propertyType instanceof Enumeration);
40
+ }
41
+ return true;
42
+ }
43
+ buildAggregateExpression(propertyExpression, variableName, graph) {
44
+ return buildAggregateExpression(QUERY_BUILDER_SUPPORTED_FUNCTIONS.UNIQUE_VALUE_ONLY, graph, variableName);
45
+ }
46
+ buildAggregateColumnState(expression, lambdaParam, projectionColumnState) {
47
+ return buildAggregateColumnState(projectionColumnState, lambdaParam, expression, QUERY_BUILDER_SUPPORTED_FUNCTIONS.UNIQUE_VALUE_ONLY, this);
48
+ }
49
+ }
50
+ //# sourceMappingURL=QueryBuilderAggregateOperator_Distinct.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderAggregateOperator_Distinct.js","sourceRoot":"","sources":["../../../src/stores/aggregateOperators/QueryBuilderAggregateOperator_Distinct.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,cAAc,EAMd,WAAW,GACZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,iCAAiC,EAAE,MAAM,6BAA6B,CAAC;AAChF,OAAO,EAEL,6BAA6B,GAC9B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAEL,uCAAuC,GACxC,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,0CAA0C,CAAC;AAElD,MAAM,OAAO,sCAAuC,SAAQ,6BAA6B;IACvF,QAAQ,CAAC,qBAAwD;QAC/D,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,sBAAsB,CACpB,qBAAwD;QAExD,IACE,qBAAqB,YAAY,uCAAuC,EACxE;YACA,MAAM,YAAY,GAChB,qBAAqB,CAAC,uBAAuB,CAAC,kBAAkB,CAAC,IAAI;iBAClE,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC;YAC/B,OAAO,CAEH;gBACE,cAAc,CAAC,MAAM;gBACrB,cAAc,CAAC,OAAO;gBACtB,cAAc,CAAC,MAAM;gBACrB,cAAc,CAAC,OAAO;gBACtB,cAAc,CAAC,OAAO;gBACtB,cAAc,CAAC,KAAK;gBACpB,cAAc,CAAC,IAAI;gBACnB,cAAc,CAAC,UAAU;gBACzB,cAAc,CAAC,QAAQ;aAE1B,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,YAAY,YAAY,WAAW,CACrE,CAAC;SACH;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wBAAwB,CACtB,kBAA0D,EAC1D,YAAoB,EACpB,KAAgB;QAEhB,OAAO,wBAAwB,CAC7B,iCAAiC,CAAC,iBAAiB,EACnD,KAAK,EACL,YAAY,CACb,CAAC;IACJ,CAAC;IAED,yBAAyB,CACvB,UAAoC,EACpC,WAA+B,EAC/B,qBAAwD;QAExD,OAAO,yBAAyB,CAC9B,qBAAqB,EACrB,WAAW,EACX,UAAU,EACV,iCAAiC,CAAC,iBAAiB,EACnD,IAAI,CACL,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { type AbstractPropertyExpression, type PureModel, type ValueSpecification, SimpleFunctionExpression, VariableExpression, type Type } from '@finos/legend-graph';
17
+ import { QueryBuilderAggregateColumnState, QueryBuilderAggregateOperator } from '../QueryBuilderAggregationState.js';
18
+ import { type QueryBuilderProjectionColumnState } from '../QueryBuilderProjectionState.js';
19
+ export declare class QueryBuilderAggregateOperator_DistinctCount extends QueryBuilderAggregateOperator {
20
+ getLabel(projectionColumnState: QueryBuilderProjectionColumnState): string;
21
+ isCompatibleWithColumn(projectionColumnState: QueryBuilderProjectionColumnState): boolean;
22
+ buildAggregateExpression(propertyExpression: AbstractPropertyExpression | undefined, variableName: string, graph: PureModel): ValueSpecification;
23
+ buildAggregateColumnState(expression: SimpleFunctionExpression, lambdaParam: VariableExpression, projectionColumnState: QueryBuilderProjectionColumnState): QueryBuilderAggregateColumnState | undefined;
24
+ getReturnType(aggregateColumnState: QueryBuilderAggregateColumnState): Type;
25
+ }
26
+ //# sourceMappingURL=QueryBuilderAggregateOperator_DistinctCount.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderAggregateOperator_DistinctCount.d.ts","sourceRoot":"","sources":["../../../src/stores/aggregateOperators/QueryBuilderAggregateOperator_DistinctCount.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,0BAA0B,EAC/B,KAAK,SAAS,EACd,KAAK,kBAAkB,EACvB,wBAAwB,EACxB,kBAAkB,EAKlB,KAAK,IAAI,EAEV,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,gCAAgC,EAChC,6BAA6B,EAC9B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,KAAK,iCAAiC,EAEvC,MAAM,mCAAmC,CAAC;AAE3C,qBAAa,2CAA4C,SAAQ,6BAA6B;IAC5F,QAAQ,CAAC,qBAAqB,EAAE,iCAAiC,GAAG,MAAM;IAI1E,sBAAsB,CACpB,qBAAqB,EAAE,iCAAiC,GACvD,OAAO;IA0BV,wBAAwB,CACtB,kBAAkB,EAAE,0BAA0B,GAAG,SAAS,EAC1D,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,SAAS,GACf,kBAAkB;IAmBrB,yBAAyB,CACvB,UAAU,EAAE,wBAAwB,EACpC,WAAW,EAAE,kBAAkB,EAC/B,qBAAqB,EAAE,iCAAiC,GACvD,gCAAgC,GAAG,SAAS;IAkEtC,aAAa,CACpB,oBAAoB,EAAE,gCAAgC,GACrD,IAAI;CAMR"}
@@ -0,0 +1,77 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { SimpleFunctionExpression, VariableExpression, TYPICAL_MULTIPLICITY_TYPE, extractElementNameFromPath, matchFunctionName, PRIMITIVE_TYPE, Enumeration, } from '@finos/legend-graph';
17
+ import { assertTrue, guaranteeType } from '@finos/legend-shared';
18
+ import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../QueryBuilder_Const.js';
19
+ import { QueryBuilderAggregateColumnState, QueryBuilderAggregateOperator, } from '../QueryBuilderAggregationState.js';
20
+ import { QueryBuilderSimpleProjectionColumnState, } from '../QueryBuilderProjectionState.js';
21
+ export class QueryBuilderAggregateOperator_DistinctCount extends QueryBuilderAggregateOperator {
22
+ getLabel(projectionColumnState) {
23
+ return 'distinct count';
24
+ }
25
+ isCompatibleWithColumn(projectionColumnState) {
26
+ if (projectionColumnState instanceof QueryBuilderSimpleProjectionColumnState) {
27
+ const propertyType = projectionColumnState.propertyExpressionState.propertyExpression.func
28
+ .genericType.value.rawType;
29
+ return ([
30
+ PRIMITIVE_TYPE.STRING,
31
+ PRIMITIVE_TYPE.BOOLEAN,
32
+ PRIMITIVE_TYPE.NUMBER,
33
+ PRIMITIVE_TYPE.INTEGER,
34
+ PRIMITIVE_TYPE.DECIMAL,
35
+ PRIMITIVE_TYPE.FLOAT,
36
+ PRIMITIVE_TYPE.DATE,
37
+ PRIMITIVE_TYPE.STRICTDATE,
38
+ PRIMITIVE_TYPE.DATETIME,
39
+ ].includes(propertyType.path) || propertyType instanceof Enumeration);
40
+ }
41
+ return true;
42
+ }
43
+ buildAggregateExpression(propertyExpression, variableName, graph) {
44
+ const multiplicityOne = graph.getTypicalMultiplicity(TYPICAL_MULTIPLICITY_TYPE.ONE);
45
+ const distinctExpression = new SimpleFunctionExpression(extractElementNameFromPath(QUERY_BUILDER_SUPPORTED_FUNCTIONS.DISTINCT), multiplicityOne);
46
+ distinctExpression.parametersValues.push(new VariableExpression(variableName, multiplicityOne));
47
+ const distinctCountExpression = new SimpleFunctionExpression(extractElementNameFromPath(QUERY_BUILDER_SUPPORTED_FUNCTIONS.COUNT), multiplicityOne);
48
+ distinctCountExpression.parametersValues.push(distinctExpression);
49
+ return distinctCountExpression;
50
+ }
51
+ buildAggregateColumnState(expression, lambdaParam, projectionColumnState) {
52
+ if (matchFunctionName(expression.functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.COUNT)) {
53
+ const aggregateColumnState = new QueryBuilderAggregateColumnState(projectionColumnState.projectionState.aggregationState, projectionColumnState, this);
54
+ aggregateColumnState.setLambdaParameterName(lambdaParam.name);
55
+ // count expression
56
+ assertTrue(expression.parametersValues.length === 1, `Can't process count() expression: count() expects no argument`);
57
+ // distinct expression
58
+ const distinctExpression = guaranteeType(expression.parametersValues[0], SimpleFunctionExpression, `Can't process '${this.getLabel(projectionColumnState)}' aggregate lambda: only support count() immediately following an expression`);
59
+ assertTrue(matchFunctionName(distinctExpression.functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.DISTINCT), `Can't process '${this.getLabel(projectionColumnState)}' aggregate lambda: only support count() immediately following distinct() expression`);
60
+ assertTrue(distinctExpression.parametersValues.length === 1, `Can't process distinct() expression: distinct() expects no argument`);
61
+ // variable
62
+ const variableExpression = guaranteeType(distinctExpression.parametersValues[0], VariableExpression, `Can't process distinct() expression: only support distinct() immediately following a variable expression`);
63
+ assertTrue(aggregateColumnState.lambdaParameterName === variableExpression.name, `Can't process distinct() expression: expects variable used in lambda body '${variableExpression.name}' to match lambda parameter '${aggregateColumnState.lambdaParameterName}'`);
64
+ // operator
65
+ assertTrue(this.isCompatibleWithColumn(aggregateColumnState.projectionColumnState), `Can't process disc expression: property is not compatible with operator`);
66
+ aggregateColumnState.setOperator(this);
67
+ return aggregateColumnState;
68
+ }
69
+ return undefined;
70
+ }
71
+ getReturnType(aggregateColumnState) {
72
+ const graph = aggregateColumnState.aggregationState.projectionState.queryBuilderState
73
+ .graphManagerState.graph;
74
+ return graph.getType(PRIMITIVE_TYPE.INTEGER);
75
+ }
76
+ }
77
+ //# sourceMappingURL=QueryBuilderAggregateOperator_DistinctCount.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderAggregateOperator_DistinctCount.js","sourceRoot":"","sources":["../../../src/stores/aggregateOperators/QueryBuilderAggregateOperator_DistinctCount.ts"],"names":[],"mappings":"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"}