@finos/legend-application-repl 0.0.31 → 0.0.33

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (244) hide show
  1. package/lib/components/LegendREPLFrameworkProvider.js +1 -1
  2. package/lib/components/LegendREPLFrameworkProvider.js.map +1 -1
  3. package/lib/components/REPLStoreProvider.d.ts +1 -1
  4. package/lib/components/REPLStoreProvider.d.ts.map +1 -1
  5. package/lib/components/REPLStoreProvider.js +1 -1
  6. package/lib/components/REPLStoreProvider.js.map +1 -1
  7. package/lib/components/{dataCube/grid/menu/DataCubeGridSortsMenu.d.ts → REPLWindow.d.ts} +18 -4
  8. package/lib/components/REPLWindow.d.ts.map +1 -0
  9. package/lib/components/REPLWindow.js +117 -0
  10. package/lib/components/REPLWindow.js.map +1 -0
  11. package/lib/components/dataCube/DataCube.js +4 -4
  12. package/lib/components/dataCube/DataCube.js.map +1 -1
  13. package/lib/components/dataCube/editor/DataCubeEditor.d.ts.map +1 -1
  14. package/lib/components/dataCube/editor/DataCubeEditor.js +14 -93
  15. package/lib/components/dataCube/editor/DataCubeEditor.js.map +1 -1
  16. package/lib/components/dataCube/editor/DataCubeEditorCodePanel.d.ts.map +1 -1
  17. package/lib/components/dataCube/editor/DataCubeEditorCodePanel.js +3 -2
  18. package/lib/components/dataCube/editor/DataCubeEditorCodePanel.js.map +1 -1
  19. package/lib/components/dataCube/editor/DataCubeEditorColumnPropertiesPanel.d.ts.map +1 -1
  20. package/lib/components/dataCube/editor/DataCubeEditorColumnPropertiesPanel.js +161 -87
  21. package/lib/components/dataCube/editor/DataCubeEditorColumnPropertiesPanel.js.map +1 -1
  22. package/lib/components/dataCube/editor/DataCubeEditorColumnsPanel.d.ts.map +1 -1
  23. package/lib/components/dataCube/editor/DataCubeEditorColumnsPanel.js +10 -3
  24. package/lib/components/dataCube/editor/DataCubeEditorColumnsPanel.js.map +1 -1
  25. package/lib/components/dataCube/editor/DataCubeEditorColumnsSelector.d.ts +3 -2
  26. package/lib/components/dataCube/editor/DataCubeEditorColumnsSelector.d.ts.map +1 -1
  27. package/lib/components/dataCube/editor/DataCubeEditorColumnsSelector.js +23 -38
  28. package/lib/components/dataCube/editor/DataCubeEditorColumnsSelector.js.map +1 -1
  29. package/lib/components/dataCube/editor/DataCubeEditorDeveloperPanel.d.ts.map +1 -1
  30. package/lib/components/dataCube/editor/DataCubeEditorDeveloperPanel.js +3 -2
  31. package/lib/components/dataCube/editor/DataCubeEditorDeveloperPanel.js.map +1 -1
  32. package/lib/components/dataCube/editor/DataCubeEditorExtendedColumnsPanel.d.ts.map +1 -1
  33. package/lib/components/dataCube/editor/DataCubeEditorExtendedColumnsPanel.js +3 -2
  34. package/lib/components/dataCube/editor/DataCubeEditorExtendedColumnsPanel.js.map +1 -1
  35. package/lib/components/dataCube/editor/DataCubeEditorFilterPanel.d.ts.map +1 -1
  36. package/lib/components/dataCube/editor/DataCubeEditorFilterPanel.js +3 -2
  37. package/lib/components/dataCube/editor/DataCubeEditorFilterPanel.js.map +1 -1
  38. package/lib/components/dataCube/editor/DataCubeEditorGeneralPropertiesPanel.d.ts.map +1 -1
  39. package/lib/components/dataCube/editor/DataCubeEditorGeneralPropertiesPanel.js +96 -55
  40. package/lib/components/dataCube/editor/DataCubeEditorGeneralPropertiesPanel.js.map +1 -1
  41. package/lib/components/dataCube/editor/{DataCubeEditorVPivotsPanel.d.ts → DataCubeEditorHorizontalPivotsPanel.d.ts} +2 -2
  42. package/lib/components/dataCube/editor/DataCubeEditorHorizontalPivotsPanel.d.ts.map +1 -0
  43. package/lib/components/dataCube/editor/{DataCubeEditorHPivotsPanel.js → DataCubeEditorHorizontalPivotsPanel.js} +5 -4
  44. package/lib/components/dataCube/editor/DataCubeEditorHorizontalPivotsPanel.js.map +1 -0
  45. package/lib/components/dataCube/editor/DataCubeEditorShared.d.ts +1 -0
  46. package/lib/components/dataCube/editor/DataCubeEditorShared.d.ts.map +1 -1
  47. package/lib/components/dataCube/editor/DataCubeEditorShared.js +44 -27
  48. package/lib/components/dataCube/editor/DataCubeEditorShared.js.map +1 -1
  49. package/lib/components/dataCube/editor/DataCubeEditorSortsPanel.d.ts.map +1 -1
  50. package/lib/components/dataCube/editor/DataCubeEditorSortsPanel.js +7 -7
  51. package/lib/components/dataCube/editor/DataCubeEditorSortsPanel.js.map +1 -1
  52. package/lib/components/dataCube/editor/{DataCubeEditorHPivotsPanel.d.ts → DataCubeEditorVerticalPivotsPanel.d.ts} +2 -2
  53. package/lib/components/dataCube/editor/DataCubeEditorVerticalPivotsPanel.d.ts.map +1 -0
  54. package/lib/components/dataCube/editor/{DataCubeEditorVPivotsPanel.js → DataCubeEditorVerticalPivotsPanel.js} +5 -6
  55. package/lib/components/dataCube/editor/DataCubeEditorVerticalPivotsPanel.js.map +1 -0
  56. package/lib/components/dataCube/grid/DataCubeGrid.d.ts +3 -0
  57. package/lib/components/dataCube/grid/DataCubeGrid.d.ts.map +1 -1
  58. package/lib/components/dataCube/grid/DataCubeGrid.js +205 -75
  59. package/lib/components/dataCube/grid/DataCubeGrid.js.map +1 -1
  60. package/lib/components/dataCube/grid/DataCubeGridShared.d.ts +1 -1
  61. package/lib/components/dataCube/grid/DataCubeGridShared.d.ts.map +1 -1
  62. package/lib/components/dataCube/grid/DataCubeGridShared.js +1 -1
  63. package/lib/components/dataCube/grid/DataCubeGridShared.js.map +1 -1
  64. package/lib/index.css +2 -2
  65. package/lib/index.css.map +1 -1
  66. package/lib/package.json +19 -15
  67. package/lib/stores/{dataCube/REPLStore.d.ts → REPLStore.d.ts} +5 -3
  68. package/lib/stores/REPLStore.d.ts.map +1 -0
  69. package/lib/stores/{dataCube/REPLStore.js → REPLStore.js} +5 -2
  70. package/lib/stores/REPLStore.js.map +1 -0
  71. package/lib/stores/dataCube/{core/DataCubeEngine.d.ts → DataCubeInfrastructure.d.ts} +20 -4
  72. package/lib/stores/dataCube/DataCubeInfrastructure.d.ts.map +1 -0
  73. package/lib/stores/dataCube/{core/DataCubeEngine.js → DataCubeInfrastructure.js} +31 -3
  74. package/lib/stores/dataCube/DataCubeInfrastructure.js.map +1 -0
  75. package/lib/stores/dataCube/DataCubeState.d.ts +4 -4
  76. package/lib/stores/dataCube/DataCubeState.d.ts.map +1 -1
  77. package/lib/stores/dataCube/DataCubeState.js +9 -10
  78. package/lib/stores/dataCube/DataCubeState.js.map +1 -1
  79. package/lib/stores/dataCube/core/DataCubeConfiguration.d.ts +44 -38
  80. package/lib/stores/dataCube/core/DataCubeConfiguration.d.ts.map +1 -1
  81. package/lib/stores/dataCube/core/DataCubeConfiguration.js +88 -78
  82. package/lib/stores/dataCube/core/DataCubeConfiguration.js.map +1 -1
  83. package/lib/stores/dataCube/core/DataCubeConfigurationBuilder.d.ts.map +1 -1
  84. package/lib/stores/dataCube/core/DataCubeConfigurationBuilder.js +2 -1
  85. package/lib/stores/dataCube/core/DataCubeConfigurationBuilder.js.map +1 -1
  86. package/lib/stores/dataCube/core/DataCubeCoreState.d.ts +1 -1
  87. package/lib/stores/dataCube/core/DataCubeCoreState.d.ts.map +1 -1
  88. package/lib/stores/dataCube/core/DataCubeCoreState.js +1 -1
  89. package/lib/stores/dataCube/core/DataCubeCoreState.js.map +1 -1
  90. package/lib/stores/dataCube/core/DataCubeQueryBuilder.d.ts.map +1 -1
  91. package/lib/stores/dataCube/core/DataCubeQueryBuilder.js +21 -21
  92. package/lib/stores/dataCube/core/DataCubeQueryBuilder.js.map +1 -1
  93. package/lib/stores/dataCube/core/DataCubeQueryEngine.d.ts +68 -29
  94. package/lib/stores/dataCube/core/DataCubeQueryEngine.d.ts.map +1 -1
  95. package/lib/stores/dataCube/core/DataCubeQueryEngine.js +93 -50
  96. package/lib/stores/dataCube/core/DataCubeQueryEngine.js.map +1 -1
  97. package/lib/stores/dataCube/core/DataCubeQuerySnapshot.d.ts +5 -40
  98. package/lib/stores/dataCube/core/DataCubeQuerySnapshot.d.ts.map +1 -1
  99. package/lib/stores/dataCube/core/DataCubeQuerySnapshot.js +9 -54
  100. package/lib/stores/dataCube/core/DataCubeQuerySnapshot.js.map +1 -1
  101. package/lib/stores/dataCube/core/DataCubeQuerySnapshotBuilder.d.ts.map +1 -1
  102. package/lib/stores/dataCube/core/DataCubeQuerySnapshotBuilder.js +18 -12
  103. package/lib/stores/dataCube/core/DataCubeQuerySnapshotBuilder.js.map +1 -1
  104. package/lib/stores/dataCube/core/DataCubeQuerySnapshotSubscriber.d.ts +1 -3
  105. package/lib/stores/dataCube/core/DataCubeQuerySnapshotSubscriber.d.ts.map +1 -1
  106. package/lib/stores/dataCube/core/DataCubeQuerySnapshotSubscriber.js +2 -3
  107. package/lib/stores/dataCube/core/DataCubeQuerySnapshotSubscriber.js.map +1 -1
  108. package/lib/stores/dataCube/editor/DataCubeEditorColumnPropertiesPanelState.d.ts +7 -1
  109. package/lib/stores/dataCube/editor/DataCubeEditorColumnPropertiesPanelState.d.ts.map +1 -1
  110. package/lib/stores/dataCube/editor/DataCubeEditorColumnPropertiesPanelState.js +29 -5
  111. package/lib/stores/dataCube/editor/DataCubeEditorColumnPropertiesPanelState.js.map +1 -1
  112. package/lib/stores/dataCube/editor/DataCubeEditorColumnsPanelState.d.ts +45 -0
  113. package/lib/stores/dataCube/editor/DataCubeEditorColumnsPanelState.d.ts.map +1 -0
  114. package/lib/stores/dataCube/editor/DataCubeEditorColumnsPanelState.js +102 -0
  115. package/lib/stores/dataCube/editor/DataCubeEditorColumnsPanelState.js.map +1 -0
  116. package/lib/stores/dataCube/editor/DataCubeEditorColumnsSelectorState.d.ts +26 -9
  117. package/lib/stores/dataCube/editor/DataCubeEditorColumnsSelectorState.d.ts.map +1 -1
  118. package/lib/stores/dataCube/editor/DataCubeEditorColumnsSelectorState.js +50 -20
  119. package/lib/stores/dataCube/editor/DataCubeEditorColumnsSelectorState.js.map +1 -1
  120. package/lib/stores/dataCube/editor/DataCubeEditorGeneralPropertiesPanelState.d.ts +2 -1
  121. package/lib/stores/dataCube/editor/DataCubeEditorGeneralPropertiesPanelState.d.ts.map +1 -1
  122. package/lib/stores/dataCube/editor/DataCubeEditorGeneralPropertiesPanelState.js +1 -1
  123. package/lib/stores/dataCube/editor/DataCubeEditorGeneralPropertiesPanelState.js.map +1 -1
  124. package/lib/stores/dataCube/editor/DataCubeEditorPanelState.d.ts +2 -1
  125. package/lib/stores/dataCube/editor/DataCubeEditorPanelState.d.ts.map +1 -1
  126. package/lib/stores/dataCube/editor/DataCubeEditorSortsPanelState.d.ts +12 -13
  127. package/lib/stores/dataCube/editor/DataCubeEditorSortsPanelState.d.ts.map +1 -1
  128. package/lib/stores/dataCube/editor/DataCubeEditorSortsPanelState.js +23 -70
  129. package/lib/stores/dataCube/editor/DataCubeEditorSortsPanelState.js.map +1 -1
  130. package/lib/stores/dataCube/editor/DataCubeEditorState.d.ts +18 -13
  131. package/lib/stores/dataCube/editor/DataCubeEditorState.d.ts.map +1 -1
  132. package/lib/stores/dataCube/editor/DataCubeEditorState.js +44 -25
  133. package/lib/stores/dataCube/editor/DataCubeEditorState.js.map +1 -1
  134. package/lib/stores/dataCube/editor/{DataCubeEditorHPivotPanelState.d.ts → DataCubeEditorVerticalPivotsPanelState.d.ts} +11 -4
  135. package/lib/stores/dataCube/editor/DataCubeEditorVerticalPivotsPanelState.d.ts.map +1 -0
  136. package/lib/stores/dataCube/editor/DataCubeEditorVerticalPivotsPanelState.js +62 -0
  137. package/lib/stores/dataCube/editor/DataCubeEditorVerticalPivotsPanelState.js.map +1 -0
  138. package/lib/stores/dataCube/editor/DataCubeMutableConfiguration.d.ts +48 -41
  139. package/lib/stores/dataCube/editor/DataCubeMutableConfiguration.d.ts.map +1 -1
  140. package/lib/stores/dataCube/editor/DataCubeMutableConfiguration.js +217 -134
  141. package/lib/stores/dataCube/editor/DataCubeMutableConfiguration.js.map +1 -1
  142. package/lib/stores/dataCube/grid/DataCubeGridClientEngine.d.ts +40 -0
  143. package/lib/stores/dataCube/grid/DataCubeGridClientEngine.d.ts.map +1 -1
  144. package/lib/stores/dataCube/grid/DataCubeGridClientEngine.js +43 -1
  145. package/lib/stores/dataCube/grid/DataCubeGridClientEngine.js.map +1 -1
  146. package/lib/stores/dataCube/grid/DataCubeGridClientExportEngine.d.ts +31 -0
  147. package/lib/stores/dataCube/grid/DataCubeGridClientExportEngine.d.ts.map +1 -0
  148. package/lib/stores/dataCube/grid/DataCubeGridClientExportEngine.js +147 -0
  149. package/lib/stores/dataCube/grid/DataCubeGridClientExportEngine.js.map +1 -0
  150. package/lib/stores/dataCube/grid/{DataCubeGridQuerySnapshotAnalyzer.d.ts → DataCubeGridConfigurationBuilder.d.ts} +5 -2
  151. package/lib/stores/dataCube/grid/DataCubeGridConfigurationBuilder.d.ts.map +1 -0
  152. package/lib/stores/dataCube/grid/DataCubeGridConfigurationBuilder.js +478 -0
  153. package/lib/stores/dataCube/grid/DataCubeGridConfigurationBuilder.js.map +1 -0
  154. package/lib/stores/dataCube/grid/DataCubeGridControllerState.d.ts +62 -0
  155. package/lib/stores/dataCube/grid/DataCubeGridControllerState.d.ts.map +1 -0
  156. package/lib/stores/dataCube/grid/DataCubeGridControllerState.js +174 -0
  157. package/lib/stores/dataCube/grid/DataCubeGridControllerState.js.map +1 -0
  158. package/lib/{components/dataCube/grid/menu/DataCubeGridMenu.d.ts → stores/dataCube/grid/DataCubeGridMenuBuilder.d.ts} +3 -7
  159. package/lib/stores/dataCube/grid/DataCubeGridMenuBuilder.d.ts.map +1 -0
  160. package/lib/stores/dataCube/grid/DataCubeGridMenuBuilder.js +462 -0
  161. package/lib/stores/dataCube/grid/DataCubeGridMenuBuilder.js.map +1 -0
  162. package/lib/stores/dataCube/grid/DataCubeGridQueryBuilder.d.ts.map +1 -1
  163. package/lib/stores/dataCube/grid/DataCubeGridQueryBuilder.js +3 -3
  164. package/lib/stores/dataCube/grid/DataCubeGridQueryBuilder.js.map +1 -1
  165. package/lib/stores/dataCube/grid/DataCubeGridQuerySnapshotBuilder.d.ts.map +1 -1
  166. package/lib/stores/dataCube/grid/DataCubeGridQuerySnapshotBuilder.js +9 -8
  167. package/lib/stores/dataCube/grid/DataCubeGridQuerySnapshotBuilder.js.map +1 -1
  168. package/lib/stores/dataCube/grid/DataCubeGridState.d.ts +20 -2
  169. package/lib/stores/dataCube/grid/DataCubeGridState.d.ts.map +1 -1
  170. package/lib/stores/dataCube/grid/DataCubeGridState.js +58 -22
  171. package/lib/stores/dataCube/grid/DataCubeGridState.js.map +1 -1
  172. package/package.json +25 -21
  173. package/src/components/LegendREPLFrameworkProvider.tsx +1 -1
  174. package/src/components/REPLStoreProvider.tsx +1 -1
  175. package/src/components/REPLWindow.tsx +179 -0
  176. package/src/components/dataCube/DataCube.tsx +4 -4
  177. package/src/components/dataCube/editor/DataCubeEditor.tsx +81 -192
  178. package/src/components/dataCube/editor/DataCubeEditorCodePanel.tsx +3 -1
  179. package/src/components/dataCube/editor/DataCubeEditorColumnPropertiesPanel.tsx +482 -283
  180. package/src/components/dataCube/editor/DataCubeEditorColumnsPanel.tsx +42 -8
  181. package/src/components/dataCube/editor/DataCubeEditorColumnsSelector.tsx +38 -80
  182. package/src/components/dataCube/editor/DataCubeEditorDeveloperPanel.tsx +3 -1
  183. package/src/components/dataCube/editor/DataCubeEditorExtendedColumnsPanel.tsx +3 -1
  184. package/src/components/dataCube/editor/DataCubeEditorFilterPanel.tsx +3 -1
  185. package/src/components/dataCube/editor/DataCubeEditorGeneralPropertiesPanel.tsx +238 -175
  186. package/src/components/dataCube/editor/{DataCubeEditorHPivotsPanel.tsx → DataCubeEditorHorizontalPivotsPanel.tsx} +4 -2
  187. package/src/components/dataCube/editor/DataCubeEditorShared.tsx +69 -33
  188. package/src/components/dataCube/editor/DataCubeEditorSortsPanel.tsx +8 -10
  189. package/src/components/dataCube/editor/{DataCubeEditorVPivotsPanel.tsx → DataCubeEditorVerticalPivotsPanel.tsx} +6 -6
  190. package/src/components/dataCube/grid/DataCubeGrid.tsx +337 -149
  191. package/src/components/dataCube/grid/DataCubeGridShared.tsx +5 -1
  192. package/src/stores/{dataCube/REPLStore.ts → REPLStore.ts} +6 -3
  193. package/src/stores/dataCube/{core/DataCubeEngine.ts → DataCubeInfrastructure.ts} +40 -3
  194. package/src/stores/dataCube/DataCubeState.ts +16 -14
  195. package/src/stores/dataCube/core/DataCubeConfiguration.ts +112 -86
  196. package/src/stores/dataCube/core/DataCubeConfigurationBuilder.ts +5 -1
  197. package/src/stores/dataCube/core/DataCubeCoreState.ts +4 -1
  198. package/src/stores/dataCube/core/DataCubeQueryBuilder.ts +27 -27
  199. package/src/stores/dataCube/core/DataCubeQueryEngine.ts +95 -49
  200. package/src/stores/dataCube/core/DataCubeQuerySnapshot.ts +19 -58
  201. package/src/stores/dataCube/core/DataCubeQuerySnapshotBuilder.ts +18 -14
  202. package/src/stores/dataCube/core/DataCubeQuerySnapshotSubscriber.ts +6 -5
  203. package/src/stores/dataCube/editor/DataCubeEditorColumnPropertiesPanelState.ts +51 -5
  204. package/src/stores/dataCube/editor/DataCubeEditorColumnsPanelState.ts +162 -0
  205. package/src/stores/dataCube/editor/DataCubeEditorColumnsSelectorState.ts +98 -23
  206. package/src/stores/dataCube/editor/DataCubeEditorGeneralPropertiesPanelState.ts +5 -1
  207. package/src/stores/dataCube/editor/DataCubeEditorPanelState.ts +5 -1
  208. package/src/stores/dataCube/editor/DataCubeEditorSortsPanelState.ts +48 -117
  209. package/src/stores/dataCube/editor/DataCubeEditorState.ts +54 -27
  210. package/src/stores/dataCube/editor/DataCubeEditorVerticalPivotsPanelState.ts +105 -0
  211. package/src/stores/dataCube/editor/DataCubeMutableConfiguration.ts +263 -146
  212. package/src/stores/dataCube/grid/DataCubeGridClientEngine.ts +64 -1
  213. package/src/stores/dataCube/grid/DataCubeGridClientExportEngine.ts +170 -0
  214. package/src/stores/dataCube/grid/DataCubeGridConfigurationBuilder.tsx +668 -0
  215. package/src/stores/dataCube/grid/DataCubeGridControllerState.ts +254 -0
  216. package/src/stores/dataCube/grid/DataCubeGridMenuBuilder.tsx +535 -0
  217. package/src/stores/dataCube/grid/DataCubeGridQueryBuilder.ts +3 -5
  218. package/src/stores/dataCube/grid/DataCubeGridQuerySnapshotBuilder.ts +12 -10
  219. package/src/stores/dataCube/grid/DataCubeGridState.ts +81 -21
  220. package/tsconfig.json +11 -8
  221. package/lib/components/dataCube/editor/DataCubeEditorHPivotsPanel.d.ts.map +0 -1
  222. package/lib/components/dataCube/editor/DataCubeEditorHPivotsPanel.js.map +0 -1
  223. package/lib/components/dataCube/editor/DataCubeEditorVPivotsPanel.d.ts.map +0 -1
  224. package/lib/components/dataCube/editor/DataCubeEditorVPivotsPanel.js.map +0 -1
  225. package/lib/components/dataCube/grid/menu/DataCubeGridMenu.d.ts.map +0 -1
  226. package/lib/components/dataCube/grid/menu/DataCubeGridMenu.js +0 -382
  227. package/lib/components/dataCube/grid/menu/DataCubeGridMenu.js.map +0 -1
  228. package/lib/components/dataCube/grid/menu/DataCubeGridSortsMenu.d.ts.map +0 -1
  229. package/lib/components/dataCube/grid/menu/DataCubeGridSortsMenu.js +0 -83
  230. package/lib/components/dataCube/grid/menu/DataCubeGridSortsMenu.js.map +0 -1
  231. package/lib/stores/dataCube/REPLStore.d.ts.map +0 -1
  232. package/lib/stores/dataCube/REPLStore.js.map +0 -1
  233. package/lib/stores/dataCube/core/DataCubeEngine.d.ts.map +0 -1
  234. package/lib/stores/dataCube/core/DataCubeEngine.js.map +0 -1
  235. package/lib/stores/dataCube/editor/DataCubeEditorHPivotPanelState.d.ts.map +0 -1
  236. package/lib/stores/dataCube/editor/DataCubeEditorHPivotPanelState.js +0 -30
  237. package/lib/stores/dataCube/editor/DataCubeEditorHPivotPanelState.js.map +0 -1
  238. package/lib/stores/dataCube/grid/DataCubeGridQuerySnapshotAnalyzer.d.ts.map +0 -1
  239. package/lib/stores/dataCube/grid/DataCubeGridQuerySnapshotAnalyzer.js +0 -160
  240. package/lib/stores/dataCube/grid/DataCubeGridQuerySnapshotAnalyzer.js.map +0 -1
  241. package/src/components/dataCube/grid/menu/DataCubeGridMenu.tsx +0 -394
  242. package/src/components/dataCube/grid/menu/DataCubeGridSortsMenu.tsx +0 -120
  243. package/src/stores/dataCube/editor/DataCubeEditorHPivotPanelState.ts +0 -43
  244. package/src/stores/dataCube/grid/DataCubeGridQuerySnapshotAnalyzer.tsx +0 -192
@@ -0,0 +1,535 @@
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
+
17
+ import type {
18
+ GetContextMenuItemsParams,
19
+ GetMainMenuItemsParams,
20
+ MenuItemDef,
21
+ } from '@ag-grid-community/core';
22
+ import { WIP_GridMenuItem } from '../../../components/dataCube/grid/DataCubeGridShared.js';
23
+ import {
24
+ DataCubeQuerySortOperation,
25
+ DataCubeColumnPinPlacement,
26
+ DEFAULT_COLUMN_MIN_WIDTH,
27
+ DataCubeColumnKind,
28
+ } from '../core/DataCubeQueryEngine.js';
29
+ import { isNonNullable } from '@finos/legend-shared';
30
+ import type { DataCubeGridControllerState } from './DataCubeGridControllerState.js';
31
+ import { DataCubeGridClientExportFormat } from './DataCubeGridClientEngine.js';
32
+
33
+ export function generateMenuBuilder(
34
+ controller: DataCubeGridControllerState,
35
+ ): (
36
+ params: GetContextMenuItemsParams | GetMainMenuItemsParams,
37
+ ) => (string | MenuItemDef)[] {
38
+ const dataCube = controller.dataCube;
39
+ const editor = dataCube.editor;
40
+
41
+ return (params: GetContextMenuItemsParams | GetMainMenuItemsParams) => {
42
+ const column = params.column ?? undefined;
43
+ const columnName = column?.getColId();
44
+ const columnConfiguration = controller.getColumnConfiguration(columnName);
45
+ const value: unknown = 'value' in params ? params.value : undefined;
46
+
47
+ const sortMenu = [
48
+ {
49
+ name: 'Sort',
50
+ subMenu: [
51
+ ...(column && columnName
52
+ ? [
53
+ {
54
+ name: 'Ascending',
55
+ action: () =>
56
+ controller.setSortByColumn(
57
+ columnName,
58
+ DataCubeQuerySortOperation.ASCENDING,
59
+ ),
60
+ },
61
+ {
62
+ name: 'Ascending Absolute',
63
+ menuItem: WIP_GridMenuItem,
64
+ cssClasses: ['!opacity-100'],
65
+ disabled: true,
66
+ },
67
+ {
68
+ name: 'Descending',
69
+ action: () =>
70
+ controller.setSortByColumn(
71
+ columnName,
72
+ DataCubeQuerySortOperation.DESCENDING,
73
+ ),
74
+ },
75
+ {
76
+ name: 'Descending Absolute',
77
+ menuItem: WIP_GridMenuItem,
78
+ cssClasses: ['!opacity-100'],
79
+ disabled: true,
80
+ },
81
+ {
82
+ name: 'Clear Sort',
83
+ disabled: !controller.sortColumns.find(
84
+ (col) => col.name === columnName,
85
+ ),
86
+ action: () => controller.clearSortByColumn(columnName),
87
+ },
88
+ 'separator',
89
+ {
90
+ name: 'Add Ascending',
91
+ disabled: Boolean(
92
+ controller.sortColumns.find(
93
+ (col) =>
94
+ col.name === columnName &&
95
+ col.operation === DataCubeQuerySortOperation.ASCENDING,
96
+ ),
97
+ ),
98
+ action: () =>
99
+ controller.addSortByColumn(
100
+ columnName,
101
+ DataCubeQuerySortOperation.ASCENDING,
102
+ ),
103
+ },
104
+ {
105
+ name: 'Add Ascending Absolute',
106
+ menuItem: WIP_GridMenuItem,
107
+ cssClasses: ['!opacity-100'],
108
+ disabled: true,
109
+ },
110
+ {
111
+ name: 'Add Descending',
112
+ disabled: Boolean(
113
+ controller.sortColumns.find(
114
+ (col) =>
115
+ col.name === columnName &&
116
+ col.operation === DataCubeQuerySortOperation.DESCENDING,
117
+ ),
118
+ ),
119
+ action: () =>
120
+ controller.addSortByColumn(
121
+ columnName,
122
+ DataCubeQuerySortOperation.DESCENDING,
123
+ ),
124
+ },
125
+ {
126
+ name: 'Add Descending Absolute',
127
+ menuItem: WIP_GridMenuItem,
128
+ cssClasses: ['!opacity-100'],
129
+ disabled: true,
130
+ },
131
+ 'separator',
132
+ ]
133
+ : []),
134
+ {
135
+ name: 'Clear All Sorts',
136
+ disabled: controller.sortColumns.length === 0,
137
+ action: () => controller.clearAllSorts(),
138
+ },
139
+ ],
140
+ },
141
+ ];
142
+
143
+ return [
144
+ {
145
+ name: 'Export',
146
+ subMenu: [
147
+ {
148
+ name: 'HTML',
149
+ menuItem: WIP_GridMenuItem,
150
+ cssClasses: ['!opacity-100'],
151
+ disabled: true,
152
+ },
153
+ {
154
+ name: 'Plain Text',
155
+ menuItem: WIP_GridMenuItem,
156
+ cssClasses: ['!opacity-100'],
157
+ disabled: true,
158
+ },
159
+ {
160
+ name: 'PDF',
161
+ menuItem: WIP_GridMenuItem,
162
+ cssClasses: ['!opacity-100'],
163
+ disabled: true,
164
+ },
165
+ {
166
+ name: 'Excel',
167
+ action: () =>
168
+ dataCube.grid.exportEngine.exportFile(
169
+ DataCubeGridClientExportFormat.EXCEL,
170
+ ),
171
+ },
172
+ {
173
+ name: 'CSV',
174
+ action: () =>
175
+ dataCube.grid.exportEngine.exportFile(
176
+ DataCubeGridClientExportFormat.CSV,
177
+ ),
178
+ },
179
+ 'separator',
180
+ {
181
+ name: 'DataCube Specification',
182
+ menuItem: WIP_GridMenuItem,
183
+ cssClasses: ['!opacity-100'],
184
+ disabled: true,
185
+ },
186
+ ],
187
+ },
188
+ {
189
+ name: 'Email',
190
+ subMenu: [
191
+ {
192
+ name: 'HTML',
193
+ menuItem: WIP_GridMenuItem,
194
+ cssClasses: ['!opacity-100'],
195
+ disabled: true,
196
+ },
197
+ {
198
+ name: 'Plain Text',
199
+ menuItem: WIP_GridMenuItem,
200
+ cssClasses: ['!opacity-100'],
201
+ disabled: true,
202
+ },
203
+ 'separator',
204
+ {
205
+ name: 'HTML Attachment',
206
+ menuItem: WIP_GridMenuItem,
207
+ cssClasses: ['!opacity-100'],
208
+ disabled: true,
209
+ },
210
+ {
211
+ name: 'Plain Text Attachment',
212
+ menuItem: WIP_GridMenuItem,
213
+ cssClasses: ['!opacity-100'],
214
+ disabled: true,
215
+ },
216
+ {
217
+ name: 'PDF Attachment',
218
+ menuItem: WIP_GridMenuItem,
219
+ cssClasses: ['!opacity-100'],
220
+ disabled: true,
221
+ },
222
+ {
223
+ name: 'Excel Attachment',
224
+ action: () => {
225
+ dataCube.grid.exportEngine
226
+ .exportEmail(DataCubeGridClientExportFormat.EXCEL)
227
+ .catch(dataCube.application.logUnhandledError);
228
+ },
229
+ },
230
+ {
231
+ name: 'CSV Attachment',
232
+ action: () => {
233
+ dataCube.grid.exportEngine
234
+ .exportEmail(DataCubeGridClientExportFormat.CSV)
235
+ .catch(dataCube.application.logUnhandledError);
236
+ },
237
+ },
238
+ {
239
+ name: 'DataCube Specification Attachment',
240
+ menuItem: WIP_GridMenuItem,
241
+ cssClasses: ['!opacity-100'],
242
+ disabled: true,
243
+ },
244
+ ],
245
+ },
246
+ {
247
+ name: 'Copy',
248
+ menuItem: WIP_GridMenuItem,
249
+ cssClasses: ['!opacity-100'],
250
+ subMenu: [
251
+ {
252
+ name: 'Plain Text',
253
+ menuItem: WIP_GridMenuItem,
254
+ cssClasses: ['!opacity-100'],
255
+ disabled: true,
256
+ },
257
+ {
258
+ name: 'Selected Row(s) as Plain Text',
259
+ menuItem: WIP_GridMenuItem,
260
+ cssClasses: ['!opacity-100'],
261
+ disabled: true,
262
+ },
263
+ {
264
+ name: 'Selected Column as Plain Text',
265
+ menuItem: WIP_GridMenuItem,
266
+ cssClasses: ['!opacity-100'],
267
+ disabled: true,
268
+ },
269
+ ],
270
+ },
271
+ 'separator',
272
+ ...sortMenu,
273
+ {
274
+ name: 'Filter',
275
+ menuItem: WIP_GridMenuItem,
276
+ disabled: true,
277
+ cssClasses: ['!opacity-100'],
278
+ subMenu: [
279
+ ...(column && value
280
+ ? [
281
+ {
282
+ name: `Add Filter: ${column.getColId()} = {value}`,
283
+ menuItem: WIP_GridMenuItem,
284
+ cssClasses: ['!opacity-100'],
285
+ disabled: true,
286
+ },
287
+ {
288
+ name: `More Filters on ${column.getColId()}...`,
289
+ menuItem: WIP_GridMenuItem,
290
+ cssClasses: ['!opacity-100'],
291
+ disabled: true,
292
+ subMenu: [], // TODO
293
+ },
294
+ 'separator',
295
+ ]
296
+ : []),
297
+ {
298
+ name: 'Filters...',
299
+ },
300
+ {
301
+ name: 'Clear All Filters',
302
+ },
303
+ ],
304
+ },
305
+ {
306
+ name: 'Pivot',
307
+ subMenu: [
308
+ ...(column &&
309
+ columnName &&
310
+ columnConfiguration?.kind === DataCubeColumnKind.DIMENSION
311
+ ? [
312
+ {
313
+ name: `Vertical Pivot on ${column.getColId()}`,
314
+ action: () => controller.setVerticalPivotOnColumn(columnName),
315
+ },
316
+ {
317
+ name: `Add Vertical Pivot on ${column.getColId()}`,
318
+ disabled: Boolean(
319
+ controller.verticalPivotedColumns.find(
320
+ (col) => col.name === columnName,
321
+ ),
322
+ ),
323
+ action: () => controller.addVerticalPivotOnColumn(columnName),
324
+ },
325
+ {
326
+ name: `Remove Vertical Pivot on ${column.getColId()}`,
327
+ disabled: !controller.verticalPivotedColumns.find(
328
+ (col) => col.name === columnName,
329
+ ),
330
+ action: () =>
331
+ controller.removeVerticalPivotOnColumn(columnName),
332
+ },
333
+ 'separator',
334
+ ]
335
+ : []),
336
+ {
337
+ name: `Clear All Vertical Pivots`,
338
+ disabled: controller.verticalPivotedColumns.length === 0,
339
+ action: () => controller.clearAllVerticalPivots(),
340
+ },
341
+ ],
342
+ },
343
+ {
344
+ name: 'Heatmap',
345
+ menuItem: WIP_GridMenuItem,
346
+ cssClasses: ['!opacity-100'],
347
+ disabled: !column,
348
+ subMenu: column
349
+ ? [
350
+ {
351
+ name: `Add to ${column.getColId()}`,
352
+ menuItem: WIP_GridMenuItem,
353
+ cssClasses: ['!opacity-100'],
354
+ disabled: true,
355
+ },
356
+ {
357
+ name: `Remove from ${column.getColId()}`,
358
+ menuItem: WIP_GridMenuItem,
359
+ cssClasses: ['!opacity-100'],
360
+ disabled: true,
361
+ },
362
+ ]
363
+ : [],
364
+ },
365
+ {
366
+ name: 'Extended Columns',
367
+ menuItem: WIP_GridMenuItem,
368
+ cssClasses: ['!opacity-100'],
369
+ disabled: true,
370
+ subMenu: [
371
+ {
372
+ name: `Add New Column...`,
373
+ menuItem: WIP_GridMenuItem,
374
+ cssClasses: ['!opacity-100'],
375
+ disabled: true,
376
+ },
377
+ {
378
+ name: `Edit {column}`,
379
+ menuItem: WIP_GridMenuItem,
380
+ cssClasses: ['!opacity-100'],
381
+ disabled: true,
382
+ },
383
+ {
384
+ name: `Remove {column}`,
385
+ menuItem: WIP_GridMenuItem,
386
+ cssClasses: ['!opacity-100'],
387
+ disabled: true,
388
+ },
389
+ ],
390
+ },
391
+ {
392
+ name: 'Custom Groupings',
393
+ menuItem: WIP_GridMenuItem,
394
+ cssClasses: ['!opacity-100'],
395
+ disabled: true,
396
+ subMenu: [
397
+ {
398
+ name: `Add New Grouping...`,
399
+ menuItem: WIP_GridMenuItem,
400
+ cssClasses: ['!opacity-100'],
401
+ disabled: true,
402
+ },
403
+ {
404
+ name: `Edit {column}`,
405
+ menuItem: WIP_GridMenuItem,
406
+ cssClasses: ['!opacity-100'],
407
+ disabled: true,
408
+ },
409
+ {
410
+ name: `Remove {column}`,
411
+ menuItem: WIP_GridMenuItem,
412
+ cssClasses: ['!opacity-100'],
413
+ disabled: true,
414
+ },
415
+ ],
416
+ },
417
+ 'separator',
418
+ {
419
+ name: 'Resize',
420
+ subMenu: [
421
+ {
422
+ name: `Auto-size to Fit Content`,
423
+ action: () =>
424
+ params.api.autoSizeColumns(
425
+ [column?.getColId()].filter(isNonNullable),
426
+ ),
427
+ disabled: !column,
428
+ },
429
+ {
430
+ name: `Minimize Column`,
431
+ action: () => {
432
+ if (column) {
433
+ params.api.setColumnWidths([
434
+ {
435
+ key: column.getColId(),
436
+ newWidth:
437
+ controller.getColumnConfiguration(columnName)?.minWidth ??
438
+ DEFAULT_COLUMN_MIN_WIDTH,
439
+ },
440
+ ]);
441
+ }
442
+ },
443
+ disabled: !column,
444
+ },
445
+ 'separator',
446
+ {
447
+ name: `Auto-size All Columns`,
448
+ action: () => params.api.autoSizeAllColumns(),
449
+ },
450
+ {
451
+ name: `Minimize All Columns`,
452
+ action: () => {
453
+ params.api.setColumnWidths(
454
+ // TODO: take care of pivot columns
455
+ controller.configuration.columns.map((col) => ({
456
+ key: col.name,
457
+ newWidth:
458
+ controller.getColumnConfiguration(columnName)?.minWidth ??
459
+ DEFAULT_COLUMN_MIN_WIDTH,
460
+ })),
461
+ );
462
+ },
463
+ },
464
+ {
465
+ name: `Size Grid to Fit Screen`,
466
+ action: () => params.api.sizeColumnsToFit(),
467
+ },
468
+ ],
469
+ },
470
+ {
471
+ name: 'Pin',
472
+ subMenu: [
473
+ {
474
+ name: `Pin Left`,
475
+ disabled: !column || column.isPinnedLeft(),
476
+ checked: Boolean(column?.isPinnedLeft()),
477
+ action: () =>
478
+ controller.pinColumn(columnName, DataCubeColumnPinPlacement.LEFT),
479
+ },
480
+ {
481
+ name: `Pin Right`,
482
+ disabled: !column || column.isPinnedRight(),
483
+ checked: Boolean(column?.isPinnedRight()),
484
+ action: () =>
485
+ controller.pinColumn(
486
+ columnName,
487
+ DataCubeColumnPinPlacement.RIGHT,
488
+ ),
489
+ },
490
+ {
491
+ name: `Unpin`,
492
+ disabled: !column?.isPinned(),
493
+ action: () => controller.pinColumn(columnName, undefined),
494
+ },
495
+ 'separator',
496
+ {
497
+ name: `Remove All Pinnings`,
498
+ disabled: controller.configuration.columns.every(
499
+ (col) => col.pinned === undefined,
500
+ ),
501
+ action: () => controller.removeAllPins(),
502
+ },
503
+ ],
504
+ },
505
+ {
506
+ name: 'Hide',
507
+ disabled: !column,
508
+ action: () => controller.showColumn(columnName, false),
509
+ },
510
+ 'separator',
511
+ {
512
+ name: 'Show Plot...',
513
+ menuItem: WIP_GridMenuItem,
514
+ cssClasses: ['!opacity-100'],
515
+ disabled: true,
516
+ },
517
+ {
518
+ name: 'Show TreeMap...',
519
+ menuItem: WIP_GridMenuItem,
520
+ cssClasses: ['!opacity-100'],
521
+ disabled: true,
522
+ },
523
+ 'separator',
524
+ {
525
+ name: 'Properties...',
526
+ disabled: editor.isPanelOpen,
527
+ action: () => {
528
+ if (!editor.isPanelOpen) {
529
+ editor.openPanel();
530
+ }
531
+ },
532
+ },
533
+ ];
534
+ };
535
+ }
@@ -18,12 +18,10 @@ import {
18
18
  type V1_AppliedFunction,
19
19
  extractElementNameFromPath as _name,
20
20
  } from '@finos/legend-graph';
21
+ import { type DataCubeQuerySnapshot } from '../core/DataCubeQuerySnapshot.js';
21
22
  import {
22
23
  DataCubeQueryFilterGroupOperation,
23
- DataCubeQuerySnapshotFilterOperation,
24
- type DataCubeQuerySnapshot,
25
- } from '../core/DataCubeQuerySnapshot.js';
26
- import {
24
+ DataCubeQueryFilterOperation,
27
25
  DataCubeFunction,
28
26
  type DataCubeQueryFunctionMap,
29
27
  } from '../core/DataCubeQueryEngine.js';
@@ -95,7 +93,7 @@ export function generateRowGroupingDrilldownExecutableQueryPostProcessor(
95
93
  _filter({
96
94
  conditions: drilldownValues.map((drilldownValue, i) => ({
97
95
  ...guaranteeNonNullable(groupBy.columns[i]),
98
- operation: DataCubeQuerySnapshotFilterOperation.EQUAL,
96
+ operation: DataCubeQueryFilterOperation.EQUAL,
99
97
  value: drilldownValue,
100
98
  })),
101
99
  groupOperation: DataCubeQueryFilterGroupOperation.AND,
@@ -24,9 +24,7 @@
24
24
  import type { IServerSideGetRowsRequest } from '@ag-grid-community/core';
25
25
  import {
26
26
  type DataCubeQuerySnapshot,
27
- DataCubeQuerySnapshotSortOperation,
28
27
  _getCol,
29
- DataCubeQuerySnapshotAggregateFunction,
30
28
  } from '../core/DataCubeQuerySnapshot.js';
31
29
  import {
32
30
  IllegalStateError,
@@ -37,23 +35,27 @@ import {
37
35
  GridClientAggregateOperation,
38
36
  GridClientSortDirection,
39
37
  } from './DataCubeGridClientEngine.js';
38
+ import {
39
+ DataCubeQuerySortOperation,
40
+ DataCubeAggregateFunction,
41
+ } from '../core/DataCubeQueryEngine.js';
40
42
 
41
43
  // --------------------------------- UTILITIES ---------------------------------
42
44
 
43
45
  function _aggFunc(
44
46
  func: GridClientAggregateOperation,
45
- ): DataCubeQuerySnapshotAggregateFunction {
47
+ ): DataCubeAggregateFunction {
46
48
  switch (func) {
47
49
  case GridClientAggregateOperation.AVERAGE:
48
- return DataCubeQuerySnapshotAggregateFunction.AVERAGE;
50
+ return DataCubeAggregateFunction.AVERAGE;
49
51
  case GridClientAggregateOperation.COUNT:
50
- return DataCubeQuerySnapshotAggregateFunction.COUNT;
52
+ return DataCubeAggregateFunction.COUNT;
51
53
  case GridClientAggregateOperation.MAX:
52
- return DataCubeQuerySnapshotAggregateFunction.MAX;
54
+ return DataCubeAggregateFunction.MAX;
53
55
  case GridClientAggregateOperation.MIN:
54
- return DataCubeQuerySnapshotAggregateFunction.MIN;
56
+ return DataCubeAggregateFunction.MIN;
55
57
  case GridClientAggregateOperation.SUM:
56
- return DataCubeQuerySnapshotAggregateFunction.SUM;
58
+ return DataCubeAggregateFunction.SUM;
57
59
  default:
58
60
  throw new IllegalStateError(`Unsupported aggregate function '${func}'`);
59
61
  }
@@ -97,8 +99,8 @@ export function buildQuerySnapshot(
97
99
  ..._getCol(baseSnapshot.stageCols('sort'), item.colId),
98
100
  operation:
99
101
  item.sort === GridClientSortDirection.ASCENDING
100
- ? DataCubeQuerySnapshotSortOperation.ASCENDING
101
- : DataCubeQuerySnapshotSortOperation.DESCENDING,
102
+ ? DataCubeQuerySortOperation.ASCENDING
103
+ : DataCubeQuerySortOperation.DESCENDING,
102
104
  }));
103
105
 
104
106
  // --------------------------------- FINALIZE ---------------------------------