@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 @@
1
+ {"version":3,"file":"QueryBuilderFilterStateBuilder.js","sourceRoot":"","sources":["../../../src/stores/filter/QueryBuilderFilterStateBuilder.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 { SimpleFunctionExpression } from '@finos/legend-graph';
17
+ import { type QueryBuilderFilterState } from './QueryBuilderFilterState.js';
18
+ export declare const buildFilterExpression: (filterState: QueryBuilderFilterState, getAllFunc: SimpleFunctionExpression) => SimpleFunctionExpression | undefined;
19
+ //# sourceMappingURL=QueryBuilderFilterValueSpecificationBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderFilterValueSpecificationBuilder.d.ts","sourceRoot":"","sources":["../../../src/stores/filter/QueryBuilderFilterValueSpecificationBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EAGL,wBAAwB,EAEzB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,KAAK,uBAAuB,EAI7B,MAAM,8BAA8B,CAAC;AAyDtC,eAAO,MAAM,qBAAqB,gBACnB,uBAAuB,cACxB,wBAAwB,KACnC,wBAAwB,GAAG,SA6B7B,CAAC"}
@@ -0,0 +1,78 @@
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 { isNonNullable, guaranteeNonNullable } from '@finos/legend-shared';
17
+ import { extractElementNameFromPath, SimpleFunctionExpression, TYPICAL_MULTIPLICITY_TYPE, } from '@finos/legend-graph';
18
+ import { buildGenericLambdaFunctionInstanceValue } from '../QueryBuilderValueSpecificationHelper.js';
19
+ import { fromGroupOperation } from '../QueryBuilderGroupOperationHelper.js';
20
+ import { QueryBuilderFilterTreeConditionNodeData, QueryBuilderFilterTreeGroupNodeData, } from './QueryBuilderFilterState.js';
21
+ import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../graphManager/QueryBuilderSupportedFunctions.js';
22
+ const buildFilterConditionExpression = (filterState, node) => {
23
+ if (node instanceof QueryBuilderFilterTreeConditionNodeData) {
24
+ return node.condition.operator.buildFilterConditionExpression(node.condition);
25
+ }
26
+ else if (node instanceof QueryBuilderFilterTreeGroupNodeData) {
27
+ const multiplicityOne = filterState.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) => buildFilterConditionExpression(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 buildFilterExpression = (filterState, getAllFunc) => {
62
+ const filterConditionExpressions = filterState.rootIds
63
+ .map((e) => guaranteeNonNullable(filterState.nodes.get(e)))
64
+ .map((e) => buildFilterConditionExpression(filterState, e))
65
+ .filter(isNonNullable);
66
+ if (!filterConditionExpressions.length) {
67
+ return undefined;
68
+ }
69
+ const multiplicityOne = filterState.queryBuilderState.graphManagerState.graph.getTypicalMultiplicity(TYPICAL_MULTIPLICITY_TYPE.ONE);
70
+ // main filter expression
71
+ const filterExpression = new SimpleFunctionExpression(extractElementNameFromPath(QUERY_BUILDER_SUPPORTED_FUNCTIONS.FILTER), multiplicityOne);
72
+ // param [0]
73
+ filterExpression.parametersValues.push(getAllFunc);
74
+ // param [1]
75
+ filterExpression.parametersValues.push(buildGenericLambdaFunctionInstanceValue(filterState.lambdaParameterName, filterConditionExpressions, filterState.queryBuilderState.graphManagerState.graph));
76
+ return filterExpression;
77
+ };
78
+ //# sourceMappingURL=QueryBuilderFilterValueSpecificationBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderFilterValueSpecificationBuilder.js","sourceRoot":"","sources":["../../../src/stores/filter/QueryBuilderFilterValueSpecificationBuilder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { type ValueSpecification, SimpleFunctionExpression } from '@finos/legend-graph';
17
+ import { FilterConditionState, type QueryBuilderFilterState } from '../QueryBuilderFilterState.js';
18
+ import type { QueryBuilderFilterOperator } from '../QueryBuilderFilterOperator.js';
19
+ export declare const buildFilterConditionExpression: (filterConditionState: FilterConditionState, operatorFunctionFullPath: string) => ValueSpecification;
20
+ export declare const buildFilterConditionState: (filterState: QueryBuilderFilterState, expression: SimpleFunctionExpression, operatorFunctionFullPath: string, operator: QueryBuilderFilterOperator, hasNoValue?: boolean) => FilterConditionState | undefined;
21
+ //# sourceMappingURL=QueryBuilderFilterOperatorHelper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderFilterOperatorHelper.d.ts","sourceRoot":"","sources":["../../../../src/stores/filter/operators/QueryBuilderFilterOperatorHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,kBAAkB,EAMvB,wBAAwB,EAEzB,MAAM,qBAAqB,CAAC;AAO7B,OAAO,EACL,oBAAoB,EACpB,KAAK,uBAAuB,EAC7B,MAAM,+BAA+B,CAAC;AAGvC,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAoLnF,eAAO,MAAM,8BAA8B,yBACnB,oBAAoB,4BAChB,MAAM,KAC/B,kBAyBF,CAAC;AA8LF,eAAO,MAAM,yBAAyB,gBACvB,uBAAuB,cACxB,wBAAwB,4BACV,MAAM,YACtB,0BAA0B,2BAOnC,oBAAoB,GAAG,SA4EzB,CAAC"}
@@ -0,0 +1,257 @@
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, matchFunctionName, LambdaFunctionInstanceValue, VariableExpression, AbstractPropertyExpression, SimpleFunctionExpression, TYPICAL_MULTIPLICITY_TYPE, } from '@finos/legend-graph';
17
+ import { guaranteeType, guaranteeNonNullable, assertTrue, generateEnumerableNameFromToken, } from '@finos/legend-shared';
18
+ import { FilterConditionState, } from '../QueryBuilderFilterState.js';
19
+ import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../../graphManager/QueryBuilderSupportedFunctions.js';
20
+ import { buildGenericLambdaFunctionInstanceValue } from '../../QueryBuilderValueSpecificationHelper.js';
21
+ import { buildPropertyExpressionChain } from '../../QueryBuilderValueSpecificationBuilderHelper.js';
22
+ const getPropertyExpressionChainVariable = (propertyExpression) => {
23
+ let currentExpression = propertyExpression;
24
+ while (currentExpression instanceof AbstractPropertyExpression) {
25
+ currentExpression = guaranteeNonNullable(currentExpression.parametersValues[0]);
26
+ // Take care of chains of subtype (a pattern that is not useful, but we want to support and rectify)
27
+ // $x.employees->subType(@Person)->subType(@Staff)
28
+ while (currentExpression instanceof SimpleFunctionExpression &&
29
+ matchFunctionName(currentExpression.functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.SUBTYPE)) {
30
+ currentExpression = guaranteeNonNullable(currentExpression.parametersValues[0]);
31
+ }
32
+ }
33
+ return guaranteeType(currentExpression, VariableExpression);
34
+ };
35
+ const buildFilterConditionExpressionWithExists = (filterConditionState, operatorFunctionFullPath) => {
36
+ const multiplicityOne = filterConditionState.filterState.queryBuilderState.graphManagerState.graph.getTypicalMultiplicity(TYPICAL_MULTIPLICITY_TYPE.ONE);
37
+ assertTrue(filterConditionState.propertyExpressionState.requiresExistsHandling);
38
+ // 1. Decompose property expression
39
+ const expressions = [];
40
+ let currentPropertyExpression = buildPropertyExpressionChain(filterConditionState.propertyExpressionState.propertyExpression, filterConditionState.propertyExpressionState.queryBuilderState);
41
+ while (currentPropertyExpression instanceof AbstractPropertyExpression ||
42
+ (currentPropertyExpression instanceof SimpleFunctionExpression &&
43
+ matchFunctionName(currentPropertyExpression.functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.SUBTYPE))) {
44
+ let exp;
45
+ if (currentPropertyExpression instanceof SimpleFunctionExpression) {
46
+ exp = new SimpleFunctionExpression(extractElementNameFromPath(QUERY_BUILDER_SUPPORTED_FUNCTIONS.SUBTYPE), multiplicityOne);
47
+ }
48
+ else {
49
+ exp = new AbstractPropertyExpression('', multiplicityOne);
50
+ exp.func = currentPropertyExpression.func;
51
+ }
52
+ // NOTE: we must retain the rest of the parameters as those are derived property parameters
53
+ exp.parametersValues =
54
+ currentPropertyExpression.parametersValues.length > 1
55
+ ? currentPropertyExpression.parametersValues.slice(1)
56
+ : [];
57
+ expressions.push(exp);
58
+ currentPropertyExpression = guaranteeNonNullable(currentPropertyExpression.parametersValues[0]);
59
+ }
60
+ const rootVariable = guaranteeType(currentPropertyExpression, VariableExpression);
61
+ // 2. Traverse the list of decomposed property expression backward, every time we encounter a property of
62
+ // multiplicity many, create a new property expression and keep track of it to later form the lambda chain
63
+ const existsLambdaParamNames = [
64
+ ...filterConditionState.existsLambdaParamNames,
65
+ ];
66
+ const existsLambdaPropertyChains = [rootVariable];
67
+ let currentParamNameIndex = 0;
68
+ for (let i = expressions.length - 1; i >= 0; --i) {
69
+ const exp = expressions[i];
70
+ // just keep adding to the property chain
71
+ exp.parametersValues.unshift(existsLambdaPropertyChains[existsLambdaPropertyChains.length - 1]);
72
+ existsLambdaPropertyChains[existsLambdaPropertyChains.length - 1] = exp;
73
+ // ... but if the property is of multiplicity multiple, start a new property chain
74
+ if (exp instanceof AbstractPropertyExpression &&
75
+ (exp.func.multiplicity.upperBound === undefined ||
76
+ exp.func.multiplicity.upperBound > 1)) {
77
+ // NOTE: we need to find/generate the property chain variable name
78
+ // here, by doing this, we try our best to respect original/user-input variable name
79
+ if (currentParamNameIndex > existsLambdaParamNames.length - 1) {
80
+ existsLambdaParamNames.push(generateEnumerableNameFromToken(existsLambdaParamNames, filterConditionState.filterState.lambdaParameterName));
81
+ assertTrue(currentParamNameIndex === existsLambdaParamNames.length - 1);
82
+ }
83
+ existsLambdaPropertyChains.push(new VariableExpression(existsLambdaParamNames[currentParamNameIndex], multiplicityOne));
84
+ currentParamNameIndex++;
85
+ }
86
+ }
87
+ // 3. Build each property chain into an exists() simple function expression
88
+ const simpleFunctionExpressions = [];
89
+ for (let i = 0; i < existsLambdaPropertyChains.length - 1; ++i) {
90
+ const simpleFunctionExpression = new SimpleFunctionExpression(extractElementNameFromPath(QUERY_BUILDER_SUPPORTED_FUNCTIONS.EXISTS), multiplicityOne);
91
+ simpleFunctionExpression.parametersValues.push(existsLambdaPropertyChains[i]);
92
+ simpleFunctionExpressions.push(simpleFunctionExpression);
93
+ }
94
+ // build the leaf simple function expression which uses the operator
95
+ const operatorEpression = new SimpleFunctionExpression(extractElementNameFromPath(operatorFunctionFullPath), multiplicityOne);
96
+ operatorEpression.parametersValues.push(existsLambdaPropertyChains[existsLambdaPropertyChains.length - 1]);
97
+ // NOTE: there are simple operators which do not require any params (e.g. isEmpty)
98
+ if (filterConditionState.value) {
99
+ operatorEpression.parametersValues.push(filterConditionState.value);
100
+ }
101
+ simpleFunctionExpressions.push(operatorEpression);
102
+ // 4. Build the exists() lambda chain
103
+ assertTrue(simpleFunctionExpressions.length >= 2);
104
+ for (let i = simpleFunctionExpressions.length - 2; i >= 0; --i) {
105
+ const currentSFE = simpleFunctionExpressions[i];
106
+ const childSFE = simpleFunctionExpressions[i + 1];
107
+ // build child SFE lambda
108
+ const _existsLambdaVariable = childSFE.parametersValues[0];
109
+ const existsLambdaVariable = _existsLambdaVariable instanceof AbstractPropertyExpression
110
+ ? getPropertyExpressionChainVariable(_existsLambdaVariable)
111
+ : guaranteeType(_existsLambdaVariable, VariableExpression);
112
+ const existsLambda = buildGenericLambdaFunctionInstanceValue(existsLambdaVariable.name, [childSFE], filterConditionState.filterState.queryBuilderState.graphManagerState
113
+ .graph);
114
+ // add the child SFE lambda to the current SFE parameters
115
+ currentSFE.parametersValues.push(existsLambda);
116
+ }
117
+ return simpleFunctionExpressions[0];
118
+ };
119
+ export const buildFilterConditionExpression = (filterConditionState, operatorFunctionFullPath) => {
120
+ const multiplicityOne = filterConditionState.filterState.queryBuilderState.graphManagerState.graph.getTypicalMultiplicity(TYPICAL_MULTIPLICITY_TYPE.ONE);
121
+ if (filterConditionState.propertyExpressionState.requiresExistsHandling) {
122
+ return buildFilterConditionExpressionWithExists(filterConditionState, operatorFunctionFullPath);
123
+ }
124
+ const expression = new SimpleFunctionExpression(extractElementNameFromPath(operatorFunctionFullPath), multiplicityOne);
125
+ const propertyExpression = buildPropertyExpressionChain(filterConditionState.propertyExpressionState.propertyExpression, filterConditionState.propertyExpressionState.queryBuilderState);
126
+ expression.parametersValues.push(guaranteeNonNullable(propertyExpression));
127
+ // NOTE: there are simple operators which do not require any params (e.g. isEmpty)
128
+ if (filterConditionState.value) {
129
+ expression.parametersValues.push(filterConditionState.value);
130
+ }
131
+ return expression;
132
+ };
133
+ /**
134
+ * Handling exists() lambda found in the filter condition expression.
135
+ * The general approach for handling exists() is we will flat out the chain
136
+ * of exists() expressions into a normal filter condition state.
137
+ *
138
+ * When we build the condition function expression from the filter condition state,
139
+ * we walk the property expression chain, find property with multiplitiy upper bound
140
+ * other than 1 and create an exists() lambda there
141
+ *
142
+ * NOTE: to ensure we respect user's choice of variable name, as we build the state
143
+ * we record the lambda parameter names, so we can use those while re-building the function
144
+ * If for some reason, this list is stale, we can start adding our own parameter names
145
+ */
146
+ const buildFilterConditionStateWithExists = (filterState, parentExpression, operatorFunctionFullPath) => {
147
+ if (matchFunctionName(parentExpression.functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.EXISTS)) {
148
+ // 1. Decompose the exists() lambda chain into property expression chains
149
+ const existsLambdaParameterNames = [];
150
+ // `existsLambdaExpressions` should be a list of `AbstractPropertyExpression`
151
+ // e.g. |Firm.all()->filter(x|$x.employees->exists(x_1|$x_1->subType(@Develper).id->exists(x_2|$x_2 == 1))
152
+ // In the first exists() lambda, `$x_1->subType(@Develper).id` is an `AbstractPropertyExpression`.
153
+ const existsLambdaExpressions = [];
154
+ let mainFilterExpression = parentExpression;
155
+ while (matchFunctionName(mainFilterExpression.functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.EXISTS)) {
156
+ const existsLambda = guaranteeNonNullable(guaranteeType(mainFilterExpression.parametersValues[1], LambdaFunctionInstanceValue).values[0], `Can't process exists() expression: exists() lambda is missing`);
157
+ assertTrue(existsLambda.expressionSequence.length === 1, `Can't process exists() expression: exists() lambda body should hold an expression`);
158
+ mainFilterExpression = guaranteeType(existsLambda.expressionSequence[0], SimpleFunctionExpression, `Can't process exists() expression: exists() lambda body should hold an expression`);
159
+ // record the lambda parameter name
160
+ assertTrue(existsLambda.functionType.parameters.length === 1, `Can't process exists() expression: exists() lambda should have 1 parameter`);
161
+ existsLambdaParameterNames.push(guaranteeType(existsLambda.functionType.parameters[0], VariableExpression, `Can't process exists() expression: exists() lambda should have 1 parameter`).name);
162
+ // record the lambda property expression
163
+ if (mainFilterExpression.parametersValues[0] instanceof
164
+ AbstractPropertyExpression) {
165
+ existsLambdaExpressions.push(mainFilterExpression.parametersValues[0]);
166
+ }
167
+ }
168
+ // NOTE: make sure that the inner most function expression is the one we support
169
+ if (!matchFunctionName(mainFilterExpression.functionName, operatorFunctionFullPath)) {
170
+ return [undefined, undefined];
171
+ }
172
+ // 2. Build the property expression
173
+ const multiplicityOne = filterState.queryBuilderState.graphManagerState.graph.getTypicalMultiplicity(TYPICAL_MULTIPLICITY_TYPE.ONE);
174
+ const initialPropertyExpression = guaranteeType(parentExpression.parametersValues[0], AbstractPropertyExpression);
175
+ let flattenedPropertyExpressionChain = new AbstractPropertyExpression('', multiplicityOne);
176
+ flattenedPropertyExpressionChain.func = initialPropertyExpression.func;
177
+ flattenedPropertyExpressionChain.parametersValues =
178
+ initialPropertyExpression.parametersValues;
179
+ for (const expression of existsLambdaExpressions) {
180
+ // when rebuilding the property expression chain, disregard the initial variable that starts the chain
181
+ const expressions = [];
182
+ let currentExpression = expression;
183
+ while (currentExpression instanceof AbstractPropertyExpression ||
184
+ (currentExpression instanceof SimpleFunctionExpression &&
185
+ matchFunctionName(currentExpression.functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.SUBTYPE))) {
186
+ if (currentExpression instanceof SimpleFunctionExpression) {
187
+ const functionExpression = new SimpleFunctionExpression(extractElementNameFromPath(QUERY_BUILDER_SUPPORTED_FUNCTIONS.SUBTYPE), multiplicityOne);
188
+ functionExpression.parametersValues.unshift(guaranteeNonNullable(currentExpression.parametersValues[1]));
189
+ expressions.push(functionExpression);
190
+ }
191
+ else if (currentExpression instanceof AbstractPropertyExpression) {
192
+ const propertyExpression = new AbstractPropertyExpression('', multiplicityOne);
193
+ propertyExpression.func = currentExpression.func;
194
+ if (currentExpression.parametersValues.length > 1) {
195
+ // NOTE: we must retain the rest of the parameters as those are derived property parameters
196
+ propertyExpression.parametersValues =
197
+ currentExpression.parametersValues.slice(1);
198
+ }
199
+ else {
200
+ propertyExpression.parametersValues = [];
201
+ }
202
+ expressions.push(propertyExpression);
203
+ }
204
+ currentExpression = guaranteeNonNullable(currentExpression.parametersValues[0]);
205
+ }
206
+ assertTrue(expressions.length > 0, `Can't process exists() expression: exists() usage with non-chain property expression is not supported`);
207
+ for (let i = 0; i < expressions.length - 1; ++i) {
208
+ expressions[i].parametersValues.unshift(expressions[i + 1]);
209
+ }
210
+ expressions[expressions.length - 1].parametersValues.unshift(flattenedPropertyExpressionChain);
211
+ flattenedPropertyExpressionChain = guaranteeType(expressions[0], AbstractPropertyExpression, `Can't process exists() expression: can't flatten to a property expression`);
212
+ }
213
+ // 3. Build the filter condition state with the simplified property expression
214
+ const filterConditionState = new FilterConditionState(filterState, flattenedPropertyExpressionChain);
215
+ existsLambdaParameterNames.forEach((paramName) => filterConditionState.addExistsLambdaParamNames(paramName));
216
+ return [filterConditionState, mainFilterExpression];
217
+ }
218
+ return [undefined, undefined];
219
+ };
220
+ export const buildFilterConditionState = (filterState, expression, operatorFunctionFullPath, operator,
221
+ /**
222
+ * Use this flag for operator that does not require any param (e.g. isEmpty)
223
+ * NOTE: this is not the cleanest way to do this, if we find ourselves adding more and more customization
224
+ * to this utility function, we should just create a bunch of different methods
225
+ */
226
+ hasNoValue = false) => {
227
+ let filterConditionState;
228
+ // This is the simple expression of form `{property} {operator} {value}`
229
+ // This is used for post-build checks (useful when this expression is nested inside a longer
230
+ // chain of expression, e.g. ->exists($x|x == 'something'), etc.)
231
+ let mainExpressionWithOperator;
232
+ if (matchFunctionName(expression.functionName, operatorFunctionFullPath)) {
233
+ assertTrue(expression.parametersValues.length === (hasNoValue ? 1 : 2), `Can't process ${extractElementNameFromPath(operatorFunctionFullPath)}() expression: ${extractElementNameFromPath(operatorFunctionFullPath)}() expects ${hasNoValue ? 'no argument' : '1 argument'}`);
234
+ const propertyExpression = guaranteeType(expression.parametersValues[0], AbstractPropertyExpression, `Can't process ${extractElementNameFromPath(operatorFunctionFullPath)}() expression: expects property expression in lambda body`);
235
+ const variableName = getPropertyExpressionChainVariable(propertyExpression).name;
236
+ assertTrue(filterState.lambdaParameterName === variableName, `Can't process ${extractElementNameFromPath(operatorFunctionFullPath)}() expression: expects variable used in lambda body '${variableName}' to match lambda parameter '${filterState.lambdaParameterName}'`);
237
+ filterConditionState = new FilterConditionState(filterState, propertyExpression);
238
+ mainExpressionWithOperator = expression;
239
+ }
240
+ else if (matchFunctionName(expression.functionName, QUERY_BUILDER_SUPPORTED_FUNCTIONS.EXISTS)) {
241
+ [filterConditionState, mainExpressionWithOperator] =
242
+ buildFilterConditionStateWithExists(filterState, expression, operatorFunctionFullPath);
243
+ }
244
+ // Post-build check: make sure the simple filter condition LHS, RHS, and operator are compatible
245
+ // and set the value of the condition in the state accordingly.
246
+ if (filterConditionState && mainExpressionWithOperator) {
247
+ assertTrue(operator.isCompatibleWithFilterConditionProperty(filterConditionState), `Can't process ${extractElementNameFromPath(operatorFunctionFullPath)}() expression: property is not compatible with operator`);
248
+ filterConditionState.setOperator(operator);
249
+ filterConditionState.setValue(hasNoValue ? undefined : mainExpressionWithOperator.parametersValues[1]);
250
+ if (!operator.isCompatibleWithFilterConditionValue(filterConditionState)) {
251
+ filterConditionState.setValue(operator.getDefaultFilterConditionValue(filterConditionState));
252
+ }
253
+ return filterConditionState;
254
+ }
255
+ return undefined;
256
+ };
257
+ //# sourceMappingURL=QueryBuilderFilterOperatorHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderFilterOperatorHelper.js","sourceRoot":"","sources":["../../../../src/stores/filter/operators/QueryBuilderFilterOperatorHelper.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 { QueryBuilderFilterState, FilterConditionState } from '../QueryBuilderFilterState.js';
17
+ import { QueryBuilderFilterOperator } from '../QueryBuilderFilterOperator.js';
18
+ import { type ValueSpecification, type SimpleFunctionExpression } from '@finos/legend-graph';
19
+ export declare class QueryBuilderFilterOperator_Contain extends QueryBuilderFilterOperator {
20
+ getLabel(filterConditionState: FilterConditionState): string;
21
+ isCompatibleWithFilterConditionProperty(filterConditionState: FilterConditionState): boolean;
22
+ isCompatibleWithFilterConditionValue(filterConditionState: FilterConditionState): boolean;
23
+ getDefaultFilterConditionValue(filterConditionState: FilterConditionState): ValueSpecification | undefined;
24
+ buildFilterConditionExpression(filterConditionState: FilterConditionState): ValueSpecification;
25
+ buildFilterConditionState(filterState: QueryBuilderFilterState, expression: SimpleFunctionExpression): FilterConditionState | undefined;
26
+ }
27
+ export declare class QueryBuilderFilterOperator_NotContain extends QueryBuilderFilterOperator_Contain {
28
+ getLabel(filterConditionState: FilterConditionState): string;
29
+ buildFilterConditionExpression(filterConditionState: FilterConditionState): ValueSpecification;
30
+ buildFilterConditionState(filterState: QueryBuilderFilterState, expression: SimpleFunctionExpression): FilterConditionState | undefined;
31
+ }
32
+ //# sourceMappingURL=QueryBuilderFilterOperator_Contain.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderFilterOperator_Contain.d.ts","sourceRoot":"","sources":["../../../../src/stores/filter/operators/QueryBuilderFilterOperator_Contain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EACV,uBAAuB,EACvB,oBAAoB,EACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAE9B,MAAM,qBAAqB,CAAC;AAc7B,qBAAa,kCAAmC,SAAQ,0BAA0B;IAChF,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB,GAAG,MAAM;IAI5D,uCAAuC,CACrC,oBAAoB,EAAE,oBAAoB,GACzC,OAAO;IAOV,oCAAoC,CAClC,oBAAoB,EAAE,oBAAoB,GACzC,OAAO;IAOV,8BAA8B,CAC5B,oBAAoB,EAAE,oBAAoB,GACzC,kBAAkB,GAAG,SAAS;IAsBjC,8BAA8B,CAC5B,oBAAoB,EAAE,oBAAoB,GACzC,kBAAkB;IAOrB,yBAAyB,CACvB,WAAW,EAAE,uBAAuB,EACpC,UAAU,EAAE,wBAAwB,GACnC,oBAAoB,GAAG,SAAS;CAQpC;AAED,qBAAa,qCAAsC,SAAQ,kCAAkC;IAClF,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB,GAAG,MAAM;IAI5D,8BAA8B,CACrC,oBAAoB,EAAE,oBAAoB,GACzC,kBAAkB;IAQZ,yBAAyB,CAChC,WAAW,EAAE,uBAAuB,EACpC,UAAU,EAAE,wBAAwB,GACnC,oBAAoB,GAAG,SAAS;CAMpC"}
@@ -0,0 +1,71 @@
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 { QueryBuilderFilterOperator } from '../QueryBuilderFilterOperator.js';
17
+ import { PRIMITIVE_TYPE, buildPrimitiveInstanceValue, } from '@finos/legend-graph';
18
+ import { UnsupportedOperationError } from '@finos/legend-shared';
19
+ import { buildFilterConditionState, buildFilterConditionExpression, } from './QueryBuilderFilterOperatorHelper.js';
20
+ import { buildNotExpression, generateDefaultValueForPrimitiveType, getNonCollectionValueSpecificationType, unwrapNotExpression, } from '../../QueryBuilderValueSpecificationHelper.js';
21
+ import { QUERY_BUILDER_SUPPORTED_FUNCTIONS } from '../../../graphManager/QueryBuilderSupportedFunctions.js';
22
+ export class QueryBuilderFilterOperator_Contain extends QueryBuilderFilterOperator {
23
+ getLabel(filterConditionState) {
24
+ return 'contains';
25
+ }
26
+ isCompatibleWithFilterConditionProperty(filterConditionState) {
27
+ const propertyType = filterConditionState.propertyExpressionState.propertyExpression.func
28
+ .genericType.value.rawType;
29
+ return PRIMITIVE_TYPE.STRING === propertyType.path;
30
+ }
31
+ isCompatibleWithFilterConditionValue(filterConditionState) {
32
+ const type = filterConditionState.value
33
+ ? getNonCollectionValueSpecificationType(filterConditionState.value)
34
+ : undefined;
35
+ return PRIMITIVE_TYPE.STRING === type?.path;
36
+ }
37
+ getDefaultFilterConditionValue(filterConditionState) {
38
+ const propertyType = filterConditionState.propertyExpressionState.propertyExpression.func
39
+ .genericType.value.rawType;
40
+ switch (propertyType.path) {
41
+ case PRIMITIVE_TYPE.STRING: {
42
+ return buildPrimitiveInstanceValue(filterConditionState.filterState.queryBuilderState.graphManagerState
43
+ .graph, propertyType.path, generateDefaultValueForPrimitiveType(propertyType.path));
44
+ }
45
+ default:
46
+ throw new UnsupportedOperationError(`Can't get default value for filter operator '${this.getLabel(filterConditionState)}' when the LHS property is of type '${propertyType.path}'`);
47
+ }
48
+ }
49
+ buildFilterConditionExpression(filterConditionState) {
50
+ return buildFilterConditionExpression(filterConditionState, QUERY_BUILDER_SUPPORTED_FUNCTIONS.CONTAINS);
51
+ }
52
+ buildFilterConditionState(filterState, expression) {
53
+ return buildFilterConditionState(filterState, expression, QUERY_BUILDER_SUPPORTED_FUNCTIONS.CONTAINS, this);
54
+ }
55
+ }
56
+ export class QueryBuilderFilterOperator_NotContain extends QueryBuilderFilterOperator_Contain {
57
+ getLabel(filterConditionState) {
58
+ return `doesn't contain`;
59
+ }
60
+ buildFilterConditionExpression(filterConditionState) {
61
+ return buildNotExpression(filterConditionState.filterState.queryBuilderState.graphManagerState
62
+ .graph, super.buildFilterConditionExpression(filterConditionState));
63
+ }
64
+ buildFilterConditionState(filterState, expression) {
65
+ const innerExpression = unwrapNotExpression(expression);
66
+ return innerExpression
67
+ ? super.buildFilterConditionState(filterState, innerExpression)
68
+ : undefined;
69
+ }
70
+ }
71
+ //# sourceMappingURL=QueryBuilderFilterOperator_Contain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderFilterOperator_Contain.js","sourceRoot":"","sources":["../../../../src/stores/filter/operators/QueryBuilderFilterOperator_Contain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAMH,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EACL,cAAc,EAGd,2BAA2B,GAC5B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EACL,yBAAyB,EACzB,8BAA8B,GAC/B,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,kBAAkB,EAClB,oCAAoC,EACpC,sCAAsC,EACtC,mBAAmB,GACpB,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAE,iCAAiC,EAAE,MAAM,yDAAyD,CAAC;AAE5G,MAAM,OAAO,kCAAmC,SAAQ,0BAA0B;IAChF,QAAQ,CAAC,oBAA0C;QACjD,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,uCAAuC,CACrC,oBAA0C;QAE1C,MAAM,YAAY,GAChB,oBAAoB,CAAC,uBAAuB,CAAC,kBAAkB,CAAC,IAAI;aACjE,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC;QAC/B,OAAO,cAAc,CAAC,MAAM,KAAK,YAAY,CAAC,IAAI,CAAC;IACrD,CAAC;IAED,oCAAoC,CAClC,oBAA0C;QAE1C,MAAM,IAAI,GAAG,oBAAoB,CAAC,KAAK;YACrC,CAAC,CAAC,sCAAsC,CAAC,oBAAoB,CAAC,KAAK,CAAC;YACpE,CAAC,CAAC,SAAS,CAAC;QACd,OAAO,cAAc,CAAC,MAAM,KAAK,IAAI,EAAE,IAAI,CAAC;IAC9C,CAAC;IAED,8BAA8B,CAC5B,oBAA0C;QAE1C,MAAM,YAAY,GAChB,oBAAoB,CAAC,uBAAuB,CAAC,kBAAkB,CAAC,IAAI;aACjE,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC;QAC/B,QAAQ,YAAY,CAAC,IAAI,EAAE;YACzB,KAAK,cAAc,CAAC,MAAM,CAAC,CAAC;gBAC1B,OAAO,2BAA2B,CAChC,oBAAoB,CAAC,WAAW,CAAC,iBAAiB,CAAC,iBAAiB;qBACjE,KAAK,EACR,YAAY,CAAC,IAAI,EACjB,oCAAoC,CAAC,YAAY,CAAC,IAAI,CAAC,CACxD,CAAC;aACH;YACD;gBACE,MAAM,IAAI,yBAAyB,CACjC,gDAAgD,IAAI,CAAC,QAAQ,CAC3D,oBAAoB,CACrB,uCAAuC,YAAY,CAAC,IAAI,GAAG,CAC7D,CAAC;SACL;IACH,CAAC;IAED,8BAA8B,CAC5B,oBAA0C;QAE1C,OAAO,8BAA8B,CACnC,oBAAoB,EACpB,iCAAiC,CAAC,QAAQ,CAC3C,CAAC;IACJ,CAAC;IAED,yBAAyB,CACvB,WAAoC,EACpC,UAAoC;QAEpC,OAAO,yBAAyB,CAC9B,WAAW,EACX,UAAU,EACV,iCAAiC,CAAC,QAAQ,EAC1C,IAAI,CACL,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,qCAAsC,SAAQ,kCAAkC;IAClF,QAAQ,CAAC,oBAA0C;QAC1D,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAEQ,8BAA8B,CACrC,oBAA0C;QAE1C,OAAO,kBAAkB,CACvB,oBAAoB,CAAC,WAAW,CAAC,iBAAiB,CAAC,iBAAiB;aACjE,KAAK,EACR,KAAK,CAAC,8BAA8B,CAAC,oBAAoB,CAAC,CAC3D,CAAC;IACJ,CAAC;IAEQ,yBAAyB,CAChC,WAAoC,EACpC,UAAoC;QAEpC,MAAM,eAAe,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;QACxD,OAAO,eAAe;YACpB,CAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC,WAAW,EAAE,eAAe,CAAC;YAC/D,CAAC,CAAC,SAAS,CAAC;IAChB,CAAC;CACF"}
@@ -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 { QueryBuilderFilterState, FilterConditionState } from '../QueryBuilderFilterState.js';
17
+ import { QueryBuilderFilterOperator } from '../QueryBuilderFilterOperator.js';
18
+ import { type ValueSpecification, type SimpleFunctionExpression } from '@finos/legend-graph';
19
+ export declare class QueryBuilderFilterOperator_EndWith extends QueryBuilderFilterOperator {
20
+ getLabel(filterConditionState: FilterConditionState): string;
21
+ isCompatibleWithFilterConditionProperty(filterConditionState: FilterConditionState): boolean;
22
+ isCompatibleWithFilterConditionValue(filterConditionState: FilterConditionState): boolean;
23
+ getDefaultFilterConditionValue(filterConditionState: FilterConditionState): ValueSpecification | undefined;
24
+ buildFilterConditionExpression(filterConditionState: FilterConditionState): ValueSpecification;
25
+ buildFilterConditionState(filterState: QueryBuilderFilterState, expression: SimpleFunctionExpression): FilterConditionState | undefined;
26
+ }
27
+ export declare class QueryBuilderFilterOperator_NotEndWith extends QueryBuilderFilterOperator_EndWith {
28
+ getLabel(filterConditionState: FilterConditionState): string;
29
+ buildFilterConditionExpression(filterConditionState: FilterConditionState): ValueSpecification;
30
+ buildFilterConditionState(filterState: QueryBuilderFilterState, expression: SimpleFunctionExpression): FilterConditionState | undefined;
31
+ }
32
+ //# sourceMappingURL=QueryBuilderFilterOperator_EndWith.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBuilderFilterOperator_EndWith.d.ts","sourceRoot":"","sources":["../../../../src/stores/filter/operators/QueryBuilderFilterOperator_EndWith.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EACV,uBAAuB,EACvB,oBAAoB,EACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAE9B,MAAM,qBAAqB,CAAC;AAc7B,qBAAa,kCAAmC,SAAQ,0BAA0B;IAChF,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB,GAAG,MAAM;IAI5D,uCAAuC,CACrC,oBAAoB,EAAE,oBAAoB,GACzC,OAAO;IAOV,oCAAoC,CAClC,oBAAoB,EAAE,oBAAoB,GACzC,OAAO;IAOV,8BAA8B,CAC5B,oBAAoB,EAAE,oBAAoB,GACzC,kBAAkB,GAAG,SAAS;IAsBjC,8BAA8B,CAC5B,oBAAoB,EAAE,oBAAoB,GACzC,kBAAkB;IAOrB,yBAAyB,CACvB,WAAW,EAAE,uBAAuB,EACpC,UAAU,EAAE,wBAAwB,GACnC,oBAAoB,GAAG,SAAS;CAQpC;AAED,qBAAa,qCAAsC,SAAQ,kCAAkC;IAClF,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB,GAAG,MAAM;IAI5D,8BAA8B,CACrC,oBAAoB,EAAE,oBAAoB,GACzC,kBAAkB;IAQZ,yBAAyB,CAChC,WAAW,EAAE,uBAAuB,EACpC,UAAU,EAAE,wBAAwB,GACnC,oBAAoB,GAAG,SAAS;CAMpC"}