@finos/legend-query-builder 0.0.1 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (348) hide show
  1. package/lib/components/QueryBuilder.d.ts.map +1 -1
  2. package/lib/components/QueryBuilder.js +14 -4
  3. package/lib/components/QueryBuilder.js.map +1 -1
  4. package/lib/components/QueryBuilderDiffPanel.d.ts +22 -0
  5. package/lib/components/QueryBuilderDiffPanel.d.ts.map +1 -0
  6. package/lib/components/QueryBuilderDiffPanel.js +103 -0
  7. package/lib/components/QueryBuilderDiffPanel.js.map +1 -0
  8. package/lib/components/QueryBuilderParametersPanel.js +3 -3
  9. package/lib/components/QueryBuilderParametersPanel.js.map +1 -1
  10. package/lib/components/QueryBuilderResultPanel.d.ts.map +1 -1
  11. package/lib/components/QueryBuilderResultPanel.js +8 -9
  12. package/lib/components/QueryBuilderResultPanel.js.map +1 -1
  13. package/lib/components/QueryBuilderSideBar.js +1 -1
  14. package/lib/components/QueryBuilderSideBar.js.map +1 -1
  15. package/lib/components/ServiceQuerySetupUtils.d.ts +23 -0
  16. package/lib/components/ServiceQuerySetupUtils.d.ts.map +1 -0
  17. package/lib/components/ServiceQuerySetupUtils.js +25 -0
  18. package/lib/components/ServiceQuerySetupUtils.js.map +1 -0
  19. package/lib/components/explorer/QueryBuilderExplorerPanel.d.ts.map +1 -1
  20. package/lib/components/explorer/QueryBuilderExplorerPanel.js +4 -10
  21. package/lib/components/explorer/QueryBuilderExplorerPanel.js.map +1 -1
  22. package/lib/components/explorer/QueryBuilderFunctionsExplorerPanel.d.ts.map +1 -1
  23. package/lib/components/explorer/QueryBuilderFunctionsExplorerPanel.js +8 -6
  24. package/lib/components/explorer/QueryBuilderFunctionsExplorerPanel.js.map +1 -1
  25. package/lib/components/explorer/{QueryBuilderMilestoneEditor.d.ts → QueryBuilderMilestoningEditor.d.ts} +1 -1
  26. package/lib/components/explorer/QueryBuilderMilestoningEditor.d.ts.map +1 -0
  27. package/lib/components/explorer/{QueryBuilderMilestoneEditor.js → QueryBuilderMilestoningEditor.js} +9 -9
  28. package/lib/components/explorer/QueryBuilderMilestoningEditor.js.map +1 -0
  29. package/lib/components/explorer/QueryBuilderPropertySearchPanel.d.ts.map +1 -1
  30. package/lib/components/explorer/QueryBuilderPropertySearchPanel.js +69 -61
  31. package/lib/components/explorer/QueryBuilderPropertySearchPanel.js.map +1 -1
  32. package/lib/components/fetch-structure/QueryBuilderProjectionPanel.d.ts.map +1 -1
  33. package/lib/components/fetch-structure/QueryBuilderProjectionPanel.js +1 -3
  34. package/lib/components/fetch-structure/QueryBuilderProjectionPanel.js.map +1 -1
  35. package/lib/components/filter/QueryBuilderFilterPanel.d.ts.map +1 -1
  36. package/lib/components/filter/QueryBuilderFilterPanel.js +3 -7
  37. package/lib/components/filter/QueryBuilderFilterPanel.js.map +1 -1
  38. package/lib/components/shared/QueryBuilderPropertyInfoTooltip.d.ts.map +1 -1
  39. package/lib/components/shared/QueryBuilderPropertyInfoTooltip.js +7 -2
  40. package/lib/components/shared/QueryBuilderPropertyInfoTooltip.js.map +1 -1
  41. package/lib/graphManager/QueryBuilderHashUtils.d.ts +84 -0
  42. package/lib/graphManager/QueryBuilderHashUtils.d.ts.map +1 -0
  43. package/lib/graphManager/QueryBuilderHashUtils.js +91 -0
  44. package/lib/graphManager/QueryBuilderHashUtils.js.map +1 -0
  45. package/lib/index.css +2 -2
  46. package/lib/index.css.map +1 -1
  47. package/lib/index.d.ts +3 -0
  48. package/lib/index.d.ts.map +1 -1
  49. package/lib/index.js +3 -0
  50. package/lib/index.js.map +1 -1
  51. package/lib/package.json +6 -4
  52. package/lib/stores/QueryBuilderChangeDetectionState.d.ts +26 -5
  53. package/lib/stores/QueryBuilderChangeDetectionState.d.ts.map +1 -1
  54. package/lib/stores/QueryBuilderChangeDetectionState.js +82 -10
  55. package/lib/stores/QueryBuilderChangeDetectionState.js.map +1 -1
  56. package/lib/stores/QueryBuilderConfig.d.ts +1 -0
  57. package/lib/stores/QueryBuilderConfig.d.ts.map +1 -1
  58. package/lib/stores/QueryBuilderConfig.js +1 -0
  59. package/lib/stores/QueryBuilderConfig.js.map +1 -1
  60. package/lib/stores/QueryBuilderMilestoningState.d.ts +3 -1
  61. package/lib/stores/QueryBuilderMilestoningState.d.ts.map +1 -1
  62. package/lib/stores/QueryBuilderMilestoningState.js +10 -0
  63. package/lib/stores/QueryBuilderMilestoningState.js.map +1 -1
  64. package/lib/stores/QueryBuilderParametersState.d.ts +3 -1
  65. package/lib/stores/QueryBuilderParametersState.d.ts.map +1 -1
  66. package/lib/stores/QueryBuilderParametersState.js +10 -1
  67. package/lib/stores/QueryBuilderParametersState.js.map +1 -1
  68. package/lib/stores/QueryBuilderPropertyEditorState.d.ts +5 -3
  69. package/lib/stores/QueryBuilderPropertyEditorState.d.ts.map +1 -1
  70. package/lib/stores/QueryBuilderPropertyEditorState.js +15 -5
  71. package/lib/stores/QueryBuilderPropertyEditorState.js.map +1 -1
  72. package/lib/stores/QueryBuilderResultState.d.ts +5 -3
  73. package/lib/stores/QueryBuilderResultState.d.ts.map +1 -1
  74. package/lib/stores/QueryBuilderResultState.js +26 -6
  75. package/lib/stores/QueryBuilderResultState.js.map +1 -1
  76. package/lib/stores/QueryBuilderState.d.ts +3 -5
  77. package/lib/stores/QueryBuilderState.d.ts.map +1 -1
  78. package/lib/stores/QueryBuilderState.js +32 -22
  79. package/lib/stores/QueryBuilderState.js.map +1 -1
  80. package/lib/stores/QueryBuilderStateTestUtils.js +1 -1
  81. package/lib/stores/QueryBuilderStateTestUtils.js.map +1 -1
  82. package/lib/stores/QueryBuilderTextEditorState.js +1 -1
  83. package/lib/stores/QueryBuilderTextEditorState.js.map +1 -1
  84. package/lib/stores/QueryBuilderUnsupportedQueryState.d.ts +4 -2
  85. package/lib/stores/QueryBuilderUnsupportedQueryState.d.ts.map +1 -1
  86. package/lib/stores/QueryBuilderUnsupportedQueryState.js +10 -1
  87. package/lib/stores/QueryBuilderUnsupportedQueryState.js.map +1 -1
  88. package/lib/stores/ServiceInfo.d.ts +28 -0
  89. package/lib/stores/ServiceInfo.d.ts.map +1 -0
  90. package/lib/stores/ServiceInfo.js +34 -0
  91. package/lib/stores/ServiceInfo.js.map +1 -0
  92. package/lib/stores/explorer/QueryBuilderExplorerState.d.ts +6 -6
  93. package/lib/stores/explorer/QueryBuilderExplorerState.d.ts.map +1 -1
  94. package/lib/stores/explorer/QueryBuilderExplorerState.js +19 -14
  95. package/lib/stores/explorer/QueryBuilderExplorerState.js.map +1 -1
  96. package/lib/stores/explorer/QueryBuilderPropertySearchState.d.ts +36 -17
  97. package/lib/stores/explorer/QueryBuilderPropertySearchState.d.ts.map +1 -1
  98. package/lib/stores/explorer/QueryBuilderPropertySearchState.js +203 -161
  99. package/lib/stores/explorer/QueryBuilderPropertySearchState.js.map +1 -1
  100. package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.d.ts +5 -3
  101. package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.d.ts.map +1 -1
  102. package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.js +1 -0
  103. package/lib/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.js.map +1 -1
  104. package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.d.ts +1 -1
  105. package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.d.ts.map +1 -1
  106. package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.js +3 -3
  107. package/lib/stores/fetch-structure/QueryBuilderFetchStructureState.js.map +1 -1
  108. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.d.ts +3 -1
  109. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.d.ts.map +1 -1
  110. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.js +9 -1
  111. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.js.map +1 -1
  112. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.d.ts +7 -5
  113. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.d.ts.map +1 -1
  114. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.js +20 -5
  115. package/lib/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.js.map +1 -1
  116. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.d.ts +7 -4
  117. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.d.ts.map +1 -1
  118. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.js +20 -5
  119. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.js.map +1 -1
  120. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.d.ts +6 -5
  121. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.d.ts.map +1 -1
  122. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.js +14 -9
  123. package/lib/stores/fetch-structure/projection/QueryBuilderProjectionState.js.map +1 -1
  124. package/lib/stores/fetch-structure/projection/QueryResultSetModifierState.d.ts +6 -3
  125. package/lib/stores/fetch-structure/projection/QueryResultSetModifierState.d.ts.map +1 -1
  126. package/lib/stores/fetch-structure/projection/QueryResultSetModifierState.js +28 -5
  127. package/lib/stores/fetch-structure/projection/QueryResultSetModifierState.js.map +1 -1
  128. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.d.ts +4 -1
  129. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.d.ts.map +1 -1
  130. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.js +7 -1
  131. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.js.map +1 -1
  132. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.d.ts +8 -5
  133. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.d.ts.map +1 -1
  134. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.js +24 -7
  135. package/lib/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.js.map +1 -1
  136. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.d.ts +3 -1
  137. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.d.ts.map +1 -1
  138. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.js +5 -0
  139. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.js.map +1 -1
  140. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.d.ts +3 -1
  141. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.d.ts.map +1 -1
  142. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.js +5 -0
  143. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.js.map +1 -1
  144. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.d.ts +3 -1
  145. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.d.ts.map +1 -1
  146. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.js +7 -0
  147. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.js.map +1 -1
  148. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.d.ts +3 -1
  149. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.d.ts.map +1 -1
  150. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.js +7 -1
  151. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.js.map +1 -1
  152. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.d.ts +3 -1
  153. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.d.ts.map +1 -1
  154. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.js +7 -1
  155. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.js.map +1 -1
  156. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.d.ts +3 -1
  157. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.d.ts.map +1 -1
  158. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.js +5 -0
  159. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.js.map +1 -1
  160. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.d.ts +3 -1
  161. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.d.ts.map +1 -1
  162. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.js +5 -0
  163. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.js.map +1 -1
  164. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.d.ts +3 -1
  165. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.d.ts.map +1 -1
  166. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.js +7 -0
  167. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.js.map +1 -1
  168. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.d.ts +3 -1
  169. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.d.ts.map +1 -1
  170. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.js +7 -0
  171. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.js.map +1 -1
  172. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.d.ts +3 -1
  173. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.d.ts.map +1 -1
  174. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.js +5 -0
  175. package/lib/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.js.map +1 -1
  176. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.d.ts +3 -1
  177. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.d.ts.map +1 -1
  178. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.js.map +1 -1
  179. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.d.ts +14 -8
  180. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.d.ts.map +1 -1
  181. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.js +54 -4
  182. package/lib/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.js.map +1 -1
  183. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.d.ts +4 -1
  184. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.d.ts.map +1 -1
  185. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.js +12 -1
  186. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.js.map +1 -1
  187. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.d.ts +4 -1
  188. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.d.ts.map +1 -1
  189. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.js +12 -1
  190. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.js.map +1 -1
  191. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.d.ts +4 -1
  192. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.d.ts.map +1 -1
  193. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.js +10 -1
  194. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.js.map +1 -1
  195. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.d.ts +3 -1
  196. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.d.ts.map +1 -1
  197. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.js +7 -1
  198. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.js.map +1 -1
  199. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.d.ts +1 -0
  200. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.d.ts.map +1 -1
  201. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.js +7 -0
  202. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.js.map +1 -1
  203. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.d.ts +4 -1
  204. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.d.ts.map +1 -1
  205. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.js +10 -1
  206. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.js.map +1 -1
  207. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.d.ts +4 -1
  208. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.d.ts.map +1 -1
  209. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.js +12 -0
  210. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.js.map +1 -1
  211. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.d.ts +3 -1
  212. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.d.ts.map +1 -1
  213. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.js +7 -1
  214. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.js.map +1 -1
  215. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.d.ts +3 -1
  216. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.d.ts.map +1 -1
  217. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.js +7 -0
  218. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.js.map +1 -1
  219. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.d.ts +5 -2
  220. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.d.ts.map +1 -1
  221. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.js +12 -1
  222. package/lib/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.js.map +1 -1
  223. package/lib/stores/filter/QueryBuilderFilterOperator.d.ts +3 -1
  224. package/lib/stores/filter/QueryBuilderFilterOperator.d.ts.map +1 -1
  225. package/lib/stores/filter/QueryBuilderFilterOperator.js.map +1 -1
  226. package/lib/stores/filter/QueryBuilderFilterState.d.ts +14 -8
  227. package/lib/stores/filter/QueryBuilderFilterState.d.ts.map +1 -1
  228. package/lib/stores/filter/QueryBuilderFilterState.js +54 -9
  229. package/lib/stores/filter/QueryBuilderFilterState.js.map +1 -1
  230. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.d.ts +4 -1
  231. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.d.ts.map +1 -1
  232. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.js +10 -1
  233. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Contain.js.map +1 -1
  234. package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.d.ts +4 -1
  235. package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.d.ts.map +1 -1
  236. package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.js +10 -1
  237. package/lib/stores/filter/operators/QueryBuilderFilterOperator_EndWith.js.map +1 -1
  238. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.d.ts +4 -1
  239. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.d.ts.map +1 -1
  240. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.js +8 -1
  241. package/lib/stores/filter/operators/QueryBuilderFilterOperator_Equal.js.map +1 -1
  242. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.d.ts +3 -1
  243. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.d.ts.map +1 -1
  244. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.js +7 -1
  245. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.js.map +1 -1
  246. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.d.ts +3 -1
  247. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.d.ts.map +1 -1
  248. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.js +7 -1
  249. package/lib/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.js.map +1 -1
  250. package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.d.ts +4 -1
  251. package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.d.ts.map +1 -1
  252. package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.js +8 -0
  253. package/lib/stores/filter/operators/QueryBuilderFilterOperator_In.js.map +1 -1
  254. package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.d.ts +4 -1
  255. package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.d.ts.map +1 -1
  256. package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.js +10 -0
  257. package/lib/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.js.map +1 -1
  258. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.d.ts +3 -1
  259. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.d.ts.map +1 -1
  260. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.js +5 -1
  261. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThan.js.map +1 -1
  262. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.d.ts +3 -1
  263. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.d.ts.map +1 -1
  264. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.js +7 -1
  265. package/lib/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.js.map +1 -1
  266. package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.d.ts +4 -1
  267. package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.d.ts.map +1 -1
  268. package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.js +10 -1
  269. package/lib/stores/filter/operators/QueryBuilderFilterOperator_StartWith.js.map +1 -1
  270. package/lib/stores/workflows/ServiceQueryBuilderState.d.ts.map +1 -1
  271. package/lib/stores/workflows/ServiceQueryBuilderState.js +15 -7
  272. package/lib/stores/workflows/ServiceQueryBuilderState.js.map +1 -1
  273. package/package.json +12 -10
  274. package/src/components/QueryBuilder.tsx +41 -1
  275. package/src/components/QueryBuilderDiffPanel.tsx +222 -0
  276. package/src/components/QueryBuilderParametersPanel.tsx +3 -3
  277. package/src/components/QueryBuilderResultPanel.tsx +31 -18
  278. package/src/components/QueryBuilderSideBar.tsx +1 -1
  279. package/src/components/ServiceQuerySetupUtils.tsx +54 -0
  280. package/src/components/explorer/QueryBuilderExplorerPanel.tsx +5 -12
  281. package/src/components/explorer/QueryBuilderFunctionsExplorerPanel.tsx +24 -14
  282. package/src/components/explorer/{QueryBuilderMilestoneEditor.tsx → QueryBuilderMilestoningEditor.tsx} +12 -8
  283. package/src/components/explorer/QueryBuilderPropertySearchPanel.tsx +156 -145
  284. package/src/components/fetch-structure/QueryBuilderProjectionPanel.tsx +1 -5
  285. package/src/components/filter/QueryBuilderFilterPanel.tsx +3 -13
  286. package/src/components/shared/QueryBuilderPropertyInfoTooltip.tsx +22 -0
  287. package/src/graphManager/QueryBuilderHashUtils.ts +95 -0
  288. package/src/index.ts +3 -0
  289. package/src/stores/QueryBuilderChangeDetectionState.ts +112 -10
  290. package/src/stores/QueryBuilderConfig.ts +2 -0
  291. package/src/stores/QueryBuilderMilestoningState.ts +12 -1
  292. package/src/stores/QueryBuilderParametersState.ts +15 -2
  293. package/src/stores/QueryBuilderPropertyEditorState.ts +19 -7
  294. package/src/stores/QueryBuilderResultState.ts +30 -8
  295. package/src/stores/QueryBuilderState.ts +50 -37
  296. package/src/stores/QueryBuilderStateTestUtils.ts +1 -1
  297. package/src/stores/QueryBuilderTextEditorState.ts +1 -1
  298. package/src/stores/QueryBuilderUnsupportedQueryState.ts +13 -3
  299. package/src/stores/ServiceInfo.ts +52 -0
  300. package/src/stores/explorer/QueryBuilderExplorerState.ts +26 -30
  301. package/src/stores/explorer/QueryBuilderPropertySearchState.ts +259 -193
  302. package/src/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.ts +8 -3
  303. package/src/stores/fetch-structure/QueryBuilderFetchStructureState.ts +4 -4
  304. package/src/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.ts +18 -2
  305. package/src/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeUtil.ts +31 -6
  306. package/src/stores/fetch-structure/projection/QueryBuilderProjectionColumnState.ts +34 -9
  307. package/src/stores/fetch-structure/projection/QueryBuilderProjectionState.ts +23 -16
  308. package/src/stores/fetch-structure/projection/QueryResultSetModifierState.ts +38 -8
  309. package/src/stores/fetch-structure/projection/aggregation/QueryBuilderAggregateOperator.ts +15 -2
  310. package/src/stores/fetch-structure/projection/aggregation/QueryBuilderAggregationState.ts +37 -12
  311. package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Average.ts +10 -1
  312. package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Count.ts +10 -1
  313. package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Distinct.ts +12 -1
  314. package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_DistinctCount.ts +17 -2
  315. package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_JoinString.ts +17 -2
  316. package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Max.ts +10 -1
  317. package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Min.ts +10 -1
  318. package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Population.ts +12 -1
  319. package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_StdDev_Sample.ts +12 -1
  320. package/src/stores/fetch-structure/projection/aggregation/operators/QueryBuilderAggregateOperator_Sum.ts +10 -1
  321. package/src/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterOperator.ts +4 -2
  322. package/src/stores/fetch-structure/projection/post-filter/QueryBuilderPostFilterState.ts +78 -10
  323. package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Contain.ts +19 -1
  324. package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_EndWith.ts +22 -2
  325. package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_Equal.ts +17 -1
  326. package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThan.ts +13 -1
  327. package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_GreaterThanEqual.ts +8 -0
  328. package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_In.ts +20 -2
  329. package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_IsEmpty.ts +18 -1
  330. package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThan.ts +13 -1
  331. package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_LessThanEqual.ts +12 -1
  332. package/src/stores/fetch-structure/projection/post-filter/operators/QueryBuilderPostFilterOperator_StartWith.ts +26 -3
  333. package/src/stores/filter/QueryBuilderFilterOperator.ts +4 -2
  334. package/src/stores/filter/QueryBuilderFilterState.ts +80 -22
  335. package/src/stores/filter/operators/QueryBuilderFilterOperator_Contain.ts +20 -2
  336. package/src/stores/filter/operators/QueryBuilderFilterOperator_EndWith.ts +20 -2
  337. package/src/stores/filter/operators/QueryBuilderFilterOperator_Equal.ts +18 -2
  338. package/src/stores/filter/operators/QueryBuilderFilterOperator_GreaterThan.ts +16 -2
  339. package/src/stores/filter/operators/QueryBuilderFilterOperator_GreaterThanEqual.ts +16 -2
  340. package/src/stores/filter/operators/QueryBuilderFilterOperator_In.ts +14 -1
  341. package/src/stores/filter/operators/QueryBuilderFilterOperator_IsEmpty.ts +16 -1
  342. package/src/stores/filter/operators/QueryBuilderFilterOperator_LessThan.ts +14 -2
  343. package/src/stores/filter/operators/QueryBuilderFilterOperator_LessThanEqual.ts +16 -2
  344. package/src/stores/filter/operators/QueryBuilderFilterOperator_StartWith.ts +20 -2
  345. package/src/stores/workflows/ServiceQueryBuilderState.ts +24 -9
  346. package/tsconfig.json +7 -2
  347. package/lib/components/explorer/QueryBuilderMilestoneEditor.d.ts.map +0 -1
  348. package/lib/components/explorer/QueryBuilderMilestoneEditor.js.map +0 -1
@@ -13,49 +13,87 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { Class, getAllOwnClassProperties, getAllClassProperties, getAllClassDerivedProperties, PrimitiveType, PRIMITIVE_TYPE, } from '@finos/legend-graph';
17
- import { addUniqueEntry, deleteEntry, guaranteeNonNullable, } from '@finos/legend-shared';
18
- import { makeAutoObservable, observable, computed, action } from 'mobx';
19
- import { QUERY_BUILDER_PROPERTY_SEARCH_MAX_DEPTH, QUERY_BUILDER_PROPERTY_SEARCH_RESULTS_LIMIT, QUERY_BUILDER_PROPERTY_SEARCH_TYPE, } from '../QueryBuilderConfig.js';
16
+ import { Class, getAllOwnClassProperties, getAllClassProperties, getAllClassDerivedProperties, PrimitiveType, PRIMITIVE_TYPE, CORE_PURE_PATH, PURE_DOC_TAG, } from '@finos/legend-graph';
17
+ import { ActionState, addUniqueEntry, deleteEntry, guaranteeNonNullable, } from '@finos/legend-shared';
18
+ import { observable, computed, action, makeObservable, runInAction, } from 'mobx';
19
+ import { QUERY_BUILDER_PROPERTY_SEARCH_MAX_DEPTH, QUERY_BUILDER_PROPERTY_SEARCH_RESULTS_LIMIT, QUERY_BUILDER_PROPERTY_SEARCH_TYPE, QUERY_BUILDER_PROPERTY_SEARCH_MAX_NODES, } from '../QueryBuilderConfig.js';
20
20
  import { getQueryBuilderPropertyNodeData, getQueryBuilderSubTypeNodeData, QueryBuilderExplorerTreePropertyNodeData, QueryBuilderExplorerTreeSubTypeNodeData, } from './QueryBuilderExplorerState.js';
21
+ import { Fuse } from '@finos/legend-art';
22
+ import { TextSearchAdvancedConfigState } from '@finos/legend-application';
21
23
  export class QueryBuilderPropertySearchState {
22
24
  queryBuilderState;
23
- // TODO: Check if we could clean this up as this seems quite complicated and its purpose is not clear to me
24
- // See https://github.com/finos/legend-studio/pull/1212
25
- allMappedPropertyNodes = [];
26
- searchedMappedPropertyNodes = [];
25
+ /**
26
+ * When we initialize property search engine, we practically extend
27
+ * the existing explorer by a few depth. As such, we create new explorer
28
+ * nodes which are not part of the main explorer tree. Together with the
29
+ * nodes already explored in the tree, these nodes are stored here to help
30
+ * searching. Think of this as the knowledge base of property search
31
+ *
32
+ * NOTE: a big reason why we want to store these as explorer tree nodes
33
+ * is that we could interact with the searched nodes, i.e. drag them to
34
+ * various panels to create filter, fetch-structure, etc.
35
+ */
36
+ indexedExplorerTreeNodes = [];
37
+ // search
38
+ searchEngine;
39
+ searchConfigurationState;
40
+ searchState = ActionState.create();
41
+ searchText = '';
42
+ searchResults = [];
43
+ isOverSearchLimit = false;
27
44
  isSearchPanelOpen = false;
28
45
  isSearchPanelHidden = false;
29
- searchText = '';
30
- filterByMultiple;
31
- typeFilters;
46
+ showSearchConfigurationMenu = false;
47
+ // filter
48
+ typeFilters = [
49
+ QUERY_BUILDER_PROPERTY_SEARCH_TYPE.CLASS,
50
+ QUERY_BUILDER_PROPERTY_SEARCH_TYPE.STRING,
51
+ QUERY_BUILDER_PROPERTY_SEARCH_TYPE.BOOLEAN,
52
+ QUERY_BUILDER_PROPERTY_SEARCH_TYPE.NUMBER,
53
+ QUERY_BUILDER_PROPERTY_SEARCH_TYPE.DATE,
54
+ ];
32
55
  constructor(queryBuilderState) {
33
- makeAutoObservable(this, {
34
- queryBuilderState: false,
35
- searchedMappedPropertyNodes: observable,
56
+ makeObservable(this, {
57
+ indexedExplorerTreeNodes: observable,
58
+ searchText: observable,
59
+ searchResults: observable,
60
+ isOverSearchLimit: observable,
36
61
  isSearchPanelOpen: observable,
37
62
  isSearchPanelHidden: observable,
38
- searchText: observable,
39
- filteredPropertyNodes: computed,
63
+ showSearchConfigurationMenu: observable,
64
+ typeFilters: observable,
65
+ filteredSearchResults: computed,
66
+ search: action,
67
+ resetSearch: action,
40
68
  setSearchText: action,
41
- setSearchedMappedPropertyNodes: action,
69
+ setShowSearchConfigurationMenu: action,
42
70
  setIsSearchPanelOpen: action,
43
71
  setIsSearchPanelHidden: action,
44
- refreshPropertyState: action,
45
- setFilterByMultiple: action,
46
- toggleTypeFilter: action,
72
+ toggleFilterForType: action,
73
+ initialize: action,
47
74
  });
48
75
  this.queryBuilderState = queryBuilderState;
49
- this.filterByMultiple = true;
50
- this.typeFilters = [
51
- QUERY_BUILDER_PROPERTY_SEARCH_TYPE.CLASS,
52
- QUERY_BUILDER_PROPERTY_SEARCH_TYPE.STRING,
53
- QUERY_BUILDER_PROPERTY_SEARCH_TYPE.BOOLEAN,
54
- QUERY_BUILDER_PROPERTY_SEARCH_TYPE.NUMBER,
55
- QUERY_BUILDER_PROPERTY_SEARCH_TYPE.DATE,
56
- ];
76
+ this.searchConfigurationState = new TextSearchAdvancedConfigState(() => this.search());
77
+ this.searchEngine = new Fuse(this.indexedExplorerTreeNodes);
78
+ }
79
+ setIsSearchPanelOpen(val) {
80
+ this.isSearchPanelOpen = val;
81
+ }
82
+ setIsSearchPanelHidden(val) {
83
+ this.isSearchPanelHidden = val;
84
+ }
85
+ setShowSearchConfigurationMenu(val) {
86
+ this.showSearchConfigurationMenu = val;
57
87
  }
58
- toggleTypeFilter(val) {
88
+ setSearchText(val) {
89
+ this.searchText = val;
90
+ }
91
+ resetSearch() {
92
+ this.searchText = '';
93
+ this.searchResults = [];
94
+ this.searchState.complete();
95
+ }
96
+ toggleFilterForType(val) {
59
97
  if (this.typeFilters.includes(val)) {
60
98
  deleteEntry(this.typeFilters, val);
61
99
  }
@@ -63,121 +101,70 @@ export class QueryBuilderPropertySearchState {
63
101
  addUniqueEntry(this.typeFilters, val);
64
102
  }
65
103
  }
66
- setFilterByMultiple(val) {
67
- this.filterByMultiple = val;
68
- }
69
- getMultiplePropertyNodes() {
70
- return this.searchedMappedPropertyNodes.filter((node) => {
71
- if (node instanceof QueryBuilderExplorerTreePropertyNodeData) {
72
- if (node.property.multiplicity.upperBound === undefined ||
73
- node.property.multiplicity.upperBound > 1) {
74
- return true;
75
- }
76
- const parentNode = this.allMappedPropertyNodes.find((pn) => pn.id === node.parentId);
77
- if (parentNode instanceof QueryBuilderExplorerTreePropertyNodeData &&
78
- (parentNode.property.multiplicity.upperBound === undefined ||
79
- parentNode.property.multiplicity.upperBound > 1)) {
80
- return true;
81
- }
82
- }
83
- return false;
84
- });
85
- }
86
- classPropertyNodes() {
87
- return this.searchedMappedPropertyNodes.filter((node) => {
88
- if (node.type instanceof Class) {
89
- return true;
90
- }
91
- return false;
92
- });
93
- }
94
- stringPropertyNodes() {
95
- return this.searchedMappedPropertyNodes.filter((node) => {
96
- if (node.type instanceof PrimitiveType &&
97
- node.type.name === PRIMITIVE_TYPE.STRING) {
98
- return true;
99
- }
100
- return false;
101
- });
102
- }
103
- numberPropertyNodes() {
104
- return this.searchedMappedPropertyNodes.filter((node) => {
105
- if (node.type instanceof PrimitiveType &&
106
- (node.type.name === PRIMITIVE_TYPE.DECIMAL ||
107
- node.type.name === PRIMITIVE_TYPE.NUMBER ||
108
- node.type.name === PRIMITIVE_TYPE.INTEGER ||
109
- node.type.name === PRIMITIVE_TYPE.FLOAT)) {
110
- return true;
111
- }
112
- return false;
113
- });
114
- }
115
- datePropertyNodes() {
116
- return this.searchedMappedPropertyNodes.filter((node) => {
117
- if (node.type instanceof PrimitiveType &&
118
- (node.type.name === PRIMITIVE_TYPE.DATE ||
119
- node.type.name === PRIMITIVE_TYPE.DATETIME ||
120
- node.type.name === PRIMITIVE_TYPE.STRICTDATE ||
121
- node.type.name === PRIMITIVE_TYPE.STRICTTIME ||
122
- node.type.name === PRIMITIVE_TYPE.LATESTDATE)) {
123
- return true;
124
- }
125
- return false;
126
- });
127
- }
128
- booleanPropertyNodes() {
129
- return this.searchedMappedPropertyNodes.filter((node) => {
130
- if (node.type instanceof PrimitiveType &&
131
- node.type.name === PRIMITIVE_TYPE.BOOLEAN) {
132
- return true;
133
- }
134
- return false;
135
- });
136
- }
137
- get filteredPropertyNodes() {
138
- return this.searchedMappedPropertyNodes.filter((p) => {
139
- if (!this.filterByMultiple &&
140
- this.getMultiplePropertyNodes().includes(p)) {
141
- return false;
142
- }
143
- if (!this.typeFilters.includes(QUERY_BUILDER_PROPERTY_SEARCH_TYPE.CLASS) &&
144
- this.classPropertyNodes().includes(p)) {
145
- return false;
146
- }
147
- if (!this.typeFilters.includes(QUERY_BUILDER_PROPERTY_SEARCH_TYPE.STRING) &&
148
- this.stringPropertyNodes().includes(p)) {
149
- return false;
150
- }
151
- if (!this.typeFilters.includes(QUERY_BUILDER_PROPERTY_SEARCH_TYPE.NUMBER) &&
152
- this.numberPropertyNodes().includes(p)) {
153
- return false;
154
- }
155
- if (!this.typeFilters.includes(QUERY_BUILDER_PROPERTY_SEARCH_TYPE.BOOLEAN) &&
156
- this.booleanPropertyNodes().includes(p)) {
157
- return false;
158
- }
159
- if (!this.typeFilters.includes(QUERY_BUILDER_PROPERTY_SEARCH_TYPE.DATE) &&
160
- this.datePropertyNodes().includes(p)) {
161
- return false;
162
- }
163
- return true;
164
- });
104
+ search() {
105
+ if (!this.searchText) {
106
+ this.searchResults = [];
107
+ return;
108
+ }
109
+ this.searchState.inProgress();
110
+ // NOTE: performanced of fuzzy search is impacted by the number of indexed entries and the length
111
+ // of the search pattern, so to a certain extent this could become laggy. If this becomes too inconvenient
112
+ // for the users, we might need to use another fuzzy-search implementation, or have appropriate search
113
+ // policy, e.g. limit length of search text, etc.
114
+ //
115
+ // See https://github.com/farzher/fuzzysort
116
+ const searchResults = Array.from(this.searchEngine
117
+ .search(this.searchConfigurationState.generateSearchText(this.searchText.toLowerCase()), {
118
+ // NOTE: search for limit + 1 item so we can know if there are more search results
119
+ limit: QUERY_BUILDER_PROPERTY_SEARCH_RESULTS_LIMIT + 1,
120
+ })
121
+ .values()).map((result) => result.item);
122
+ // check if the search results exceed the limit
123
+ if (searchResults.length > QUERY_BUILDER_PROPERTY_SEARCH_RESULTS_LIMIT) {
124
+ this.isOverSearchLimit = true;
125
+ this.searchResults = searchResults.slice(0, QUERY_BUILDER_PROPERTY_SEARCH_RESULTS_LIMIT);
126
+ }
127
+ else {
128
+ this.isOverSearchLimit = false;
129
+ this.searchResults = searchResults;
130
+ }
131
+ this.searchState.complete();
165
132
  }
166
- fetchAllPropertyNodes() {
167
- const treeData = this.queryBuilderState.explorerState.nonNullableTreeData;
133
+ /**
134
+ * From the current explorer tree, navigate breadth-first to find more mapped
135
+ * property nodes, then index these property nodes for searching.
136
+ *
137
+ * NOTE: fortunately, since we restrict the depth and number of nodes in this navigation
138
+ * this process is often not the performance bottleneck, else, we would need to make this
139
+ * asynchronous and block the UI while waiting.
140
+ */
141
+ initialize() {
142
+ this.indexedExplorerTreeNodes = [];
168
143
  let currentLevelPropertyNodes = [];
169
144
  let nextLevelPropertyNodes = [];
170
- Array.from(treeData.nodes.values())
145
+ Array.from(this.queryBuilderState.explorerState.nonNullableTreeData.nodes.values())
171
146
  .slice(1)
172
147
  .forEach((node) => {
173
148
  if (node.mappingData.mapped && !node.isPartOfDerivedPropertyBranch) {
174
149
  currentLevelPropertyNodes.push(node);
175
- this.allMappedPropertyNodes.push(node);
150
+ this.indexedExplorerTreeNodes.push(node);
151
+ }
152
+ });
153
+ // ensure we don't navigate more nodes than the limit so we could
154
+ // keep the initialization/indexing time within acceptable range
155
+ const NODE_LIMIT = this.indexedExplorerTreeNodes.length +
156
+ QUERY_BUILDER_PROPERTY_SEARCH_MAX_NODES;
157
+ const addNode = (node) => runInAction(() => {
158
+ if (this.indexedExplorerTreeNodes.length > NODE_LIMIT) {
159
+ return;
176
160
  }
161
+ this.indexedExplorerTreeNodes.push(node);
177
162
  });
163
+ // limit the depth of navigation to keep the initialization/indexing
164
+ // time within acceptable range
178
165
  let currentDepth = 1;
179
- const maxDepth = QUERY_BUILDER_PROPERTY_SEARCH_MAX_DEPTH;
180
- while (currentLevelPropertyNodes.length && currentDepth <= maxDepth) {
166
+ while (currentLevelPropertyNodes.length &&
167
+ currentDepth <= QUERY_BUILDER_PROPERTY_SEARCH_MAX_DEPTH) {
181
168
  const node = currentLevelPropertyNodes.shift();
182
169
  if (node) {
183
170
  if (node.childrenIds.length) {
@@ -192,51 +179,106 @@ export class QueryBuilderPropertySearchState {
192
179
  if (propertyTreeNodeData?.mappingData.mapped &&
193
180
  !propertyTreeNodeData.isPartOfDerivedPropertyBranch) {
194
181
  nextLevelPropertyNodes.push(propertyTreeNodeData);
195
- this.allMappedPropertyNodes.push(propertyTreeNodeData);
182
+ addNode(propertyTreeNodeData);
196
183
  }
197
184
  });
198
185
  node.type._subclasses.forEach((subclass) => {
199
186
  const subTypeTreeNodeData = getQueryBuilderSubTypeNodeData(subclass, node, guaranteeNonNullable(this.queryBuilderState.explorerState
200
187
  .mappingModelCoverageAnalysisResult));
201
188
  nextLevelPropertyNodes.push(subTypeTreeNodeData);
202
- this.allMappedPropertyNodes.push(subTypeTreeNodeData);
189
+ addNode(subTypeTreeNodeData);
203
190
  });
204
191
  }
205
192
  }
206
193
  }
207
- if (!currentLevelPropertyNodes.length) {
194
+ // when we done processing one depth, we will do check on the depth and the total
195
+ // number of indexed nodes to figureo ut if we should proceed further
196
+ if (!currentLevelPropertyNodes.length &&
197
+ this.indexedExplorerTreeNodes.length < NODE_LIMIT) {
208
198
  currentLevelPropertyNodes = nextLevelPropertyNodes;
209
199
  nextLevelPropertyNodes = [];
210
200
  currentDepth++;
211
201
  }
212
202
  }
203
+ // indexing
204
+ this.searchEngine = new Fuse(this.indexedExplorerTreeNodes, {
205
+ includeScore: true,
206
+ shouldSort: true,
207
+ // Ignore location when computing the search score
208
+ // See https://fusejs.io/concepts/scoring-theory.html
209
+ ignoreLocation: true,
210
+ // This specifies the point the search gives up
211
+ // `0.0` means exact match where `1.0` would match anything
212
+ // We set a relatively low threshold to filter out irrelevant results
213
+ threshold: 0.2,
214
+ keys: [
215
+ {
216
+ name: 'label',
217
+ weight: 4,
218
+ },
219
+ {
220
+ name: 'taggedValues',
221
+ weight: 2,
222
+ // aggregate the property documentation, do not account for class documentation
223
+ getFn: (node) => node instanceof QueryBuilderExplorerTreePropertyNodeData
224
+ ? node.property.taggedValues
225
+ .filter((taggedValue) => taggedValue.tag.ownerReference.value.path ===
226
+ CORE_PURE_PATH.PROFILE_DOC &&
227
+ taggedValue.tag.value.value === PURE_DOC_TAG)
228
+ .map((taggedValue) => taggedValue.value)
229
+ .join('\n')
230
+ : '',
231
+ },
232
+ ],
233
+ // extended search allows for exact word match through single quote
234
+ // See https://fusejs.io/examples.html#extended-search
235
+ useExtendedSearch: true,
236
+ });
213
237
  }
214
- fetchMappedPropertyNodes(propName) {
215
- const propertyName = propName.toLowerCase();
216
- for (const node of this.allMappedPropertyNodes) {
217
- if (node.label.toLowerCase().includes(propertyName)) {
218
- this.searchedMappedPropertyNodes.push(node);
219
- if (this.searchedMappedPropertyNodes.length >
220
- QUERY_BUILDER_PROPERTY_SEARCH_RESULTS_LIMIT) {
221
- break;
238
+ get filteredSearchResults() {
239
+ return this.searchResults.filter((node) => {
240
+ if (this.typeFilters.includes(QUERY_BUILDER_PROPERTY_SEARCH_TYPE.CLASS)) {
241
+ if (node.type instanceof Class) {
242
+ return true;
222
243
  }
223
244
  }
224
- }
225
- }
226
- setIsSearchPanelOpen(val) {
227
- this.isSearchPanelOpen = val;
228
- }
229
- setIsSearchPanelHidden(val) {
230
- this.isSearchPanelHidden = val;
231
- }
232
- setSearchText(val) {
233
- this.searchText = val;
234
- }
235
- setSearchedMappedPropertyNodes(val) {
236
- this.searchedMappedPropertyNodes = val;
237
- }
238
- refreshPropertyState() {
239
- this.setSearchedMappedPropertyNodes([]);
245
+ if (this.typeFilters.includes(QUERY_BUILDER_PROPERTY_SEARCH_TYPE.STRING)) {
246
+ if (node.type instanceof PrimitiveType &&
247
+ node.type.name === PRIMITIVE_TYPE.STRING) {
248
+ return true;
249
+ }
250
+ }
251
+ if (this.typeFilters.includes(QUERY_BUILDER_PROPERTY_SEARCH_TYPE.NUMBER)) {
252
+ if (node.type instanceof PrimitiveType &&
253
+ [
254
+ PRIMITIVE_TYPE.NUMBER,
255
+ PRIMITIVE_TYPE.DECIMAL,
256
+ PRIMITIVE_TYPE.INTEGER,
257
+ PRIMITIVE_TYPE.FLOAT,
258
+ ].includes(node.type.name)) {
259
+ return true;
260
+ }
261
+ }
262
+ if (this.typeFilters.includes(QUERY_BUILDER_PROPERTY_SEARCH_TYPE.BOOLEAN)) {
263
+ if (node.type instanceof PrimitiveType &&
264
+ node.type.name === PRIMITIVE_TYPE.BOOLEAN) {
265
+ return true;
266
+ }
267
+ }
268
+ if (this.typeFilters.includes(QUERY_BUILDER_PROPERTY_SEARCH_TYPE.DATE)) {
269
+ if (node.type instanceof PrimitiveType &&
270
+ [
271
+ PRIMITIVE_TYPE.DATE,
272
+ PRIMITIVE_TYPE.DATETIME,
273
+ PRIMITIVE_TYPE.STRICTDATE,
274
+ PRIMITIVE_TYPE.STRICTTIME,
275
+ PRIMITIVE_TYPE.LATESTDATE,
276
+ ].includes(node.type.name)) {
277
+ return true;
278
+ }
279
+ }
280
+ return false;
281
+ });
240
282
  }
241
283
  }
242
284
  //# sourceMappingURL=QueryBuilderPropertySearchState.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderPropertySearchState.js","sourceRoot":"","sources":["../../../src/stores/explorer/QueryBuilderPropertySearchState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QueryBuilderPropertySearchState.js","sourceRoot":"","sources":["../../../src/stores/explorer/QueryBuilderPropertySearchState.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
  import type { Class, CompilationError, LambdaFunction } from '@finos/legend-graph';
17
+ import type { Hashable } from '@finos/legend-shared';
17
18
  import type { QueryBuilderExplorerTreePropertyNodeData } from '../explorer/QueryBuilderExplorerState.js';
18
19
  import type { QueryBuilderState } from '../QueryBuilderState.js';
19
20
  import type { LambdaFunctionBuilderOption } from '../QueryBuilderValueSpecificationBuilderHelper.js';
@@ -22,9 +23,9 @@ export declare enum FETCH_STRUCTURE_IMPLEMENTATION {
22
23
  PROJECTION = "PROJECTION",
23
24
  GRAPH_FETCH = "GRAPH_FETCH"
24
25
  }
25
- export declare abstract class QueryBuilderFetchStructureImplementationState {
26
- queryBuilderState: QueryBuilderState;
27
- fetchStructureState: QueryBuilderFetchStructureState;
26
+ export declare abstract class QueryBuilderFetchStructureImplementationState implements Hashable {
27
+ readonly queryBuilderState: QueryBuilderState;
28
+ readonly fetchStructureState: QueryBuilderFetchStructureState;
28
29
  constructor(queryBuilderState: QueryBuilderState, fetchStructureState: QueryBuilderFetchStructureState);
29
30
  abstract get type(): string;
30
31
  abstract get usedExplorerTreePropertyNodeIDs(): string[];
@@ -36,5 +37,6 @@ export declare abstract class QueryBuilderFetchStructureImplementationState {
36
37
  abstract fetchProperties(nodes: QueryBuilderExplorerTreePropertyNodeData[]): void;
37
38
  abstract checkBeforeChangingImplementation(onChange: () => void): void;
38
39
  abstract appendFetchStructure(lambdaFunction: LambdaFunction, options?: LambdaFunctionBuilderOption): void;
40
+ abstract get hashCode(): string;
39
41
  }
40
42
  //# sourceMappingURL=QueryBuilderFetchStructureImplementationState.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderFetchStructureImplementationState.d.ts","sourceRoot":"","sources":["../../../src/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EACV,KAAK,EACL,gBAAgB,EAChB,cAAc,EACf,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,wCAAwC,EAAE,MAAM,0CAA0C,CAAC;AACzG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,mDAAmD,CAAC;AACrG,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AAE5F,oBAAY,8BAA8B;IACxC,UAAU,eAAe;IACzB,WAAW,gBAAgB;CAC5B;AAED,8BAAsB,6CAA6C;IACjE,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,mBAAmB,EAAE,+BAA+B,CAAC;gBAGnD,iBAAiB,EAAE,iBAAiB,EACpC,mBAAmB,EAAE,+BAA+B;IAWtD,QAAQ,KAAK,IAAI,IAAI,MAAM,CAAC;IAC5B,QAAQ,KAAK,+BAA+B,IAAI,MAAM,EAAE,CAAC;IACzD,QAAQ,KAAK,gBAAgB,IAAI,MAAM,EAAE,GAAG,SAAS,CAAC;IACtD,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,GAAG,SAAS,GAAG,IAAI;IACvD,QAAQ,CAAC,sBAAsB,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,OAAO;IAC5E,QAAQ,CAAC,qBAAqB,IAAI,IAAI;IACtC,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE,wCAAwC,GAAG,IAAI;IAC5E,QAAQ,CAAC,eAAe,CACtB,KAAK,EAAE,wCAAwC,EAAE,GAChD,IAAI;IACP,QAAQ,CAAC,iCAAiC,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IACtE,QAAQ,CAAC,oBAAoB,CAC3B,cAAc,EAAE,cAAc,EAC9B,OAAO,CAAC,EAAE,2BAA2B,GACpC,IAAI;CACR"}
1
+ {"version":3,"file":"QueryBuilderFetchStructureImplementationState.d.ts","sourceRoot":"","sources":["../../../src/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EACV,KAAK,EACL,gBAAgB,EAChB,cAAc,EACf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,KAAK,EAAE,wCAAwC,EAAE,MAAM,0CAA0C,CAAC;AACzG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,mDAAmD,CAAC;AACrG,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AAE5F,oBAAY,8BAA8B;IACxC,UAAU,eAAe;IACzB,WAAW,gBAAgB;CAC5B;AAED,8BAAsB,6CACpB,YAAW,QAAQ;IAEnB,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAC9C,QAAQ,CAAC,mBAAmB,EAAE,+BAA+B,CAAC;gBAG5D,iBAAiB,EAAE,iBAAiB,EACpC,mBAAmB,EAAE,+BAA+B;IAYtD,QAAQ,KAAK,IAAI,IAAI,MAAM,CAAC;IAC5B,QAAQ,KAAK,+BAA+B,IAAI,MAAM,EAAE,CAAC;IACzD,QAAQ,KAAK,gBAAgB,IAAI,MAAM,EAAE,GAAG,SAAS,CAAC;IACtD,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,GAAG,SAAS,GAAG,IAAI;IACvD,QAAQ,CAAC,sBAAsB,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,OAAO;IAC5E,QAAQ,CAAC,qBAAqB,IAAI,IAAI;IACtC,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE,wCAAwC,GAAG,IAAI;IAC5E,QAAQ,CAAC,eAAe,CACtB,KAAK,EAAE,wCAAwC,EAAE,GAChD,IAAI;IACP,QAAQ,CAAC,iCAAiC,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IACtE,QAAQ,CAAC,oBAAoB,CAC3B,cAAc,EAAE,cAAc,EAC9B,OAAO,CAAC,EAAE,2BAA2B,GACpC,IAAI;IACP,QAAQ,KAAK,QAAQ,IAAI,MAAM,CAAC;CACjC"}
@@ -26,6 +26,7 @@ export class QueryBuilderFetchStructureImplementationState {
26
26
  makeObservable(this, {
27
27
  usedExplorerTreePropertyNodeIDs: computed,
28
28
  validationIssues: computed,
29
+ hashCode: computed,
29
30
  });
30
31
  this.queryBuilderState = queryBuilderState;
31
32
  this.fetchStructureState = fetchStructureState;
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderFetchStructureImplementationState.js","sourceRoot":"","sources":["../../../src/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAOH,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAMhD,MAAM,CAAN,IAAY,8BAGX;AAHD,WAAY,8BAA8B;IACxC,2DAAyB,CAAA;IACzB,6DAA2B,CAAA;AAC7B,CAAC,EAHW,8BAA8B,GAA9B,8BAA8B,KAA9B,8BAA8B,QAGzC;AAED,MAAM,OAAgB,6CAA6C;IACjE,iBAAiB,CAAoB;IACrC,mBAAmB,CAAkC;IAErD,YACE,iBAAoC,EACpC,mBAAoD;QAEpD,cAAc,CAAC,IAAI,EAAE;YACnB,+BAA+B,EAAE,QAAQ;YACzC,gBAAgB,EAAE,QAAQ;SAC3B,CAAC,CAAC;QAEH,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;IACjD,CAAC;CAiBF"}
1
+ {"version":3,"file":"QueryBuilderFetchStructureImplementationState.js","sourceRoot":"","sources":["../../../src/stores/fetch-structure/QueryBuilderFetchStructureImplementationState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAQH,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAMhD,MAAM,CAAN,IAAY,8BAGX;AAHD,WAAY,8BAA8B;IACxC,2DAAyB,CAAA;IACzB,6DAA2B,CAAA;AAC7B,CAAC,EAHW,8BAA8B,GAA9B,8BAA8B,KAA9B,8BAA8B,QAGzC;AAED,MAAM,OAAgB,6CAA6C;IAGxD,iBAAiB,CAAoB;IACrC,mBAAmB,CAAkC;IAE9D,YACE,iBAAoC,EACpC,mBAAoD;QAEpD,cAAc,CAAC,IAAI,EAAE;YACnB,+BAA+B,EAAE,QAAQ;YACzC,gBAAgB,EAAE,QAAQ;YAC1B,QAAQ,EAAE,QAAQ;SACnB,CAAC,CAAC;QAEH,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;IACjD,CAAC;CAkBF"}
@@ -17,7 +17,7 @@ import type { QueryBuilderState } from '../QueryBuilderState.js';
17
17
  import { type QueryBuilderExplorerTreeNodeData } from '../explorer/QueryBuilderExplorerState.js';
18
18
  import { type QueryBuilderFetchStructureImplementationState } from './QueryBuilderFetchStructureImplementationState.js';
19
19
  export declare class QueryBuilderFetchStructureState {
20
- queryBuilderState: QueryBuilderState;
20
+ readonly queryBuilderState: QueryBuilderState;
21
21
  implementation: QueryBuilderFetchStructureImplementationState;
22
22
  constructor(queryBuilderState: QueryBuilderState);
23
23
  changeImplementation(type: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderFetchStructureState.d.ts","sourceRoot":"","sources":["../../../src/stores/fetch-structure/QueryBuilderFetchStructureState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAGjE,OAAO,EACL,KAAK,gCAAgC,EAEtC,MAAM,0CAA0C,CAAC;AAGlD,OAAO,EAEL,KAAK,6CAA6C,EACnD,MAAM,oDAAoD,CAAC;AAE5D,qBAAa,+BAA+B;IAC1C,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,cAAc,EAAE,6CAA6C,CAAC;gBAElD,iBAAiB,EAAE,iBAAiB;IAmBhD,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAuBxC,aAAa,CAAC,IAAI,EAAE,gCAAgC,GAAG,IAAI;IAS3D,2BAA2B,CAAC,IAAI,EAAE,gCAAgC,GAAG,IAAI;CAoB1E"}
1
+ {"version":3,"file":"QueryBuilderFetchStructureState.d.ts","sourceRoot":"","sources":["../../../src/stores/fetch-structure/QueryBuilderFetchStructureState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAGjE,OAAO,EACL,KAAK,gCAAgC,EAEtC,MAAM,0CAA0C,CAAC;AAGlD,OAAO,EAEL,KAAK,6CAA6C,EACnD,MAAM,oDAAoD,CAAC;AAE5D,qBAAa,+BAA+B;IAC1C,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAC9C,cAAc,EAAE,6CAA6C,CAAC;gBAElD,iBAAiB,EAAE,iBAAiB;IAmBhD,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAuBxC,aAAa,CAAC,IAAI,EAAE,gCAAgC,GAAG,IAAI;IAS3D,2BAA2B,CAAC,IAAI,EAAE,gCAAgC,GAAG,IAAI;CAoB1E"}
@@ -13,7 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { action, makeAutoObservable } from 'mobx';
16
+ import { action, makeObservable, observable } from 'mobx';
17
17
  import { QueryBuilderGraphFetchTreeState } from './graph-fetch/QueryBuilderGraphFetchTreeState.js';
18
18
  import { QueryBuilderProjectionState } from './projection/QueryBuilderProjectionState.js';
19
19
  import { QueryBuilderExplorerTreePropertyNodeData, } from '../explorer/QueryBuilderExplorerState.js';
@@ -24,8 +24,8 @@ export class QueryBuilderFetchStructureState {
24
24
  queryBuilderState;
25
25
  implementation;
26
26
  constructor(queryBuilderState) {
27
- makeAutoObservable(this, {
28
- queryBuilderState: false,
27
+ makeObservable(this, {
28
+ implementation: observable,
29
29
  changeImplementation: action,
30
30
  });
31
31
  this.queryBuilderState = queryBuilderState;
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderFetchStructureState.js","sourceRoot":"","sources":["../../../src/stores/fetch-structure/QueryBuilderFetchStructureState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAElD,OAAO,EAAE,+BAA+B,EAAE,MAAM,kDAAkD,CAAC;AACnG,OAAO,EAAE,2BAA2B,EAAE,MAAM,6CAA6C,CAAC;AAC1F,OAAO,EAEL,wCAAwC,GACzC,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EACL,8BAA8B,GAE/B,MAAM,oDAAoD,CAAC;AAE5D,MAAM,OAAO,+BAA+B;IAC1C,iBAAiB,CAAoB;IACrC,cAAc,CAAgD;IAE9D,YAAY,iBAAoC;QAC9C,kBAAkB,CAAC,IAAI,EAAE;YACvB,iBAAiB,EAAE,KAAK;YACxB,oBAAoB,EAAE,MAAM;SAC7B,CAAC,CAAC;QAEH,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C;;;;;WAKG;QACH,IAAI,CAAC,cAAc,GAAG,IAAI,2BAA2B,CACnD,IAAI,CAAC,iBAAiB,EACtB,IAAI,CACL,CAAC;IACJ,CAAC;IAED,oBAAoB,CAAC,IAAY;QAC/B,QAAQ,IAAI,EAAE;YACZ,KAAK,8BAA8B,CAAC,UAAU,CAAC,CAAC;gBAC9C,IAAI,CAAC,cAAc,GAAG,IAAI,2BAA2B,CACnD,IAAI,CAAC,iBAAiB,EACtB,IAAI,CACL,CAAC;gBACF,OAAO;aACR;YACD,KAAK,8BAA8B,CAAC,WAAW,CAAC,CAAC;gBAC/C,IAAI,CAAC,cAAc,GAAG,IAAI,+BAA+B,CACvD,IAAI,CAAC,iBAAiB,EACtB,IAAI,CACL,CAAC;gBACF,OAAO;aACR;YACD;gBACE,MAAM,IAAI,yBAAyB,CACjC,qEAAqE,IAAI,GAAG,CAC7E,CAAC;SACL;IACH,CAAC;IAED,aAAa,CAAC,IAAsC;QAClD,IACE,IAAI,YAAY,wCAAwC;YACxD,CAAC,CAAC,IAAI,CAAC,IAAI,YAAY,KAAK,CAAC,EAC7B;YACA,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;SACzC;IACH,CAAC;IAED,2BAA2B,CAAC,IAAsC;QAChE,IAAI,IAAI,CAAC,IAAI,YAAY,KAAK,EAAE;YAC9B,IAAI,CAAC,cAAc,CAAC,eAAe;YACjC,2FAA2F;YAC3F,iFAAiF;YACjF,IAAI,CAAC,WAAW;iBACb,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CACf,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAChE,OAAO,CACR,CACF;iBACA,MAAM,CAAC,YAAY,CAAC,wCAAwC,CAAC,CAAC;iBAC9D,MAAM,CACL,CAAC,SAAS,EAAE,EAAE,CACZ,CAAC,CAAC,SAAS,CAAC,IAAI,YAAY,KAAK,CAAC;gBAClC,SAAS,CAAC,WAAW,CAAC,MAAM,CAC/B,CACJ,CAAC;SACH;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"QueryBuilderFetchStructureState.js","sourceRoot":"","sources":["../../../src/stores/fetch-structure/QueryBuilderFetchStructureState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAE1D,OAAO,EAAE,+BAA+B,EAAE,MAAM,kDAAkD,CAAC;AACnG,OAAO,EAAE,2BAA2B,EAAE,MAAM,6CAA6C,CAAC;AAC1F,OAAO,EAEL,wCAAwC,GACzC,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EACL,8BAA8B,GAE/B,MAAM,oDAAoD,CAAC;AAE5D,MAAM,OAAO,+BAA+B;IACjC,iBAAiB,CAAoB;IAC9C,cAAc,CAAgD;IAE9D,YAAY,iBAAoC;QAC9C,cAAc,CAAC,IAAI,EAAE;YACnB,cAAc,EAAE,UAAU;YAC1B,oBAAoB,EAAE,MAAM;SAC7B,CAAC,CAAC;QAEH,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C;;;;;WAKG;QACH,IAAI,CAAC,cAAc,GAAG,IAAI,2BAA2B,CACnD,IAAI,CAAC,iBAAiB,EACtB,IAAI,CACL,CAAC;IACJ,CAAC;IAED,oBAAoB,CAAC,IAAY;QAC/B,QAAQ,IAAI,EAAE;YACZ,KAAK,8BAA8B,CAAC,UAAU,CAAC,CAAC;gBAC9C,IAAI,CAAC,cAAc,GAAG,IAAI,2BAA2B,CACnD,IAAI,CAAC,iBAAiB,EACtB,IAAI,CACL,CAAC;gBACF,OAAO;aACR;YACD,KAAK,8BAA8B,CAAC,WAAW,CAAC,CAAC;gBAC/C,IAAI,CAAC,cAAc,GAAG,IAAI,+BAA+B,CACvD,IAAI,CAAC,iBAAiB,EACtB,IAAI,CACL,CAAC;gBACF,OAAO;aACR;YACD;gBACE,MAAM,IAAI,yBAAyB,CACjC,qEAAqE,IAAI,GAAG,CAC7E,CAAC;SACL;IACH,CAAC;IAED,aAAa,CAAC,IAAsC;QAClD,IACE,IAAI,YAAY,wCAAwC;YACxD,CAAC,CAAC,IAAI,CAAC,IAAI,YAAY,KAAK,CAAC,EAC7B;YACA,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;SACzC;IACH,CAAC;IAED,2BAA2B,CAAC,IAAsC;QAChE,IAAI,IAAI,CAAC,IAAI,YAAY,KAAK,EAAE;YAC9B,IAAI,CAAC,cAAc,CAAC,eAAe;YACjC,2FAA2F;YAC3F,iFAAiF;YACjF,IAAI,CAAC,WAAW;iBACb,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CACf,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAChE,OAAO,CACR,CACF;iBACA,MAAM,CAAC,YAAY,CAAC,wCAAwC,CAAC,CAAC;iBAC9D,MAAM,CACL,CAAC,SAAS,EAAE,EAAE,CACZ,CAAC,CAAC,SAAS,CAAC,IAAI,YAAY,KAAK,CAAC;gBAClC,SAAS,CAAC,WAAW,CAAC,MAAM,CAC/B,CACJ,CAAC;SACH;IACH,CAAC;CACF"}
@@ -20,7 +20,8 @@ import { type QueryBuilderExplorerTreePropertyNodeData } from '../../explorer/Qu
20
20
  import { QueryBuilderFetchStructureImplementationState } from '../QueryBuilderFetchStructureImplementationState.js';
21
21
  import type { QueryBuilderFetchStructureState } from '../QueryBuilderFetchStructureState.js';
22
22
  import type { LambdaFunctionBuilderOption } from '../../QueryBuilderValueSpecificationBuilderHelper.js';
23
- export declare class QueryBuilderGraphFetchTreeState extends QueryBuilderFetchStructureImplementationState {
23
+ import { type Hashable } from '@finos/legend-shared';
24
+ export declare class QueryBuilderGraphFetchTreeState extends QueryBuilderFetchStructureImplementationState implements Hashable {
24
25
  treeData?: QueryBuilderGraphFetchTreeData | undefined;
25
26
  /**
26
27
  * If set to `true` we will use `graphFetchChecked` function instead of `graphFetch`.
@@ -45,5 +46,6 @@ export declare class QueryBuilderGraphFetchTreeState extends QueryBuilderFetchSt
45
46
  fetchProperty(node: QueryBuilderExplorerTreePropertyNodeData): void;
46
47
  fetchProperties(nodes: QueryBuilderExplorerTreePropertyNodeData[]): void;
47
48
  checkBeforeChangingImplementation(onChange: () => void): void;
49
+ get hashCode(): string;
48
50
  }
49
51
  //# sourceMappingURL=QueryBuilderGraphFetchTreeState.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilderGraphFetchTreeState.d.ts","sourceRoot":"","sources":["../../../../src/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEpE,OAAO,EACL,KAAK,gBAAgB,EAGrB,KAAK,KAAK,EACV,KAAK,cAAc,EAEpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,KAAK,8BAA8B,EAGpC,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAGL,KAAK,wCAAwC,EAC9C,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAEL,6CAA6C,EAC9C,MAAM,qDAAqD,CAAC;AAC7D,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,uCAAuC,CAAC;AAK7F,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sDAAsD,CAAC;AAIxG,qBAAa,+BAAgC,SAAQ,6CAA6C;IAChG,QAAQ,CAAC,EAAE,8BAA8B,GAAG,SAAS,CAAC;IACtD;;;;OAIG;IACH,SAAS,UAAS;gBAGhB,iBAAiB,EAAE,iBAAiB,EACpC,mBAAmB,EAAE,+BAA+B;IAetD,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,+BAA+B,IAAI,MAAM,EAAE,CAiD9C;IAED,IAAI,gBAAgB,IAAI,MAAM,EAAE,GAAG,SAAS,CAE3C;IAED,iBAAiB,CAAC,GAAG,EAAE,8BAA8B,GAAG,SAAS,GAAG,IAAI;IAIxE,UAAU,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAI9B,OAAO,CAAC,cAAc;IAYtB,aAAa,CAAC,MAAM,EAAE,KAAK,GAAG,SAAS,GAAG,IAAI;IAI9C,oBAAoB,CAClB,cAAc,EAAE,cAAc,EAC9B,OAAO,CAAC,EAAE,2BAA2B,GACpC,IAAI;IAIP,WAAW,CACT,IAAI,EAAE,wCAAwC,EAC9C,OAAO,CAAC,EAAE;QACR,eAAe,CAAC,EAAE,OAAO,CAAC;KAC3B,GACA,IAAI;IAkBP,sBAAsB,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,OAAO;IAInE,qBAAqB,IAAI,IAAI;IAI7B,aAAa,CAAC,IAAI,EAAE,wCAAwC,GAAG,IAAI;IAInE,eAAe,CAAC,KAAK,EAAE,wCAAwC,EAAE,GAAG,IAAI;IAaxE,iCAAiC,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;CA0B9D"}
1
+ {"version":3,"file":"QueryBuilderGraphFetchTreeState.d.ts","sourceRoot":"","sources":["../../../../src/stores/fetch-structure/graph-fetch/QueryBuilderGraphFetchTreeState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEpE,OAAO,EACL,KAAK,gBAAgB,EAGrB,KAAK,KAAK,EACV,KAAK,cAAc,EAEpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,KAAK,8BAA8B,EAGpC,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAGL,KAAK,wCAAwC,EAC9C,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAEL,6CAA6C,EAC9C,MAAM,qDAAqD,CAAC;AAC7D,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,uCAAuC,CAAC;AAK7F,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sDAAsD,CAAC;AAExG,OAAO,EAGL,KAAK,QAAQ,EACd,MAAM,sBAAsB,CAAC;AAG9B,qBAAa,+BACX,SAAQ,6CACR,YAAW,QAAQ;IAEnB,QAAQ,CAAC,EAAE,8BAA8B,GAAG,SAAS,CAAC;IACtD;;;;OAIG;IACH,SAAS,UAAS;gBAGhB,iBAAiB,EAAE,iBAAiB,EACpC,mBAAmB,EAAE,+BAA+B;IAetD,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,+BAA+B,IAAI,MAAM,EAAE,CAiD9C;IAED,IAAI,gBAAgB,IAAI,MAAM,EAAE,GAAG,SAAS,CAE3C;IAED,iBAAiB,CAAC,GAAG,EAAE,8BAA8B,GAAG,SAAS,GAAG,IAAI;IAIxE,UAAU,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAI9B,OAAO,CAAC,cAAc;IAYtB,aAAa,CAAC,MAAM,EAAE,KAAK,GAAG,SAAS,GAAG,IAAI;IAI9C,oBAAoB,CAClB,cAAc,EAAE,cAAc,EAC9B,OAAO,CAAC,EAAE,2BAA2B,GACpC,IAAI;IAIP,WAAW,CACT,IAAI,EAAE,wCAAwC,EAC9C,OAAO,CAAC,EAAE;QACR,eAAe,CAAC,EAAE,OAAO,CAAC;KAC3B,GACA,IAAI;IAkBP,sBAAsB,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,OAAO;IAInE,qBAAqB,IAAI,IAAI;IAI7B,aAAa,CAAC,IAAI,EAAE,wCAAwC,GAAG,IAAI;IAInE,eAAe,CAAC,KAAK,EAAE,wCAAwC,EAAE,GAAG,IAAI;IAaxE,iCAAiC,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IA2B7D,IAAI,QAAQ,IAAI,MAAM,CAMrB;CACF"}