@finos/legend-data-cube 0.0.10 → 0.0.12

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 (433) hide show
  1. package/lib/components/DataCube.d.ts +6 -1
  2. package/lib/components/DataCube.d.ts.map +1 -1
  3. package/lib/components/DataCube.js +35 -28
  4. package/lib/components/DataCube.js.map +1 -1
  5. package/lib/components/DataCubeProvider.d.ts +2 -10
  6. package/lib/components/DataCubeProvider.d.ts.map +1 -1
  7. package/lib/components/DataCubeProvider.js +3 -15
  8. package/lib/components/DataCubeProvider.js.map +1 -1
  9. package/lib/components/DataCubeView.d.ts +22 -0
  10. package/lib/components/DataCubeView.d.ts.map +1 -0
  11. package/lib/components/DataCubeView.js +34 -0
  12. package/lib/components/DataCubeView.js.map +1 -0
  13. package/lib/components/core/DataCubeAlert.d.ts.map +1 -1
  14. package/lib/components/core/DataCubeAlert.js +2 -4
  15. package/lib/components/core/DataCubeAlert.js.map +1 -1
  16. package/lib/components/core/DataCubeDocumentationPanel.d.ts.map +1 -1
  17. package/lib/components/core/DataCubeDocumentationPanel.js +1 -2
  18. package/lib/components/core/DataCubeDocumentationPanel.js.map +1 -1
  19. package/lib/components/core/DataCubeFormUtils.d.ts.map +1 -1
  20. package/lib/components/core/DataCubeFormUtils.js +7 -7
  21. package/lib/components/core/DataCubeFormUtils.js.map +1 -1
  22. package/lib/components/core/DataCubePureCodeEditorUtils.d.ts +3 -3
  23. package/lib/components/core/DataCubePureCodeEditorUtils.d.ts.map +1 -1
  24. package/lib/components/core/DataCubePureCodeEditorUtils.js +2 -2
  25. package/lib/components/core/DataCubePureCodeEditorUtils.js.map +1 -1
  26. package/lib/components/core/DataCubeSettingsPanel.d.ts.map +1 -1
  27. package/lib/components/core/DataCubeSettingsPanel.js +16 -16
  28. package/lib/components/core/DataCubeSettingsPanel.js.map +1 -1
  29. package/lib/components/view/editor/DataCubeEditor.js +3 -3
  30. package/lib/components/view/editor/DataCubeEditor.js.map +1 -1
  31. package/lib/components/view/editor/DataCubeEditorColumnPropertiesPanel.js +1 -1
  32. package/lib/components/view/editor/DataCubeEditorGeneralPropertiesPanel.js +2 -2
  33. package/lib/components/view/editor/DataCubeEditorGeneralPropertiesPanel.js.map +1 -1
  34. package/lib/components/view/extend/DataCubeColumnEditor.js +7 -7
  35. package/lib/components/view/extend/DataCubeColumnEditor.js.map +1 -1
  36. package/lib/components/view/grid/DataCubeGrid.d.ts.map +1 -1
  37. package/lib/components/view/grid/DataCubeGrid.js +12 -6
  38. package/lib/components/view/grid/DataCubeGrid.js.map +1 -1
  39. package/lib/index.css +1 -1
  40. package/lib/index.d.ts +6 -3
  41. package/lib/index.d.ts.map +1 -1
  42. package/lib/index.js +6 -3
  43. package/lib/index.js.map +1 -1
  44. package/lib/package.json +4 -4
  45. package/lib/stores/DataCubeAPI.d.ts +21 -0
  46. package/lib/stores/DataCubeAPI.d.ts.map +1 -0
  47. package/lib/stores/DataCubeAPI.js +17 -0
  48. package/lib/stores/DataCubeAPI.js.map +1 -0
  49. package/lib/stores/DataCubeOptions.d.ts +27 -0
  50. package/lib/stores/DataCubeOptions.d.ts.map +1 -0
  51. package/lib/stores/DataCubeOptions.js +17 -0
  52. package/lib/stores/DataCubeOptions.js.map +1 -0
  53. package/lib/stores/DataCubeSettings.d.ts +42 -0
  54. package/lib/stores/DataCubeSettings.d.ts.map +1 -0
  55. package/lib/stores/DataCubeSettings.js +76 -0
  56. package/lib/stores/DataCubeSettings.js.map +1 -0
  57. package/lib/stores/DataCubeState.d.ts +20 -6
  58. package/lib/stores/DataCubeState.d.ts.map +1 -1
  59. package/lib/stores/DataCubeState.js +61 -16
  60. package/lib/stores/DataCubeState.js.map +1 -1
  61. package/lib/stores/core/DataCubeConfigurationBuilder.d.ts +4 -9
  62. package/lib/stores/core/DataCubeConfigurationBuilder.d.ts.map +1 -1
  63. package/lib/stores/core/DataCubeConfigurationBuilder.js +1 -1
  64. package/lib/stores/core/DataCubeConfigurationBuilder.js.map +1 -1
  65. package/lib/stores/core/DataCubeEngine.d.ts +109 -88
  66. package/lib/stores/core/DataCubeEngine.d.ts.map +1 -1
  67. package/lib/stores/core/DataCubeEngine.js +166 -123
  68. package/lib/stores/core/DataCubeEngine.js.map +1 -1
  69. package/lib/stores/core/DataCubeQueryBuilder.d.ts +5 -5
  70. package/lib/stores/core/DataCubeQueryBuilder.d.ts.map +1 -1
  71. package/lib/stores/core/DataCubeQueryBuilder.js +13 -18
  72. package/lib/stores/core/DataCubeQueryBuilder.js.map +1 -1
  73. package/lib/stores/core/DataCubeQueryBuilderUtils.d.ts +7 -6
  74. package/lib/stores/core/DataCubeQueryBuilderUtils.d.ts.map +1 -1
  75. package/lib/stores/core/DataCubeQueryBuilderUtils.js +2 -1
  76. package/lib/stores/core/DataCubeQueryBuilderUtils.js.map +1 -1
  77. package/lib/stores/core/DataCubeQuerySnapshot.d.ts +12 -36
  78. package/lib/stores/core/DataCubeQuerySnapshot.d.ts.map +1 -1
  79. package/lib/stores/core/DataCubeQuerySnapshot.js +5 -26
  80. package/lib/stores/core/DataCubeQuerySnapshot.js.map +1 -1
  81. package/lib/stores/core/DataCubeQuerySnapshotBuilder.d.ts +4 -3
  82. package/lib/stores/core/DataCubeQuerySnapshotBuilder.d.ts.map +1 -1
  83. package/lib/stores/core/DataCubeQuerySnapshotBuilder.js +9 -8
  84. package/lib/stores/core/DataCubeQuerySnapshotBuilder.js.map +1 -1
  85. package/lib/stores/core/DataCubeQuerySnapshotBuilderUtils.d.ts +2 -2
  86. package/lib/stores/core/DataCubeQuerySnapshotBuilderUtils.d.ts.map +1 -1
  87. package/lib/stores/core/DataCubeQuerySnapshotBuilderUtils.js +1 -1
  88. package/lib/stores/core/DataCubeQuerySnapshotBuilderUtils.js.map +1 -1
  89. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation.d.ts +3 -3
  90. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation.d.ts.map +1 -1
  91. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Average.d.ts +3 -3
  92. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Average.d.ts.map +1 -1
  93. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Average.js.map +1 -1
  94. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Count.d.ts +3 -3
  95. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Count.d.ts.map +1 -1
  96. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Count.js.map +1 -1
  97. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__First.d.ts +3 -3
  98. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__First.d.ts.map +1 -1
  99. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__First.js.map +1 -1
  100. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__JoinStrings.d.ts +3 -3
  101. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__JoinStrings.d.ts.map +1 -1
  102. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__JoinStrings.js.map +1 -1
  103. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Last.d.ts +3 -3
  104. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Last.d.ts.map +1 -1
  105. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Last.js.map +1 -1
  106. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Max.d.ts +3 -3
  107. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Max.d.ts.map +1 -1
  108. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Max.js.map +1 -1
  109. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Min.d.ts +3 -3
  110. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Min.d.ts.map +1 -1
  111. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Min.js.map +1 -1
  112. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevPopulation.d.ts +3 -3
  113. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevPopulation.d.ts.map +1 -1
  114. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevPopulation.js.map +1 -1
  115. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevSample.d.ts +3 -3
  116. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevSample.d.ts.map +1 -1
  117. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevSample.js.map +1 -1
  118. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Sum.d.ts +3 -3
  119. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Sum.d.ts.map +1 -1
  120. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Sum.js.map +1 -1
  121. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__UniqueValue.d.ts +3 -3
  122. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__UniqueValue.d.ts.map +1 -1
  123. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__UniqueValue.js.map +1 -1
  124. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VariancePopulation.d.ts +3 -3
  125. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VariancePopulation.d.ts.map +1 -1
  126. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VariancePopulation.js.map +1 -1
  127. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VarianceSample.d.ts +3 -3
  128. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VarianceSample.d.ts.map +1 -1
  129. package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VarianceSample.js.map +1 -1
  130. package/lib/stores/core/filter/DataCubeQueryFilterEditorState.d.ts +5 -4
  131. package/lib/stores/core/filter/DataCubeQueryFilterEditorState.d.ts.map +1 -1
  132. package/lib/stores/core/filter/DataCubeQueryFilterEditorState.js.map +1 -1
  133. package/lib/stores/core/filter/DataCubeQueryFilterOperation.d.ts +4 -3
  134. package/lib/stores/core/filter/DataCubeQueryFilterOperation.d.ts.map +1 -1
  135. package/lib/stores/core/filter/DataCubeQueryFilterOperation.js.map +1 -1
  136. package/lib/stores/core/filter/DataCubeQueryFilterOperation__Contain.d.ts +4 -3
  137. package/lib/stores/core/filter/DataCubeQueryFilterOperation__Contain.d.ts.map +1 -1
  138. package/lib/stores/core/filter/DataCubeQueryFilterOperation__Contain.js.map +1 -1
  139. package/lib/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.d.ts +4 -3
  140. package/lib/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.d.ts.map +1 -1
  141. package/lib/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.js.map +1 -1
  142. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWith.d.ts +4 -3
  143. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWith.d.ts.map +1 -1
  144. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWith.js.map +1 -1
  145. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.d.ts +4 -3
  146. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.d.ts.map +1 -1
  147. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.js.map +1 -1
  148. package/lib/stores/core/filter/DataCubeQueryFilterOperation__Equal.d.ts +4 -3
  149. package/lib/stores/core/filter/DataCubeQueryFilterOperation__Equal.d.ts.map +1 -1
  150. package/lib/stores/core/filter/DataCubeQueryFilterOperation__Equal.js.map +1 -1
  151. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.d.ts +4 -3
  152. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.d.ts.map +1 -1
  153. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.js.map +1 -1
  154. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.d.ts +4 -3
  155. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.d.ts.map +1 -1
  156. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.js.map +1 -1
  157. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.d.ts +4 -3
  158. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.d.ts.map +1 -1
  159. package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.js.map +1 -1
  160. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.d.ts +4 -3
  161. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.d.ts.map +1 -1
  162. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.js.map +1 -1
  163. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.d.ts +4 -3
  164. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.d.ts.map +1 -1
  165. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.js.map +1 -1
  166. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.d.ts +4 -3
  167. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.d.ts.map +1 -1
  168. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.js.map +1 -1
  169. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.d.ts +4 -3
  170. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.d.ts.map +1 -1
  171. package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.js.map +1 -1
  172. package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.d.ts +4 -3
  173. package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.d.ts.map +1 -1
  174. package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.js.map +1 -1
  175. package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNull.d.ts +4 -3
  176. package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNull.d.ts.map +1 -1
  177. package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNull.js.map +1 -1
  178. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThan.d.ts +4 -3
  179. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThan.d.ts.map +1 -1
  180. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThan.js.map +1 -1
  181. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.d.ts +4 -3
  182. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.d.ts.map +1 -1
  183. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.js.map +1 -1
  184. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.d.ts +4 -3
  185. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.d.ts.map +1 -1
  186. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.js.map +1 -1
  187. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.d.ts +4 -3
  188. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.d.ts.map +1 -1
  189. package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.js.map +1 -1
  190. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotContain.d.ts +4 -3
  191. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotContain.d.ts.map +1 -1
  192. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotContain.js.map +1 -1
  193. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.d.ts +4 -3
  194. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.d.ts.map +1 -1
  195. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.js.map +1 -1
  196. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.d.ts +4 -3
  197. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.d.ts.map +1 -1
  198. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.js.map +1 -1
  199. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.d.ts +4 -3
  200. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.d.ts.map +1 -1
  201. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.js.map +1 -1
  202. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.d.ts +4 -3
  203. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.d.ts.map +1 -1
  204. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.js.map +1 -1
  205. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.d.ts +4 -3
  206. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.d.ts.map +1 -1
  207. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.js.map +1 -1
  208. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.d.ts +4 -3
  209. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.d.ts.map +1 -1
  210. package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.js.map +1 -1
  211. package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWith.d.ts +4 -3
  212. package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWith.d.ts.map +1 -1
  213. package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWith.js.map +1 -1
  214. package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.d.ts +4 -3
  215. package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.d.ts.map +1 -1
  216. package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.js.map +1 -1
  217. package/lib/stores/core/models/DataCubeColumn.d.ts +30 -0
  218. package/lib/stores/core/models/DataCubeColumn.d.ts.map +1 -0
  219. package/lib/stores/core/models/DataCubeColumn.js +23 -0
  220. package/lib/stores/core/models/DataCubeColumn.js.map +1 -0
  221. package/lib/stores/core/{DataCubeConfiguration.d.ts → models/DataCubeConfiguration.d.ts} +3 -2
  222. package/lib/stores/core/models/DataCubeConfiguration.d.ts.map +1 -0
  223. package/lib/stores/core/{DataCubeConfiguration.js → models/DataCubeConfiguration.js} +3 -1
  224. package/lib/stores/core/models/DataCubeConfiguration.js.map +1 -0
  225. package/lib/stores/core/{DataCubeQuery.d.ts → models/DataCubeQuery.d.ts} +1 -18
  226. package/lib/stores/core/models/DataCubeQuery.d.ts.map +1 -0
  227. package/lib/stores/core/models/DataCubeQuery.js +30 -0
  228. package/lib/stores/core/models/DataCubeQuery.js.map +1 -0
  229. package/lib/stores/core/models/DataCubeSource.d.ts +24 -0
  230. package/lib/stores/core/models/DataCubeSource.d.ts.map +1 -0
  231. package/lib/stores/core/models/DataCubeSource.js +22 -0
  232. package/lib/stores/core/models/DataCubeSource.js.map +1 -0
  233. package/lib/stores/view/DataCubeInfoState.d.ts +0 -4
  234. package/lib/stores/view/DataCubeInfoState.d.ts.map +1 -1
  235. package/lib/stores/view/DataCubeInfoState.js +10 -13
  236. package/lib/stores/view/DataCubeInfoState.js.map +1 -1
  237. package/lib/stores/view/DataCubeQuerySnapshotManager.d.ts +1 -1
  238. package/lib/stores/view/DataCubeQuerySnapshotManager.d.ts.map +1 -1
  239. package/lib/stores/view/DataCubeQuerySnapshotManager.js +4 -4
  240. package/lib/stores/view/DataCubeQuerySnapshotManager.js.map +1 -1
  241. package/lib/stores/view/DataCubeViewState.d.ts +5 -4
  242. package/lib/stores/view/DataCubeViewState.d.ts.map +1 -1
  243. package/lib/stores/view/DataCubeViewState.js +25 -10
  244. package/lib/stores/view/DataCubeViewState.js.map +1 -1
  245. package/lib/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.d.ts +1 -1
  246. package/lib/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.d.ts.map +1 -1
  247. package/lib/stores/view/editor/DataCubeEditorColumnSelectorState.js +1 -1
  248. package/lib/stores/view/editor/DataCubeEditorColumnsPanelState.d.ts +1 -1
  249. package/lib/stores/view/editor/DataCubeEditorColumnsPanelState.d.ts.map +1 -1
  250. package/lib/stores/view/editor/DataCubeEditorColumnsPanelState.js +3 -2
  251. package/lib/stores/view/editor/DataCubeEditorColumnsPanelState.js.map +1 -1
  252. package/lib/stores/view/editor/DataCubeEditorGeneralPropertiesPanelState.d.ts +1 -3
  253. package/lib/stores/view/editor/DataCubeEditorGeneralPropertiesPanelState.d.ts.map +1 -1
  254. package/lib/stores/view/editor/DataCubeEditorGeneralPropertiesPanelState.js +0 -8
  255. package/lib/stores/view/editor/DataCubeEditorGeneralPropertiesPanelState.js.map +1 -1
  256. package/lib/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.d.ts +6 -5
  257. package/lib/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.d.ts.map +1 -1
  258. package/lib/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.js +2 -1
  259. package/lib/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.js.map +1 -1
  260. package/lib/stores/view/editor/DataCubeEditorMutableConfiguration.d.ts +2 -1
  261. package/lib/stores/view/editor/DataCubeEditorMutableConfiguration.d.ts.map +1 -1
  262. package/lib/stores/view/editor/DataCubeEditorMutableConfiguration.js +6 -1
  263. package/lib/stores/view/editor/DataCubeEditorMutableConfiguration.js.map +1 -1
  264. package/lib/stores/view/editor/DataCubeEditorPanelState.d.ts +1 -1
  265. package/lib/stores/view/editor/DataCubeEditorPanelState.d.ts.map +1 -1
  266. package/lib/stores/view/editor/DataCubeEditorPivotLayoutPanelState.d.ts +1 -1
  267. package/lib/stores/view/editor/DataCubeEditorPivotLayoutPanelState.d.ts.map +1 -1
  268. package/lib/stores/view/editor/DataCubeEditorSortsPanelState.d.ts +1 -1
  269. package/lib/stores/view/editor/DataCubeEditorSortsPanelState.d.ts.map +1 -1
  270. package/lib/stores/view/editor/DataCubeEditorSortsPanelState.js +2 -1
  271. package/lib/stores/view/editor/DataCubeEditorSortsPanelState.js.map +1 -1
  272. package/lib/stores/view/editor/DataCubeEditorState.d.ts +4 -3
  273. package/lib/stores/view/editor/DataCubeEditorState.d.ts.map +1 -1
  274. package/lib/stores/view/editor/DataCubeEditorState.js +9 -8
  275. package/lib/stores/view/editor/DataCubeEditorState.js.map +1 -1
  276. package/lib/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.d.ts +1 -1
  277. package/lib/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.d.ts.map +1 -1
  278. package/lib/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.js +2 -1
  279. package/lib/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.js.map +1 -1
  280. package/lib/stores/view/extend/DataCubeColumnEditorState.d.ts +3 -3
  281. package/lib/stores/view/extend/DataCubeColumnEditorState.d.ts.map +1 -1
  282. package/lib/stores/view/extend/DataCubeColumnEditorState.js +17 -15
  283. package/lib/stores/view/extend/DataCubeColumnEditorState.js.map +1 -1
  284. package/lib/stores/view/extend/DataCubeExtendManagerState.d.ts +6 -5
  285. package/lib/stores/view/extend/DataCubeExtendManagerState.d.ts.map +1 -1
  286. package/lib/stores/view/extend/DataCubeExtendManagerState.js +10 -9
  287. package/lib/stores/view/extend/DataCubeExtendManagerState.js.map +1 -1
  288. package/lib/stores/view/filter/DataCubeFilterEditorState.d.ts +1 -1
  289. package/lib/stores/view/filter/DataCubeFilterEditorState.d.ts.map +1 -1
  290. package/lib/stores/view/filter/DataCubeFilterEditorState.js +2 -2
  291. package/lib/stores/view/filter/DataCubeFilterEditorState.js.map +1 -1
  292. package/lib/stores/view/grid/DataCubeGridClientEngine.d.ts +1 -1
  293. package/lib/stores/view/grid/DataCubeGridClientEngine.d.ts.map +1 -1
  294. package/lib/stores/view/grid/DataCubeGridClientEngine.js +24 -23
  295. package/lib/stores/view/grid/DataCubeGridClientEngine.js.map +1 -1
  296. package/lib/stores/view/grid/DataCubeGridClientExportEngine.js +1 -1
  297. package/lib/stores/view/grid/DataCubeGridClientExportEngine.js.map +1 -1
  298. package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.d.ts +1 -1
  299. package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.d.ts.map +1 -1
  300. package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.js +2 -1
  301. package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.js.map +1 -1
  302. package/lib/stores/view/grid/DataCubeGridControllerState.d.ts +13 -12
  303. package/lib/stores/view/grid/DataCubeGridControllerState.d.ts.map +1 -1
  304. package/lib/stores/view/grid/DataCubeGridControllerState.js +3 -2
  305. package/lib/stores/view/grid/DataCubeGridControllerState.js.map +1 -1
  306. package/lib/stores/view/grid/DataCubeGridMenuBuilder.js +7 -7
  307. package/lib/stores/view/grid/DataCubeGridMenuBuilder.js.map +1 -1
  308. package/lib/stores/view/grid/DataCubeGridQueryBuilder.d.ts +1 -1
  309. package/lib/stores/view/grid/DataCubeGridQueryBuilder.d.ts.map +1 -1
  310. package/lib/stores/view/grid/DataCubeGridQuerySnapshotBuilder.d.ts +2 -2
  311. package/lib/stores/view/grid/DataCubeGridQuerySnapshotBuilder.d.ts.map +1 -1
  312. package/lib/stores/view/grid/DataCubeGridQuerySnapshotBuilder.js +3 -2
  313. package/lib/stores/view/grid/DataCubeGridQuerySnapshotBuilder.js.map +1 -1
  314. package/lib/stores/view/grid/DataCubeGridState.d.ts +1 -1
  315. package/lib/stores/view/grid/DataCubeGridState.d.ts.map +1 -1
  316. package/lib/stores/view/grid/DataCubeGridState.js +4 -4
  317. package/lib/stores/view/grid/DataCubeGridState.js.map +1 -1
  318. package/package.json +9 -9
  319. package/src/components/DataCube.tsx +48 -65
  320. package/src/components/DataCubeProvider.tsx +3 -31
  321. package/src/components/DataCubeView.tsx +74 -0
  322. package/src/components/core/DataCubeAlert.tsx +2 -4
  323. package/src/components/core/DataCubeDocumentationPanel.tsx +1 -2
  324. package/src/components/core/DataCubeFormUtils.tsx +7 -8
  325. package/src/components/core/DataCubePureCodeEditorUtils.tsx +7 -8
  326. package/src/components/core/DataCubeSettingsPanel.tsx +30 -22
  327. package/src/components/view/editor/DataCubeEditor.tsx +3 -3
  328. package/src/components/view/editor/DataCubeEditorColumnPropertiesPanel.tsx +1 -1
  329. package/src/components/view/editor/DataCubeEditorGeneralPropertiesPanel.tsx +2 -2
  330. package/src/components/view/extend/DataCubeColumnEditor.tsx +7 -7
  331. package/src/components/view/grid/DataCubeGrid.tsx +13 -7
  332. package/src/index.tsx +8 -4
  333. package/src/stores/DataCubeAPI.ts +22 -0
  334. package/src/stores/DataCubeOptions.ts +34 -0
  335. package/src/stores/DataCubeSettings.ts +107 -0
  336. package/src/stores/DataCubeState.tsx +92 -21
  337. package/src/stores/core/DataCubeConfigurationBuilder.ts +6 -6
  338. package/src/stores/core/DataCubeEngine.tsx +459 -0
  339. package/src/stores/core/DataCubeQueryBuilder.ts +17 -31
  340. package/src/stores/core/DataCubeQueryBuilderUtils.ts +6 -9
  341. package/src/stores/core/DataCubeQuerySnapshot.ts +23 -87
  342. package/src/stores/core/DataCubeQuerySnapshotBuilder.ts +11 -20
  343. package/src/stores/core/DataCubeQuerySnapshotBuilderUtils.ts +3 -3
  344. package/src/stores/core/aggregation/DataCubeQueryAggregateOperation.ts +3 -3
  345. package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Average.tsx +3 -3
  346. package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Count.tsx +3 -3
  347. package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__First.tsx +3 -3
  348. package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__JoinStrings.tsx +3 -3
  349. package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Last.tsx +3 -3
  350. package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Max.tsx +3 -3
  351. package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Min.tsx +3 -3
  352. package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevPopulation.tsx +3 -3
  353. package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevSample.tsx +3 -3
  354. package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Sum.tsx +3 -3
  355. package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__UniqueValue.tsx +3 -3
  356. package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__VariancePopulation.tsx +3 -3
  357. package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__VarianceSample.tsx +3 -3
  358. package/src/stores/core/filter/DataCubeQueryFilterEditorState.ts +4 -4
  359. package/src/stores/core/filter/DataCubeQueryFilterOperation.ts +4 -6
  360. package/src/stores/core/filter/DataCubeQueryFilterOperation__Contain.tsx +4 -6
  361. package/src/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.tsx +4 -6
  362. package/src/stores/core/filter/DataCubeQueryFilterOperation__EndWith.tsx +4 -6
  363. package/src/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.tsx +4 -6
  364. package/src/stores/core/filter/DataCubeQueryFilterOperation__Equal.tsx +4 -6
  365. package/src/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.tsx +4 -6
  366. package/src/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.tsx +4 -6
  367. package/src/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.tsx +4 -6
  368. package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.tsx +4 -6
  369. package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.tsx +4 -6
  370. package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.tsx +4 -6
  371. package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.tsx +4 -6
  372. package/src/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.tsx +4 -6
  373. package/src/stores/core/filter/DataCubeQueryFilterOperation__IsNull.tsx +4 -6
  374. package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThan.tsx +4 -6
  375. package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.tsx +4 -6
  376. package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.tsx +4 -6
  377. package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.tsx +4 -6
  378. package/src/stores/core/filter/DataCubeQueryFilterOperation__NotContain.tsx +4 -6
  379. package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.tsx +4 -6
  380. package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.tsx +4 -6
  381. package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.tsx +4 -6
  382. package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.tsx +4 -6
  383. package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.tsx +4 -6
  384. package/src/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.tsx +4 -6
  385. package/src/stores/core/filter/DataCubeQueryFilterOperation__StartWith.tsx +4 -6
  386. package/src/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.tsx +4 -6
  387. package/src/stores/core/models/DataCubeColumn.ts +34 -0
  388. package/src/stores/core/{DataCubeConfiguration.ts → models/DataCubeConfiguration.ts} +4 -1
  389. package/src/stores/core/models/DataCubeQuery.ts +41 -0
  390. package/src/stores/core/models/DataCubeSource.ts +25 -0
  391. package/src/stores/view/DataCubeInfoState.ts +16 -18
  392. package/src/stores/view/DataCubeQuerySnapshotManager.ts +5 -5
  393. package/src/stores/view/DataCubeViewState.ts +40 -13
  394. package/src/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.ts +1 -1
  395. package/src/stores/view/editor/DataCubeEditorColumnSelectorState.ts +1 -1
  396. package/src/stores/view/editor/DataCubeEditorColumnsPanelState.ts +3 -5
  397. package/src/stores/view/editor/DataCubeEditorGeneralPropertiesPanelState.ts +1 -11
  398. package/src/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.ts +7 -7
  399. package/src/stores/view/editor/DataCubeEditorMutableConfiguration.ts +8 -1
  400. package/src/stores/view/editor/DataCubeEditorPanelState.ts +1 -1
  401. package/src/stores/view/editor/DataCubeEditorPivotLayoutPanelState.ts +1 -1
  402. package/src/stores/view/editor/DataCubeEditorSortsPanelState.ts +3 -5
  403. package/src/stores/view/editor/DataCubeEditorState.tsx +13 -10
  404. package/src/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.ts +3 -5
  405. package/src/stores/view/extend/DataCubeColumnEditorState.tsx +27 -19
  406. package/src/stores/view/extend/DataCubeExtendManagerState.tsx +17 -13
  407. package/src/stores/view/filter/DataCubeFilterEditorState.tsx +2 -2
  408. package/src/stores/view/grid/DataCubeGridClientEngine.ts +47 -42
  409. package/src/stores/view/grid/DataCubeGridClientExportEngine.ts +1 -1
  410. package/src/stores/view/grid/DataCubeGridConfigurationBuilder.tsx +6 -6
  411. package/src/stores/view/grid/DataCubeGridControllerState.ts +11 -9
  412. package/src/stores/view/grid/DataCubeGridMenuBuilder.tsx +8 -8
  413. package/src/stores/view/grid/DataCubeGridQueryBuilder.ts +1 -1
  414. package/src/stores/view/grid/DataCubeGridQuerySnapshotBuilder.ts +3 -5
  415. package/src/stores/view/grid/DataCubeGridState.ts +4 -4
  416. package/tsconfig.json +9 -5
  417. package/lib/stores/core/DataCubeApplicationEngine.d.ts +0 -63
  418. package/lib/stores/core/DataCubeApplicationEngine.d.ts.map +0 -1
  419. package/lib/stores/core/DataCubeApplicationEngine.js +0 -94
  420. package/lib/stores/core/DataCubeApplicationEngine.js.map +0 -1
  421. package/lib/stores/core/DataCubeConfiguration.d.ts.map +0 -1
  422. package/lib/stores/core/DataCubeConfiguration.js.map +0 -1
  423. package/lib/stores/core/DataCubeEngineUtils.d.ts +0 -2
  424. package/lib/stores/core/DataCubeEngineUtils.d.ts.map +0 -1
  425. package/lib/stores/core/DataCubeEngineUtils.js +0 -2
  426. package/lib/stores/core/DataCubeEngineUtils.js.map +0 -1
  427. package/lib/stores/core/DataCubeQuery.d.ts.map +0 -1
  428. package/lib/stores/core/DataCubeQuery.js +0 -79
  429. package/lib/stores/core/DataCubeQuery.js.map +0 -1
  430. package/src/stores/core/DataCubeApplicationEngine.tsx +0 -200
  431. package/src/stores/core/DataCubeEngine.ts +0 -327
  432. package/src/stores/core/DataCubeEngineUtils.ts +0 -0
  433. package/src/stores/core/DataCubeQuery.ts +0 -130
@@ -28,7 +28,7 @@ import type { DataCubeViewState } from '../../../stores/view/DataCubeViewState.j
28
28
  export const DataCubeEditor = observer((props: { view: DataCubeViewState }) => {
29
29
  const { view } = props;
30
30
  const editor = view.editor;
31
- const application = view.application;
31
+ const engine = view.engine;
32
32
  const selectedTab = editor.currentTab;
33
33
  const tabs = [
34
34
  DataCubeEditorTab.COLUMNS,
@@ -86,7 +86,7 @@ export const DataCubeEditor = observer((props: { view: DataCubeViewState }) => {
86
86
  onClick={() => {
87
87
  editor
88
88
  .applyChanges({ closeAfterApply: true })
89
- .catch((error) => application.alertUnhandledError(error));
89
+ .catch((error) => engine.alertUnhandledError(error));
90
90
  }}
91
91
  >
92
92
  OK
@@ -103,7 +103,7 @@ export const DataCubeEditor = observer((props: { view: DataCubeViewState }) => {
103
103
  onClick={() => {
104
104
  editor
105
105
  .applyChanges()
106
- .catch((error) => application.alertUnhandledError(error));
106
+ .catch((error) => engine.alertUnhandledError(error));
107
107
  }}
108
108
  >
109
109
  Apply
@@ -45,7 +45,7 @@ import {
45
45
  } from '../../../stores/core/DataCubeQueryEngine.js';
46
46
  import { DocumentationKey } from '../../../__lib__/DataCubeDocumentation.js';
47
47
  import type { DataCubeViewState } from '../../../stores/view/DataCubeViewState.js';
48
- import { _sortByColName } from '../../../stores/core/DataCubeQuerySnapshot.js';
48
+ import { _sortByColName } from '../../../stores/core/models/DataCubeColumn.js';
49
49
 
50
50
  export const DataCubeEditorColumnPropertiesPanel = observer(
51
51
  (props: { view: DataCubeViewState }) => {
@@ -98,9 +98,9 @@ export const DataCubeEditorGeneralPropertiesPanel = observer(
98
98
  </div>
99
99
  <FormTextInput
100
100
  className="h-6 w-96 text-lg font-semibold"
101
- value={panel.name}
101
+ value={configuration.name}
102
102
  onChange={(event) => {
103
- panel.setName(event.target.value);
103
+ configuration.setName(event.target.value);
104
104
  }}
105
105
  />
106
106
  </div>
@@ -60,7 +60,7 @@ export const DataCubeColumnCreator = observer(
60
60
  (props: { state: DataCubeColumnBaseEditorState }) => {
61
61
  const { state } = props;
62
62
  const view = state.view;
63
- const application = view.application;
63
+ const engine = view.engine;
64
64
 
65
65
  const nameInputRef = useRef<HTMLInputElement>(null);
66
66
  const currentColumnKind = state.isGroupLevel
@@ -91,9 +91,9 @@ export const DataCubeColumnCreator = observer(
91
91
  debounce((): void => {
92
92
  state
93
93
  .getReturnType()
94
- .catch((error) => application.alertUnhandledError(error));
94
+ .catch((error) => engine.alertUnhandledError(error));
95
95
  }, 500),
96
- [state, application],
96
+ [state, engine],
97
97
  );
98
98
 
99
99
  useEffect(() => {
@@ -136,7 +136,7 @@ export const DataCubeColumnCreator = observer(
136
136
  position,
137
137
  model,
138
138
  state.codePrefix,
139
- view.engine,
139
+ view,
140
140
  () => state.buildExtendBaseQuery(),
141
141
  ),
142
142
  );
@@ -351,7 +351,7 @@ export const DataCubeColumnCreator = observer(
351
351
  onClick={() => {
352
352
  state
353
353
  .applyChanges()
354
- .catch((error) => application.alertUnhandledError(error));
354
+ .catch((error) => engine.alertUnhandledError(error));
355
355
  }}
356
356
  >
357
357
  OK
@@ -363,7 +363,7 @@ export const DataCubeColumnCreator = observer(
363
363
  onClick={() => {
364
364
  state.manager
365
365
  .deleteColumn(state.initialData.name)
366
- .catch((error) => application.alertUnhandledError(error));
366
+ .catch((error) => engine.alertUnhandledError(error));
367
367
  }}
368
368
  >
369
369
  Delete
@@ -373,7 +373,7 @@ export const DataCubeColumnCreator = observer(
373
373
  onClick={() => {
374
374
  state
375
375
  .reset()
376
- .catch((error) => application.alertUnhandledError(error));
376
+ .catch((error) => engine.alertUnhandledError(error));
377
377
  }}
378
378
  >
379
379
  Reset
@@ -49,7 +49,7 @@ import { isNonNullable } from '@finos/legend-shared';
49
49
  import type {
50
50
  DataCubeConfiguration,
51
51
  DataCubeConfigurationColorKey,
52
- } from '../../../stores/core/DataCubeConfiguration.js';
52
+ } from '../../../stores/core/models/DataCubeConfiguration.js';
53
53
  import { generateBaseGridOptions } from '../../../stores/view/grid/DataCubeGridConfigurationBuilder.js';
54
54
  import type { DataCubeViewState } from '../../../stores/view/DataCubeViewState.js';
55
55
 
@@ -58,10 +58,13 @@ import type { DataCubeViewState } from '../../../stores/view/DataCubeViewState.j
58
58
  // We MUST NEVER completely surpress this warning in production, else it's a violation of the ag-grid license!
59
59
  // See https://www.ag-grid.com/react-data-grid/licensing/
60
60
  const __INTERNAL__original_console_error = console.error; // eslint-disable-line no-console
61
- // eslint-disable-next-line no-console
62
- console.error = (message?: unknown, ...agrs: unknown[]) => {
63
- console.debug(`%c ${message}`, 'color: silver'); // eslint-disable-line no-console
64
- };
61
+ // eslint-disable-next-line no-process-env
62
+ if (process.env.NODE_ENV === 'development') {
63
+ // eslint-disable-next-line no-console
64
+ console.error = (message?: unknown, ...agrs: unknown[]) => {
65
+ console.debug(`%c ${message}`, 'color: silver'); // eslint-disable-line no-console
66
+ };
67
+ }
65
68
 
66
69
  function textColorStyle(
67
70
  key: DataCubeConfigurationColorKey,
@@ -348,8 +351,11 @@ const DataCubeGridClient = observer((props: { view: DataCubeViewState }) => {
348
351
  }}
349
352
  onGridReady={(params) => {
350
353
  grid.configureClient(params.api);
351
- // restore original error logging
352
- console.error = __INTERNAL__original_console_error; // eslint-disable-line no-console
354
+ // eslint-disable-next-line no-process-env
355
+ if (process.env.NODE_ENV === 'development') {
356
+ // restore original error logging
357
+ console.error = __INTERNAL__original_console_error; // eslint-disable-line no-console
358
+ }
353
359
  }}
354
360
  modules={[
355
361
  // community
package/src/index.tsx CHANGED
@@ -14,11 +14,15 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
+ export * from './stores/core/models/DataCubeQuery.js';
18
+ export * from './stores/core/models/DataCubeSource.js';
19
+
17
20
  export * from './stores/core/DataCubeEngine.js';
18
- export * from './stores/core/DataCubeApplicationEngine.js';
19
- export * from './stores/core/DataCubeQuery.js';
21
+ export * from './stores/core/DataCubeQueryEngine.js';
20
22
  export * from './stores/core/DataCubeQueryBuilderUtils.js';
21
-
22
23
  export * from './components/core/DataCubeAlert.js';
24
+
23
25
  export * from './components/DataCube.js';
24
- export * from './components/DataCubeProvider.js';
26
+ export * from './stores/DataCubeAPI.js';
27
+ export * from './stores/DataCubeOptions.js';
28
+ export { DataCubeSettingKey } from './stores/DataCubeSettings.js';
@@ -0,0 +1,22 @@
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 { DataCubeSettings } from './DataCubeSettings.js';
18
+
19
+ export interface DataCubeAPI {
20
+ getSettings(): DataCubeSettings;
21
+ refreshFailedDataFetches(): void;
22
+ }
@@ -0,0 +1,34 @@
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 { DataCubeInitialInput } from './core/DataCubeEngine.js';
18
+ import type { DataCubeSource } from './core/models/DataCubeSource.js';
19
+
20
+ export type DataCubeOptions = {
21
+ enableDebugMode?: boolean | undefined;
22
+ gridClientRowBuffer?: number | undefined;
23
+ gridClientPurgeClosedRowNodes?: boolean | undefined;
24
+ gridClientSuppressLargeDatasetWarning?: boolean | undefined;
25
+ initialInput?: DataCubeInitialInput | undefined;
26
+
27
+ onNameChanged?: ((name: string, source: DataCubeSource) => void) | undefined;
28
+ onSettingChanged?:
29
+ | ((
30
+ key: string,
31
+ value: string | number | boolean | object | undefined,
32
+ ) => void)
33
+ | undefined;
34
+ };
@@ -0,0 +1,107 @@
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 { makeObservable, observable, action } from 'mobx';
18
+ import type { DataCubeState } from './DataCubeState.js';
19
+
20
+ export enum DataCubeSettingKey {
21
+ ENABLE_DEBUG_MODE = 'engine.enableDebugMode',
22
+ GRID_CLIENT_ROW_BUFFER = 'engine.grid-client.rowBuffer',
23
+ GRID_CLIENT_PURGE_CLOSED_ROW_NODES = 'engine.grid-client.purgeClosedRowNodes',
24
+ GRID_CLIENT_SUPPRESS_LARGE_DATASET_WARNING = 'engine.grid-client.suppressLargeDatasetWarning',
25
+ }
26
+
27
+ export const DEFAULT_SETTINGS = {
28
+ [DataCubeSettingKey.ENABLE_DEBUG_MODE]: false,
29
+ [DataCubeSettingKey.GRID_CLIENT_ROW_BUFFER]: 50,
30
+ [DataCubeSettingKey.GRID_CLIENT_PURGE_CLOSED_ROW_NODES]: false,
31
+ [DataCubeSettingKey.GRID_CLIENT_SUPPRESS_LARGE_DATASET_WARNING]: false,
32
+ };
33
+
34
+ export class DataCubeSettings {
35
+ readonly dataCube: DataCubeState;
36
+
37
+ constructor(dataCube: DataCubeState) {
38
+ makeObservable(this, {
39
+ enableDebugMode: observable,
40
+ setEnableDebugMode: action,
41
+
42
+ gridClientRowBuffer: observable,
43
+ setGridClientRowBuffer: action,
44
+
45
+ gridClientPurgeClosedRowNodes: observable,
46
+ setGridClientPurgeClosedRowNodes: action,
47
+
48
+ gridClientSuppressLargeDatasetWarning: observable,
49
+ setGridClientSuppressLargeDatasetWarning: action,
50
+ });
51
+
52
+ this.dataCube = dataCube;
53
+ }
54
+
55
+ enableDebugMode = DEFAULT_SETTINGS[DataCubeSettingKey.ENABLE_DEBUG_MODE];
56
+ gridClientRowBuffer =
57
+ DEFAULT_SETTINGS[DataCubeSettingKey.GRID_CLIENT_ROW_BUFFER];
58
+ gridClientPurgeClosedRowNodes =
59
+ DEFAULT_SETTINGS[DataCubeSettingKey.GRID_CLIENT_PURGE_CLOSED_ROW_NODES];
60
+ gridClientSuppressLargeDatasetWarning =
61
+ DEFAULT_SETTINGS[
62
+ DataCubeSettingKey.GRID_CLIENT_SUPPRESS_LARGE_DATASET_WARNING
63
+ ];
64
+
65
+ setEnableDebugMode(value: boolean) {
66
+ this.enableDebugMode = value;
67
+ this.dataCube.onSettingChanged?.(
68
+ DataCubeSettingKey.ENABLE_DEBUG_MODE,
69
+ value,
70
+ );
71
+ }
72
+
73
+ setGridClientRowBuffer(value: number) {
74
+ this.gridClientRowBuffer = value;
75
+ this.dataCube.onSettingChanged?.(
76
+ DataCubeSettingKey.GRID_CLIENT_ROW_BUFFER,
77
+ value,
78
+ );
79
+ this.propagateGridOptionUpdates();
80
+ }
81
+
82
+ setGridClientPurgeClosedRowNodes(value: boolean) {
83
+ this.gridClientPurgeClosedRowNodes = value;
84
+ this.dataCube.onSettingChanged?.(
85
+ DataCubeSettingKey.GRID_CLIENT_PURGE_CLOSED_ROW_NODES,
86
+ value,
87
+ );
88
+ this.propagateGridOptionUpdates();
89
+ }
90
+
91
+ setGridClientSuppressLargeDatasetWarning(value: boolean) {
92
+ this.gridClientSuppressLargeDatasetWarning = value;
93
+ this.dataCube.onSettingChanged?.(
94
+ DataCubeSettingKey.GRID_CLIENT_SUPPRESS_LARGE_DATASET_WARNING,
95
+ value,
96
+ );
97
+ }
98
+
99
+ private propagateGridOptionUpdates() {
100
+ this.dataCube.runTaskForEachView((view) => {
101
+ view.grid.client.updateGridOptions({
102
+ rowBuffer: this.gridClientRowBuffer,
103
+ purgeClosedRowNodes: this.gridClientPurgeClosedRowNodes,
104
+ });
105
+ });
106
+ }
107
+ }
@@ -14,39 +14,65 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { type DataCubeEngine } from './core/DataCubeEngine.js';
17
+ import {
18
+ type DataCubeEngine,
19
+ type DataCubeInitialInput,
20
+ } from './core/DataCubeEngine.js';
18
21
  import { DataCubeViewState } from './view/DataCubeViewState.js';
19
22
  import type { DisplayState } from './core/DataCubeLayoutManagerState.js';
20
23
  import { DocumentationPanel } from '../components/core/DataCubeDocumentationPanel.js';
21
24
  import { DataCubeSettingsPanel } from '../components/core/DataCubeSettingsPanel.js';
22
- import { ActionState, assertErrorThrown } from '@finos/legend-shared';
23
- import { AlertType } from '../components/core/DataCubeAlert.js';
24
- import { type DataCubeApplicationEngine } from './core/DataCubeApplicationEngine.js';
25
+ import {
26
+ ActionState,
27
+ assertErrorThrown,
28
+ type DocumentationEntry,
29
+ } from '@finos/legend-shared';
30
+ import {
31
+ AlertType,
32
+ type ActionAlert,
33
+ } from '../components/core/DataCubeAlert.js';
34
+ import type { DataCubeSource } from './core/models/DataCubeSource.js';
35
+ import { action, makeObservable, observable } from 'mobx';
36
+ import { DataCubeSettings } from './DataCubeSettings.js';
37
+ import type { DataCubeAPI } from './DataCubeAPI.js';
38
+ import type { DataCubeOptions } from './DataCubeOptions.js';
25
39
 
26
- export class DataCubeState {
27
- readonly application: DataCubeApplicationEngine;
40
+ export class DataCubeState implements DataCubeAPI {
28
41
  readonly engine: DataCubeEngine;
29
-
42
+ readonly settings!: DataCubeSettings;
30
43
  readonly initState = ActionState.create();
31
-
32
44
  readonly settingsDisplay: DisplayState;
33
45
  readonly documentationDisplay: DisplayState;
34
-
35
46
  // NOTE: when we support multiview, there can be multiple view states to support
36
47
  // the first one in that list will be taken as the main view state
37
48
  readonly view: DataCubeViewState;
38
49
 
39
- constructor(application: DataCubeApplicationEngine, engine: DataCubeEngine) {
40
- this.application = application;
50
+ onNameChanged?: ((name: string, source: DataCubeSource) => void) | undefined;
51
+ onSettingChanged?:
52
+ | ((
53
+ key: string,
54
+ value: string | number | boolean | object | undefined,
55
+ ) => void)
56
+ | undefined;
57
+
58
+ initialInput?: DataCubeInitialInput | undefined;
59
+ currentDocumentationEntry?: DocumentationEntry | undefined;
60
+ currentActionAlert?: ActionAlert | undefined;
61
+
62
+ constructor(engine: DataCubeEngine, options?: DataCubeOptions | undefined) {
63
+ makeObservable(this, {
64
+ currentDocumentationEntry: observable,
65
+ openDocumentationEntry: action,
66
+
67
+ currentActionAlert: observable,
68
+ alertAction: action,
69
+ });
70
+
41
71
  this.engine = engine;
42
- this.engine.gridClientTaskRunner = (task) => {
43
- // TODO: When we support multi-view (i.e. multiple instances of DataCubes) we would need
44
- // to traverse through and update the configurations of all of their grid clients
45
- task(this.view.grid.client);
46
- };
72
+ this.settings = new DataCubeSettings(this);
47
73
  this.view = new DataCubeViewState(this);
48
74
 
49
- this.settingsDisplay = this.application.layout.newDisplay(
75
+ this.settingsDisplay = this.engine.layout.newDisplay(
50
76
  'Settings',
51
77
  () => <DataCubeSettingsPanel />,
52
78
  {
@@ -59,7 +85,7 @@ export class DataCubeState {
59
85
  center: false,
60
86
  },
61
87
  );
62
- this.documentationDisplay = this.application.layout.newDisplay(
88
+ this.documentationDisplay = this.engine.layout.newDisplay(
63
89
  'Documentation',
64
90
  () => <DocumentationPanel />,
65
91
  {
@@ -72,11 +98,56 @@ export class DataCubeState {
72
98
  center: false,
73
99
  },
74
100
  );
101
+
102
+ this.onNameChanged = options?.onNameChanged;
103
+ this.onSettingChanged = options?.onSettingChanged;
104
+ this.initialInput = options?.initialInput;
105
+
106
+ this.settings.enableDebugMode =
107
+ options?.enableDebugMode !== undefined
108
+ ? options.enableDebugMode
109
+ : this.settings.enableDebugMode;
110
+ this.settings.gridClientRowBuffer =
111
+ options?.gridClientRowBuffer !== undefined
112
+ ? options.gridClientRowBuffer
113
+ : this.settings.gridClientRowBuffer;
114
+ this.settings.gridClientPurgeClosedRowNodes =
115
+ options?.gridClientPurgeClosedRowNodes !== undefined
116
+ ? options.gridClientPurgeClosedRowNodes
117
+ : this.settings.gridClientPurgeClosedRowNodes;
118
+ this.settings.gridClientSuppressLargeDatasetWarning =
119
+ options?.gridClientSuppressLargeDatasetWarning !== undefined
120
+ ? options.gridClientSuppressLargeDatasetWarning
121
+ : this.settings.gridClientSuppressLargeDatasetWarning;
122
+ }
123
+
124
+ getSettings() {
125
+ return this.settings;
126
+ }
127
+
128
+ openDocumentationEntry(entry: DocumentationEntry | undefined) {
129
+ this.currentDocumentationEntry = entry;
130
+ }
131
+
132
+ alertAction(alert: ActionAlert | undefined) {
133
+ this.currentActionAlert = alert;
134
+ }
135
+
136
+ refreshFailedDataFetches() {
137
+ this.runTaskForEachView((view) => {
138
+ view.grid.client.retryServerSideLoads();
139
+ });
140
+ }
141
+
142
+ runTaskForEachView(runner: (view: DataCubeViewState) => void) {
143
+ // TODO: When we support multi-view (i.e. multiple instances of DataCubes) we would need
144
+ // to traverse through and update the configurations of all of their grid clients
145
+ runner(this.view);
75
146
  }
76
147
 
77
148
  async initialize() {
78
149
  if (!this.initState.isInInitialState) {
79
- this.application.logDebug('REPL store is re-initialized');
150
+ this.engine.logDebug('REPL store is re-initialized');
80
151
  return;
81
152
  }
82
153
  this.initState.inProgress();
@@ -86,9 +157,9 @@ export class DataCubeState {
86
157
  this.initState.pass();
87
158
  } catch (error: unknown) {
88
159
  assertErrorThrown(error);
89
- this.application.alertAction({
160
+ this.alertAction({
90
161
  message: `Initialization Failure: ${error.message}`,
91
- prompt: `Resolve the issue and reload the application.`,
162
+ prompt: `Resolve the issue and reload the engine.`,
92
163
  type: AlertType.ERROR,
93
164
  actions: [],
94
165
  });
@@ -18,17 +18,17 @@ import { PRIMITIVE_TYPE } from '@finos/legend-graph';
18
18
  import {
19
19
  DataCubeColumnConfiguration,
20
20
  DataCubeConfiguration,
21
- } from './DataCubeConfiguration.js';
21
+ } from './models/DataCubeConfiguration.js';
22
22
  import {
23
23
  DataCubeQueryAggregateOperator,
24
24
  DataCubeColumnKind,
25
25
  DataCubeFontTextAlignment,
26
26
  } from './DataCubeQueryEngine.js';
27
+ import type { DataCubeColumn } from './models/DataCubeColumn.js';
27
28
 
28
- export function buildDefaultColumnConfiguration(column: {
29
- name: string;
30
- type: string;
31
- }): DataCubeColumnConfiguration {
29
+ export function buildDefaultColumnConfiguration(
30
+ column: DataCubeColumn,
31
+ ): DataCubeColumnConfiguration {
32
32
  const { name, type } = column;
33
33
  const config = new DataCubeColumnConfiguration(name, type);
34
34
  switch (type) {
@@ -57,7 +57,7 @@ export function buildDefaultColumnConfiguration(column: {
57
57
  }
58
58
 
59
59
  export function buildDefaultConfiguration(
60
- columns: { name: string; type: string }[],
60
+ columns: DataCubeColumn[],
61
61
  ): DataCubeConfiguration {
62
62
  const configuration = new DataCubeConfiguration();
63
63
  configuration.columns = columns.map((column) =>