@finos/legend-application-repl 0.0.28 → 0.0.30

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 (245) hide show
  1. package/grammar/datacube_filter__lexer.g4 +40 -0
  2. package/grammar/datacube_filter__parser.g4 +14 -0
  3. package/grammar/generateGrammar.js +43 -0
  4. package/grammar/parser/generated/datacube_filter__lexer.interp +59 -0
  5. package/grammar/parser/generated/datacube_filter__lexer.tokens +14 -0
  6. package/grammar/parser/generated/datacube_filter__lexer.ts +142 -0
  7. package/grammar/parser/generated/datacube_filter__parser.interp +38 -0
  8. package/grammar/parser/generated/datacube_filter__parser.tokens +14 -0
  9. package/grammar/parser/generated/datacube_filter__parser.ts +514 -0
  10. package/grammar/parser/parser.ts +55 -0
  11. package/lib/components/Core_LegendREPLApplicationPlugin.d.ts.map +1 -1
  12. package/lib/components/Core_LegendREPLApplicationPlugin.js +0 -7
  13. package/lib/components/Core_LegendREPLApplicationPlugin.js.map +1 -1
  14. package/lib/components/LegendREPLApplication.d.ts +0 -1
  15. package/lib/components/LegendREPLApplication.d.ts.map +1 -1
  16. package/lib/components/LegendREPLFrameworkProvider.d.ts +0 -1
  17. package/lib/components/LegendREPLFrameworkProvider.d.ts.map +1 -1
  18. package/lib/components/REPLStoreProvider.d.ts +1 -1
  19. package/lib/components/REPLStoreProvider.d.ts.map +1 -1
  20. package/lib/components/REPLStoreProvider.js +1 -1
  21. package/lib/components/REPLStoreProvider.js.map +1 -1
  22. package/lib/components/dataCube/DataCube.d.ts.map +1 -1
  23. package/lib/components/dataCube/DataCube.js +15 -4
  24. package/lib/components/dataCube/DataCube.js.map +1 -1
  25. package/lib/components/dataCube/editor/DataCubeEditor.d.ts +2 -4
  26. package/lib/components/dataCube/editor/DataCubeEditor.d.ts.map +1 -1
  27. package/lib/components/dataCube/editor/DataCubeEditor.js +109 -32
  28. package/lib/components/dataCube/editor/DataCubeEditor.js.map +1 -1
  29. package/lib/components/dataCube/editor/DataCubeEditorCodePanel.d.ts +1 -1
  30. package/lib/components/dataCube/editor/DataCubeEditorCodePanel.d.ts.map +1 -1
  31. package/lib/components/dataCube/editor/DataCubeEditorCodePanel.js +178 -104
  32. package/lib/components/dataCube/editor/DataCubeEditorCodePanel.js.map +1 -1
  33. package/lib/components/dataCube/editor/{DataCubeEditorSortPanel.d.ts → DataCubeEditorColumnPropertiesPanel.d.ts} +2 -5
  34. package/lib/components/dataCube/editor/DataCubeEditorColumnPropertiesPanel.d.ts.map +1 -0
  35. package/lib/components/dataCube/editor/DataCubeEditorColumnPropertiesPanel.js +27 -0
  36. package/lib/components/dataCube/editor/DataCubeEditorColumnPropertiesPanel.js.map +1 -0
  37. package/lib/components/dataCube/editor/DataCubeEditorColumnsPanel.d.ts +19 -0
  38. package/lib/components/dataCube/editor/DataCubeEditorColumnsPanel.d.ts.map +1 -0
  39. package/lib/components/dataCube/editor/DataCubeEditorColumnsPanel.js +27 -0
  40. package/lib/components/dataCube/editor/DataCubeEditorColumnsPanel.js.map +1 -0
  41. package/lib/components/dataCube/editor/DataCubeEditorColumnsSelector.d.ts +22 -0
  42. package/lib/components/dataCube/editor/DataCubeEditorColumnsSelector.d.ts.map +1 -0
  43. package/lib/components/dataCube/editor/DataCubeEditorColumnsSelector.js +230 -0
  44. package/lib/components/dataCube/editor/DataCubeEditorColumnsSelector.js.map +1 -0
  45. package/lib/components/dataCube/editor/DataCubeEditorExtendedColumnsPanel.d.ts +19 -0
  46. package/lib/components/dataCube/editor/DataCubeEditorExtendedColumnsPanel.d.ts.map +1 -0
  47. package/lib/components/dataCube/editor/DataCubeEditorExtendedColumnsPanel.js +27 -0
  48. package/lib/components/dataCube/editor/DataCubeEditorExtendedColumnsPanel.js.map +1 -0
  49. package/lib/components/dataCube/editor/DataCubeEditorFilterPanel.d.ts +19 -0
  50. package/lib/components/dataCube/editor/DataCubeEditorFilterPanel.d.ts.map +1 -0
  51. package/lib/components/dataCube/editor/DataCubeEditorFilterPanel.js +27 -0
  52. package/lib/components/dataCube/editor/DataCubeEditorFilterPanel.js.map +1 -0
  53. package/lib/components/dataCube/editor/DataCubeEditorGeneralPropertiesPanel.d.ts +19 -0
  54. package/lib/components/dataCube/editor/DataCubeEditorGeneralPropertiesPanel.d.ts.map +1 -0
  55. package/lib/components/dataCube/editor/DataCubeEditorGeneralPropertiesPanel.js +27 -0
  56. package/lib/components/dataCube/editor/DataCubeEditorGeneralPropertiesPanel.js.map +1 -0
  57. package/lib/components/dataCube/editor/DataCubeEditorHPivotsPanel.d.ts +19 -0
  58. package/lib/components/dataCube/editor/DataCubeEditorHPivotsPanel.d.ts.map +1 -0
  59. package/lib/components/dataCube/editor/DataCubeEditorHPivotsPanel.js +27 -0
  60. package/lib/components/dataCube/editor/DataCubeEditorHPivotsPanel.js.map +1 -0
  61. package/lib/components/dataCube/editor/DataCubeEditorSortsPanel.d.ts +19 -0
  62. package/lib/components/dataCube/editor/DataCubeEditorSortsPanel.d.ts.map +1 -0
  63. package/lib/components/dataCube/editor/DataCubeEditorSortsPanel.js +26 -0
  64. package/lib/components/dataCube/editor/DataCubeEditorSortsPanel.js.map +1 -0
  65. package/lib/components/dataCube/editor/DataCubeEditorVPivotsPanel.d.ts +19 -0
  66. package/lib/components/dataCube/editor/DataCubeEditorVPivotsPanel.d.ts.map +1 -0
  67. package/lib/components/dataCube/editor/DataCubeEditorVPivotsPanel.js +27 -0
  68. package/lib/components/dataCube/editor/DataCubeEditorVPivotsPanel.js.map +1 -0
  69. package/lib/components/dataCube/grid/DataCubeGrid.d.ts +1 -4
  70. package/lib/components/dataCube/grid/DataCubeGrid.d.ts.map +1 -1
  71. package/lib/components/dataCube/grid/DataCubeGrid.js +75 -30
  72. package/lib/components/dataCube/grid/DataCubeGrid.js.map +1 -1
  73. package/lib/grammar/generated/datacube_filter__lexer.d.ts +31 -0
  74. package/lib/grammar/generated/datacube_filter__lexer.js +118 -0
  75. package/lib/grammar/generated/datacube_filter__parser.d.ts +91 -0
  76. package/lib/grammar/generated/datacube_filter__parser.js +485 -0
  77. package/lib/grammar/parser.d.ts +16 -0
  78. package/lib/grammar/parser.js +39 -0
  79. package/lib/index.css +2 -2
  80. package/lib/index.css.map +1 -1
  81. package/lib/package.json +9 -6
  82. package/lib/server/REPLServerClient.d.ts +2 -3
  83. package/lib/server/REPLServerClient.d.ts.map +1 -1
  84. package/lib/server/models/DataCubeEngineModels.d.ts +8 -1
  85. package/lib/server/models/DataCubeEngineModels.d.ts.map +1 -1
  86. package/lib/server/models/DataCubeEngineModels.js +13 -0
  87. package/lib/server/models/DataCubeEngineModels.js.map +1 -1
  88. package/lib/stores/dataCube/DataCubeDefaultConfig.d.ts +17 -0
  89. package/lib/stores/dataCube/DataCubeDefaultConfig.d.ts.map +1 -0
  90. package/lib/stores/dataCube/DataCubeDefaultConfig.js +17 -0
  91. package/lib/stores/dataCube/DataCubeDefaultConfig.js.map +1 -0
  92. package/lib/stores/dataCube/DataCubeState.d.ts +6 -6
  93. package/lib/stores/dataCube/DataCubeState.d.ts.map +1 -1
  94. package/lib/stores/dataCube/DataCubeState.js +18 -14
  95. package/lib/stores/dataCube/DataCubeState.js.map +1 -1
  96. package/lib/stores/dataCube/{DataCubeStore.d.ts → REPLStore.d.ts} +1 -1
  97. package/lib/stores/dataCube/REPLStore.d.ts.map +1 -0
  98. package/lib/stores/dataCube/{DataCubeStore.js → REPLStore.js} +1 -1
  99. package/lib/stores/dataCube/REPLStore.js.map +1 -0
  100. package/lib/stores/dataCube/core/DataCubeCoreState.d.ts +29 -0
  101. package/lib/stores/dataCube/core/DataCubeCoreState.d.ts.map +1 -0
  102. package/lib/stores/dataCube/core/DataCubeCoreState.js +46 -0
  103. package/lib/stores/dataCube/core/DataCubeCoreState.js.map +1 -0
  104. package/lib/stores/dataCube/core/DataCubeEngine.d.ts +2 -3
  105. package/lib/stores/dataCube/core/DataCubeEngine.d.ts.map +1 -1
  106. package/lib/stores/dataCube/core/DataCubeEngine.js +2 -3
  107. package/lib/stores/dataCube/core/DataCubeEngine.js.map +1 -1
  108. package/lib/stores/dataCube/core/DataCubeQueryBuilder.d.ts +27 -3
  109. package/lib/stores/dataCube/core/DataCubeQueryBuilder.d.ts.map +1 -1
  110. package/lib/stores/dataCube/core/DataCubeQueryBuilder.js +210 -278
  111. package/lib/stores/dataCube/core/DataCubeQueryBuilder.js.map +1 -1
  112. package/lib/stores/dataCube/core/DataCubeQueryEngine.d.ts +72 -0
  113. package/lib/stores/dataCube/core/DataCubeQueryEngine.d.ts.map +1 -0
  114. package/lib/stores/dataCube/core/DataCubeQueryEngine.js +67 -0
  115. package/lib/stores/dataCube/core/DataCubeQueryEngine.js.map +1 -0
  116. package/lib/stores/dataCube/core/DataCubeQuerySnapshot.d.ts +73 -38
  117. package/lib/stores/dataCube/core/DataCubeQuerySnapshot.d.ts.map +1 -1
  118. package/lib/stores/dataCube/core/DataCubeQuerySnapshot.js +101 -40
  119. package/lib/stores/dataCube/core/DataCubeQuerySnapshot.js.map +1 -1
  120. package/lib/stores/dataCube/core/DataCubeQuerySnapshotBuilder.d.ts +32 -0
  121. package/lib/stores/dataCube/core/DataCubeQuerySnapshotBuilder.d.ts.map +1 -0
  122. package/lib/stores/dataCube/core/DataCubeQuerySnapshotBuilder.js +232 -0
  123. package/lib/stores/dataCube/core/DataCubeQuerySnapshotBuilder.js.map +1 -0
  124. package/lib/stores/dataCube/core/DataCubeQuerySnapshotManager.d.ts +8 -2
  125. package/lib/stores/dataCube/core/DataCubeQuerySnapshotManager.d.ts.map +1 -1
  126. package/lib/stores/dataCube/core/DataCubeQuerySnapshotManager.js +20 -5
  127. package/lib/stores/dataCube/core/DataCubeQuerySnapshotManager.js.map +1 -1
  128. package/lib/stores/dataCube/core/DataCubeQuerySnapshotSubscriber.d.ts +8 -3
  129. package/lib/stores/dataCube/core/DataCubeQuerySnapshotSubscriber.d.ts.map +1 -1
  130. package/lib/stores/dataCube/core/DataCubeQuerySnapshotSubscriber.js +8 -4
  131. package/lib/stores/dataCube/core/DataCubeQuerySnapshotSubscriber.js.map +1 -1
  132. package/lib/stores/dataCube/editor/{DataCubeEditorCodeState.d.ts → DataCubeEditorCodePanelState.d.ts} +6 -5
  133. package/lib/stores/dataCube/editor/DataCubeEditorCodePanelState.d.ts.map +1 -0
  134. package/lib/stores/dataCube/editor/{DataCubeEditorCodeState.js → DataCubeEditorCodePanelState.js} +7 -7
  135. package/lib/stores/dataCube/editor/DataCubeEditorCodePanelState.js.map +1 -0
  136. package/lib/stores/dataCube/editor/DataCubeEditorColumnsSelectorState.d.ts +30 -0
  137. package/lib/stores/dataCube/editor/DataCubeEditorColumnsSelectorState.d.ts.map +1 -0
  138. package/lib/stores/dataCube/editor/DataCubeEditorColumnsSelectorState.js +51 -0
  139. package/lib/stores/dataCube/editor/DataCubeEditorColumnsSelectorState.js.map +1 -0
  140. package/lib/stores/dataCube/editor/DataCubeEditorGeneralPropertiesPanelState.d.ts +29 -0
  141. package/lib/stores/dataCube/editor/DataCubeEditorGeneralPropertiesPanelState.d.ts.map +1 -0
  142. package/lib/stores/dataCube/editor/DataCubeEditorGeneralPropertiesPanelState.js +63 -0
  143. package/lib/stores/dataCube/editor/DataCubeEditorGeneralPropertiesPanelState.js.map +1 -0
  144. package/lib/stores/dataCube/editor/{DataCubeEditorQuerySnapshotBuilder.d.ts → DataCubeEditorPanelState.d.ts} +2 -2
  145. package/lib/stores/dataCube/editor/DataCubeEditorPanelState.d.ts.map +1 -0
  146. package/lib/stores/dataCube/editor/{DataCubeEditorQuerySnapshotBuilder.js → DataCubeEditorPanelState.js} +1 -1
  147. package/lib/stores/dataCube/editor/DataCubeEditorPanelState.js.map +1 -0
  148. package/lib/stores/dataCube/editor/DataCubeEditorSortsPanelState.d.ts +34 -0
  149. package/lib/stores/dataCube/editor/DataCubeEditorSortsPanelState.d.ts.map +1 -0
  150. package/lib/stores/dataCube/editor/DataCubeEditorSortsPanelState.js +67 -0
  151. package/lib/stores/dataCube/editor/DataCubeEditorSortsPanelState.js.map +1 -0
  152. package/lib/stores/dataCube/editor/DataCubeEditorState.d.ts +10 -7
  153. package/lib/stores/dataCube/editor/DataCubeEditorState.d.ts.map +1 -1
  154. package/lib/stores/dataCube/editor/DataCubeEditorState.js +25 -17
  155. package/lib/stores/dataCube/editor/DataCubeEditorState.js.map +1 -1
  156. package/lib/stores/dataCube/grid/DataCubeGridClientEngine.d.ts +13 -7
  157. package/lib/stores/dataCube/grid/DataCubeGridClientEngine.d.ts.map +1 -1
  158. package/lib/stores/dataCube/grid/DataCubeGridClientEngine.js +87 -86
  159. package/lib/stores/dataCube/grid/DataCubeGridClientEngine.js.map +1 -1
  160. package/lib/stores/dataCube/grid/DataCubeGridQueryBuilder.d.ts +20 -0
  161. package/lib/stores/dataCube/grid/DataCubeGridQueryBuilder.d.ts.map +1 -0
  162. package/lib/stores/dataCube/grid/DataCubeGridQueryBuilder.js +103 -0
  163. package/lib/stores/dataCube/grid/DataCubeGridQueryBuilder.js.map +1 -0
  164. package/lib/stores/dataCube/grid/DataCubeGridQuerySnapshotAnalyzer.d.ts +7 -1
  165. package/lib/stores/dataCube/grid/DataCubeGridQuerySnapshotAnalyzer.d.ts.map +1 -1
  166. package/lib/stores/dataCube/grid/DataCubeGridQuerySnapshotAnalyzer.js +121 -214
  167. package/lib/stores/dataCube/grid/DataCubeGridQuerySnapshotAnalyzer.js.map +1 -1
  168. package/lib/stores/dataCube/grid/DataCubeGridQuerySnapshotBuilder.d.ts +25 -0
  169. package/lib/stores/dataCube/grid/DataCubeGridQuerySnapshotBuilder.d.ts.map +1 -0
  170. package/lib/stores/dataCube/grid/DataCubeGridQuerySnapshotBuilder.js +83 -0
  171. package/lib/stores/dataCube/grid/DataCubeGridQuerySnapshotBuilder.js.map +1 -0
  172. package/lib/stores/dataCube/grid/DataCubeGridState.d.ts +6 -5
  173. package/lib/stores/dataCube/grid/DataCubeGridState.d.ts.map +1 -1
  174. package/lib/stores/dataCube/grid/DataCubeGridState.js +32 -10
  175. package/lib/stores/dataCube/grid/DataCubeGridState.js.map +1 -1
  176. package/package.json +15 -12
  177. package/src/components/Core_LegendREPLApplicationPlugin.tsx +0 -7
  178. package/src/components/REPLStoreProvider.tsx +1 -1
  179. package/src/components/dataCube/DataCube.tsx +51 -29
  180. package/src/components/dataCube/editor/DataCubeEditor.tsx +204 -95
  181. package/src/components/dataCube/editor/DataCubeEditorCodePanel.tsx +186 -190
  182. package/src/components/dataCube/editor/DataCubeEditorColumnPropertiesPanel.tsx +42 -0
  183. package/src/components/dataCube/editor/DataCubeEditorColumnsPanel.tsx +41 -0
  184. package/src/components/dataCube/editor/DataCubeEditorColumnsSelector.tsx +408 -0
  185. package/src/components/dataCube/editor/DataCubeEditorExtendedColumnsPanel.tsx +41 -0
  186. package/src/components/dataCube/editor/DataCubeEditorFilterPanel.tsx +41 -0
  187. package/src/components/dataCube/editor/DataCubeEditorGeneralPropertiesPanel.tsx +48 -0
  188. package/src/components/dataCube/editor/DataCubeEditorHPivotsPanel.tsx +41 -0
  189. package/src/components/dataCube/editor/DataCubeEditorSortsPanel.tsx +41 -0
  190. package/src/components/dataCube/editor/DataCubeEditorVPivotsPanel.tsx +41 -0
  191. package/src/components/dataCube/grid/DataCubeGrid.tsx +134 -43
  192. package/src/server/REPLServerClient.ts +2 -2
  193. package/src/server/models/DataCubeEngineModels.ts +23 -1
  194. package/{lib/grid.css → src/stores/dataCube/DataCubeDefaultConfig.ts} +2 -2
  195. package/src/stores/dataCube/DataCubeState.ts +26 -20
  196. package/src/stores/dataCube/core/DataCubeCoreState.ts +57 -0
  197. package/src/stores/dataCube/core/DataCubeEngine.ts +6 -4
  198. package/src/stores/dataCube/core/DataCubeQueryBuilder.ts +349 -353
  199. package/src/stores/dataCube/core/DataCubeQueryEngine.ts +90 -0
  200. package/src/stores/dataCube/core/DataCubeQuerySnapshot.ts +168 -156
  201. package/src/stores/dataCube/core/DataCubeQuerySnapshotBuilder.ts +398 -0
  202. package/src/stores/dataCube/core/DataCubeQuerySnapshotManager.ts +37 -5
  203. package/src/stores/dataCube/core/DataCubeQuerySnapshotSubscriber.ts +13 -5
  204. package/src/stores/dataCube/editor/{DataCubeEditorCodeState.ts → DataCubeEditorCodePanelState.ts} +6 -6
  205. package/src/stores/dataCube/editor/DataCubeEditorColumnsSelectorState.ts +61 -0
  206. package/src/stores/dataCube/editor/DataCubeEditorGeneralPropertiesPanelState.ts +80 -0
  207. package/src/stores/dataCube/editor/{DataCubeEditorQuerySnapshotBuilder.ts → DataCubeEditorPanelState.ts} +1 -1
  208. package/src/stores/dataCube/editor/DataCubeEditorSortsPanelState.ts +116 -0
  209. package/src/stores/dataCube/editor/DataCubeEditorState.ts +29 -20
  210. package/src/stores/dataCube/grid/DataCubeGridClientEngine.ts +96 -128
  211. package/src/stores/dataCube/grid/DataCubeGridQueryBuilder.ts +154 -0
  212. package/src/stores/dataCube/grid/DataCubeGridQuerySnapshotAnalyzer.tsx +191 -0
  213. package/src/stores/dataCube/grid/DataCubeGridQuerySnapshotBuilder.ts +127 -0
  214. package/src/stores/dataCube/grid/DataCubeGridState.ts +41 -14
  215. package/tsconfig.json +23 -9
  216. package/lib/components/dataCube/editor/DataCubeEditorSortPanel.d.ts.map +0 -1
  217. package/lib/components/dataCube/editor/DataCubeEditorSortPanel.js +0 -61
  218. package/lib/components/dataCube/editor/DataCubeEditorSortPanel.js.map +0 -1
  219. package/lib/grid.css.map +0 -1
  220. package/lib/repl.css +0 -17
  221. package/lib/repl.css.map +0 -1
  222. package/lib/stores/dataCube/DataCubeMetaModelConst.d.ts +0 -63
  223. package/lib/stores/dataCube/DataCubeMetaModelConst.d.ts.map +0 -1
  224. package/lib/stores/dataCube/DataCubeMetaModelConst.js +0 -72
  225. package/lib/stores/dataCube/DataCubeMetaModelConst.js.map +0 -1
  226. package/lib/stores/dataCube/DataCubeStore.d.ts.map +0 -1
  227. package/lib/stores/dataCube/DataCubeStore.js.map +0 -1
  228. package/lib/stores/dataCube/core/DataCubeQueryAnalyzer.d.ts +0 -37
  229. package/lib/stores/dataCube/core/DataCubeQueryAnalyzer.d.ts.map +0 -1
  230. package/lib/stores/dataCube/core/DataCubeQueryAnalyzer.js +0 -269
  231. package/lib/stores/dataCube/core/DataCubeQueryAnalyzer.js.map +0 -1
  232. package/lib/stores/dataCube/editor/DataCubeEditorCodeState.d.ts.map +0 -1
  233. package/lib/stores/dataCube/editor/DataCubeEditorCodeState.js.map +0 -1
  234. package/lib/stores/dataCube/editor/DataCubeEditorQuerySnapshotBuilder.d.ts.map +0 -1
  235. package/lib/stores/dataCube/editor/DataCubeEditorQuerySnapshotBuilder.js.map +0 -1
  236. package/lib/stores/dataCube/editor/DataCubeEditorSortState.d.ts +0 -46
  237. package/lib/stores/dataCube/editor/DataCubeEditorSortState.d.ts.map +0 -1
  238. package/lib/stores/dataCube/editor/DataCubeEditorSortState.js +0 -133
  239. package/lib/stores/dataCube/editor/DataCubeEditorSortState.js.map +0 -1
  240. package/src/components/dataCube/editor/DataCubeEditorSortPanel.tsx +0 -274
  241. package/src/stores/dataCube/DataCubeMetaModelConst.ts +0 -76
  242. package/src/stores/dataCube/core/DataCubeQueryAnalyzer.ts +0 -424
  243. package/src/stores/dataCube/editor/DataCubeEditorSortState.ts +0 -198
  244. package/src/stores/dataCube/grid/DataCubeGridQuerySnapshotAnalyzer.ts +0 -281
  245. /package/src/stores/dataCube/{DataCubeStore.ts → REPLStore.ts} +0 -0
@@ -1,133 +0,0 @@
1
- /**
2
- * Copyright (c) 2020-present, Goldman Sachs
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- import { action, computed, makeObservable, observable } from 'mobx';
17
- import { deepEqual } from '@finos/legend-shared';
18
- import { DATA_CUBE_COLUMN_SORT_DIRECTION } from '../DataCubeMetaModelConst.js';
19
- export class DataCubeEditorSortColumnState {
20
- column;
21
- direction;
22
- constructor(column, direction) {
23
- makeObservable(this, {
24
- direction: observable,
25
- setDirection: action,
26
- });
27
- this.column = column;
28
- this.direction = direction;
29
- }
30
- setDirection(val) {
31
- this.direction = val;
32
- }
33
- }
34
- export class DataCubeEditorSortState {
35
- dataCubeState;
36
- availableColumns = [];
37
- selectedColumns = [];
38
- availableColumnsSearchText = '';
39
- selectedColumnsSearchText = '';
40
- constructor(dataCubeState) {
41
- this.dataCubeState = dataCubeState;
42
- makeObservable(this, {
43
- availableColumns: observable,
44
- selectedColumns: observable,
45
- availableColumnsSearchText: observable,
46
- selectedColumnsSearchText: observable,
47
- setAvailableColumns: action,
48
- setSelectedColumns: action,
49
- addAvailableColumn: action,
50
- addSelectedColumn: action,
51
- addAllAvailableColumns: action,
52
- addAllSelectedColumns: action,
53
- setSelectedColumnsSearchText: action,
54
- setAvailableColumnsSearchText: action,
55
- availableColumnsSearchResults: computed,
56
- selectedColumnsSearchResults: computed,
57
- });
58
- }
59
- setAvailableColumns(val) {
60
- this.availableColumns = val;
61
- }
62
- setSelectedColumns(val) {
63
- this.selectedColumns = val;
64
- }
65
- addAvailableColumn(columnName) {
66
- const column = this.availableColumns.find((col) => col.column.name === columnName);
67
- if (column) {
68
- this.setAvailableColumns(this.availableColumns.filter((col) => col.column.name !== columnName));
69
- this.setSelectedColumns(this.selectedColumns.concat(column));
70
- }
71
- }
72
- addSelectedColumn(columnName) {
73
- const column = this.selectedColumns.find((col) => col.column.name === columnName);
74
- if (column) {
75
- this.setSelectedColumns(this.selectedColumns.filter((col) => col.column.name !== columnName));
76
- this.setAvailableColumns(this.availableColumns.concat(column));
77
- }
78
- }
79
- addAllAvailableColumns() {
80
- this.setSelectedColumns(this.selectedColumns.concat(this.availableColumns));
81
- this.setAvailableColumns([]);
82
- }
83
- addAllSelectedColumns() {
84
- this.setAvailableColumns(this.availableColumns.concat(this.selectedColumns));
85
- this.setSelectedColumns([]);
86
- }
87
- setAvailableColumnsSearchText(val) {
88
- this.availableColumnsSearchText = val;
89
- }
90
- setSelectedColumnsSearchText(val) {
91
- this.selectedColumnsSearchText = val;
92
- }
93
- get availableColumnsSearchResults() {
94
- if (this.availableColumnsSearchText) {
95
- return this.availableColumns.filter((col) => col.column.name
96
- .toLowerCase()
97
- .includes(this.availableColumnsSearchText.toLowerCase()));
98
- }
99
- else {
100
- return this.availableColumns;
101
- }
102
- }
103
- get selectedColumnsSearchResults() {
104
- if (this.selectedColumnsSearchText) {
105
- return this.selectedColumns.filter((col) => col.column.name
106
- .toLowerCase()
107
- .includes(this.selectedColumnsSearchText.toLowerCase()));
108
- }
109
- else {
110
- return this.selectedColumns;
111
- }
112
- }
113
- applySnaphot(snapshot) {
114
- const sortColumns = snapshot.sortColumns;
115
- this.setAvailableColumns(snapshot.columns
116
- .filter((col) => !sortColumns.find((sortCol) => sortCol.name === col.name))
117
- .map((col) => new DataCubeEditorSortColumnState(col, DATA_CUBE_COLUMN_SORT_DIRECTION.ASCENDING)));
118
- this.setSelectedColumns(sortColumns.map((sortCol) => new DataCubeEditorSortColumnState(snapshot.columns.find((col) => col.name === sortCol.name), sortCol.direction)));
119
- }
120
- buildSnapshot(newSnapshot, baseSnapshot) {
121
- const newSortColumns = this.selectedColumns.map((sortInfo) => ({
122
- name: sortInfo.column.name,
123
- type: sortInfo.column.type,
124
- direction: sortInfo.direction,
125
- }));
126
- if (!deepEqual(newSortColumns, baseSnapshot.sortColumns)) {
127
- newSnapshot.sortColumns = newSortColumns;
128
- return true;
129
- }
130
- return false;
131
- }
132
- }
133
- //# sourceMappingURL=DataCubeEditorSortState.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DataCubeEditorSortState.js","sourceRoot":"","sources":["../../../../src/stores/dataCube/editor/DataCubeEditorSortState.ts"],"names":[],"mappings":"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"}
@@ -1,274 +0,0 @@
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 { observer } from 'mobx-react-lite';
18
- import {
19
- PlusIcon,
20
- SearchIcon,
21
- TimesIcon,
22
- clsx,
23
- ChevronLeftIcon,
24
- ChevronRightIcon,
25
- CustomSelectorInput,
26
- } from '@finos/legend-art';
27
- import type { REPLStore } from '../../../stores/dataCube/DataCubeStore.js';
28
- import { DATA_CUBE_COLUMN_SORT_DIRECTION } from '../../../stores/dataCube/DataCubeMetaModelConst.js';
29
-
30
- export const DataCubeEditorSortPanel = observer(
31
- (props: { editorStore: REPLStore }) => {
32
- const { editorStore } = props;
33
- const sortState = editorStore.dataCubeState.editor.sort;
34
- const onAvailabeColumnsSearchTextChange: React.ChangeEventHandler<
35
- HTMLInputElement
36
- > = (event) => {
37
- sortState.setAvailableColumnsSearchText(event.target.value);
38
- };
39
- const onSelectedColumnsSearchTextChange: React.ChangeEventHandler<
40
- HTMLInputElement
41
- > = (event) => {
42
- sortState.setSelectedColumnsSearchText(event.target.value);
43
- };
44
- const clearAvailableColumnsSearchText = (): void => {
45
- sortState.setAvailableColumnsSearchText('');
46
- };
47
- const clearSelectedColumnsSearchText = (): void => {
48
- sortState.setSelectedColumnsSearchText('');
49
- };
50
- const sortOptions = Array.from(
51
- Object.values(DATA_CUBE_COLUMN_SORT_DIRECTION),
52
- ).map((val) => ({
53
- label: val,
54
- value: val,
55
- }));
56
- const onAvailableColumnsSortOptionsChanged =
57
- (columnName: string) =>
58
- (option: {
59
- label: string;
60
- value: DATA_CUBE_COLUMN_SORT_DIRECTION;
61
- }): void => {
62
- const column = sortState.availableColumns.find(
63
- (col) => col.column.name === columnName,
64
- );
65
- if (column) {
66
- column.setDirection(option.value);
67
- }
68
- };
69
-
70
- const onSelectedColumnsSortOptionsChanged =
71
- (columnName: string) =>
72
- (option: {
73
- label: string;
74
- value: DATA_CUBE_COLUMN_SORT_DIRECTION;
75
- }): void => {
76
- const column = sortState.selectedColumns.find(
77
- (col) => col.column.name === columnName,
78
- );
79
- if (column) {
80
- column.setDirection(option.value);
81
- }
82
- };
83
-
84
- return (
85
- <div className="repl__hpivot__sort__editor">
86
- <div className="repl__hpivot__sort__column__editor">
87
- <div className="repl__hpivot__sort__column__editor__header">
88
- Sorts
89
- </div>
90
- <div className="repl__hpivot__sort__column__editor__content">
91
- <div className="repl__hpivot__sort__column__editor__available__columns">
92
- <div className="repl__hpivot__sort__column__editor__description">
93
- Available sort columns:
94
- </div>
95
- <div className="repl__hpivot__sort__column__editor__container">
96
- <div className="query-builder-property-search-panel__header">
97
- <div className="query-builder-property-search-panel__input__container">
98
- <input
99
- className={clsx(
100
- 'query-builder-property-search-panel__input',
101
- {
102
- 'query-builder-property-search-panel__input--searching':
103
- sortState.availableColumnsSearchText,
104
- },
105
- )}
106
- spellCheck={false}
107
- onChange={onAvailabeColumnsSearchTextChange}
108
- value={sortState.availableColumnsSearchText}
109
- placeholder="Search"
110
- />
111
- {!sortState.availableColumnsSearchText ? (
112
- <>
113
- <div className="query-builder-property-search-panel__input__search__icon">
114
- <SearchIcon />
115
- </div>
116
- </>
117
- ) : (
118
- <button
119
- className="query-builder-property-search-panel__input__clear-btn"
120
- tabIndex={-1}
121
- onClick={clearAvailableColumnsSearchText}
122
- title="Clear"
123
- >
124
- <TimesIcon />
125
- </button>
126
- )}
127
- </div>
128
- </div>
129
- <div className="repl__hpivot__sort__column__editor__available__columns__content">
130
- <div
131
- className="repl__hpivot__sort__column__editor__available__columns__root"
132
- onDoubleClick={(): void =>
133
- sortState.addAllAvailableColumns()
134
- }
135
- >
136
- <PlusIcon />
137
- <div className="repl__hpivot__sort__column__editor__available__columns__root__label">
138
- All
139
- </div>
140
- </div>
141
- {sortState.availableColumnsSearchResults.map((col) => (
142
- <div
143
- className="repl__hpivot__sort__column__editor__available__columns__children"
144
- key={col.column.name}
145
- >
146
- <div
147
- className="repl__hpivot__sort__column__editor__available__columns__children__name"
148
- onDoubleClick={(): void =>
149
- sortState.addAvailableColumn(col.column.name)
150
- }
151
- >
152
- {col.column.name}
153
- </div>
154
- <CustomSelectorInput
155
- className="repl__hpivot__sort__column__editor__available__columns__children__order"
156
- options={sortOptions}
157
- onChange={onAvailableColumnsSortOptionsChanged(
158
- col.column.name,
159
- )}
160
- value={{ label: col.direction, value: col.direction }}
161
- isClearable={false}
162
- darkMode={false}
163
- />
164
- </div>
165
- ))}
166
- </div>
167
- </div>
168
- </div>
169
- <div className="repl__hpivot__sort__column__editor__actions">
170
- <div className="repl__hpivot__sort__column__editor__action">
171
- <button
172
- tabIndex={-1}
173
- // onClick={clearSearch}
174
- title="Add"
175
- >
176
- Add
177
- <ChevronRightIcon />
178
- </button>
179
- </div>
180
- <div className="repl__hpivot__sort__column__editor__action">
181
- <button
182
- tabIndex={-1}
183
- // onClick={clearSearch}
184
- title="Remove"
185
- >
186
- <ChevronLeftIcon />
187
- Remove
188
- </button>
189
- </div>
190
- </div>
191
- <div className="repl__hpivot__sort__column__editor__selected__columns">
192
- <div className="repl__hpivot__sort__column__editor__description">
193
- Selected sort columns:
194
- </div>
195
- <div className="repl__hpivot__sort__column__editor__container">
196
- <div className="query-builder-property-search-panel__header">
197
- <div className="query-builder-property-search-panel__input__container">
198
- <input
199
- className={clsx(
200
- 'query-builder-property-search-panel__input',
201
- {
202
- 'query-builder-property-search-panel__input--searching':
203
- sortState.selectedColumnsSearchText,
204
- },
205
- )}
206
- spellCheck={false}
207
- onChange={onSelectedColumnsSearchTextChange}
208
- value={sortState.selectedColumnsSearchText}
209
- placeholder="Search"
210
- />
211
- {!sortState.selectedColumnsSearchText ? (
212
- <>
213
- <div className="query-builder-property-search-panel__input__search__icon">
214
- <SearchIcon />
215
- </div>
216
- </>
217
- ) : (
218
- <button
219
- className="query-builder-property-search-panel__input__clear-btn"
220
- tabIndex={-1}
221
- onClick={clearSelectedColumnsSearchText}
222
- title="Clear"
223
- >
224
- <TimesIcon />
225
- </button>
226
- )}
227
- </div>
228
- </div>
229
- <div className="repl__hpivot__sort__column__editor__available__columns__content">
230
- <div
231
- className="repl__hpivot__sort__column__editor__available__columns__root"
232
- onDoubleClick={(): void =>
233
- sortState.addAllSelectedColumns()
234
- }
235
- >
236
- <PlusIcon />
237
- <div className="repl__hpivot__sort__column__editor__available__columns__root__label">
238
- All
239
- </div>
240
- </div>
241
- {sortState.selectedColumnsSearchResults.map((col) => (
242
- <div
243
- className="repl__hpivot__sort__column__editor__available__columns__children"
244
- key={col.column.name}
245
- >
246
- <div
247
- className="repl__hpivot__sort__column__editor__available__columns__children__name"
248
- onDoubleClick={(): void =>
249
- sortState.addSelectedColumn(col.column.name)
250
- }
251
- >
252
- {col.column.name}
253
- </div>
254
- <CustomSelectorInput
255
- className="repl__hpivot__sort__column__editor__available__columns__children__order"
256
- options={sortOptions}
257
- onChange={onSelectedColumnsSortOptionsChanged(
258
- col.column.name,
259
- )}
260
- value={{ label: col.direction, value: col.direction }}
261
- isClearable={false}
262
- darkMode={false}
263
- />
264
- </div>
265
- ))}
266
- </div>
267
- </div>
268
- </div>
269
- </div>
270
- </div>
271
- </div>
272
- );
273
- },
274
- );
@@ -1,76 +0,0 @@
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
- export enum DATA_CUBE_FUNCTIONS {
18
- // relation
19
- EXTEND = 'meta::pure::functions::relation::extend',
20
- FILTER = 'meta::pure::functions::relation::filter',
21
- GROUP_BY = 'meta::pure::functions::relation::groupBy',
22
- LIMIT = 'meta::pure::functions::relation::limit',
23
- PIVOT = 'meta::pure::functions::relation::pivot',
24
- RENAME = 'meta::pure::functions::relation::rename',
25
- SELECT = 'meta::pure::functions::relation::select',
26
- SLICE = 'meta::pure::functions::relation::slice',
27
- SORT = 'meta::pure::functions::relation::sort',
28
-
29
- // core
30
- CAST = 'meta::pure::functions::lang::cast',
31
- FROM = 'meta::pure::mapping::from',
32
-
33
- // sort
34
- ASC = 'meta::pure::functions::relation::ascending',
35
- DESC = 'meta::pure::functions::relation::descending',
36
-
37
- // filter
38
- AND = 'meta::pure::functions::boolean::and',
39
- NOT = 'meta::pure::functions::boolean::not',
40
- OR = 'meta::pure::functions::boolean::or',
41
-
42
- // aggregate
43
- }
44
-
45
- export const DEFAULT_LAMBDA_VARIABLE_NAME = 'x';
46
- export const PIVOT_COLUMN_NAME_VALUE_SEPARATOR = '__|__';
47
-
48
- export enum DATA_CUBE_AGGREGATE_FUNCTION {
49
- SUM = 'sum',
50
- MIN = 'min',
51
- MAX = 'max',
52
- COUNT = 'count',
53
- AVG = 'avg',
54
- FIRST = 'first',
55
- LAST = 'last',
56
- }
57
-
58
- export enum DATA_CUBE_FILTER_OPERATION {
59
- EQUALS = 'equal',
60
- NOT_EQUAL = 'notEqual',
61
- GREATER_THAN = 'greaterThan',
62
- GREATER_THAN_OR_EQUAL = 'greaterThanOrEqual',
63
- LESS_THAN = 'lessThan',
64
- LESS_THAN_OR_EQUAL = 'lessThanOrEqual',
65
- BLANK = 'isEmpty',
66
- NOT_BLANK = 'isNotEmpty',
67
- CONTAINS = 'contains',
68
- NOT_CONTAINS = 'notContains',
69
- STARTS_WITH = 'startsWith',
70
- ENDS_WITH = 'endsWith',
71
- }
72
-
73
- export enum DATA_CUBE_COLUMN_SORT_DIRECTION {
74
- ASCENDING = 'ascending',
75
- DESCENDING = 'descending',
76
- }