@finos/legend-query-builder 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (608) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +3 -0
  3. package/lib/components/QueryBuilder.d.ts +22 -0
  4. package/lib/components/QueryBuilder.d.ts.map +1 -0
  5. package/lib/components/QueryBuilder.js +111 -0
  6. package/lib/components/QueryBuilder.js.map +1 -0
  7. package/lib/components/QueryBuilderComponentTestUtils.d.ts +24 -0
  8. package/lib/components/QueryBuilderComponentTestUtils.d.ts.map +1 -0
  9. package/lib/components/QueryBuilderComponentTestUtils.js +54 -0
  10. package/lib/components/QueryBuilderComponentTestUtils.js.map +1 -0
  11. package/lib/components/QueryBuilderParametersPanel.d.ts +31 -0
  12. package/lib/components/QueryBuilderParametersPanel.d.ts.map +1 -0
  13. package/lib/components/QueryBuilderParametersPanel.js +128 -0
  14. package/lib/components/QueryBuilderParametersPanel.js.map +1 -0
  15. package/lib/components/QueryBuilderPropertyExpressionEditor.d.ts +29 -0
  16. package/lib/components/QueryBuilderPropertyExpressionEditor.d.ts.map +1 -0
  17. package/lib/components/QueryBuilderPropertyExpressionEditor.js +116 -0
  18. package/lib/components/QueryBuilderPropertyExpressionEditor.js.map +1 -0
  19. package/lib/components/QueryBuilderResultPanel.d.ts +22 -0
  20. package/lib/components/QueryBuilderResultPanel.d.ts.map +1 -0
  21. package/lib/components/QueryBuilderResultPanel.js +242 -0
  22. package/lib/components/QueryBuilderResultPanel.js.map +1 -0
  23. package/lib/components/QueryBuilderSideBar.d.ts +41 -0
  24. package/lib/components/QueryBuilderSideBar.d.ts.map +1 -0
  25. package/lib/components/QueryBuilderSideBar.js +169 -0
  26. package/lib/components/QueryBuilderSideBar.js.map +1 -0
  27. package/lib/components/QueryBuilderTextEditor.d.ts +22 -0
  28. package/lib/components/QueryBuilderTextEditor.d.ts.map +1 -0
  29. package/lib/components/QueryBuilderTextEditor.js +48 -0
  30. package/lib/components/QueryBuilderTextEditor.js.map +1 -0
  31. package/lib/components/QueryBuilderUnsupportedQueryEditor.d.ts +22 -0
  32. package/lib/components/QueryBuilderUnsupportedQueryEditor.d.ts.map +1 -0
  33. package/lib/components/QueryBuilderUnsupportedQueryEditor.js +36 -0
  34. package/lib/components/QueryBuilderUnsupportedQueryEditor.js.map +1 -0
  35. package/lib/components/QueryBuilder_TestID.d.ts +26 -0
  36. package/lib/components/QueryBuilder_TestID.d.ts.map +1 -0
  37. package/lib/components/QueryBuilder_TestID.js +27 -0
  38. package/lib/components/QueryBuilder_TestID.js.map +1 -0
  39. package/lib/components/explorer/QueryBuilderExplorerPanel.d.ts +36 -0
  40. package/lib/components/explorer/QueryBuilderExplorerPanel.d.ts.map +1 -0
  41. package/lib/components/explorer/QueryBuilderExplorerPanel.js +340 -0
  42. package/lib/components/explorer/QueryBuilderExplorerPanel.js.map +1 -0
  43. package/lib/components/explorer/QueryBuilderFunctionsExplorerPanel.d.ts +22 -0
  44. package/lib/components/explorer/QueryBuilderFunctionsExplorerPanel.d.ts.map +1 -0
  45. package/lib/components/explorer/QueryBuilderFunctionsExplorerPanel.js +147 -0
  46. package/lib/components/explorer/QueryBuilderFunctionsExplorerPanel.js.map +1 -0
  47. package/lib/components/explorer/QueryBuilderMilestoneEditor.d.ts +22 -0
  48. package/lib/components/explorer/QueryBuilderMilestoneEditor.d.ts.map +1 -0
  49. package/lib/components/explorer/QueryBuilderMilestoneEditor.js +122 -0
  50. package/lib/components/explorer/QueryBuilderMilestoneEditor.js.map +1 -0
  51. package/lib/components/explorer/QueryBuilderPropertySearchPanel.d.ts +23 -0
  52. package/lib/components/explorer/QueryBuilderPropertySearchPanel.d.ts.map +1 -0
  53. package/lib/components/explorer/QueryBuilderPropertySearchPanel.js +200 -0
  54. package/lib/components/explorer/QueryBuilderPropertySearchPanel.js.map +1 -0
  55. package/lib/components/fetch-structure/QueryBuilderFetchStructurePanel.d.ts +22 -0
  56. package/lib/components/fetch-structure/QueryBuilderFetchStructurePanel.d.ts.map +1 -0
  57. package/lib/components/fetch-structure/QueryBuilderFetchStructurePanel.js +52 -0
  58. package/lib/components/fetch-structure/QueryBuilderFetchStructurePanel.js.map +1 -0
  59. package/lib/components/fetch-structure/QueryBuilderGraphFetchTreePanel.d.ts +31 -0
  60. package/lib/components/fetch-structure/QueryBuilderGraphFetchTreePanel.d.ts.map +1 -0
  61. package/lib/components/fetch-structure/QueryBuilderGraphFetchTreePanel.js +94 -0
  62. package/lib/components/fetch-structure/QueryBuilderGraphFetchTreePanel.js.map +1 -0
  63. package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.d.ts +30 -0
  64. package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.d.ts.map +1 -0
  65. package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.js +378 -0
  66. package/lib/components/fetch-structure/QueryBuilderPostFilterPanel.js.map +1 -0
  67. package/lib/components/fetch-structure/QueryBuilderProjectionPanel.d.ts +22 -0
  68. package/lib/components/fetch-structure/QueryBuilderProjectionPanel.d.ts.map +1 -0
  69. package/lib/components/fetch-structure/QueryBuilderProjectionPanel.js +216 -0
  70. package/lib/components/fetch-structure/QueryBuilderProjectionPanel.js.map +1 -0
  71. package/lib/components/fetch-structure/QueryBuilderResultModifierPanel.d.ts +22 -0
  72. package/lib/components/fetch-structure/QueryBuilderResultModifierPanel.d.ts.map +1 -0
  73. package/lib/components/fetch-structure/QueryBuilderResultModifierPanel.js +88 -0
  74. package/lib/components/fetch-structure/QueryBuilderResultModifierPanel.js.map +1 -0
  75. package/lib/components/filter/QueryBuilderFilterPanel.d.ts +22 -0
  76. package/lib/components/filter/QueryBuilderFilterPanel.d.ts.map +1 -0
  77. package/lib/components/filter/QueryBuilderFilterPanel.js +316 -0
  78. package/lib/components/filter/QueryBuilderFilterPanel.js.map +1 -0
  79. package/lib/components/shared/ElementIconUtils.d.ts +18 -0
  80. package/lib/components/shared/ElementIconUtils.d.ts.map +1 -0
  81. package/lib/components/shared/ElementIconUtils.js +37 -0
  82. package/lib/components/shared/ElementIconUtils.js.map +1 -0
  83. package/lib/components/shared/QueryBuilderLambdaEditor.d.ts +42 -0
  84. package/lib/components/shared/QueryBuilderLambdaEditor.d.ts.map +1 -0
  85. package/lib/components/shared/QueryBuilderLambdaEditor.js +47 -0
  86. package/lib/components/shared/QueryBuilderLambdaEditor.js.map +1 -0
  87. package/lib/components/shared/QueryBuilderPanelIssueCountBadge.d.ts +20 -0
  88. package/lib/components/shared/QueryBuilderPanelIssueCountBadge.d.ts.map +1 -0
  89. package/lib/components/shared/QueryBuilderPanelIssueCountBadge.js +28 -0
  90. package/lib/components/shared/QueryBuilderPanelIssueCountBadge.js.map +1 -0
  91. package/lib/components/shared/QueryBuilderPropertyInfoTooltip.d.ts +26 -0
  92. package/lib/components/shared/QueryBuilderPropertyInfoTooltip.d.ts.map +1 -0
  93. package/lib/components/shared/QueryBuilderPropertyInfoTooltip.js +32 -0
  94. package/lib/components/shared/QueryBuilderPropertyInfoTooltip.js.map +1 -0
  95. package/lib/components/workflows/ClassQueryBuilder.d.ts +18 -0
  96. package/lib/components/workflows/ClassQueryBuilder.d.ts.map +1 -0
  97. package/lib/components/workflows/ClassQueryBuilder.js +87 -0
  98. package/lib/components/workflows/ClassQueryBuilder.js.map +1 -0
  99. package/lib/components/workflows/MappingQueryBuilder.d.ts +18 -0
  100. package/lib/components/workflows/MappingQueryBuilder.d.ts.map +1 -0
  101. package/lib/components/workflows/MappingQueryBuilder.js +88 -0
  102. package/lib/components/workflows/MappingQueryBuilder.js.map +1 -0
  103. package/lib/components/workflows/ServiceQueryBuilder.d.ts +18 -0
  104. package/lib/components/workflows/ServiceQueryBuilder.d.ts.map +1 -0
  105. package/lib/components/workflows/ServiceQueryBuilder.js +69 -0
  106. package/lib/components/workflows/ServiceQueryBuilder.js.map +1 -0
  107. package/lib/graphManager/QueryBuilderSupportedFunctions.d.ts +60 -0
  108. package/lib/graphManager/QueryBuilderSupportedFunctions.d.ts.map +1 -0
  109. package/lib/graphManager/QueryBuilderSupportedFunctions.js +65 -0
  110. package/lib/graphManager/QueryBuilderSupportedFunctions.js.map +1 -0
  111. package/lib/graphManager/QueryBuilder_GraphManagerPlugin.d.ts +21 -0
  112. package/lib/graphManager/QueryBuilder_GraphManagerPlugin.d.ts.map +1 -0
  113. package/lib/graphManager/QueryBuilder_GraphManagerPlugin.js +27 -0
  114. package/lib/graphManager/QueryBuilder_GraphManagerPlugin.js.map +1 -0
  115. package/lib/graphManager/QueryBuilder_GraphManagerPreset.d.ts +24 -0
  116. package/lib/graphManager/QueryBuilder_GraphManagerPreset.d.ts.map +1 -0
  117. package/lib/graphManager/QueryBuilder_GraphManagerPreset.js +32 -0
  118. package/lib/graphManager/QueryBuilder_GraphManagerPreset.js.map +1 -0
  119. package/lib/graphManager/action/analytics/MappingRuntimeCompatibilityAnalysis.d.ts +21 -0
  120. package/lib/graphManager/action/analytics/MappingRuntimeCompatibilityAnalysis.d.ts.map +1 -0
  121. package/lib/graphManager/action/analytics/MappingRuntimeCompatibilityAnalysis.js +20 -0
  122. package/lib/graphManager/action/analytics/MappingRuntimeCompatibilityAnalysis.js.map +1 -0
  123. package/lib/graphManager/action/analytics/ServiceExecutionAnalysis.d.ts +21 -0
  124. package/lib/graphManager/action/analytics/ServiceExecutionAnalysis.d.ts.map +1 -0
  125. package/lib/graphManager/action/analytics/ServiceExecutionAnalysis.js +20 -0
  126. package/lib/graphManager/action/analytics/ServiceExecutionAnalysis.js.map +1 -0
  127. package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtension.d.ts +25 -0
  128. package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtension.d.ts.map +1 -0
  129. package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtension.js +21 -0
  130. package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtension.js.map +1 -0
  131. package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtensionBuilder.d.ts +18 -0
  132. package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtensionBuilder.d.ts.map +1 -0
  133. package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtensionBuilder.js +20 -0
  134. package/lib/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtensionBuilder.js.map +1 -0
  135. package/lib/graphManager/protocol/pure/QueryBuilder_PureProtocolProcessorPlugin.d.ts +22 -0
  136. package/lib/graphManager/protocol/pure/QueryBuilder_PureProtocolProcessorPlugin.d.ts.map +1 -0
  137. package/lib/graphManager/protocol/pure/QueryBuilder_PureProtocolProcessorPlugin.js +70 -0
  138. package/lib/graphManager/protocol/pure/QueryBuilder_PureProtocolProcessorPlugin.js.map +1 -0
  139. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_FunctionExpressionBuilder.d.ts +22 -0
  140. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_FunctionExpressionBuilder.d.ts.map +1 -0
  141. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_FunctionExpressionBuilder.js +207 -0
  142. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_FunctionExpressionBuilder.js.map +1 -0
  143. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PropertyExpressionTypeInferenceBuilder.d.ts +18 -0
  144. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PropertyExpressionTypeInferenceBuilder.d.ts.map +1 -0
  145. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PropertyExpressionTypeInferenceBuilder.js +18 -0
  146. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PropertyExpressionTypeInferenceBuilder.js.map +1 -0
  147. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PureGraphManagerExtension.d.ts +29 -0
  148. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PureGraphManagerExtension.d.ts.map +1 -0
  149. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PureGraphManagerExtension.js +182 -0
  150. package/lib/graphManager/protocol/pure/v1/V1_QueryBuilder_PureGraphManagerExtension.js.map +1 -0
  151. package/lib/index.css +17 -0
  152. package/lib/index.css.map +1 -0
  153. package/lib/index.d.ts +28 -0
  154. package/lib/index.d.ts.map +1 -0
  155. package/lib/index.js +26 -0
  156. package/lib/index.js.map +1 -0
  157. package/lib/package.json +95 -0
  158. package/lib/stores/QueryBuilderBootstraper.d.ts +17 -0
  159. package/lib/stores/QueryBuilderBootstraper.d.ts.map +1 -0
  160. package/lib/stores/QueryBuilderBootstraper.js +22 -0
  161. package/lib/stores/QueryBuilderBootstraper.js.map +1 -0
  162. package/lib/stores/QueryBuilderChangeDetectionState.d.ts +25 -0
  163. package/lib/stores/QueryBuilderChangeDetectionState.d.ts.map +1 -0
  164. package/lib/stores/QueryBuilderChangeDetectionState.js +32 -0
  165. package/lib/stores/QueryBuilderChangeDetectionState.js.map +1 -0
  166. package/lib/stores/QueryBuilderConfig.d.ts +32 -0
  167. package/lib/stores/QueryBuilderConfig.d.ts.map +1 -0
  168. package/lib/stores/QueryBuilderConfig.js +34 -0
  169. package/lib/stores/QueryBuilderConfig.js.map +1 -0
  170. package/lib/stores/QueryBuilderGroupOperationHelper.d.ts +22 -0
  171. package/lib/stores/QueryBuilderGroupOperationHelper.d.ts.map +1 -0
  172. package/lib/stores/QueryBuilderGroupOperationHelper.js +43 -0
  173. package/lib/stores/QueryBuilderGroupOperationHelper.js.map +1 -0
  174. package/lib/stores/QueryBuilderMilestoningState.d.ts +32 -0
  175. package/lib/stores/QueryBuilderMilestoningState.d.ts.map +1 -0
  176. package/lib/stores/QueryBuilderMilestoningState.js +95 -0
  177. package/lib/stores/QueryBuilderMilestoningState.js.map +1 -0
  178. package/lib/stores/QueryBuilderParametersState.d.ts +28 -0
  179. package/lib/stores/QueryBuilderParametersState.d.ts.map +1 -0
  180. package/lib/stores/QueryBuilderParametersState.js +39 -0
  181. package/lib/stores/QueryBuilderParametersState.js.map +1 -0
  182. package/lib/stores/QueryBuilderPreviewDataHelper.d.ts +26 -0
  183. package/lib/stores/QueryBuilderPreviewDataHelper.d.ts.map +1 -0
  184. package/lib/stores/QueryBuilderPreviewDataHelper.js +138 -0
  185. package/lib/stores/QueryBuilderPreviewDataHelper.js.map +1 -0
  186. package/lib/stores/QueryBuilderPropertyEditorState.d.ts +62 -0
  187. package/lib/stores/QueryBuilderPropertyEditorState.d.ts.map +1 -0
  188. package/lib/stores/QueryBuilderPropertyEditorState.js +395 -0
  189. package/lib/stores/QueryBuilderPropertyEditorState.js.map +1 -0
  190. package/lib/stores/QueryBuilderResultState.d.ts +41 -0
  191. package/lib/stores/QueryBuilderResultState.d.ts.map +1 -0
  192. package/lib/stores/QueryBuilderResultState.js +176 -0
  193. package/lib/stores/QueryBuilderResultState.js.map +1 -0
  194. package/lib/stores/QueryBuilderState.d.ts +110 -0
  195. package/lib/stores/QueryBuilderState.d.ts.map +1 -0
  196. package/lib/stores/QueryBuilderState.js +334 -0
  197. package/lib/stores/QueryBuilderState.js.map +1 -0
  198. package/lib/stores/QueryBuilderStateBuilder.d.ts +124 -0
  199. package/lib/stores/QueryBuilderStateBuilder.d.ts.map +1 -0
  200. package/lib/stores/QueryBuilderStateBuilder.js +311 -0
  201. package/lib/stores/QueryBuilderStateBuilder.js.map +1 -0
  202. package/lib/stores/QueryBuilderStateTestUtils.d.ts +24 -0
  203. package/lib/stores/QueryBuilderStateTestUtils.d.ts.map +1 -0
  204. package/lib/stores/QueryBuilderStateTestUtils.js +50 -0
  205. package/lib/stores/QueryBuilderStateTestUtils.js.map +1 -0
  206. package/lib/stores/QueryBuilderTextEditorState.d.ts +49 -0
  207. package/lib/stores/QueryBuilderTextEditorState.d.ts.map +1 -0
  208. package/lib/stores/QueryBuilderTextEditorState.js +145 -0
  209. package/lib/stores/QueryBuilderTextEditorState.js.map +1 -0
  210. package/lib/stores/QueryBuilderTypeaheadHelper.d.ts +24 -0
  211. package/lib/stores/QueryBuilderTypeaheadHelper.d.ts.map +1 -0
  212. package/lib/stores/QueryBuilderTypeaheadHelper.js +85 -0
  213. package/lib/stores/QueryBuilderTypeaheadHelper.js.map +1 -0
  214. package/lib/stores/QueryBuilderUnsupportedQueryState.d.ts +26 -0
  215. package/lib/stores/QueryBuilderUnsupportedQueryState.d.ts.map +1 -0
  216. package/lib/stores/QueryBuilderUnsupportedQueryState.js +37 -0
  217. package/lib/stores/QueryBuilderUnsupportedQueryState.js.map +1 -0
  218. package/lib/stores/QueryBuilderValueSpecificationBuilder.d.ts +20 -0
  219. package/lib/stores/QueryBuilderValueSpecificationBuilder.d.ts.map +1 -0
  220. package/lib/stores/QueryBuilderValueSpecificationBuilder.js +87 -0
  221. package/lib/stores/QueryBuilderValueSpecificationBuilder.js.map +1 -0
  222. package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.d.ts +27 -0
  223. package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.d.ts.map +1 -0
  224. package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.js +161 -0
  225. package/lib/stores/QueryBuilderValueSpecificationBuilderHelper.js.map +1 -0
  226. package/lib/stores/QueryBuilderValueSpecificationHelper.d.ts +61 -0
  227. package/lib/stores/QueryBuilderValueSpecificationHelper.d.ts.map +1 -0
  228. package/lib/stores/QueryBuilderValueSpecificationHelper.js +235 -0
  229. package/lib/stores/QueryBuilderValueSpecificationHelper.js.map +1 -0
  230. package/lib/stores/explorer/QueryBuilderExplorerState.d.ts +99 -0
  231. package/lib/stores/explorer/QueryBuilderExplorerState.d.ts.map +1 -0
  232. package/lib/stores/explorer/QueryBuilderExplorerState.js +446 -0
  233. package/lib/stores/explorer/QueryBuilderExplorerState.js.map +1 -0
  234. package/lib/stores/explorer/QueryBuilderPropertySearchState.d.ts +46 -0
  235. package/lib/stores/explorer/QueryBuilderPropertySearchState.d.ts.map +1 -0
  236. package/lib/stores/explorer/QueryBuilderPropertySearchState.js +242 -0
  237. package/lib/stores/explorer/QueryBuilderPropertySearchState.js.map +1 -0
  238. package/lib/stores/explorer/QueryFunctionsExplorerState.d.ts +59 -0
  239. package/lib/stores/explorer/QueryFunctionsExplorerState.d.ts.map +1 -0
  240. package/lib/stores/explorer/QueryFunctionsExplorerState.js +228 -0
  241. package/lib/stores/explorer/QueryFunctionsExplorerState.js.map +1 -0
  242. package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.d.ts +40 -0
  243. package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.d.ts.map +1 -0
  244. package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.js +34 -0
  245. package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.js.map +1 -0
  246. package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.d.ts +27 -0
  247. package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.d.ts.map +1 -0
  248. package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.js +73 -0
  249. package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.js.map +1 -0
  250. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.d.ts +49 -0
  251. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.d.ts.map +1 -0
  252. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.js +157 -0
  253. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.js.map +1 -0
  254. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeStateBuilder.d.ts +20 -0
  255. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeStateBuilder.d.ts.map +1 -0
  256. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeStateBuilder.js +62 -0
  257. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeStateBuilder.js.map +1 -0
  258. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.d.ts +42 -0
  259. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.d.ts.map +1 -0
  260. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.js +173 -0
  261. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.js.map +1 -0
  262. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchValueSpecificationBuilder.d.ts +26 -0
  263. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchValueSpecificationBuilder.d.ts.map +1 -0
  264. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchValueSpecificationBuilder.js +72 -0
  265. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchValueSpecificationBuilder.js.map +1 -0
  266. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.d.ts +73 -0
  267. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.d.ts.map +1 -0
  268. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.js +187 -0
  269. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.js.map +1 -0
  270. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.d.ts +68 -0
  271. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.d.ts.map +1 -0
  272. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.js +305 -0
  273. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.js.map +1 -0
  274. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionStateBuilder.d.ts +25 -0
  275. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionStateBuilder.d.ts.map +1 -0
  276. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionStateBuilder.js +186 -0
  277. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionStateBuilder.js.map +1 -0
  278. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionValueSpecificationBuilder.d.ts +26 -0
  279. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionValueSpecificationBuilder.d.ts.map +1 -0
  280. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionValueSpecificationBuilder.js +189 -0
  281. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionValueSpecificationBuilder.js.map +1 -0
  282. package/lib/stores/fetch-structure/projection/QueryResultSetModifierState.d.ts +43 -0
  283. package/lib/stores/fetch-structure/projection/QueryResultSetModifierState.d.ts.map +1 -0
  284. package/lib/stores/fetch-structure/projection/QueryResultSetModifierState.js +77 -0
  285. package/lib/stores/fetch-structure/projection/QueryResultSetModifierState.js.map +1 -0
  286. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.d.ts +32 -0
  287. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.d.ts.map +1 -0
  288. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.js +36 -0
  289. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.js.map +1 -0
  290. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperatorLoader.d.ts +18 -0
  291. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperatorLoader.d.ts.map +1 -0
  292. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperatorLoader.js +38 -0
  293. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperatorLoader.js.map +1 -0
  294. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.d.ts +42 -0
  295. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.d.ts.map +1 -0
  296. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.js +103 -0
  297. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.js.map +1 -0
  298. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationStateBuilder.d.ts +20 -0
  299. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationStateBuilder.d.ts.map +1 -0
  300. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationStateBuilder.js +96 -0
  301. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationStateBuilder.js.map +1 -0
  302. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperatorHelper.d.ts +22 -0
  303. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperatorHelper.d.ts.map +1 -0
  304. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperatorHelper.js +40 -0
  305. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperatorHelper.js.map +1 -0
  306. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.d.ts +27 -0
  307. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.d.ts.map +1 -0
  308. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.js +50 -0
  309. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.js.map +1 -0
  310. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.d.ts +27 -0
  311. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.d.ts.map +1 -0
  312. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.js +55 -0
  313. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.js.map +1 -0
  314. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.d.ts +26 -0
  315. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.d.ts.map +1 -0
  316. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.js +50 -0
  317. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.js.map +1 -0
  318. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.d.ts +27 -0
  319. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.d.ts.map +1 -0
  320. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.js +78 -0
  321. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.js.map +1 -0
  322. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.d.ts +27 -0
  323. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.d.ts.map +1 -0
  324. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.js +67 -0
  325. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.js.map +1 -0
  326. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.d.ts +26 -0
  327. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.d.ts.map +1 -0
  328. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.js +86 -0
  329. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.js.map +1 -0
  330. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.d.ts +26 -0
  331. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.d.ts.map +1 -0
  332. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.js +86 -0
  333. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.js.map +1 -0
  334. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.d.ts +27 -0
  335. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.d.ts.map +1 -0
  336. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.js +50 -0
  337. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.js.map +1 -0
  338. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.d.ts +27 -0
  339. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.d.ts.map +1 -0
  340. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.js +50 -0
  341. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.js.map +1 -0
  342. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.d.ts +26 -0
  343. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.d.ts.map +1 -0
  344. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.js +45 -0
  345. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.js.map +1 -0
  346. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.d.ts +29 -0
  347. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.d.ts.map +1 -0
  348. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.js +30 -0
  349. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.js.map +1 -0
  350. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperatorLoader.d.ts +18 -0
  351. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperatorLoader.d.ts.map +1 -0
  352. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperatorLoader.js +44 -0
  353. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperatorLoader.js.map +1 -0
  354. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.d.ts +135 -0
  355. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.d.ts.map +1 -0
  356. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.js +585 -0
  357. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.js.map +1 -0
  358. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterStateBuilder.d.ts +22 -0
  359. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterStateBuilder.d.ts.map +1 -0
  360. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterStateBuilder.js +122 -0
  361. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterStateBuilder.js.map +1 -0
  362. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.d.ts +19 -0
  363. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.d.ts.map +1 -0
  364. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.js +79 -0
  365. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.js.map +1 -0
  366. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperatorHelper.d.ts +23 -0
  367. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperatorHelper.d.ts.map +1 -0
  368. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperatorHelper.js +73 -0
  369. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperatorHelper.js.map +1 -0
  370. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.d.ts +32 -0
  371. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.d.ts.map +1 -0
  372. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.js +75 -0
  373. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.js.map +1 -0
  374. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.d.ts +32 -0
  375. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.d.ts.map +1 -0
  376. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.js +75 -0
  377. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.js.map +1 -0
  378. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.d.ts +32 -0
  379. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.d.ts.map +1 -0
  380. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.js +118 -0
  381. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.js.map +1 -0
  382. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.d.ts +27 -0
  383. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.d.ts.map +1 -0
  384. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.js +81 -0
  385. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.js.map +1 -0
  386. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.d.ts +24 -0
  387. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.d.ts.map +1 -0
  388. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.js +43 -0
  389. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.js.map +1 -0
  390. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.d.ts +32 -0
  391. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.d.ts.map +1 -0
  392. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.js +104 -0
  393. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.js.map +1 -0
  394. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.d.ts +33 -0
  395. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.d.ts.map +1 -0
  396. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.js +67 -0
  397. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.js.map +1 -0
  398. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.d.ts +27 -0
  399. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.d.ts.map +1 -0
  400. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.js +81 -0
  401. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.js.map +1 -0
  402. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.d.ts +24 -0
  403. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.d.ts.map +1 -0
  404. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.js +43 -0
  405. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.js.map +1 -0
  406. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.d.ts +32 -0
  407. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.d.ts.map +1 -0
  408. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.js +75 -0
  409. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.js.map +1 -0
  410. package/lib/stores/filter/QueryBuilderFilterOperator.d.ts +27 -0
  411. package/lib/stores/filter/QueryBuilderFilterOperator.d.ts.map +1 -0
  412. package/lib/stores/filter/QueryBuilderFilterOperator.js +20 -0
  413. package/lib/stores/filter/QueryBuilderFilterOperator.js.map +1 -0
  414. package/lib/stores/filter/QueryBuilderFilterOperatorLoader.d.ts +18 -0
  415. package/lib/stores/filter/QueryBuilderFilterOperatorLoader.d.ts.map +1 -0
  416. package/lib/stores/filter/QueryBuilderFilterOperatorLoader.js +44 -0
  417. package/lib/stores/filter/QueryBuilderFilterOperatorLoader.js.map +1 -0
  418. package/lib/stores/filter/QueryBuilderFilterState.d.ts +123 -0
  419. package/lib/stores/filter/QueryBuilderFilterState.d.ts.map +1 -0
  420. package/lib/stores/filter/QueryBuilderFilterState.js +531 -0
  421. package/lib/stores/filter/QueryBuilderFilterState.js.map +1 -0
  422. package/lib/stores/filter/QueryBuilderFilterStateBuilder.d.ts +19 -0
  423. package/lib/stores/filter/QueryBuilderFilterStateBuilder.d.ts.map +1 -0
  424. package/lib/stores/filter/QueryBuilderFilterStateBuilder.js +74 -0
  425. package/lib/stores/filter/QueryBuilderFilterStateBuilder.js.map +1 -0
  426. package/lib/stores/filter/QueryBuilderFilterValueSpecificationBuilder.d.ts +19 -0
  427. package/lib/stores/filter/QueryBuilderFilterValueSpecificationBuilder.d.ts.map +1 -0
  428. package/lib/stores/filter/QueryBuilderFilterValueSpecificationBuilder.js +78 -0
  429. package/lib/stores/filter/QueryBuilderFilterValueSpecificationBuilder.js.map +1 -0
  430. package/lib/stores/filter/operators/QueryBuilderFilterOperatorHelper.d.ts +21 -0
  431. package/lib/stores/filter/operators/QueryBuilderFilterOperatorHelper.d.ts.map +1 -0
  432. package/lib/stores/filter/operators/QueryBuilderFilterOperatorHelper.js +257 -0
  433. package/lib/stores/filter/operators/QueryBuilderFilterOperatorHelper.js.map +1 -0
  434. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.d.ts +32 -0
  435. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.d.ts.map +1 -0
  436. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.js +71 -0
  437. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.js.map +1 -0
  438. package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.d.ts +32 -0
  439. package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.d.ts.map +1 -0
  440. package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.js +71 -0
  441. package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.js.map +1 -0
  442. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.d.ts +32 -0
  443. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.d.ts.map +1 -0
  444. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.js +115 -0
  445. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.js.map +1 -0
  446. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.d.ts +27 -0
  447. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.d.ts.map +1 -0
  448. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.js +83 -0
  449. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.js.map +1 -0
  450. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.d.ts +27 -0
  451. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.d.ts.map +1 -0
  452. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.js +83 -0
  453. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.js.map +1 -0
  454. package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.d.ts +32 -0
  455. package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.d.ts.map +1 -0
  456. package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.js +103 -0
  457. package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.js.map +1 -0
  458. package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.d.ts +32 -0
  459. package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.d.ts.map +1 -0
  460. package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.js +65 -0
  461. package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.js.map +1 -0
  462. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.d.ts +27 -0
  463. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.d.ts.map +1 -0
  464. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.js +83 -0
  465. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.js.map +1 -0
  466. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.d.ts +27 -0
  467. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.d.ts.map +1 -0
  468. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.js +83 -0
  469. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.js.map +1 -0
  470. package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.d.ts +32 -0
  471. package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.d.ts.map +1 -0
  472. package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.js +71 -0
  473. package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.js.map +1 -0
  474. package/lib/stores/workflows/ClassQueryBuilderState.d.ts +35 -0
  475. package/lib/stores/workflows/ClassQueryBuilderState.d.ts.map +1 -0
  476. package/lib/stores/workflows/ClassQueryBuilderState.js +57 -0
  477. package/lib/stores/workflows/ClassQueryBuilderState.js.map +1 -0
  478. package/lib/stores/workflows/MappingQueryBuilderState.d.ts +33 -0
  479. package/lib/stores/workflows/MappingQueryBuilderState.d.ts.map +1 -0
  480. package/lib/stores/workflows/MappingQueryBuilderState.js +55 -0
  481. package/lib/stores/workflows/MappingQueryBuilderState.js.map +1 -0
  482. package/lib/stores/workflows/ServiceQueryBuilderState.d.ts +44 -0
  483. package/lib/stores/workflows/ServiceQueryBuilderState.d.ts.map +1 -0
  484. package/lib/stores/workflows/ServiceQueryBuilderState.js +90 -0
  485. package/lib/stores/workflows/ServiceQueryBuilderState.js.map +1 -0
  486. package/package.json +95 -0
  487. package/src/components/QueryBuilder.tsx +411 -0
  488. package/src/components/QueryBuilderComponentTestUtils.tsx +122 -0
  489. package/src/components/QueryBuilderParametersPanel.tsx +431 -0
  490. package/src/components/QueryBuilderPropertyExpressionEditor.tsx +376 -0
  491. package/src/components/QueryBuilderResultPanel.tsx +640 -0
  492. package/src/components/QueryBuilderSideBar.tsx +421 -0
  493. package/src/components/QueryBuilderTextEditor.tsx +127 -0
  494. package/src/components/QueryBuilderUnsupportedQueryEditor.tsx +88 -0
  495. package/src/components/QueryBuilder_TestID.ts +26 -0
  496. package/src/components/explorer/QueryBuilderExplorerPanel.tsx +934 -0
  497. package/src/components/explorer/QueryBuilderFunctionsExplorerPanel.tsx +554 -0
  498. package/src/components/explorer/QueryBuilderMilestoneEditor.tsx +296 -0
  499. package/src/components/explorer/QueryBuilderPropertySearchPanel.tsx +617 -0
  500. package/src/components/fetch-structure/QueryBuilderFetchStructurePanel.tsx +112 -0
  501. package/src/components/fetch-structure/QueryBuilderGraphFetchTreePanel.tsx +276 -0
  502. package/src/components/fetch-structure/QueryBuilderPostFilterPanel.tsx +1103 -0
  503. package/src/components/fetch-structure/QueryBuilderProjectionPanel.tsx +649 -0
  504. package/src/components/fetch-structure/QueryBuilderResultModifierPanel.tsx +254 -0
  505. package/src/components/filter/QueryBuilderFilterPanel.tsx +891 -0
  506. package/src/components/shared/ElementIconUtils.tsx +47 -0
  507. package/src/components/shared/QueryBuilderLambdaEditor.tsx +120 -0
  508. package/src/components/shared/QueryBuilderPanelIssueCountBadge.tsx +40 -0
  509. package/src/components/shared/QueryBuilderPropertyInfoTooltip.tsx +87 -0
  510. package/src/components/workflows/ClassQueryBuilder.tsx +198 -0
  511. package/src/components/workflows/MappingQueryBuilder.tsx +195 -0
  512. package/src/components/workflows/ServiceQueryBuilder.tsx +192 -0
  513. package/src/graphManager/QueryBuilderSupportedFunctions.ts +67 -0
  514. package/src/graphManager/QueryBuilder_GraphManagerPlugin.ts +32 -0
  515. package/src/graphManager/QueryBuilder_GraphManagerPreset.ts +33 -0
  516. package/src/graphManager/action/analytics/MappingRuntimeCompatibilityAnalysis.ts +22 -0
  517. package/src/graphManager/action/analytics/ServiceExecutionAnalysis.ts +22 -0
  518. package/src/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtension.ts +47 -0
  519. package/src/graphManager/protocol/pure/QueryBuilder_PureGraphManagerExtensionBuilder.ts +27 -0
  520. package/src/graphManager/protocol/pure/QueryBuilder_PureProtocolProcessorPlugin.ts +167 -0
  521. package/src/graphManager/protocol/pure/v1/V1_QueryBuilder_FunctionExpressionBuilder.ts +571 -0
  522. package/src/graphManager/protocol/pure/v1/V1_QueryBuilder_PropertyExpressionTypeInferenceBuilder.ts +28 -0
  523. package/src/graphManager/protocol/pure/v1/V1_QueryBuilder_PureGraphManagerExtension.ts +296 -0
  524. package/src/index.ts +38 -0
  525. package/src/stores/QueryBuilderBootstraper.ts +23 -0
  526. package/src/stores/QueryBuilderChangeDetectionState.ts +37 -0
  527. package/src/stores/QueryBuilderConfig.ts +34 -0
  528. package/src/stores/QueryBuilderGroupOperationHelper.ts +54 -0
  529. package/src/stores/QueryBuilderMilestoningState.ts +164 -0
  530. package/src/stores/QueryBuilderParametersState.ts +52 -0
  531. package/src/stores/QueryBuilderPreviewDataHelper.ts +202 -0
  532. package/src/stores/QueryBuilderPropertyEditorState.ts +668 -0
  533. package/src/stores/QueryBuilderResultState.ts +281 -0
  534. package/src/stores/QueryBuilderState.ts +465 -0
  535. package/src/stores/QueryBuilderStateBuilder.ts +585 -0
  536. package/src/stores/QueryBuilderStateTestUtils.ts +99 -0
  537. package/src/stores/QueryBuilderTextEditorState.ts +203 -0
  538. package/src/stores/QueryBuilderTypeaheadHelper.ts +152 -0
  539. package/src/stores/QueryBuilderUnsupportedQueryState.ts +44 -0
  540. package/src/stores/QueryBuilderValueSpecificationBuilder.ts +179 -0
  541. package/src/stores/QueryBuilderValueSpecificationBuilderHelper.ts +256 -0
  542. package/src/stores/QueryBuilderValueSpecificationHelper.ts +359 -0
  543. package/src/stores/explorer/QueryBuilderExplorerState.ts +798 -0
  544. package/src/stores/explorer/QueryBuilderPropertySearchState.ts +333 -0
  545. package/src/stores/explorer/QueryFunctionsExplorerState.ts +375 -0
  546. package/src/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.ts +65 -0
  547. package/src/stores/fetch-structure/QueryBuilderFetchStructureState.ts +107 -0
  548. package/src/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.ts +240 -0
  549. package/src/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeStateBuilder.ts +131 -0
  550. package/src/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.ts +282 -0
  551. package/src/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchValueSpecificationBuilder.ts +154 -0
  552. package/src/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.ts +327 -0
  553. package/src/stores/fetch-structure/projection/QueryBuilderProjectionState.ts +569 -0
  554. package/src/stores/fetch-structure/projection/QueryBuilderProjectionStateBuilder.ts +426 -0
  555. package/src/stores/fetch-structure/projection/QueryBuilderProjectionValueSpecificationBuilder.ts +416 -0
  556. package/src/stores/fetch-structure/projection/QueryResultSetModifierState.ts +95 -0
  557. package/src/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.ts +79 -0
  558. package/src/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperatorLoader.ts +41 -0
  559. package/src/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.ts +145 -0
  560. package/src/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationStateBuilder.ts +228 -0
  561. package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperatorHelper.ts +109 -0
  562. package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.ts +98 -0
  563. package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.ts +106 -0
  564. package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.ts +96 -0
  565. package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.ts +173 -0
  566. package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.ts +155 -0
  567. package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.ts +174 -0
  568. package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.ts +174 -0
  569. package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.ts +98 -0
  570. package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.ts +98 -0
  571. package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.ts +88 -0
  572. package/src/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.ts +66 -0
  573. package/src/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperatorLoader.ts +65 -0
  574. package/src/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.ts +807 -0
  575. package/src/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterStateBuilder.ts +297 -0
  576. package/src/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.ts +121 -0
  577. package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperatorHelper.ts +129 -0
  578. package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.ts +140 -0
  579. package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.ts +135 -0
  580. package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.ts +218 -0
  581. package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.ts +143 -0
  582. package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.ts +70 -0
  583. package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.ts +183 -0
  584. package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.ts +113 -0
  585. package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.ts +143 -0
  586. package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.ts +70 -0
  587. package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.ts +135 -0
  588. package/src/stores/filter/QueryBuilderFilterOperator.ts +52 -0
  589. package/src/stores/filter/QueryBuilderFilterOperatorLoader.ts +65 -0
  590. package/src/stores/filter/QueryBuilderFilterState.ts +736 -0
  591. package/src/stores/filter/QueryBuilderFilterStateBuilder.ts +155 -0
  592. package/src/stores/filter/QueryBuilderFilterValueSpecificationBuilder.ts +120 -0
  593. package/src/stores/filter/operators/QueryBuilderFilterOperatorHelper.ts +524 -0
  594. package/src/stores/filter/operators/QueryBuilderFilterOperator_Contain.ts +134 -0
  595. package/src/stores/filter/operators/QueryBuilderFilterOperator_EndWith.ts +134 -0
  596. package/src/stores/filter/operators/QueryBuilderFilterOperator_Equal.ts +211 -0
  597. package/src/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.ts +145 -0
  598. package/src/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.ts +145 -0
  599. package/src/stores/filter/operators/QueryBuilderFilterOperator_In.ts +181 -0
  600. package/src/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.ts +125 -0
  601. package/src/stores/filter/operators/QueryBuilderFilterOperator_LessThan.ts +145 -0
  602. package/src/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.ts +145 -0
  603. package/src/stores/filter/operators/QueryBuilderFilterOperator_StartWith.ts +134 -0
  604. package/src/stores/workflows/ClassQueryBuilderState.ts +80 -0
  605. package/src/stores/workflows/MappingQueryBuilderState.ts +86 -0
  606. package/src/stores/workflows/ServiceQueryBuilderState.ts +143 -0
  607. package/tsconfig.json +166 -0
  608. package/tsconfig.package.json +38 -0
@@ -0,0 +1,122 @@
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 { LambdaFunctionInstanceValue, AbstractPropertyExpression, extractElementNameFromPath, PrimitiveInstanceValue, matchFunctionName, VariableExpression, FunctionExpression, } from '@finos/legend-graph';
17
+ import { assertTrue, assertType, guaranteeIsString, guaranteeNonNullable, guaranteeType, UnsupportedOperationError, } from '@finos/legend-shared';
18
+ import { getTDSColumnDerivedProperyFromType, PostFilterConditionState, QueryBuilderPostFilterTreeConditionNodeData, QueryBuilderPostFilterTreeGroupNodeData, TDS_COLUMN_GETTER, getTypeFromDerivedProperty, } from './QueryBuilderPostFilterState.js';
19
+ import { QueryBuilderDerivationProjectionColumnState, } from '../QueryBuilderProjectionColumnState.js';
20
+ import { toGroupOperation } from '../../../QueryBuilderGroupOperationHelper.js';
21
+ import { QueryBuilderProjectionState } from '../QueryBuilderProjectionState.js';
22
+ import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../../../graphManager/QueryBuilderSupportedFunctions.js';
23
+ const findProjectionColumnState = (propertyExpression, postFilterState) => {
24
+ const projectionState = postFilterState.projectionState;
25
+ const properyExpressionName = propertyExpression.func.name;
26
+ assertTrue(Object.values(TDS_COLUMN_GETTER).includes(properyExpressionName), `Can't process TDS column expression: TDS column property '${properyExpressionName}' not supported. Supported types are ${Object.values(TDS_COLUMN_GETTER).join(',')}`);
27
+ const tdsColumnGetter = properyExpressionName;
28
+ const columnNameExpression = propertyExpression.parametersValues[1];
29
+ const columnName = guaranteeIsString(guaranteeType(columnNameExpression, PrimitiveInstanceValue, 'Can`t process TDS column expression: Column should be a primitive instance value').values[0], 'Can`t process TDS column expression: Column should be a string primitive instance value');
30
+ const columnStates = [
31
+ ...projectionState.aggregationState.columns,
32
+ ...projectionState.columns,
33
+ ];
34
+ const columnState = guaranteeNonNullable(columnStates.find((c) => c.columnName === columnName));
35
+ if (tdsColumnGetter !== TDS_COLUMN_GETTER.IS_NULL &&
36
+ tdsColumnGetter !== TDS_COLUMN_GETTER.IS_NOT_NULL) {
37
+ if (columnState instanceof QueryBuilderDerivationProjectionColumnState) {
38
+ const type = getTypeFromDerivedProperty(tdsColumnGetter, postFilterState.projectionState.queryBuilderState.graphManagerState
39
+ .graph);
40
+ if (type) {
41
+ columnState.setReturnType(type);
42
+ }
43
+ return columnState;
44
+ }
45
+ const columnType = guaranteeNonNullable(columnState.getReturnType());
46
+ assertTrue(getTDSColumnDerivedProperyFromType(columnType) ===
47
+ tdsColumnGetter, `Can't process TDS column expression: expected column type ${getTDSColumnDerivedProperyFromType(columnType)} (got ${tdsColumnGetter})`);
48
+ }
49
+ return columnState;
50
+ };
51
+ export const buildPostFilterConditionState = (postFilterState, expression, operatorFunctionFullPath, operator) => {
52
+ let postConditionState;
53
+ const tdsColumnGetter = operator.getTdsColumnGetter();
54
+ if (tdsColumnGetter &&
55
+ expression instanceof AbstractPropertyExpression &&
56
+ expression.func.name === tdsColumnGetter) {
57
+ const columnState = findProjectionColumnState(expression, postFilterState);
58
+ postConditionState = new PostFilterConditionState(postFilterState, columnState, undefined, operator);
59
+ return postConditionState;
60
+ }
61
+ else if (operatorFunctionFullPath &&
62
+ matchFunctionName(expression.functionName, operatorFunctionFullPath)) {
63
+ assertTrue(expression.parametersValues.length === 2, `Can't process ${extractElementNameFromPath(operatorFunctionFullPath)}() expression: ${extractElementNameFromPath(operatorFunctionFullPath)}() expects '1 argument'`);
64
+ // get projection column
65
+ const tdsColumnPropertyExpression = guaranteeType(expression.parametersValues[0], AbstractPropertyExpression, `Can't process ${extractElementNameFromPath(operatorFunctionFullPath)}() expression: expects property expression in lambda body`);
66
+ const columnState = findProjectionColumnState(tdsColumnPropertyExpression, postFilterState);
67
+ // get operation value specification
68
+ const value = expression.parametersValues[1];
69
+ // create state
70
+ postConditionState = new PostFilterConditionState(postFilterState, columnState, value, operator);
71
+ //post checks
72
+ assertTrue(operator.isCompatibleWithPostFilterColumn(postConditionState), `Can't process ${extractElementNameFromPath(operatorFunctionFullPath)}() expression: property is not compatible with post-filter operator`);
73
+ assertTrue(operator.isCompatibleWithConditionValue(postConditionState), `Operator '${operator.getLabel()}' not compatible with value specification ${value?.toString()}`);
74
+ }
75
+ return postConditionState;
76
+ };
77
+ const processPostFilterTree = (expression, postFilterState, parentPostFilterNodeId) => {
78
+ const parentNode = parentPostFilterNodeId
79
+ ? postFilterState.getNode(parentPostFilterNodeId)
80
+ : undefined;
81
+ if (matchFunctionName(expression.functionName, [
82
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.AND,
83
+ QUERY_BUILDER_SUPPORTED_FUNCTIONS.OR,
84
+ ])) {
85
+ const groupNode = new QueryBuilderPostFilterTreeGroupNodeData(parentPostFilterNodeId, toGroupOperation(expression.functionName));
86
+ postFilterState.nodes.set(groupNode.id, groupNode);
87
+ expression.parametersValues.forEach((postFilterExpression) => processPostFilterTree(guaranteeType(postFilterExpression, FunctionExpression, `Can't process post-filter group expression: each child expression must be a function expression`), postFilterState, groupNode.id));
88
+ postFilterState.addNodeFromNode(groupNode, parentNode);
89
+ }
90
+ else {
91
+ for (const operator of postFilterState.operators) {
92
+ // NOTE: this allow plugin author to either return `undefined`
93
+ const postFilterConditionState = operator.buildPostFilterConditionState(postFilterState, expression);
94
+ if (postFilterConditionState) {
95
+ postFilterState.addNodeFromNode(new QueryBuilderPostFilterTreeConditionNodeData(undefined, postFilterConditionState), parentNode);
96
+ return;
97
+ }
98
+ }
99
+ throw new UnsupportedOperationError(`Can't process post-filter expression: no compatible post-filter operator processer available from plugins`);
100
+ }
101
+ };
102
+ export const processTDSPostFilterExpression = (expression, queryBuilderState) => {
103
+ if (queryBuilderState.fetchStructureState.implementation instanceof
104
+ QueryBuilderProjectionState) {
105
+ const projectionState = queryBuilderState.fetchStructureState.implementation;
106
+ const postFilterState = projectionState.postFilterState;
107
+ const fetchStructureState = projectionState.fetchStructureState;
108
+ const postFilterLambda = expression.parametersValues[1];
109
+ assertType(postFilterLambda, LambdaFunctionInstanceValue, `Can't process post-filter expression: expects argument #1 to be a lambda function`);
110
+ assertType(fetchStructureState.implementation, QueryBuilderProjectionState, `Can't process post-filter lambda: post-filter lambda must use projection fetch structure`);
111
+ assertTrue(Boolean(projectionState.columns.length), `Can't process post-filter lambda: post-filter lambda must have at least one projection column `);
112
+ const lambdaFunc = guaranteeNonNullable(postFilterLambda.values[0], `Can't process post-filter lambda: post-filter lambda function is missing`);
113
+ assertTrue(lambdaFunc.expressionSequence.length === 1, `Can't process post-filter lambda: only support post-filter lambda body with 1 expression`);
114
+ const rootExpression = guaranteeType(lambdaFunc.expressionSequence[0], FunctionExpression, `Can't process post-filter lambda: only support post-filter lambda body of type 'FunctionExpression'`);
115
+ assertTrue(lambdaFunc.functionType.parameters.length === 1, `Can't process post-filter lambda: only support post-filter lambda with 1 parameter`);
116
+ postFilterState.setLambdaParameterName(guaranteeType(lambdaFunc.functionType.parameters[0], VariableExpression, `Can't process post-filter lambda: only support filter() lambda with 1 parameter of type 'VariableExpression'`).name);
117
+ processPostFilterTree(rootExpression, postFilterState, undefined);
118
+ projectionState.setShowPostFilterPanel(true);
119
+ postFilterState.simplifyTree();
120
+ }
121
+ };
122
+ //# sourceMappingURL=QueryBuilderPostFilterStateBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderPostFilterStateBuilder.js","sourceRoot":"","sources":["../../../../../src/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterStateBuilder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
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 LambdaFunction } from '@finos/legend-graph';
17
+ import { type QueryBuilderPostFilterState } from './QueryBuilderPostFilterState.js';
18
+ export declare const appendPostFilter: (postFilterState: QueryBuilderPostFilterState, lambda: LambdaFunction) => LambdaFunction;
19
+ //# sourceMappingURL=QueryBuilderPostFilterValueSpecificationBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderPostFilterValueSpecificationBuilder.d.ts","sourceRoot":"","sources":["../../../../../src/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAIL,KAAK,cAAc,EAEpB,MAAM,qBAAqB,CAAC;AAK7B,OAAO,EAIL,KAAK,2BAA2B,EACjC,MAAM,kCAAkC,CAAC;AAwD1C,eAAO,MAAM,gBAAgB,oBACV,2BAA2B,UACpC,cAAc,KACrB,cA6BF,CAAC"}
@@ -0,0 +1,79 @@
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 { extractElementNameFromPath, SimpleFunctionExpression, TYPICAL_MULTIPLICITY_TYPE, } from '@finos/legend-graph';
17
+ import { guaranteeNonNullable, isNonNullable } from '@finos/legend-shared';
18
+ import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../../../graphManager/QueryBuilderSupportedFunctions.js';
19
+ import { fromGroupOperation } from '../../../QueryBuilderGroupOperationHelper.js';
20
+ import { buildGenericLambdaFunctionInstanceValue } from '../../../QueryBuilderValueSpecificationHelper.js';
21
+ import { QueryBuilderPostFilterTreeConditionNodeData, QueryBuilderPostFilterTreeGroupNodeData, } from './QueryBuilderPostFilterState.js';
22
+ const buildPostFilterExpression = (filterState, node) => {
23
+ if (node instanceof QueryBuilderPostFilterTreeConditionNodeData) {
24
+ return node.condition.operator.buildPostFilterConditionExpression(node.condition);
25
+ }
26
+ else if (node instanceof QueryBuilderPostFilterTreeGroupNodeData) {
27
+ const multiplicityOne = filterState.projectionState.queryBuilderState.graphManagerState.graph.getTypicalMultiplicity(TYPICAL_MULTIPLICITY_TYPE.ONE);
28
+ const func = new SimpleFunctionExpression(extractElementNameFromPath(fromGroupOperation(node.groupOperation)), multiplicityOne);
29
+ const clauses = node.childrenIds
30
+ .map((e) => filterState.nodes.get(e))
31
+ .filter(isNonNullable)
32
+ .map((e) => buildPostFilterExpression(filterState, e))
33
+ .filter(isNonNullable);
34
+ /**
35
+ * NOTE: Due to a limitation (or perhaps design decision) in the engine, group operations
36
+ * like and/or do not take more than 2 parameters, as such, if we have more than 2, we need
37
+ * to create a chain of this operation to accomondate.
38
+ *
39
+ * This means that in the read direction, we might need to flatten the chains down to group with
40
+ * multiple clauses. This means user's intended grouping will not be kept.
41
+ */
42
+ if (clauses.length > 2) {
43
+ const firstClause = clauses[0];
44
+ let currentClause = clauses[clauses.length - 1];
45
+ for (let i = clauses.length - 2; i > 0; --i) {
46
+ const clause1 = clauses[i];
47
+ const clause2 = currentClause;
48
+ const groupClause = new SimpleFunctionExpression(extractElementNameFromPath(fromGroupOperation(node.groupOperation)), multiplicityOne);
49
+ groupClause.parametersValues = [clause1, clause2];
50
+ currentClause = groupClause;
51
+ }
52
+ func.parametersValues = [firstClause, currentClause];
53
+ }
54
+ else {
55
+ func.parametersValues = clauses;
56
+ }
57
+ return func.parametersValues.length ? func : undefined;
58
+ }
59
+ return undefined;
60
+ };
61
+ export const appendPostFilter = (postFilterState, lambda) => {
62
+ const postFilterConditionExpressions = postFilterState.rootIds
63
+ .map((e) => guaranteeNonNullable(postFilterState.nodes.get(e)))
64
+ .map((e) => buildPostFilterExpression(postFilterState, e))
65
+ .filter(isNonNullable);
66
+ if (!postFilterConditionExpressions.length ||
67
+ lambda.expressionSequence.length !== 1) {
68
+ return lambda;
69
+ }
70
+ const multiplicityOne = postFilterState.projectionState.queryBuilderState.graphManagerState.graph.getTypicalMultiplicity(TYPICAL_MULTIPLICITY_TYPE.ONE);
71
+ const filterLambda = buildGenericLambdaFunctionInstanceValue(postFilterState.lambdaParameterName, postFilterConditionExpressions, postFilterState.projectionState.queryBuilderState.graphManagerState.graph);
72
+ // main filter expression
73
+ const filterExpression = new SimpleFunctionExpression(extractElementNameFromPath(QUERY_BUILDER_SUPPORTED_FUNCTIONS.TDS_FILTER), multiplicityOne);
74
+ const currentExpression = guaranteeNonNullable(lambda.expressionSequence[0]);
75
+ filterExpression.parametersValues = [currentExpression, filterLambda];
76
+ lambda.expressionSequence[0] = filterExpression;
77
+ return lambda;
78
+ };
79
+ //# sourceMappingURL=QueryBuilderPostFilterValueSpecificationBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderPostFilterValueSpecificationBuilder.js","sourceRoot":"","sources":["../../../../../src/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterValueSpecificationBuilder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
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 Multiplicity, type FunctionExpression } from '@finos/legend-graph';
17
+ import { QueryBuilderAggregateColumnState } from '../../aggregation/QueryBuilderAggregationState.js';
18
+ import type { QueryBuilderPostFilterOperator } from '../QueryBuilderPostFilterOperator.js';
19
+ import { type PostFilterConditionState } from '../QueryBuilderPostFilterState.js';
20
+ import { type QueryBuilderProjectionColumnState } from '../../QueryBuilderProjectionColumnState.js';
21
+ export declare const getColumnMultiplicity: (columnState: QueryBuilderProjectionColumnState | QueryBuilderAggregateColumnState) => Multiplicity;
22
+ export declare const buildPostFilterConditionExpression: (filterConditionState: PostFilterConditionState, operator: QueryBuilderPostFilterOperator, operatorFunctionFullPath: string | undefined) => FunctionExpression;
23
+ //# sourceMappingURL=QueryBuilderPostFilterOperatorHelper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderPostFilterOperatorHelper.d.ts","sourceRoot":"","sources":["../../../../../../src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperatorHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,kBAAkB,EAYxB,MAAM,qBAAqB,CAAC;AAK7B,OAAO,EAAE,gCAAgC,EAAE,MAAM,mDAAmD,CAAC;AACrG,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,sCAAsC,CAAC;AAC3F,OAAO,EACL,KAAK,wBAAwB,EAG9B,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,KAAK,iCAAiC,EAEvC,MAAM,4CAA4C,CAAC;AAEpD,eAAO,MAAM,qBAAqB,gBAE5B,iCAAiC,GACjC,gCAAgC,KACnC,YAaF,CAAC;AAEF,eAAO,MAAM,kCAAkC,yBACvB,wBAAwB,YACpC,8BAA8B,4BAOd,MAAM,GAAG,SAAS,KAC3C,kBAoDF,CAAC"}
@@ -0,0 +1,73 @@
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 { AbstractPropertyExpression, extractElementNameFromPath, GenericType, GenericTypeExplicitReference, PrimitiveInstanceValue, PRIMITIVE_TYPE, SimpleFunctionExpression, TYPICAL_MULTIPLICITY_TYPE, VariableExpression, getAllClassDerivedProperties, CORE_PURE_PATH, } from '@finos/legend-graph';
17
+ import { guaranteeNonNullable, UnsupportedOperationError, } from '@finos/legend-shared';
18
+ import { QueryBuilderAggregateColumnState } from '../../aggregation/QueryBuilderAggregationState.js';
19
+ import { getTDSColumnDerivedProperyFromType, } from '../QueryBuilderPostFilterState.js';
20
+ import { QueryBuilderSimpleProjectionColumnState, } from '../../QueryBuilderProjectionColumnState.js';
21
+ export const getColumnMultiplicity = (columnState) => {
22
+ if (columnState instanceof QueryBuilderAggregateColumnState) {
23
+ return columnState.aggregationState.projectionState.queryBuilderState.graphManagerState.graph.getTypicalMultiplicity(TYPICAL_MULTIPLICITY_TYPE.ONE);
24
+ }
25
+ else if (columnState instanceof QueryBuilderSimpleProjectionColumnState) {
26
+ return columnState.propertyExpressionState.propertyExpression.func
27
+ .multiplicity;
28
+ }
29
+ throw new UnsupportedOperationError(`Can't get multiplicity for column`, columnState);
30
+ };
31
+ export const buildPostFilterConditionExpression = (filterConditionState, operator,
32
+ /**
33
+ * If provided, this will be used to construct the simple
34
+ * function expression for the function with the specified
35
+ * name. If not provided, we will fall back to use the TDS column getter function expression.
36
+ * This is the case because with TDS, we are provided some filter-like operators, e.g. IS_NULL, IS_NOT_NULL, etc.
37
+ */
38
+ operatorFunctionFullPath) => {
39
+ // primitives
40
+ const graph = filterConditionState.postFilterState.projectionState.queryBuilderState
41
+ .graphManagerState.graph;
42
+ const multiplicityOne = graph.getTypicalMultiplicity(TYPICAL_MULTIPLICITY_TYPE.ONE);
43
+ const typeString = graph.getPrimitiveType(PRIMITIVE_TYPE.STRING);
44
+ // property expression
45
+ const colState = filterConditionState.columnState;
46
+ const tdsPropertyExpression = new AbstractPropertyExpression('', multiplicityOne);
47
+ let tdsDerivedPropertyName;
48
+ const correspondingTdsDerivedProperty = operator.getTdsColumnGetter();
49
+ if (correspondingTdsDerivedProperty) {
50
+ tdsDerivedPropertyName = correspondingTdsDerivedProperty;
51
+ }
52
+ else {
53
+ const type = guaranteeNonNullable(colState.getReturnType());
54
+ tdsDerivedPropertyName = getTDSColumnDerivedProperyFromType(type);
55
+ }
56
+ tdsPropertyExpression.func = guaranteeNonNullable(getAllClassDerivedProperties(graph.getClass(CORE_PURE_PATH.TDS_ROW)).find((p) => p.name === tdsDerivedPropertyName));
57
+ const variableName = new VariableExpression(filterConditionState.postFilterState.lambdaParameterName, multiplicityOne);
58
+ const colInstanceValue = new PrimitiveInstanceValue(GenericTypeExplicitReference.create(new GenericType(typeString)), multiplicityOne);
59
+ colInstanceValue.values = [colState.columnName];
60
+ tdsPropertyExpression.parametersValues = [variableName, colInstanceValue];
61
+ if (operatorFunctionFullPath) {
62
+ const expression = new SimpleFunctionExpression(extractElementNameFromPath(operatorFunctionFullPath), multiplicityOne);
63
+ expression.parametersValues.push(tdsPropertyExpression);
64
+ if (filterConditionState.value) {
65
+ expression.parametersValues.push(filterConditionState.value);
66
+ }
67
+ return expression;
68
+ }
69
+ else {
70
+ return tdsPropertyExpression;
71
+ }
72
+ };
73
+ //# sourceMappingURL=QueryBuilderPostFilterOperatorHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderPostFilterOperatorHelper.js","sourceRoot":"","sources":["../../../../../../src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperatorHelper.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
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 SimpleFunctionExpression, type Type, type ValueSpecification, type FunctionExpression } from '@finos/legend-graph';
17
+ import { QueryBuilderPostFilterOperator } from '../QueryBuilderPostFilterOperator.js';
18
+ import type { PostFilterConditionState, QueryBuilderPostFilterState } from '../QueryBuilderPostFilterState.js';
19
+ export declare class QueryBuilderPostFilterOperator_Contain extends QueryBuilderPostFilterOperator {
20
+ getLabel(): string;
21
+ isCompatibleWithType(type: Type): boolean;
22
+ isCompatibleWithConditionValue(postFilterConditionState: PostFilterConditionState): boolean;
23
+ getDefaultFilterConditionValue(postFilterConditionState: PostFilterConditionState): ValueSpecification;
24
+ buildPostFilterConditionExpression(postFilterConditionState: PostFilterConditionState): ValueSpecification | undefined;
25
+ buildPostFilterConditionState(postFilterState: QueryBuilderPostFilterState, expression: FunctionExpression): PostFilterConditionState | undefined;
26
+ }
27
+ export declare class QueryBuilderPostFilterOperator_NotContain extends QueryBuilderPostFilterOperator_Contain {
28
+ getLabel(): string;
29
+ buildPostFilterConditionExpression(postFilterConditionState: PostFilterConditionState): ValueSpecification | undefined;
30
+ buildPostFilterConditionState(postFilterState: QueryBuilderPostFilterState, expression: SimpleFunctionExpression): PostFilterConditionState | undefined;
31
+ }
32
+ //# sourceMappingURL=QueryBuilderPostFilterOperator_Contain.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderPostFilterOperator_Contain.d.ts","sourceRoot":"","sources":["../../../../../../src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,IAAI,EACT,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EAGxB,MAAM,qBAAqB,CAAC;AAK7B,OAAO,EAAE,8BAA8B,EAAE,MAAM,sCAAsC,CAAC;AAEtF,OAAO,KAAK,EACV,wBAAwB,EACxB,2BAA2B,EAC5B,MAAM,mCAAmC,CAAC;AAU3C,qBAAa,sCAAuC,SAAQ,8BAA8B;IACxF,QAAQ,IAAI,MAAM;IAIlB,oBAAoB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO;IAOzC,8BAA8B,CAC5B,wBAAwB,EAAE,wBAAwB,GACjD,OAAO;IAOV,8BAA8B,CAC5B,wBAAwB,EAAE,wBAAwB,GACjD,kBAAkB;IAsBrB,kCAAkC,CAChC,wBAAwB,EAAE,wBAAwB,GACjD,kBAAkB,GAAG,SAAS;IAQjC,6BAA6B,CAC3B,eAAe,EAAE,2BAA2B,EAC5C,UAAU,EAAE,kBAAkB,GAC7B,wBAAwB,GAAG,SAAS;CAQxC;AAED,qBAAa,yCAA0C,SAAQ,sCAAsC;IAC1F,QAAQ,IAAI,MAAM;IAGlB,kCAAkC,CACzC,wBAAwB,EAAE,wBAAwB,GACjD,kBAAkB,GAAG,SAAS;IAaxB,6BAA6B,CACpC,eAAe,EAAE,2BAA2B,EAC5C,UAAU,EAAE,wBAAwB,GACnC,wBAAwB,GAAG,SAAS;CAMxC"}
@@ -0,0 +1,75 @@
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, buildPrimitiveInstanceValue, } from '@finos/legend-graph';
17
+ import { guaranteeNonNullable, UnsupportedOperationError, } from '@finos/legend-shared';
18
+ import { QueryBuilderPostFilterOperator } from '../QueryBuilderPostFilterOperator.js';
19
+ import { buildPostFilterConditionState } from '../QueryBuilderPostFilterStateBuilder.js';
20
+ import { buildNotExpression, generateDefaultValueForPrimitiveType, getNonCollectionValueSpecificationType, unwrapNotExpression, } from '../../../../QueryBuilderValueSpecificationHelper.js';
21
+ import { buildPostFilterConditionExpression } from './QueryBuilderPostFilterOperatorHelper.js';
22
+ import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../../../../graphManager/QueryBuilderSupportedFunctions.js';
23
+ export class QueryBuilderPostFilterOperator_Contain extends QueryBuilderPostFilterOperator {
24
+ getLabel() {
25
+ return 'contains';
26
+ }
27
+ isCompatibleWithType(type) {
28
+ if (type.path === PRIMITIVE_TYPE.STRING) {
29
+ return true;
30
+ }
31
+ return false;
32
+ }
33
+ isCompatibleWithConditionValue(postFilterConditionState) {
34
+ const type = postFilterConditionState.value
35
+ ? getNonCollectionValueSpecificationType(postFilterConditionState.value)
36
+ : undefined;
37
+ return PRIMITIVE_TYPE.STRING === type?.path;
38
+ }
39
+ getDefaultFilterConditionValue(postFilterConditionState) {
40
+ const propertyType = guaranteeNonNullable(postFilterConditionState.columnState.getReturnType());
41
+ switch (propertyType.path) {
42
+ case PRIMITIVE_TYPE.STRING: {
43
+ return buildPrimitiveInstanceValue(postFilterConditionState.postFilterState.projectionState
44
+ .queryBuilderState.graphManagerState.graph, propertyType.path, generateDefaultValueForPrimitiveType(propertyType.path));
45
+ }
46
+ default:
47
+ throw new UnsupportedOperationError(`Can't get default value for post-filter operator '${this.getLabel()}' when the LHS property is of type '${propertyType.path}'`);
48
+ }
49
+ }
50
+ buildPostFilterConditionExpression(postFilterConditionState) {
51
+ return buildPostFilterConditionExpression(postFilterConditionState, this, QUERY_BUILDER_SUPPORTED_FUNCTIONS.CONTAINS);
52
+ }
53
+ buildPostFilterConditionState(postFilterState, expression) {
54
+ return buildPostFilterConditionState(postFilterState, expression, QUERY_BUILDER_SUPPORTED_FUNCTIONS.CONTAINS, this);
55
+ }
56
+ }
57
+ export class QueryBuilderPostFilterOperator_NotContain extends QueryBuilderPostFilterOperator_Contain {
58
+ getLabel() {
59
+ return `doesn't contain`;
60
+ }
61
+ buildPostFilterConditionExpression(postFilterConditionState) {
62
+ const expression = super.buildPostFilterConditionExpression(postFilterConditionState);
63
+ return expression
64
+ ? buildNotExpression(postFilterConditionState.postFilterState.projectionState
65
+ .queryBuilderState.graphManagerState.graph, expression)
66
+ : undefined;
67
+ }
68
+ buildPostFilterConditionState(postFilterState, expression) {
69
+ const innerExpression = unwrapNotExpression(expression);
70
+ return innerExpression
71
+ ? super.buildPostFilterConditionState(postFilterState, innerExpression)
72
+ : undefined;
73
+ }
74
+ }
75
+ //# sourceMappingURL=QueryBuilderPostFilterOperator_Contain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderPostFilterOperator_Contain.js","sourceRoot":"","sources":["../../../../../../src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
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 SimpleFunctionExpression, type Type, type ValueSpecification, type FunctionExpression } from '@finos/legend-graph';
17
+ import { QueryBuilderPostFilterOperator } from '../QueryBuilderPostFilterOperator.js';
18
+ import type { PostFilterConditionState, QueryBuilderPostFilterState } from '../QueryBuilderPostFilterState.js';
19
+ export declare class QueryBuilderPostFilterOperator_EndWith extends QueryBuilderPostFilterOperator {
20
+ getLabel(): string;
21
+ isCompatibleWithType(type: Type): boolean;
22
+ isCompatibleWithConditionValue(postFilterConditionState: PostFilterConditionState): boolean;
23
+ getDefaultFilterConditionValue(postFilterConditionState: PostFilterConditionState): ValueSpecification;
24
+ buildPostFilterConditionExpression(postFilterConditionState: PostFilterConditionState): ValueSpecification | undefined;
25
+ buildPostFilterConditionState(postFilterState: QueryBuilderPostFilterState, expression: FunctionExpression): PostFilterConditionState | undefined;
26
+ }
27
+ export declare class QueryBuilderPostFilterOperator_NotEndWith extends QueryBuilderPostFilterOperator_EndWith {
28
+ getLabel(): string;
29
+ buildPostFilterConditionExpression(postFilterConditionState: PostFilterConditionState): ValueSpecification | undefined;
30
+ buildPostFilterConditionState(postFilterState: QueryBuilderPostFilterState, expression: SimpleFunctionExpression): PostFilterConditionState | undefined;
31
+ }
32
+ //# sourceMappingURL=QueryBuilderPostFilterOperator_EndWith.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderPostFilterOperator_EndWith.d.ts","sourceRoot":"","sources":["../../../../../../src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,IAAI,EACT,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EAGxB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,8BAA8B,EAAE,MAAM,sCAAsC,CAAC;AAEtF,OAAO,KAAK,EACV,wBAAwB,EACxB,2BAA2B,EAC5B,MAAM,mCAAmC,CAAC;AAU3C,qBAAa,sCAAuC,SAAQ,8BAA8B;IACxF,QAAQ,IAAI,MAAM;IAIlB,oBAAoB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO;IAOzC,8BAA8B,CAC5B,wBAAwB,EAAE,wBAAwB,GACjD,OAAO;IAOV,8BAA8B,CAC5B,wBAAwB,EAAE,wBAAwB,GACjD,kBAAkB;IAoBrB,kCAAkC,CAChC,wBAAwB,EAAE,wBAAwB,GACjD,kBAAkB,GAAG,SAAS;IAQjC,6BAA6B,CAC3B,eAAe,EAAE,2BAA2B,EAC5C,UAAU,EAAE,kBAAkB,GAC7B,wBAAwB,GAAG,SAAS;CAQxC;AAED,qBAAa,yCAA0C,SAAQ,sCAAsC;IAC1F,QAAQ,IAAI,MAAM;IAIlB,kCAAkC,CACzC,wBAAwB,EAAE,wBAAwB,GACjD,kBAAkB,GAAG,SAAS;IAaxB,6BAA6B,CACpC,eAAe,EAAE,2BAA2B,EAC5C,UAAU,EAAE,wBAAwB,GACnC,wBAAwB,GAAG,SAAS;CAMxC"}
@@ -0,0 +1,75 @@
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, buildPrimitiveInstanceValue, } from '@finos/legend-graph';
17
+ import { UnsupportedOperationError } from '@finos/legend-shared';
18
+ import { QueryBuilderPostFilterOperator } from '../QueryBuilderPostFilterOperator.js';
19
+ import { buildPostFilterConditionState } from '../QueryBuilderPostFilterStateBuilder.js';
20
+ import { buildNotExpression, generateDefaultValueForPrimitiveType, getNonCollectionValueSpecificationType, unwrapNotExpression, } from '../../../../QueryBuilderValueSpecificationHelper.js';
21
+ import { buildPostFilterConditionExpression } from './QueryBuilderPostFilterOperatorHelper.js';
22
+ import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../../../../graphManager/QueryBuilderSupportedFunctions.js';
23
+ export class QueryBuilderPostFilterOperator_EndWith extends QueryBuilderPostFilterOperator {
24
+ getLabel() {
25
+ return 'ends with';
26
+ }
27
+ isCompatibleWithType(type) {
28
+ if (type.path === PRIMITIVE_TYPE.STRING) {
29
+ return true;
30
+ }
31
+ return false;
32
+ }
33
+ isCompatibleWithConditionValue(postFilterConditionState) {
34
+ const type = postFilterConditionState.value
35
+ ? getNonCollectionValueSpecificationType(postFilterConditionState.value)
36
+ : undefined;
37
+ return PRIMITIVE_TYPE.STRING === type?.path;
38
+ }
39
+ getDefaultFilterConditionValue(postFilterConditionState) {
40
+ const propertyType = postFilterConditionState.columnState.getReturnType();
41
+ switch (propertyType?.path) {
42
+ case PRIMITIVE_TYPE.STRING: {
43
+ return buildPrimitiveInstanceValue(postFilterConditionState.postFilterState.projectionState
44
+ .queryBuilderState.graphManagerState.graph, propertyType.path, generateDefaultValueForPrimitiveType(propertyType.path));
45
+ }
46
+ default:
47
+ throw new UnsupportedOperationError(`Can't get default value for post-filter operator '${this.getLabel()}' when the LHS property is of type '${propertyType?.path}'`);
48
+ }
49
+ }
50
+ buildPostFilterConditionExpression(postFilterConditionState) {
51
+ return buildPostFilterConditionExpression(postFilterConditionState, this, QUERY_BUILDER_SUPPORTED_FUNCTIONS.ENDS_WITH);
52
+ }
53
+ buildPostFilterConditionState(postFilterState, expression) {
54
+ return buildPostFilterConditionState(postFilterState, expression, QUERY_BUILDER_SUPPORTED_FUNCTIONS.ENDS_WITH, this);
55
+ }
56
+ }
57
+ export class QueryBuilderPostFilterOperator_NotEndWith extends QueryBuilderPostFilterOperator_EndWith {
58
+ getLabel() {
59
+ return `doesn't end with`;
60
+ }
61
+ buildPostFilterConditionExpression(postFilterConditionState) {
62
+ const expression = super.buildPostFilterConditionExpression(postFilterConditionState);
63
+ return expression
64
+ ? buildNotExpression(postFilterConditionState.postFilterState.projectionState
65
+ .queryBuilderState.graphManagerState.graph, expression)
66
+ : undefined;
67
+ }
68
+ buildPostFilterConditionState(postFilterState, expression) {
69
+ const innerExpression = unwrapNotExpression(expression);
70
+ return innerExpression
71
+ ? super.buildPostFilterConditionState(postFilterState, innerExpression)
72
+ : undefined;
73
+ }
74
+ }
75
+ //# sourceMappingURL=QueryBuilderPostFilterOperator_EndWith.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderPostFilterOperator_EndWith.js","sourceRoot":"","sources":["../../../../../../src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAKL,cAAc,EACd,2BAA2B,GAC5B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,8BAA8B,EAAE,MAAM,sCAAsC,CAAC;AACtF,OAAO,EAAE,6BAA6B,EAAE,MAAM,0CAA0C,CAAC;AAKzF,OAAO,EACL,kBAAkB,EAClB,oCAAoC,EACpC,sCAAsC,EACtC,mBAAmB,GACpB,MAAM,qDAAqD,CAAC;AAC7D,OAAO,EAAE,kCAAkC,EAAE,MAAM,2CAA2C,CAAC;AAC/F,OAAO,EAAE,iCAAiC,EAAE,MAAM,+DAA+D,CAAC;AAElH,MAAM,OAAO,sCAAuC,SAAQ,8BAA8B;IACxF,QAAQ;QACN,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,oBAAoB,CAAC,IAAU;QAC7B,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC,MAAM,EAAE;YACvC,OAAO,IAAI,CAAC;SACb;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,8BAA8B,CAC5B,wBAAkD;QAElD,MAAM,IAAI,GAAG,wBAAwB,CAAC,KAAK;YACzC,CAAC,CAAC,sCAAsC,CAAC,wBAAwB,CAAC,KAAK,CAAC;YACxE,CAAC,CAAC,SAAS,CAAC;QACd,OAAO,cAAc,CAAC,MAAM,KAAK,IAAI,EAAE,IAAI,CAAC;IAC9C,CAAC;IAED,8BAA8B,CAC5B,wBAAkD;QAElD,MAAM,YAAY,GAAG,wBAAwB,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC;QAC1E,QAAQ,YAAY,EAAE,IAAI,EAAE;YAC1B,KAAK,cAAc,CAAC,MAAM,CAAC,CAAC;gBAC1B,OAAO,2BAA2B,CAChC,wBAAwB,CAAC,eAAe,CAAC,eAAe;qBACrD,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,EAC5C,YAAY,CAAC,IAAI,EACjB,oCAAoC,CAAC,YAAY,CAAC,IAAI,CAAC,CACxD,CAAC;aACH;YACD;gBACE,MAAM,IAAI,yBAAyB,CACjC,qDAAqD,IAAI,CAAC,QAAQ,EAAE,uCAClE,YAAY,EAAE,IAChB,GAAG,CACJ,CAAC;SACL;IACH,CAAC;IAED,kCAAkC,CAChC,wBAAkD;QAElD,OAAO,kCAAkC,CACvC,wBAAwB,EACxB,IAAI,EACJ,iCAAiC,CAAC,SAAS,CAC5C,CAAC;IACJ,CAAC;IAED,6BAA6B,CAC3B,eAA4C,EAC5C,UAA8B;QAE9B,OAAO,6BAA6B,CAClC,eAAe,EACf,UAAU,EACV,iCAAiC,CAAC,SAAS,EAC3C,IAAI,CACL,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,yCAA0C,SAAQ,sCAAsC;IAC1F,QAAQ;QACf,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAEQ,kCAAkC,CACzC,wBAAkD;QAElD,MAAM,UAAU,GAAG,KAAK,CAAC,kCAAkC,CACzD,wBAAwB,CACzB,CAAC;QACF,OAAO,UAAU;YACf,CAAC,CAAC,kBAAkB,CAChB,wBAAwB,CAAC,eAAe,CAAC,eAAe;iBACrD,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,EAC5C,UAAU,CACX;YACH,CAAC,CAAC,SAAS,CAAC;IAChB,CAAC;IAEQ,6BAA6B,CACpC,eAA4C,EAC5C,UAAoC;QAEpC,MAAM,eAAe,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;QACxD,OAAO,eAAe;YACpB,CAAC,CAAC,KAAK,CAAC,6BAA6B,CAAC,eAAe,EAAE,eAAe,CAAC;YACvE,CAAC,CAAC,SAAS,CAAC;IAChB,CAAC;CACF"}