@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
@@ -0,0 +1,72 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import type { V1_AppliedFunction } from '@finos/legend-graph';
17
+ export declare enum DataCubeFunction {
18
+ EXTEND = "meta::pure::functions::relation::extend",
19
+ FILTER = "meta::pure::functions::relation::filter",
20
+ GROUP_BY = "meta::pure::functions::relation::groupBy",
21
+ LIMIT = "meta::pure::functions::relation::limit",
22
+ PIVOT = "meta::pure::functions::relation::pivot",
23
+ SELECT = "meta::pure::functions::relation::select",
24
+ SLICE = "meta::pure::functions::relation::slice",
25
+ SORT = "meta::pure::functions::relation::sort",
26
+ CAST = "meta::pure::functions::lang::cast",
27
+ FROM = "meta::pure::mapping::from",
28
+ ASC = "meta::pure::functions::relation::ascending",
29
+ DESC = "meta::pure::functions::relation::descending",
30
+ AND = "meta::pure::functions::boolean::and",
31
+ NOT = "meta::pure::functions::boolean::not",
32
+ OR = "meta::pure::functions::boolean::or",
33
+ CONTAINS = "meta::pure::functions::string::contains",
34
+ ENDS_WITH = "meta::pure::functions::string::endsWith",
35
+ EQUAL = "meta::pure::functions::boolean::equal",
36
+ GREATER_THAN = "meta::pure::functions::boolean::greaterThan",
37
+ GREATER_THAN_EQUAL = "meta::pure::functions::boolean::greaterThanEqual",
38
+ IN = "meta::pure::functions::collection::in",
39
+ IS_EMPTY = "meta::pure::functions::collection::isEmpty",
40
+ LESS_THAN = "meta::pure::functions::boolean::lessThan",
41
+ LESS_THAN_EQUAL = "meta::pure::functions::boolean::lessThanEqual",
42
+ STARTS_WITH = "meta::pure::functions::string::startsWith",
43
+ AVERAGE = "meta::pure::functions::math::average",
44
+ COUNT = "meta::pure::functions::collection::count",
45
+ DISTINCT = "meta::pure::functions::collection::distinct",
46
+ FIRST = "meta::pure::functions::collection::first",
47
+ JOIN_STRINGS = "meta::pure::functions::string::joinStrings",
48
+ LAST = "meta::pure::functions::collection::last",
49
+ MAX = "meta::pure::functions::collection::max",
50
+ MIN = "meta::pure::functions::collection::min",
51
+ SUM = "meta::pure::functions::math::sum",
52
+ STD_DEV_POPULATION = "meta::pure::functions::math::stdDevPopulation",
53
+ STD_DEV_SAMPLE = "meta::pure::functions::math::stdDevSample",
54
+ UNIQUE_VALUE_ONLY = "meta::pure::functions::collection::uniqueValueOnly"
55
+ }
56
+ export declare const DEFAULT_LAMBDA_VARIABLE_NAME = "x";
57
+ export declare const PIVOT_COLUMN_NAME_VALUE_SEPARATOR = "__|__";
58
+ export declare const INTERNAL__FILLER_COUNT_AGG_COLUMN_NAME = "INTERNAL__filler_count_agg_column";
59
+ export type DataCubeQueryFunctionMap = {
60
+ leafExtend?: V1_AppliedFunction | undefined;
61
+ filter?: V1_AppliedFunction | undefined;
62
+ groupBy?: V1_AppliedFunction | undefined;
63
+ groupByExtend?: V1_AppliedFunction | undefined;
64
+ pivotExtend?: V1_AppliedFunction | undefined;
65
+ pivot?: V1_AppliedFunction | undefined;
66
+ pivotCast?: V1_AppliedFunction | undefined;
67
+ groupExtend?: V1_AppliedFunction | undefined;
68
+ select?: V1_AppliedFunction | undefined;
69
+ sort?: V1_AppliedFunction | undefined;
70
+ limit?: V1_AppliedFunction | undefined;
71
+ };
72
+ //# sourceMappingURL=DataCubeQueryEngine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataCubeQueryEngine.d.ts","sourceRoot":"","sources":["../../../../src/stores/dataCube/core/DataCubeQueryEngine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAE9D,oBAAY,gBAAgB;IAE1B,MAAM,4CAA4C;IAClD,MAAM,4CAA4C;IAClD,QAAQ,6CAA6C;IACrD,KAAK,2CAA2C;IAChD,KAAK,2CAA2C;IAEhD,MAAM,4CAA4C;IAClD,KAAK,2CAA2C;IAChD,IAAI,0CAA0C;IAG9C,IAAI,sCAAsC;IAC1C,IAAI,8BAA8B;IAGlC,GAAG,+CAA+C;IAClD,IAAI,gDAAgD;IAGpD,GAAG,wCAAwC;IAC3C,GAAG,wCAAwC;IAC3C,EAAE,uCAAuC;IAEzC,QAAQ,4CAA4C;IACpD,SAAS,4CAA4C;IACrD,KAAK,0CAA0C;IAC/C,YAAY,gDAAgD;IAC5D,kBAAkB,qDAAqD;IACvE,EAAE,0CAA0C;IAC5C,QAAQ,+CAA+C;IACvD,SAAS,6CAA6C;IACtD,eAAe,kDAAkD;IACjE,WAAW,8CAA8C;IAGzD,OAAO,yCAAyC;IAChD,KAAK,6CAA6C;IAClD,QAAQ,gDAAgD;IACxD,KAAK,6CAA6C;IAClD,YAAY,+CAA+C;IAC3D,IAAI,4CAA4C;IAChD,GAAG,2CAA2C;IAC9C,GAAG,2CAA2C;IAC9C,GAAG,qCAAqC;IACxC,kBAAkB,kDAAkD;IACpE,cAAc,8CAA8C;IAC5D,iBAAiB,uDAAuD;CACzE;AAED,eAAO,MAAM,4BAA4B,MAAM,CAAC;AAChD,eAAO,MAAM,iCAAiC,UAAU,CAAC;AAIzD,eAAO,MAAM,sCAAsC,sCACd,CAAC;AAEtC,MAAM,MAAM,wBAAwB,GAAG;IACrC,UAAU,CAAC,EAAE,kBAAkB,GAAG,SAAS,CAAC;IAC5C,MAAM,CAAC,EAAE,kBAAkB,GAAG,SAAS,CAAC;IACxC,OAAO,CAAC,EAAE,kBAAkB,GAAG,SAAS,CAAC;IACzC,aAAa,CAAC,EAAE,kBAAkB,GAAG,SAAS,CAAC;IAC/C,WAAW,CAAC,EAAE,kBAAkB,GAAG,SAAS,CAAC;IAC7C,KAAK,CAAC,EAAE,kBAAkB,GAAG,SAAS,CAAC;IACvC,SAAS,CAAC,EAAE,kBAAkB,GAAG,SAAS,CAAC;IAC3C,WAAW,CAAC,EAAE,kBAAkB,GAAG,SAAS,CAAC;IAC7C,MAAM,CAAC,EAAE,kBAAkB,GAAG,SAAS,CAAC;IACxC,IAAI,CAAC,EAAE,kBAAkB,GAAG,SAAS,CAAC;IACtC,KAAK,CAAC,EAAE,kBAAkB,GAAG,SAAS,CAAC;CACxC,CAAC"}
@@ -0,0 +1,67 @@
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
+ export var DataCubeFunction;
17
+ (function (DataCubeFunction) {
18
+ // relation
19
+ DataCubeFunction["EXTEND"] = "meta::pure::functions::relation::extend";
20
+ DataCubeFunction["FILTER"] = "meta::pure::functions::relation::filter";
21
+ DataCubeFunction["GROUP_BY"] = "meta::pure::functions::relation::groupBy";
22
+ DataCubeFunction["LIMIT"] = "meta::pure::functions::relation::limit";
23
+ DataCubeFunction["PIVOT"] = "meta::pure::functions::relation::pivot";
24
+ // RENAME = 'meta::pure::functions::relation::rename',
25
+ DataCubeFunction["SELECT"] = "meta::pure::functions::relation::select";
26
+ DataCubeFunction["SLICE"] = "meta::pure::functions::relation::slice";
27
+ DataCubeFunction["SORT"] = "meta::pure::functions::relation::sort";
28
+ // generic
29
+ DataCubeFunction["CAST"] = "meta::pure::functions::lang::cast";
30
+ DataCubeFunction["FROM"] = "meta::pure::mapping::from";
31
+ // sort
32
+ DataCubeFunction["ASC"] = "meta::pure::functions::relation::ascending";
33
+ DataCubeFunction["DESC"] = "meta::pure::functions::relation::descending";
34
+ // filter
35
+ DataCubeFunction["AND"] = "meta::pure::functions::boolean::and";
36
+ DataCubeFunction["NOT"] = "meta::pure::functions::boolean::not";
37
+ DataCubeFunction["OR"] = "meta::pure::functions::boolean::or";
38
+ DataCubeFunction["CONTAINS"] = "meta::pure::functions::string::contains";
39
+ DataCubeFunction["ENDS_WITH"] = "meta::pure::functions::string::endsWith";
40
+ DataCubeFunction["EQUAL"] = "meta::pure::functions::boolean::equal";
41
+ DataCubeFunction["GREATER_THAN"] = "meta::pure::functions::boolean::greaterThan";
42
+ DataCubeFunction["GREATER_THAN_EQUAL"] = "meta::pure::functions::boolean::greaterThanEqual";
43
+ DataCubeFunction["IN"] = "meta::pure::functions::collection::in";
44
+ DataCubeFunction["IS_EMPTY"] = "meta::pure::functions::collection::isEmpty";
45
+ DataCubeFunction["LESS_THAN"] = "meta::pure::functions::boolean::lessThan";
46
+ DataCubeFunction["LESS_THAN_EQUAL"] = "meta::pure::functions::boolean::lessThanEqual";
47
+ DataCubeFunction["STARTS_WITH"] = "meta::pure::functions::string::startsWith";
48
+ // aggregate
49
+ DataCubeFunction["AVERAGE"] = "meta::pure::functions::math::average";
50
+ DataCubeFunction["COUNT"] = "meta::pure::functions::collection::count";
51
+ DataCubeFunction["DISTINCT"] = "meta::pure::functions::collection::distinct";
52
+ DataCubeFunction["FIRST"] = "meta::pure::functions::collection::first";
53
+ DataCubeFunction["JOIN_STRINGS"] = "meta::pure::functions::string::joinStrings";
54
+ DataCubeFunction["LAST"] = "meta::pure::functions::collection::last";
55
+ DataCubeFunction["MAX"] = "meta::pure::functions::collection::max";
56
+ DataCubeFunction["MIN"] = "meta::pure::functions::collection::min";
57
+ DataCubeFunction["SUM"] = "meta::pure::functions::math::sum";
58
+ DataCubeFunction["STD_DEV_POPULATION"] = "meta::pure::functions::math::stdDevPopulation";
59
+ DataCubeFunction["STD_DEV_SAMPLE"] = "meta::pure::functions::math::stdDevSample";
60
+ DataCubeFunction["UNIQUE_VALUE_ONLY"] = "meta::pure::functions::collection::uniqueValueOnly";
61
+ })(DataCubeFunction || (DataCubeFunction = {}));
62
+ export const DEFAULT_LAMBDA_VARIABLE_NAME = 'x';
63
+ export const PIVOT_COLUMN_NAME_VALUE_SEPARATOR = '__|__';
64
+ // NOTE: this is the column name used for the dummy count() aggregate
65
+ // when no aggregate is specified in groupBy() or pivot()
66
+ export const INTERNAL__FILLER_COUNT_AGG_COLUMN_NAME = 'INTERNAL__filler_count_agg_column';
67
+ //# sourceMappingURL=DataCubeQueryEngine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataCubeQueryEngine.js","sourceRoot":"","sources":["../../../../src/stores/dataCube/core/DataCubeQueryEngine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,MAAM,CAAN,IAAY,gBAiDX;AAjDD,WAAY,gBAAgB;IAC1B,WAAW;IACX,sEAAkD,CAAA;IAClD,sEAAkD,CAAA;IAClD,yEAAqD,CAAA;IACrD,oEAAgD,CAAA;IAChD,oEAAgD,CAAA;IAChD,sDAAsD;IACtD,sEAAkD,CAAA;IAClD,oEAAgD,CAAA;IAChD,kEAA8C,CAAA;IAE9C,UAAU;IACV,8DAA0C,CAAA;IAC1C,sDAAkC,CAAA;IAElC,OAAO;IACP,sEAAkD,CAAA;IAClD,wEAAoD,CAAA;IAEpD,SAAS;IACT,+DAA2C,CAAA;IAC3C,+DAA2C,CAAA;IAC3C,6DAAyC,CAAA;IAEzC,wEAAoD,CAAA;IACpD,yEAAqD,CAAA;IACrD,mEAA+C,CAAA;IAC/C,gFAA4D,CAAA;IAC5D,2FAAuE,CAAA;IACvE,gEAA4C,CAAA;IAC5C,2EAAuD,CAAA;IACvD,0EAAsD,CAAA;IACtD,qFAAiE,CAAA;IACjE,6EAAyD,CAAA;IAEzD,YAAY;IACZ,oEAAgD,CAAA;IAChD,sEAAkD,CAAA;IAClD,4EAAwD,CAAA;IACxD,sEAAkD,CAAA;IAClD,+EAA2D,CAAA;IAC3D,oEAAgD,CAAA;IAChD,kEAA8C,CAAA;IAC9C,kEAA8C,CAAA;IAC9C,4DAAwC,CAAA;IACxC,wFAAoE,CAAA;IACpE,gFAA4D,CAAA;IAC5D,4FAAwE,CAAA;AAC1E,CAAC,EAjDW,gBAAgB,KAAhB,gBAAgB,QAiD3B;AAED,MAAM,CAAC,MAAM,4BAA4B,GAAG,GAAG,CAAC;AAChD,MAAM,CAAC,MAAM,iCAAiC,GAAG,OAAO,CAAC;AAEzD,qEAAqE;AACrE,yDAAyD;AACzD,MAAM,CAAC,MAAM,sCAAsC,GACjD,mCAAmC,CAAC"}
@@ -16,67 +16,102 @@
16
16
  import type { V1_Lambda, V1_ValueSpecification } from '@finos/legend-graph';
17
17
  import type { DataCubeConfiguration } from '../../../server/models/DataCubeQuery.js';
18
18
  import { type PlainObject } from '@finos/legend-shared';
19
- import type { DATA_CUBE_AGGREGATE_FUNCTION, DATA_CUBE_COLUMN_SORT_DIRECTION, DATA_CUBE_FILTER_OPERATION } from '../DataCubeMetaModelConst.js';
20
- export type DataCubeQueryFilterCondition = DataCubeQuerySnapshotColumn & {
19
+ export declare enum DataCubeQuerySnapshotAggregateFunction {
20
+ AVERAGE = "average",
21
+ COUNT = "count",
22
+ DISTINCT = "distinct",
23
+ FIRST = "first",
24
+ JOIN_STRINGS = "joinStrings",
25
+ LAST = "last",
26
+ MAX = "max",
27
+ MIN = "min",
28
+ SUM = "sum",
29
+ STD_DEV_POPULATION = "stdDevPopulation",
30
+ STD_DEV_SAMPLE = "stdDevSample",
31
+ UNIQUE_VALUE_ONLY = "uniqueValueOnly"
32
+ }
33
+ export declare enum DataCubeQuerySnapshotFilterOperation {
34
+ EQUAL = "equal",
35
+ NOT_EQUAL = "notEqual",
36
+ GREATER_THAN = "greaterThan",
37
+ GREATER_THAN_OR_EQUAL = "greaterThanOrEqual",
38
+ LESS_THAN = "lessThan",
39
+ LESS_THAN_OR_EQUAL = "lessThanOrEqual",
40
+ BLANK = "isEmpty",
41
+ NOT_BLANK = "isNotEmpty",
42
+ CONTAINS = "contains",
43
+ NOT_CONTAINS = "notContains",
44
+ STARTS_WITH = "startsWith",
45
+ ENDS_WITH = "endsWith"
46
+ }
47
+ export declare enum DataCubeQuerySnapshotSortDirection {
48
+ ASCENDING = "ascending",
49
+ DESCENDING = "descending"
50
+ }
51
+ export declare enum DataCubeQueryFilterGroupOperation {
52
+ AND = "AND",
53
+ OR = "OR"
54
+ }
55
+ export type DataCubeQuerySnapshotFilterCondition = DataCubeQuerySnapshotColumn & {
21
56
  value: unknown;
22
- operation: DATA_CUBE_FILTER_OPERATION;
57
+ operation: DataCubeQuerySnapshotFilterOperation;
23
58
  };
24
- export type DataCubeQueryFilter = {
25
- groupOperation: string;
26
- conditions: (DataCubeQueryFilterCondition | DataCubeQueryFilter)[];
59
+ export type DataCubeQuerySnapshotFilter = {
60
+ groupOperation: DataCubeQueryFilterGroupOperation;
61
+ conditions: (DataCubeQuerySnapshotFilterCondition | DataCubeQuerySnapshotFilter)[];
27
62
  };
28
- export declare enum DataCubeQuerySnapshotColumnOrigin {
29
- SOURCE = 0,
30
- LEAF_EXTENDED = 1,
31
- RENAME = 2,
32
- GROUP_BY = 3,
33
- SELECT = 4,
34
- PIVOT = 5,
35
- GROUP_EXTENDED = 6
36
- }
37
63
  export type DataCubeQuerySnapshotColumn = {
38
64
  name: string;
39
65
  type: string;
40
66
  };
41
- export type DataCubeQuerySnapshotColumnWithOrigin = DataCubeQuerySnapshotColumn & {
42
- origin: DataCubeQuerySnapshotColumnOrigin;
43
- };
44
67
  export type DataCubeQuerySnapshotExtendedColumn = DataCubeQuerySnapshotColumn & {
45
68
  lambda: PlainObject<V1_Lambda>;
46
69
  code: string;
47
70
  };
48
- export type DataCubeQuerySnapshotRenamedColumn = DataCubeQuerySnapshotColumn & {
49
- oldName: string;
50
- };
51
71
  export type DataCubeQuerySnapshotSortColumn = DataCubeQuerySnapshotColumn & {
52
- direction: DATA_CUBE_COLUMN_SORT_DIRECTION;
72
+ direction: DataCubeQuerySnapshotSortDirection;
53
73
  };
54
74
  export type DataCubeQuerySnapshotAggregateColumn = DataCubeQuerySnapshotColumn & {
55
- function: DATA_CUBE_AGGREGATE_FUNCTION;
75
+ function: DataCubeQuerySnapshotAggregateFunction;
56
76
  };
57
- export type DataCubeQuerySnapshot = {
58
- readonly uuid: string;
77
+ export type DataCubeQuerySnapshotGroupBy = {
78
+ columns: DataCubeQuerySnapshotColumn[];
79
+ aggColumns: DataCubeQuerySnapshotAggregateColumn[];
80
+ };
81
+ export type DataCubeQuerySnapshotPivot = {
82
+ columns: DataCubeQuerySnapshotColumn[];
83
+ aggColumns: DataCubeQuerySnapshotAggregateColumn[];
84
+ castColumns: DataCubeQuerySnapshotColumn[];
85
+ };
86
+ export type DataCubeQuerySnapshotData = {
59
87
  name: string;
60
88
  runtime: string;
61
89
  sourceQuery: PlainObject<V1_ValueSpecification>;
62
90
  configuration: DataCubeConfiguration;
63
91
  originalColumns: DataCubeQuerySnapshotColumn[];
64
92
  leafExtendedColumns: DataCubeQuerySnapshotExtendedColumn[];
65
- filter?: DataCubeQueryFilter | undefined;
66
- renamedColumns: DataCubeQuerySnapshotRenamedColumn[];
67
- groupByColumns: DataCubeQuerySnapshotColumn[];
68
- groupByExpandedKeys: string[];
69
- groupByAggColumns: DataCubeQuerySnapshotAggregateColumn[];
70
- groupByFilter?: DataCubeQueryFilter | undefined;
71
- selectedColumns: DataCubeQuerySnapshotColumn[];
72
- pivotColumns: DataCubeQuerySnapshotColumn[];
73
- pivotAggColumns: DataCubeQuerySnapshotAggregateColumn[];
74
- castColumns: DataCubeQuerySnapshotColumn[];
93
+ filter?: DataCubeQuerySnapshotFilter | undefined;
94
+ groupBy?: DataCubeQuerySnapshotGroupBy | undefined;
95
+ pivot?: DataCubeQuerySnapshotPivot | undefined;
75
96
  groupExtendedColumns: DataCubeQuerySnapshotExtendedColumn[];
97
+ selectColumns: DataCubeQuerySnapshotColumn[];
76
98
  sortColumns: DataCubeQuerySnapshotSortColumn[];
77
99
  limit: number | undefined;
78
- columns: DataCubeQuerySnapshotColumnWithOrigin[];
79
100
  };
80
- export declare function createSnapshot(name: string, runtime: string, sourceQuery: PlainObject<V1_ValueSpecification>, configuration: DataCubeConfiguration): DataCubeQuerySnapshot;
81
- export declare function cloneSnapshot(snapshot: DataCubeQuerySnapshot): DataCubeQuerySnapshot;
101
+ type DataCubeQuerySnapshotStage = 'leaf-extend' | 'filter' | 'aggregation' | 'group-extend' | 'select' | 'sort';
102
+ export declare class DataCubeQuerySnapshot {
103
+ readonly uuid: string;
104
+ timestamp: number;
105
+ readonly data: DataCubeQuerySnapshotData;
106
+ private constructor();
107
+ static create(name: string, runtime: string, sourceQuery: PlainObject<V1_ValueSpecification>, configuration: DataCubeConfiguration): DataCubeQuerySnapshot;
108
+ clone(): DataCubeQuerySnapshot;
109
+ /**
110
+ * Get available columns at a certain stage of the query
111
+ */
112
+ stageCols(stage: DataCubeQuerySnapshotStage): DataCubeQuerySnapshotColumn[];
113
+ }
114
+ export declare function _findCol<T extends DataCubeQuerySnapshotColumn>(cols: T[] | undefined, name: string): T | undefined;
115
+ export declare function _getCol<T extends DataCubeQuerySnapshotColumn>(cols: T[] | undefined, name: string): T;
116
+ export {};
82
117
  //# sourceMappingURL=DataCubeQuerySnapshot.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DataCubeQuerySnapshot.d.ts","sourceRoot":"","sources":["../../../../src/stores/dataCube/core/DataCubeQuerySnapshot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AACrF,OAAO,EAAQ,KAAK,WAAW,EAAiB,MAAM,sBAAsB,CAAC;AAC7E,OAAO,KAAK,EACV,4BAA4B,EAC5B,+BAA+B,EAC/B,0BAA0B,EAC3B,MAAM,8BAA8B,CAAC;AA0EtC,MAAM,MAAM,4BAA4B,GAAG,2BAA2B,GAAG;IACvE,KAAK,EAAE,OAAO,CAAC;IACf,SAAS,EAAE,0BAA0B,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,CAAC,4BAA4B,GAAG,mBAAmB,CAAC,EAAE,CAAC;CACpE,CAAC;AAEF,oBAAY,iCAAiC;IAC3C,MAAM,IAAA;IACN,aAAa,IAAA;IACb,MAAM,IAAA;IACN,QAAQ,IAAA;IACR,MAAM,IAAA;IACN,KAAK,IAAA;IACL,cAAc,IAAA;CACf;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,qCAAqC,GAC/C,2BAA2B,GAAG;IAC5B,MAAM,EAAE,iCAAiC,CAAC;CAC3C,CAAC;AAEJ,MAAM,MAAM,mCAAmC,GAC7C,2BAA2B,GAAG;IAC5B,MAAM,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEJ,MAAM,MAAM,kCAAkC,GAAG,2BAA2B,GAAG;IAC7E,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,+BAA+B,GAAG,2BAA2B,GAAG;IAC1E,SAAS,EAAE,+BAA+B,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,oCAAoC,GAC9C,2BAA2B,GAAG;IAC5B,QAAQ,EAAE,4BAA4B,CAAC;CACxC,CAAC;AAEJ,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,WAAW,CAAC,qBAAqB,CAAC,CAAC;IAChD,aAAa,EAAE,qBAAqB,CAAC;IAErC,eAAe,EAAE,2BAA2B,EAAE,CAAC;IAC/C,mBAAmB,EAAE,mCAAmC,EAAE,CAAC;IAC3D,MAAM,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;IACzC,cAAc,EAAE,kCAAkC,EAAE,CAAC;IACrD,cAAc,EAAE,2BAA2B,EAAE,CAAC;IAC9C,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,iBAAiB,EAAE,oCAAoC,EAAE,CAAC;IAC1D,aAAa,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;IAChD,eAAe,EAAE,2BAA2B,EAAE,CAAC;IAC/C,YAAY,EAAE,2BAA2B,EAAE,CAAC;IAC5C,eAAe,EAAE,oCAAoC,EAAE,CAAC;IACxD,WAAW,EAAE,2BAA2B,EAAE,CAAC;IAC3C,oBAAoB,EAAE,mCAAmC,EAAE,CAAC;IAC5D,WAAW,EAAE,+BAA+B,EAAE,CAAC;IAC/C,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,OAAO,EAAE,qCAAqC,EAAE,CAAC;CAClD,CAAC;AAIF,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,WAAW,CAAC,qBAAqB,CAAC,EAC/C,aAAa,EAAE,qBAAqB,GACnC,qBAAqB,CAyBvB;AAED,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,qBAAqB,GAC9B,qBAAqB,CAIvB"}
1
+ {"version":3,"file":"DataCubeQuerySnapshot.d.ts","sourceRoot":"","sources":["../../../../src/stores/dataCube/core/DataCubeQuerySnapshot.ts"],"names":[],"mappings":"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"}
@@ -13,46 +13,107 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { uuid } from '@finos/legend-shared';
17
- export var DataCubeQuerySnapshotColumnOrigin;
18
- (function (DataCubeQuerySnapshotColumnOrigin) {
19
- DataCubeQuerySnapshotColumnOrigin[DataCubeQuerySnapshotColumnOrigin["SOURCE"] = 0] = "SOURCE";
20
- DataCubeQuerySnapshotColumnOrigin[DataCubeQuerySnapshotColumnOrigin["LEAF_EXTENDED"] = 1] = "LEAF_EXTENDED";
21
- DataCubeQuerySnapshotColumnOrigin[DataCubeQuerySnapshotColumnOrigin["RENAME"] = 2] = "RENAME";
22
- DataCubeQuerySnapshotColumnOrigin[DataCubeQuerySnapshotColumnOrigin["GROUP_BY"] = 3] = "GROUP_BY";
23
- DataCubeQuerySnapshotColumnOrigin[DataCubeQuerySnapshotColumnOrigin["SELECT"] = 4] = "SELECT";
24
- DataCubeQuerySnapshotColumnOrigin[DataCubeQuerySnapshotColumnOrigin["PIVOT"] = 5] = "PIVOT";
25
- DataCubeQuerySnapshotColumnOrigin[DataCubeQuerySnapshotColumnOrigin["GROUP_EXTENDED"] = 6] = "GROUP_EXTENDED";
26
- })(DataCubeQuerySnapshotColumnOrigin || (DataCubeQuerySnapshotColumnOrigin = {}));
27
- // ------------------------------------- UTILITIES -------------------------------------
28
- export function createSnapshot(name, runtime, sourceQuery, configuration) {
29
- return {
30
- uuid: uuid(),
31
- name,
32
- runtime,
33
- sourceQuery,
34
- configuration,
35
- originalColumns: [],
36
- leafExtendedColumns: [],
37
- filter: undefined,
38
- renamedColumns: [],
39
- groupByColumns: [],
40
- groupByExpandedKeys: [],
41
- groupByAggColumns: [],
42
- selectedColumns: [],
43
- pivotColumns: [],
44
- pivotAggColumns: [],
45
- castColumns: [],
46
- groupExtendedColumns: [],
47
- groupByFilter: undefined,
48
- sortColumns: [],
49
- limit: undefined,
50
- columns: [],
51
- };
16
+ import { IllegalStateError, guaranteeNonNullable, uuid, } from '@finos/legend-shared';
17
+ export var DataCubeQuerySnapshotAggregateFunction;
18
+ (function (DataCubeQuerySnapshotAggregateFunction) {
19
+ DataCubeQuerySnapshotAggregateFunction["AVERAGE"] = "average";
20
+ DataCubeQuerySnapshotAggregateFunction["COUNT"] = "count";
21
+ DataCubeQuerySnapshotAggregateFunction["DISTINCT"] = "distinct";
22
+ DataCubeQuerySnapshotAggregateFunction["FIRST"] = "first";
23
+ DataCubeQuerySnapshotAggregateFunction["JOIN_STRINGS"] = "joinStrings";
24
+ DataCubeQuerySnapshotAggregateFunction["LAST"] = "last";
25
+ DataCubeQuerySnapshotAggregateFunction["MAX"] = "max";
26
+ DataCubeQuerySnapshotAggregateFunction["MIN"] = "min";
27
+ DataCubeQuerySnapshotAggregateFunction["SUM"] = "sum";
28
+ DataCubeQuerySnapshotAggregateFunction["STD_DEV_POPULATION"] = "stdDevPopulation";
29
+ DataCubeQuerySnapshotAggregateFunction["STD_DEV_SAMPLE"] = "stdDevSample";
30
+ DataCubeQuerySnapshotAggregateFunction["UNIQUE_VALUE_ONLY"] = "uniqueValueOnly";
31
+ })(DataCubeQuerySnapshotAggregateFunction || (DataCubeQuerySnapshotAggregateFunction = {}));
32
+ export var DataCubeQuerySnapshotFilterOperation;
33
+ (function (DataCubeQuerySnapshotFilterOperation) {
34
+ DataCubeQuerySnapshotFilterOperation["EQUAL"] = "equal";
35
+ DataCubeQuerySnapshotFilterOperation["NOT_EQUAL"] = "notEqual";
36
+ DataCubeQuerySnapshotFilterOperation["GREATER_THAN"] = "greaterThan";
37
+ DataCubeQuerySnapshotFilterOperation["GREATER_THAN_OR_EQUAL"] = "greaterThanOrEqual";
38
+ DataCubeQuerySnapshotFilterOperation["LESS_THAN"] = "lessThan";
39
+ DataCubeQuerySnapshotFilterOperation["LESS_THAN_OR_EQUAL"] = "lessThanOrEqual";
40
+ DataCubeQuerySnapshotFilterOperation["BLANK"] = "isEmpty";
41
+ DataCubeQuerySnapshotFilterOperation["NOT_BLANK"] = "isNotEmpty";
42
+ DataCubeQuerySnapshotFilterOperation["CONTAINS"] = "contains";
43
+ DataCubeQuerySnapshotFilterOperation["NOT_CONTAINS"] = "notContains";
44
+ DataCubeQuerySnapshotFilterOperation["STARTS_WITH"] = "startsWith";
45
+ DataCubeQuerySnapshotFilterOperation["ENDS_WITH"] = "endsWith";
46
+ })(DataCubeQuerySnapshotFilterOperation || (DataCubeQuerySnapshotFilterOperation = {}));
47
+ export var DataCubeQuerySnapshotSortDirection;
48
+ (function (DataCubeQuerySnapshotSortDirection) {
49
+ DataCubeQuerySnapshotSortDirection["ASCENDING"] = "ascending";
50
+ DataCubeQuerySnapshotSortDirection["DESCENDING"] = "descending";
51
+ })(DataCubeQuerySnapshotSortDirection || (DataCubeQuerySnapshotSortDirection = {}));
52
+ export var DataCubeQueryFilterGroupOperation;
53
+ (function (DataCubeQueryFilterGroupOperation) {
54
+ DataCubeQueryFilterGroupOperation["AND"] = "AND";
55
+ DataCubeQueryFilterGroupOperation["OR"] = "OR";
56
+ })(DataCubeQueryFilterGroupOperation || (DataCubeQueryFilterGroupOperation = {}));
57
+ export class DataCubeQuerySnapshot {
58
+ uuid = uuid();
59
+ timestamp = Date.now();
60
+ data;
61
+ constructor(name, runtime, sourceQuery, configuration) {
62
+ this.data = {
63
+ name,
64
+ runtime,
65
+ sourceQuery,
66
+ configuration,
67
+ originalColumns: [],
68
+ leafExtendedColumns: [],
69
+ filter: undefined,
70
+ groupBy: undefined,
71
+ pivot: undefined,
72
+ groupExtendedColumns: [],
73
+ selectColumns: [],
74
+ sortColumns: [],
75
+ limit: undefined,
76
+ };
77
+ }
78
+ static create(name, runtime, sourceQuery, configuration) {
79
+ return new DataCubeQuerySnapshot(name, runtime, sourceQuery, configuration);
80
+ }
81
+ clone() {
82
+ const clone = new DataCubeQuerySnapshot('', '', {}, {});
83
+ clone.data = JSON.parse(JSON.stringify(this.data));
84
+ return clone;
85
+ }
86
+ /**
87
+ * Get available columns at a certain stage of the query
88
+ */
89
+ stageCols(stage) {
90
+ switch (stage) {
91
+ case 'leaf-extend':
92
+ return [...this.data.originalColumns];
93
+ case 'filter':
94
+ case 'aggregation':
95
+ return [...this.data.originalColumns, ...this.data.leafExtendedColumns];
96
+ case 'group-extend':
97
+ // TODO: @akphi - add pivot columns
98
+ return [...this.data.originalColumns, ...this.data.leafExtendedColumns];
99
+ case 'select':
100
+ // TODO: @akphi - add pivot columns
101
+ return [
102
+ ...this.data.originalColumns,
103
+ ...this.data.leafExtendedColumns,
104
+ ...this.data.groupExtendedColumns,
105
+ ];
106
+ case 'sort':
107
+ return [...this.data.selectColumns];
108
+ default:
109
+ throw new IllegalStateError(`Unknown stage '${stage}'`);
110
+ }
111
+ }
52
112
  }
53
- export function cloneSnapshot(snapshot) {
54
- const clone = JSON.parse(JSON.stringify(snapshot));
55
- clone.uuid = uuid();
56
- return clone;
113
+ export function _findCol(cols, name) {
114
+ return cols?.find((c) => c.name === name);
115
+ }
116
+ export function _getCol(cols, name) {
117
+ return guaranteeNonNullable(cols?.find((c) => c.name === name), `Can't find column '${name}'`);
57
118
  }
58
119
  //# sourceMappingURL=DataCubeQuerySnapshot.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DataCubeQuerySnapshot.js","sourceRoot":"","sources":["../../../../src/stores/dataCube/core/DataCubeQuerySnapshot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,EAAE,IAAI,EAAmC,MAAM,sBAAsB,CAAC;AAyF7E,MAAM,CAAN,IAAY,iCAQX;AARD,WAAY,iCAAiC;IAC3C,6FAAM,CAAA;IACN,2GAAa,CAAA;IACb,6FAAM,CAAA;IACN,iGAAQ,CAAA;IACR,6FAAM,CAAA;IACN,2FAAK,CAAA;IACL,6GAAc,CAAA;AAChB,CAAC,EARW,iCAAiC,KAAjC,iCAAiC,QAQ5C;AAwDD,wFAAwF;AAExF,MAAM,UAAU,cAAc,CAC5B,IAAY,EACZ,OAAe,EACf,WAA+C,EAC/C,aAAoC;IAEpC,OAAO;QACL,IAAI,EAAE,IAAI,EAAE;QACZ,IAAI;QACJ,OAAO;QACP,WAAW;QACX,aAAa;QAEb,eAAe,EAAE,EAAE;QACnB,mBAAmB,EAAE,EAAE;QACvB,MAAM,EAAE,SAAS;QACjB,cAAc,EAAE,EAAE;QAClB,cAAc,EAAE,EAAE;QAClB,mBAAmB,EAAE,EAAE;QACvB,iBAAiB,EAAE,EAAE;QACrB,eAAe,EAAE,EAAE;QACnB,YAAY,EAAE,EAAE;QAChB,eAAe,EAAE,EAAE;QACnB,WAAW,EAAE,EAAE;QACf,oBAAoB,EAAE,EAAE;QACxB,aAAa,EAAE,SAAS;QACxB,WAAW,EAAE,EAAE;QACf,KAAK,EAAE,SAAS;QAChB,OAAO,EAAE,EAAE;KACZ,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,QAA+B;IAE/B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAA0B,CAAC;IAC3E,KAAyC,CAAC,IAAI,GAAG,IAAI,EAAE,CAAC;IACzD,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"DataCubeQuerySnapshot.js","sourceRoot":"","sources":["../../../../src/stores/dataCube/core/DataCubeQuerySnapshot.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ /***************************************************************************************
17
+ * [CORE]
18
+ *
19
+ * These are utilities used to build the query snapshot from the executable query.
20
+ * This is needed when we initialize the application by loading a persisted query.
21
+ ***************************************************************************************/
22
+ import { type V1_ValueSpecification } from '@finos/legend-graph';
23
+ import type { DataCubeQuery } from '../../../server/models/DataCubeQuery.js';
24
+ import { DataCubeQuerySnapshot } from './DataCubeQuerySnapshot.js';
25
+ /**
26
+ * Analyze the partial query to build a query snapshot.
27
+ *
28
+ * Implementation-wise, this extracts the function call sequence, then walk the
29
+ * sequence in order to fill in the information for the snapshot.
30
+ */
31
+ export declare function validateAndBuildQuerySnapshot(partialQuery: V1_ValueSpecification, sourceQuery: V1_ValueSpecification, baseQuery: DataCubeQuery): DataCubeQuerySnapshot;
32
+ //# sourceMappingURL=DataCubeQuerySnapshotBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataCubeQuerySnapshotBuilder.d.ts","sourceRoot":"","sources":["../../../../src/stores/dataCube/core/DataCubeQuerySnapshotBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;;yFAKyF;AAEzF,OAAO,EAUL,KAAK,qBAAqB,EAC3B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EACL,qBAAqB,EAGtB,MAAM,4BAA4B,CAAC;AA2QpC;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,YAAY,EAAE,qBAAqB,EACnC,WAAW,EAAE,qBAAqB,EAClC,SAAS,EAAE,aAAa,yBAiFzB"}