@finos/legend-cube-builder 0.0.3 → 0.0.5

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 (971) hide show
  1. package/README.md +59 -20
  2. package/docs/adding-an-operation.md +112 -13
  3. package/docs/demo/DEMO-FAST-NOTES.md +67 -0
  4. package/docs/demo/README.md +102 -0
  5. package/docs/demo/specs/duckdb-sales-pivot.cube.json +110 -0
  6. package/docs/demo/specs/trades-desks-1-joined.cube.json +123 -0
  7. package/docs/demo/specs/trades-desks-2-grouped.cube.json +140 -0
  8. package/docs/demo/specs/trades-desks-3-ranked.cube.json +158 -0
  9. package/docs/demo/specs/trades-desks-4-extended.cube.json +208 -0
  10. package/docs/demo/specs/trades-desks-5-final.cube.json +248 -0
  11. package/docs/hosting.md +132 -7
  12. package/docs/testing.md +146 -9
  13. package/lib/__lib__/LegendCubeCommand.d.ts +4 -1
  14. package/lib/__lib__/LegendCubeCommand.d.ts.map +1 -1
  15. package/lib/__lib__/LegendCubeCommand.js +12 -0
  16. package/lib/__lib__/LegendCubeCommand.js.map +1 -1
  17. package/lib/__lib__/LegendCubeDataProductLabels.d.ts +45 -0
  18. package/lib/__lib__/LegendCubeDataProductLabels.d.ts.map +1 -0
  19. package/lib/__lib__/LegendCubeDataProductLabels.js +60 -0
  20. package/lib/__lib__/LegendCubeDataProductLabels.js.map +1 -0
  21. package/lib/__lib__/LegendCubeDirectConnectionLabels.d.ts +56 -0
  22. package/lib/__lib__/LegendCubeDirectConnectionLabels.d.ts.map +1 -0
  23. package/lib/__lib__/LegendCubeDirectConnectionLabels.js +76 -0
  24. package/lib/__lib__/LegendCubeDirectConnectionLabels.js.map +1 -0
  25. package/lib/__lib__/LegendCubeFunctionLabels.d.ts +29 -0
  26. package/lib/__lib__/LegendCubeFunctionLabels.d.ts.map +1 -0
  27. package/lib/__lib__/LegendCubeFunctionLabels.js +31 -0
  28. package/lib/__lib__/LegendCubeFunctionLabels.js.map +1 -0
  29. package/lib/__lib__/LegendCubeHelpText.d.ts +5 -1
  30. package/lib/__lib__/LegendCubeHelpText.d.ts.map +1 -1
  31. package/lib/__lib__/LegendCubeHelpText.js +25 -3
  32. package/lib/__lib__/LegendCubeHelpText.js.map +1 -1
  33. package/lib/__lib__/LegendCubeIngestLabels.d.ts +25 -0
  34. package/lib/__lib__/LegendCubeIngestLabels.d.ts.map +1 -0
  35. package/lib/__lib__/LegendCubeIngestLabels.js +29 -0
  36. package/lib/__lib__/LegendCubeIngestLabels.js.map +1 -0
  37. package/lib/__lib__/LegendCubeLabels.d.ts +171 -6
  38. package/lib/__lib__/LegendCubeLabels.d.ts.map +1 -1
  39. package/lib/__lib__/LegendCubeLabels.js +226 -13
  40. package/lib/__lib__/LegendCubeLabels.js.map +1 -1
  41. package/lib/__lib__/LegendCubeProjectLabels.d.ts +22 -0
  42. package/lib/__lib__/LegendCubeProjectLabels.d.ts.map +1 -0
  43. package/lib/__lib__/LegendCubeProjectLabels.js +23 -0
  44. package/lib/__lib__/LegendCubeProjectLabels.js.map +1 -0
  45. package/lib/__lib__/LegendCubeProjectSourceLabels.d.ts +26 -0
  46. package/lib/__lib__/LegendCubeProjectSourceLabels.d.ts.map +1 -0
  47. package/lib/__lib__/LegendCubeProjectSourceLabels.js +26 -0
  48. package/lib/__lib__/LegendCubeProjectSourceLabels.js.map +1 -0
  49. package/lib/__lib__/LegendCubeServiceLabels.d.ts +27 -0
  50. package/lib/__lib__/LegendCubeServiceLabels.d.ts.map +1 -0
  51. package/lib/__lib__/LegendCubeServiceLabels.js +32 -0
  52. package/lib/__lib__/LegendCubeServiceLabels.js.map +1 -0
  53. package/lib/__lib__/LegendCubeTesting.d.ts +8 -0
  54. package/lib/__lib__/LegendCubeTesting.d.ts.map +1 -1
  55. package/lib/__lib__/LegendCubeTesting.js +8 -0
  56. package/lib/__lib__/LegendCubeTesting.js.map +1 -1
  57. package/lib/__test-utils__/CubeCanvasTestUtils.d.ts.map +1 -1
  58. package/lib/__test-utils__/CubeCanvasTestUtils.js +1 -1
  59. package/lib/__test-utils__/CubeCanvasTestUtils.js.map +1 -1
  60. package/lib/__test-utils__/CubeConnectionTestSupport.d.ts +22 -0
  61. package/lib/__test-utils__/CubeConnectionTestSupport.d.ts.map +1 -0
  62. package/lib/__test-utils__/CubeConnectionTestSupport.js +30 -0
  63. package/lib/__test-utils__/CubeConnectionTestSupport.js.map +1 -0
  64. package/lib/__test-utils__/CubeDirectConnectionFixtures.d.ts +31 -0
  65. package/lib/__test-utils__/CubeDirectConnectionFixtures.d.ts.map +1 -0
  66. package/lib/__test-utils__/CubeDirectConnectionFixtures.js +63 -0
  67. package/lib/__test-utils__/CubeDirectConnectionFixtures.js.map +1 -0
  68. package/lib/__test-utils__/CubeEngineTestSupport.d.ts +13 -1
  69. package/lib/__test-utils__/CubeEngineTestSupport.d.ts.map +1 -1
  70. package/lib/__test-utils__/CubeEngineTestSupport.js +23 -2
  71. package/lib/__test-utils__/CubeEngineTestSupport.js.map +1 -1
  72. package/lib/__test-utils__/CubeExpressionTestUtils.d.ts +44 -0
  73. package/lib/__test-utils__/CubeExpressionTestUtils.d.ts.map +1 -0
  74. package/lib/__test-utils__/CubeExpressionTestUtils.js +100 -0
  75. package/lib/__test-utils__/CubeExpressionTestUtils.js.map +1 -0
  76. package/lib/__test-utils__/CubeFunctionTestOutline.d.ts +26 -0
  77. package/lib/__test-utils__/CubeFunctionTestOutline.d.ts.map +1 -0
  78. package/lib/__test-utils__/CubeFunctionTestOutline.js +56 -0
  79. package/lib/__test-utils__/CubeFunctionTestOutline.js.map +1 -0
  80. package/lib/__test-utils__/CubeLambdaCorpus.d.ts +36 -0
  81. package/lib/__test-utils__/CubeLambdaCorpus.d.ts.map +1 -0
  82. package/lib/__test-utils__/CubeLambdaCorpus.js +83 -0
  83. package/lib/__test-utils__/CubeLambdaCorpus.js.map +1 -0
  84. package/lib/__test-utils__/CubeOperationsTestUtils.d.ts +25 -0
  85. package/lib/__test-utils__/CubeOperationsTestUtils.d.ts.map +1 -1
  86. package/lib/__test-utils__/CubeOperationsTestUtils.js +56 -10
  87. package/lib/__test-utils__/CubeOperationsTestUtils.js.map +1 -1
  88. package/lib/__test-utils__/CubePageTestUtils.d.ts +18 -0
  89. package/lib/__test-utils__/CubePageTestUtils.d.ts.map +1 -1
  90. package/lib/__test-utils__/CubePageTestUtils.js +46 -1
  91. package/lib/__test-utils__/CubePageTestUtils.js.map +1 -1
  92. package/lib/__test-utils__/CubeTestApplication.d.ts +14 -1
  93. package/lib/__test-utils__/CubeTestApplication.d.ts.map +1 -1
  94. package/lib/__test-utils__/CubeTestApplication.js +25 -1
  95. package/lib/__test-utils__/CubeTestApplication.js.map +1 -1
  96. package/lib/__test-utils__/FakeCubeConnectionExplorer.d.ts +33 -0
  97. package/lib/__test-utils__/FakeCubeConnectionExplorer.d.ts.map +1 -0
  98. package/lib/__test-utils__/FakeCubeConnectionExplorer.js +67 -0
  99. package/lib/__test-utils__/FakeCubeConnectionExplorer.js.map +1 -0
  100. package/lib/__test-utils__/FakeCubeDataProductCatalog.d.ts +45 -0
  101. package/lib/__test-utils__/FakeCubeDataProductCatalog.d.ts.map +1 -0
  102. package/lib/__test-utils__/FakeCubeDataProductCatalog.js +137 -0
  103. package/lib/__test-utils__/FakeCubeDataProductCatalog.js.map +1 -0
  104. package/lib/__test-utils__/FakeCubeEngine.d.ts +7 -0
  105. package/lib/__test-utils__/FakeCubeEngine.d.ts.map +1 -1
  106. package/lib/__test-utils__/FakeCubeEngine.js +31 -1
  107. package/lib/__test-utils__/FakeCubeEngine.js.map +1 -1
  108. package/lib/__test-utils__/FakeCubeIngestCatalog.d.ts +41 -0
  109. package/lib/__test-utils__/FakeCubeIngestCatalog.d.ts.map +1 -0
  110. package/lib/__test-utils__/FakeCubeIngestCatalog.js +123 -0
  111. package/lib/__test-utils__/FakeCubeIngestCatalog.js.map +1 -0
  112. package/lib/__test-utils__/FakeCubeProjectCatalog.d.ts +30 -0
  113. package/lib/__test-utils__/FakeCubeProjectCatalog.d.ts.map +1 -0
  114. package/lib/__test-utils__/FakeCubeProjectCatalog.js +64 -0
  115. package/lib/__test-utils__/FakeCubeProjectCatalog.js.map +1 -0
  116. package/lib/__test-utils__/FakeCubeServiceCatalog.d.ts +26 -0
  117. package/lib/__test-utils__/FakeCubeServiceCatalog.d.ts.map +1 -0
  118. package/lib/__test-utils__/FakeCubeServiceCatalog.js +40 -0
  119. package/lib/__test-utils__/FakeCubeServiceCatalog.js.map +1 -0
  120. package/lib/components/CubeAddItems.d.ts +35 -0
  121. package/lib/components/CubeAddItems.d.ts.map +1 -0
  122. package/lib/components/CubeAddItems.js +85 -0
  123. package/lib/components/CubeAddItems.js.map +1 -0
  124. package/lib/components/CubeDialogTheme.d.ts +25 -0
  125. package/lib/components/CubeDialogTheme.d.ts.map +1 -0
  126. package/lib/components/CubeDialogTheme.js +25 -0
  127. package/lib/components/CubeDialogTheme.js.map +1 -0
  128. package/lib/components/CubeEditor.d.ts +17 -2
  129. package/lib/components/CubeEditor.d.ts.map +1 -1
  130. package/lib/components/CubeEditor.js +39 -17
  131. package/lib/components/CubeEditor.js.map +1 -1
  132. package/lib/components/CubeEntrySourceBanner.d.ts +23 -0
  133. package/lib/components/CubeEntrySourceBanner.d.ts.map +1 -0
  134. package/lib/components/CubeEntrySourceBanner.js +32 -0
  135. package/lib/components/CubeEntrySourceBanner.js.map +1 -0
  136. package/lib/components/CubeFileMenu.d.ts +28 -0
  137. package/lib/components/CubeFileMenu.d.ts.map +1 -0
  138. package/lib/components/CubeFileMenu.js +77 -0
  139. package/lib/components/CubeFileMenu.js.map +1 -0
  140. package/lib/components/CubeLambdaImportBanner.d.ts +26 -0
  141. package/lib/components/CubeLambdaImportBanner.d.ts.map +1 -0
  142. package/lib/components/CubeLambdaImportBanner.js +47 -0
  143. package/lib/components/CubeLambdaImportBanner.js.map +1 -0
  144. package/lib/components/CubeNodeIcon.d.ts.map +1 -1
  145. package/lib/components/CubeNodeIcon.js +12 -1
  146. package/lib/components/CubeNodeIcon.js.map +1 -1
  147. package/lib/components/CubeSchemaColumnsTable.d.ts +21 -0
  148. package/lib/components/CubeSchemaColumnsTable.d.ts.map +1 -0
  149. package/lib/components/CubeSchemaColumnsTable.js +6 -0
  150. package/lib/components/CubeSchemaColumnsTable.js.map +1 -0
  151. package/lib/components/canvas/CubeCanvas.d.ts +4 -3
  152. package/lib/components/canvas/CubeCanvas.d.ts.map +1 -1
  153. package/lib/components/canvas/CubeCanvas.js +68 -16
  154. package/lib/components/canvas/CubeCanvas.js.map +1 -1
  155. package/lib/components/canvas/CubeCanvasContextMenu.d.ts +8 -4
  156. package/lib/components/canvas/CubeCanvasContextMenu.d.ts.map +1 -1
  157. package/lib/components/canvas/CubeCanvasContextMenu.js +20 -9
  158. package/lib/components/canvas/CubeCanvasContextMenu.js.map +1 -1
  159. package/lib/components/canvas/CubeCanvasDnd.d.ts +7 -5
  160. package/lib/components/canvas/CubeCanvasDnd.d.ts.map +1 -1
  161. package/lib/components/canvas/CubeCanvasDnd.js +14 -9
  162. package/lib/components/canvas/CubeCanvasDnd.js.map +1 -1
  163. package/lib/components/canvas/CubeCanvasElements.d.ts +18 -1
  164. package/lib/components/canvas/CubeCanvasElements.d.ts.map +1 -1
  165. package/lib/components/canvas/CubeCanvasElements.js +63 -5
  166. package/lib/components/canvas/CubeCanvasElements.js.map +1 -1
  167. package/lib/components/canvas/CubeCanvasLayout.js +1 -1
  168. package/lib/components/canvas/CubeCanvasNode.d.ts.map +1 -1
  169. package/lib/components/canvas/CubeCanvasNode.js +35 -21
  170. package/lib/components/canvas/CubeCanvasNode.js.map +1 -1
  171. package/lib/components/canvas/CubeCanvasNodeFocus.d.ts +22 -0
  172. package/lib/components/canvas/CubeCanvasNodeFocus.d.ts.map +1 -0
  173. package/lib/components/canvas/CubeCanvasNodeFocus.js +31 -0
  174. package/lib/components/canvas/CubeCanvasNodeFocus.js.map +1 -0
  175. package/lib/components/canvas/CubeNodeEditorAnchor.d.ts +44 -0
  176. package/lib/components/canvas/CubeNodeEditorAnchor.d.ts.map +1 -0
  177. package/lib/components/canvas/CubeNodeEditorAnchor.js +51 -0
  178. package/lib/components/canvas/CubeNodeEditorAnchor.js.map +1 -0
  179. package/lib/components/dev-settings/CubeDevSettings.d.ts +35 -0
  180. package/lib/components/dev-settings/CubeDevSettings.d.ts.map +1 -0
  181. package/lib/components/dev-settings/CubeDevSettings.js +50 -0
  182. package/lib/components/dev-settings/CubeDevSettings.js.map +1 -0
  183. package/lib/components/editors/CubeAggregationRowEditor.d.ts +48 -0
  184. package/lib/components/editors/CubeAggregationRowEditor.d.ts.map +1 -0
  185. package/lib/components/editors/CubeAggregationRowEditor.js +72 -0
  186. package/lib/components/editors/CubeAggregationRowEditor.js.map +1 -0
  187. package/lib/components/editors/CubeColumnChecklist.d.ts +42 -0
  188. package/lib/components/editors/CubeColumnChecklist.d.ts.map +1 -0
  189. package/lib/components/editors/CubeColumnChecklist.js +41 -0
  190. package/lib/components/editors/CubeColumnChecklist.js.map +1 -0
  191. package/lib/components/editors/CubeColumnPicker.d.ts.map +1 -1
  192. package/lib/components/editors/CubeColumnPicker.js +3 -3
  193. package/lib/components/editors/CubeColumnPicker.js.map +1 -1
  194. package/lib/components/editors/CubeConcatEditor.d.ts +33 -0
  195. package/lib/components/editors/CubeConcatEditor.d.ts.map +1 -0
  196. package/lib/components/editors/CubeConcatEditor.js +147 -0
  197. package/lib/components/editors/CubeConcatEditor.js.map +1 -0
  198. package/lib/components/editors/CubeDataProductSourceEditor.d.ts +25 -0
  199. package/lib/components/editors/CubeDataProductSourceEditor.d.ts.map +1 -0
  200. package/lib/components/editors/CubeDataProductSourceEditor.js +53 -0
  201. package/lib/components/editors/CubeDataProductSourceEditor.js.map +1 -0
  202. package/lib/components/editors/CubeDifferenceEditor.d.ts +25 -0
  203. package/lib/components/editors/CubeDifferenceEditor.d.ts.map +1 -0
  204. package/lib/components/editors/CubeDifferenceEditor.js +29 -0
  205. package/lib/components/editors/CubeDifferenceEditor.js.map +1 -0
  206. package/lib/components/editors/CubeExpressionFilterEditor.d.ts +25 -0
  207. package/lib/components/editors/CubeExpressionFilterEditor.d.ts.map +1 -0
  208. package/lib/components/editors/CubeExpressionFilterEditor.js +83 -0
  209. package/lib/components/editors/CubeExpressionFilterEditor.js.map +1 -0
  210. package/lib/components/editors/CubeExtendEditor.d.ts +27 -0
  211. package/lib/components/editors/CubeExtendEditor.d.ts.map +1 -0
  212. package/lib/components/editors/CubeExtendEditor.js +86 -0
  213. package/lib/components/editors/CubeExtendEditor.js.map +1 -0
  214. package/lib/components/editors/CubeFilterEditor.d.ts.map +1 -1
  215. package/lib/components/editors/CubeFilterEditor.js +15 -4
  216. package/lib/components/editors/CubeFilterEditor.js.map +1 -1
  217. package/lib/components/editors/CubeFunctionSourceEditor.d.ts +25 -0
  218. package/lib/components/editors/CubeFunctionSourceEditor.d.ts.map +1 -0
  219. package/lib/components/editors/CubeFunctionSourceEditor.js +55 -0
  220. package/lib/components/editors/CubeFunctionSourceEditor.js.map +1 -0
  221. package/lib/components/editors/CubeGroupEditor.d.ts +28 -0
  222. package/lib/components/editors/CubeGroupEditor.d.ts.map +1 -0
  223. package/lib/components/editors/CubeGroupEditor.js +70 -0
  224. package/lib/components/editors/CubeGroupEditor.js.map +1 -0
  225. package/lib/components/editors/CubeIngestSourceEditor.d.ts +26 -0
  226. package/lib/components/editors/CubeIngestSourceEditor.d.ts.map +1 -0
  227. package/lib/components/editors/CubeIngestSourceEditor.js +47 -0
  228. package/lib/components/editors/CubeIngestSourceEditor.js.map +1 -0
  229. package/lib/components/editors/CubeJoinEditor.d.ts +2 -4
  230. package/lib/components/editors/CubeJoinEditor.d.ts.map +1 -1
  231. package/lib/components/editors/CubeJoinEditor.js +21 -39
  232. package/lib/components/editors/CubeJoinEditor.js.map +1 -1
  233. package/lib/components/editors/CubeJoinKeyRows.d.ts +34 -0
  234. package/lib/components/editors/CubeJoinKeyRows.d.ts.map +1 -0
  235. package/lib/components/editors/CubeJoinKeyRows.js +65 -0
  236. package/lib/components/editors/CubeJoinKeyRows.js.map +1 -0
  237. package/lib/components/editors/CubeNodeEditorPanel.d.ts +7 -5
  238. package/lib/components/editors/CubeNodeEditorPanel.d.ts.map +1 -1
  239. package/lib/components/editors/CubeNodeEditorPanel.js +64 -16
  240. package/lib/components/editors/CubeNodeEditorPanel.js.map +1 -1
  241. package/lib/components/editors/CubeNodeEditorPopper.d.ts +44 -0
  242. package/lib/components/editors/CubeNodeEditorPopper.d.ts.map +1 -0
  243. package/lib/components/editors/CubeNodeEditorPopper.js +133 -0
  244. package/lib/components/editors/CubeNodeEditorPopper.js.map +1 -0
  245. package/lib/components/editors/CubeNodeEditorRegistry.d.ts.map +1 -1
  246. package/lib/components/editors/CubeNodeEditorRegistry.js +23 -1
  247. package/lib/components/editors/CubeNodeEditorRegistry.js.map +1 -1
  248. package/lib/components/editors/CubePartitionEditor.d.ts +30 -0
  249. package/lib/components/editors/CubePartitionEditor.d.ts.map +1 -0
  250. package/lib/components/editors/CubePartitionEditor.js +93 -0
  251. package/lib/components/editors/CubePartitionEditor.js.map +1 -0
  252. package/lib/components/editors/CubePivotEditor.d.ts +26 -0
  253. package/lib/components/editors/CubePivotEditor.d.ts.map +1 -0
  254. package/lib/components/editors/CubePivotEditor.js +93 -0
  255. package/lib/components/editors/CubePivotEditor.js.map +1 -0
  256. package/lib/components/editors/CubeRenameEditor.d.ts.map +1 -1
  257. package/lib/components/editors/CubeRenameEditor.js +6 -4
  258. package/lib/components/editors/CubeRenameEditor.js.map +1 -1
  259. package/lib/components/editors/CubeRestrictEditor.d.ts.map +1 -1
  260. package/lib/components/editors/CubeRestrictEditor.js +2 -2
  261. package/lib/components/editors/CubeRestrictEditor.js.map +1 -1
  262. package/lib/components/editors/CubeServiceSourceEditor.d.ts +25 -0
  263. package/lib/components/editors/CubeServiceSourceEditor.d.ts.map +1 -0
  264. package/lib/components/editors/CubeServiceSourceEditor.js +41 -0
  265. package/lib/components/editors/CubeServiceSourceEditor.js.map +1 -0
  266. package/lib/components/editors/CubeSortEditor.d.ts.map +1 -1
  267. package/lib/components/editors/CubeSortEditor.js +10 -37
  268. package/lib/components/editors/CubeSortEditor.js.map +1 -1
  269. package/lib/components/editors/CubeSortRowEditor.d.ts +47 -0
  270. package/lib/components/editors/CubeSortRowEditor.d.ts.map +1 -0
  271. package/lib/components/editors/CubeSortRowEditor.js +62 -0
  272. package/lib/components/editors/CubeSortRowEditor.js.map +1 -0
  273. package/lib/components/editors/CubeSourceEditor.d.ts.map +1 -1
  274. package/lib/components/editors/CubeSourceEditor.js +18 -5
  275. package/lib/components/editors/CubeSourceEditor.js.map +1 -1
  276. package/lib/components/editors/CubeWarehouseControl.d.ts +30 -0
  277. package/lib/components/editors/CubeWarehouseControl.d.ts.map +1 -0
  278. package/lib/components/editors/CubeWarehouseControl.js +44 -0
  279. package/lib/components/editors/CubeWarehouseControl.js.map +1 -0
  280. package/lib/components/editors/useCubeNodeEditorDismiss.d.ts +31 -0
  281. package/lib/components/editors/useCubeNodeEditorDismiss.d.ts.map +1 -0
  282. package/lib/components/editors/useCubeNodeEditorDismiss.js +83 -0
  283. package/lib/components/editors/useCubeNodeEditorDismiss.js.map +1 -0
  284. package/lib/components/examples/CubeExamplesDialog.d.ts +26 -0
  285. package/lib/components/examples/CubeExamplesDialog.d.ts.map +1 -0
  286. package/lib/components/examples/CubeExamplesDialog.js +68 -0
  287. package/lib/components/examples/CubeExamplesDialog.js.map +1 -0
  288. package/lib/components/grid/CubeColumnFormatDialog.d.ts +28 -0
  289. package/lib/components/grid/CubeColumnFormatDialog.d.ts.map +1 -0
  290. package/lib/components/grid/CubeColumnFormatDialog.js +94 -0
  291. package/lib/components/grid/CubeColumnFormatDialog.js.map +1 -0
  292. package/lib/components/grid/CubeDrilldownBar.d.ts +37 -0
  293. package/lib/components/grid/CubeDrilldownBar.d.ts.map +1 -0
  294. package/lib/components/grid/CubeDrilldownBar.js +77 -0
  295. package/lib/components/grid/CubeDrilldownBar.js.map +1 -0
  296. package/lib/components/grid/CubeGridRegion.d.ts.map +1 -1
  297. package/lib/components/grid/CubeGridRegion.js +56 -31
  298. package/lib/components/grid/CubeGridRegion.js.map +1 -1
  299. package/lib/components/grid/CubeGridValues.d.ts +47 -1
  300. package/lib/components/grid/CubeGridValues.d.ts.map +1 -1
  301. package/lib/components/grid/CubeGridValues.js +152 -1
  302. package/lib/components/grid/CubeGridValues.js.map +1 -1
  303. package/lib/components/grid/CubeResultGrid.d.ts +68 -5
  304. package/lib/components/grid/CubeResultGrid.d.ts.map +1 -1
  305. package/lib/components/grid/CubeResultGrid.js +316 -31
  306. package/lib/components/grid/CubeResultGrid.js.map +1 -1
  307. package/lib/components/grid/CubeRunStatsPanel.d.ts +28 -0
  308. package/lib/components/grid/CubeRunStatsPanel.d.ts.map +1 -0
  309. package/lib/components/grid/CubeRunStatsPanel.js +61 -0
  310. package/lib/components/grid/CubeRunStatsPanel.js.map +1 -0
  311. package/lib/components/grid/CubeServerSideGrid.d.ts +36 -0
  312. package/lib/components/grid/CubeServerSideGrid.d.ts.map +1 -0
  313. package/lib/components/grid/CubeServerSideGrid.js +114 -0
  314. package/lib/components/grid/CubeServerSideGrid.js.map +1 -0
  315. package/lib/components/grid/CubeSqlDialog.d.ts +24 -0
  316. package/lib/components/grid/CubeSqlDialog.d.ts.map +1 -0
  317. package/lib/components/grid/CubeSqlDialog.js +39 -0
  318. package/lib/components/grid/CubeSqlDialog.js.map +1 -0
  319. package/lib/components/grid/CubeSqlFormat.d.ts +20 -0
  320. package/lib/components/grid/CubeSqlFormat.d.ts.map +1 -0
  321. package/lib/components/grid/CubeSqlFormat.js +32 -0
  322. package/lib/components/grid/CubeSqlFormat.js.map +1 -0
  323. package/lib/components/palette/CubePalette.d.ts.map +1 -1
  324. package/lib/components/palette/CubePalette.js +44 -14
  325. package/lib/components/palette/CubePalette.js.map +1 -1
  326. package/lib/components/show-pure/CubeShowPureDialog.d.ts +4 -1
  327. package/lib/components/show-pure/CubeShowPureDialog.d.ts.map +1 -1
  328. package/lib/components/show-pure/CubeShowPureDialog.js +8 -4
  329. package/lib/components/show-pure/CubeShowPureDialog.js.map +1 -1
  330. package/lib/components/source-picker/CubeDataProductTab.d.ts +27 -0
  331. package/lib/components/source-picker/CubeDataProductTab.d.ts.map +1 -0
  332. package/lib/components/source-picker/CubeDataProductTab.js +123 -0
  333. package/lib/components/source-picker/CubeDataProductTab.js.map +1 -0
  334. package/lib/components/source-picker/CubeDirectConnectionTab.d.ts +27 -0
  335. package/lib/components/source-picker/CubeDirectConnectionTab.d.ts.map +1 -0
  336. package/lib/components/source-picker/CubeDirectConnectionTab.js +89 -0
  337. package/lib/components/source-picker/CubeDirectConnectionTab.js.map +1 -0
  338. package/lib/components/source-picker/CubeFunctionSteps.d.ts +36 -0
  339. package/lib/components/source-picker/CubeFunctionSteps.d.ts.map +1 -0
  340. package/lib/components/source-picker/CubeFunctionSteps.js +76 -0
  341. package/lib/components/source-picker/CubeFunctionSteps.js.map +1 -0
  342. package/lib/components/source-picker/CubeIngestTab.d.ts +28 -0
  343. package/lib/components/source-picker/CubeIngestTab.d.ts.map +1 -0
  344. package/lib/components/source-picker/CubeIngestTab.js +89 -0
  345. package/lib/components/source-picker/CubeIngestTab.js.map +1 -0
  346. package/lib/components/source-picker/CubeInlineModelTab.d.ts +38 -0
  347. package/lib/components/source-picker/CubeInlineModelTab.d.ts.map +1 -0
  348. package/lib/components/source-picker/CubeInlineModelTab.js +81 -0
  349. package/lib/components/source-picker/CubeInlineModelTab.js.map +1 -0
  350. package/lib/components/source-picker/CubePickerListItem.d.ts +47 -0
  351. package/lib/components/source-picker/CubePickerListItem.d.ts.map +1 -0
  352. package/lib/components/source-picker/CubePickerListItem.js +62 -0
  353. package/lib/components/source-picker/CubePickerListItem.js.map +1 -0
  354. package/lib/components/source-picker/CubePickerStep.d.ts +27 -0
  355. package/lib/components/source-picker/CubePickerStep.d.ts.map +1 -0
  356. package/lib/components/source-picker/CubePickerStep.js +23 -0
  357. package/lib/components/source-picker/CubePickerStep.js.map +1 -0
  358. package/lib/components/source-picker/CubeProjectTab.d.ts +28 -0
  359. package/lib/components/source-picker/CubeProjectTab.d.ts.map +1 -0
  360. package/lib/components/source-picker/CubeProjectTab.js +53 -0
  361. package/lib/components/source-picker/CubeProjectTab.js.map +1 -0
  362. package/lib/components/source-picker/CubeServiceTab.d.ts +27 -0
  363. package/lib/components/source-picker/CubeServiceTab.d.ts.map +1 -0
  364. package/lib/components/source-picker/CubeServiceTab.js +36 -0
  365. package/lib/components/source-picker/CubeServiceTab.js.map +1 -0
  366. package/lib/components/source-picker/CubeSourcePicker.d.ts +6 -0
  367. package/lib/components/source-picker/CubeSourcePicker.d.ts.map +1 -1
  368. package/lib/components/source-picker/CubeSourcePicker.js +33 -58
  369. package/lib/components/source-picker/CubeSourcePicker.js.map +1 -1
  370. package/lib/components/source-picker/CubeTablePreview.d.ts +29 -0
  371. package/lib/components/source-picker/CubeTablePreview.d.ts.map +1 -0
  372. package/lib/components/source-picker/CubeTablePreview.js +10 -0
  373. package/lib/components/source-picker/CubeTablePreview.js.map +1 -0
  374. package/lib/components/spec-transfer/CubeImportPureDialog.d.ts +27 -0
  375. package/lib/components/spec-transfer/CubeImportPureDialog.d.ts.map +1 -0
  376. package/lib/components/spec-transfer/CubeImportPureDialog.js +38 -0
  377. package/lib/components/spec-transfer/CubeImportPureDialog.js.map +1 -0
  378. package/lib/components/spec-transfer/CubeSpecTransferDialog.d.ts.map +1 -1
  379. package/lib/components/spec-transfer/CubeSpecTransferDialog.js +9 -3
  380. package/lib/components/spec-transfer/CubeSpecTransferDialog.js.map +1 -1
  381. package/lib/graph-manager/CubeConnectionExplorer.d.ts +90 -0
  382. package/lib/graph-manager/CubeConnectionExplorer.d.ts.map +1 -0
  383. package/lib/graph-manager/CubeConnectionExplorer.js +34 -0
  384. package/lib/graph-manager/CubeConnectionExplorer.js.map +1 -0
  385. package/lib/graph-manager/CubeDataProduct.d.ts +66 -0
  386. package/lib/graph-manager/CubeDataProduct.d.ts.map +1 -0
  387. package/lib/graph-manager/CubeDataProduct.js +102 -0
  388. package/lib/graph-manager/CubeDataProduct.js.map +1 -0
  389. package/lib/graph-manager/CubeDataProductCatalog.d.ts +177 -0
  390. package/lib/graph-manager/CubeDataProductCatalog.d.ts.map +1 -0
  391. package/lib/graph-manager/CubeDataProductCatalog.js +116 -0
  392. package/lib/graph-manager/CubeDataProductCatalog.js.map +1 -0
  393. package/lib/graph-manager/CubeDirectConnection.d.ts +38 -0
  394. package/lib/graph-manager/CubeDirectConnection.d.ts.map +1 -0
  395. package/lib/graph-manager/CubeDirectConnection.js +48 -0
  396. package/lib/graph-manager/CubeDirectConnection.js.map +1 -0
  397. package/lib/graph-manager/CubeEngine.d.ts +83 -3
  398. package/lib/graph-manager/CubeEngine.d.ts.map +1 -1
  399. package/lib/graph-manager/CubeEngine.js +4 -1
  400. package/lib/graph-manager/CubeEngine.js.map +1 -1
  401. package/lib/graph-manager/CubeEngineClientSettings.d.ts +43 -0
  402. package/lib/graph-manager/CubeEngineClientSettings.d.ts.map +1 -0
  403. package/lib/graph-manager/CubeEngineClientSettings.js +51 -0
  404. package/lib/graph-manager/CubeEngineClientSettings.js.map +1 -0
  405. package/lib/graph-manager/CubeIngest.d.ts +55 -0
  406. package/lib/graph-manager/CubeIngest.d.ts.map +1 -0
  407. package/lib/graph-manager/CubeIngest.js +98 -0
  408. package/lib/graph-manager/CubeIngest.js.map +1 -0
  409. package/lib/graph-manager/CubeIngestCatalog.d.ts +142 -0
  410. package/lib/graph-manager/CubeIngestCatalog.d.ts.map +1 -0
  411. package/lib/graph-manager/CubeIngestCatalog.js +86 -0
  412. package/lib/graph-manager/CubeIngestCatalog.js.map +1 -0
  413. package/lib/graph-manager/CubeLakehouseEnvironment.d.ts +26 -0
  414. package/lib/graph-manager/CubeLakehouseEnvironment.d.ts.map +1 -0
  415. package/lib/graph-manager/CubeLakehouseEnvironment.js +17 -0
  416. package/lib/graph-manager/CubeLakehouseEnvironment.js.map +1 -0
  417. package/lib/graph-manager/CubeLakehouseRuntime.d.ts +29 -0
  418. package/lib/graph-manager/CubeLakehouseRuntime.d.ts.map +1 -0
  419. package/lib/graph-manager/CubeLakehouseRuntime.js +40 -0
  420. package/lib/graph-manager/CubeLakehouseRuntime.js.map +1 -0
  421. package/lib/graph-manager/CubeProject.d.ts +41 -0
  422. package/lib/graph-manager/CubeProject.d.ts.map +1 -0
  423. package/lib/graph-manager/CubeProject.js +84 -0
  424. package/lib/graph-manager/CubeProject.js.map +1 -0
  425. package/lib/graph-manager/CubeProjectCatalog.d.ts +35 -0
  426. package/lib/graph-manager/CubeProjectCatalog.d.ts.map +1 -0
  427. package/lib/graph-manager/CubeProjectCatalog.js +17 -0
  428. package/lib/graph-manager/CubeProjectCatalog.js.map +1 -0
  429. package/lib/graph-manager/CubeService.d.ts +20 -0
  430. package/lib/graph-manager/CubeService.d.ts.map +1 -0
  431. package/lib/graph-manager/CubeService.js +22 -0
  432. package/lib/graph-manager/CubeService.js.map +1 -0
  433. package/lib/graph-manager/CubeServiceCatalog.d.ts +31 -0
  434. package/lib/graph-manager/CubeServiceCatalog.d.ts.map +1 -0
  435. package/lib/graph-manager/CubeServiceCatalog.js +17 -0
  436. package/lib/graph-manager/CubeServiceCatalog.js.map +1 -0
  437. package/lib/graph-manager/protocol/pure/CubeEngineBuilder.d.ts +111 -2
  438. package/lib/graph-manager/protocol/pure/CubeEngineBuilder.d.ts.map +1 -1
  439. package/lib/graph-manager/protocol/pure/CubeEngineBuilder.js +108 -1
  440. package/lib/graph-manager/protocol/pure/CubeEngineBuilder.js.map +1 -1
  441. package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductArtifact.d.ts +44 -0
  442. package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductArtifact.d.ts.map +1 -0
  443. package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductArtifact.js +192 -0
  444. package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductArtifact.js.map +1 -0
  445. package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductModel.d.ts +32 -0
  446. package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductModel.d.ts.map +1 -0
  447. package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductModel.js +88 -0
  448. package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductModel.js.map +1 -0
  449. package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectConnection.d.ts +41 -0
  450. package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectConnection.d.ts.map +1 -0
  451. package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectConnection.js +246 -0
  452. package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectConnection.js.map +1 -0
  453. package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectModel.d.ts +43 -0
  454. package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectModel.d.ts.map +1 -0
  455. package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectModel.js +112 -0
  456. package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectModel.js.map +1 -0
  457. package/lib/graph-manager/protocol/pure/v1/V1_CubeEngineErrors.d.ts.map +1 -1
  458. package/lib/graph-manager/protocol/pure/v1/V1_CubeEngineErrors.js +30 -4
  459. package/lib/graph-manager/protocol/pure/v1/V1_CubeEngineErrors.js.map +1 -1
  460. package/lib/graph-manager/protocol/pure/v1/V1_CubeExpression.d.ts +23 -0
  461. package/lib/graph-manager/protocol/pure/v1/V1_CubeExpression.d.ts.map +1 -0
  462. package/lib/graph-manager/protocol/pure/v1/V1_CubeExpression.js +68 -0
  463. package/lib/graph-manager/protocol/pure/v1/V1_CubeExpression.js.map +1 -0
  464. package/lib/graph-manager/protocol/pure/v1/V1_CubeFunctionOutlineBuilder.d.ts +30 -0
  465. package/lib/graph-manager/protocol/pure/v1/V1_CubeFunctionOutlineBuilder.d.ts.map +1 -0
  466. package/lib/graph-manager/protocol/pure/v1/V1_CubeFunctionOutlineBuilder.js +229 -0
  467. package/lib/graph-manager/protocol/pure/v1/V1_CubeFunctionOutlineBuilder.js.map +1 -0
  468. package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestDefinition.d.ts +30 -0
  469. package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestDefinition.d.ts.map +1 -0
  470. package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestDefinition.js +149 -0
  471. package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestDefinition.js.map +1 -0
  472. package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestModel.d.ts +57 -0
  473. package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestModel.d.ts.map +1 -0
  474. package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestModel.js +120 -0
  475. package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestModel.js.map +1 -0
  476. package/lib/graph-manager/protocol/pure/v1/V1_CubeLakehouseEnvironmentResolver.d.ts +33 -0
  477. package/lib/graph-manager/protocol/pure/v1/V1_CubeLakehouseEnvironmentResolver.d.ts.map +1 -0
  478. package/lib/graph-manager/protocol/pure/v1/V1_CubeLakehouseEnvironmentResolver.js +94 -0
  479. package/lib/graph-manager/protocol/pure/v1/V1_CubeLakehouseEnvironmentResolver.js.map +1 -0
  480. package/lib/graph-manager/protocol/pure/v1/V1_CubeLambdaReader.d.ts +34 -0
  481. package/lib/graph-manager/protocol/pure/v1/V1_CubeLambdaReader.d.ts.map +1 -0
  482. package/lib/graph-manager/protocol/pure/v1/V1_CubeLambdaReader.js +332 -0
  483. package/lib/graph-manager/protocol/pure/v1/V1_CubeLambdaReader.js.map +1 -0
  484. package/lib/graph-manager/protocol/pure/v1/V1_CubeLambdaSerializer.d.ts.map +1 -1
  485. package/lib/graph-manager/protocol/pure/v1/V1_CubeLambdaSerializer.js +111 -13
  486. package/lib/graph-manager/protocol/pure/v1/V1_CubeLambdaSerializer.js.map +1 -1
  487. package/lib/graph-manager/protocol/pure/v1/V1_CubeModelOutlineBuilder.d.ts +1 -1
  488. package/lib/graph-manager/protocol/pure/v1/V1_CubeModelOutlineBuilder.d.ts.map +1 -1
  489. package/lib/graph-manager/protocol/pure/v1/V1_CubeModelOutlineBuilder.js +3 -1
  490. package/lib/graph-manager/protocol/pure/v1/V1_CubeModelOutlineBuilder.js.map +1 -1
  491. package/lib/graph-manager/protocol/pure/v1/V1_CubeSchemaExploration.d.ts +67 -0
  492. package/lib/graph-manager/protocol/pure/v1/V1_CubeSchemaExploration.d.ts.map +1 -0
  493. package/lib/graph-manager/protocol/pure/v1/V1_CubeSchemaExploration.js +238 -0
  494. package/lib/graph-manager/protocol/pure/v1/V1_CubeSchemaExploration.js.map +1 -0
  495. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeConnectionExplorer.d.ts +35 -0
  496. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeConnectionExplorer.d.ts.map +1 -0
  497. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeConnectionExplorer.js +65 -0
  498. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeConnectionExplorer.js.map +1 -0
  499. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeDataProductCatalog.d.ts +104 -0
  500. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeDataProductCatalog.d.ts.map +1 -0
  501. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeDataProductCatalog.js +484 -0
  502. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeDataProductCatalog.js.map +1 -0
  503. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeEngine.d.ts +115 -3
  504. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeEngine.d.ts.map +1 -1
  505. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeEngine.js +654 -21
  506. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeEngine.js.map +1 -1
  507. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeIngestCatalog.d.ts +69 -0
  508. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeIngestCatalog.d.ts.map +1 -0
  509. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeIngestCatalog.js +270 -0
  510. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeIngestCatalog.js.map +1 -0
  511. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeProjectCatalog.d.ts +35 -0
  512. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeProjectCatalog.d.ts.map +1 -0
  513. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeProjectCatalog.js +94 -0
  514. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeProjectCatalog.js.map +1 -0
  515. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeServiceCatalog.d.ts +31 -0
  516. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeServiceCatalog.d.ts.map +1 -0
  517. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeServiceCatalog.js +69 -0
  518. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeServiceCatalog.js.map +1 -0
  519. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeConnectionExplorerTestUtils.d.ts +25 -0
  520. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeConnectionExplorerTestUtils.d.ts.map +1 -0
  521. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeConnectionExplorerTestUtils.js +47 -0
  522. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeConnectionExplorerTestUtils.js.map +1 -0
  523. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductFixtures.d.ts +28 -0
  524. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductFixtures.d.ts.map +1 -0
  525. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductFixtures.js +310 -0
  526. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductFixtures.js.map +1 -0
  527. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductSearchFixtures.d.ts +33 -0
  528. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductSearchFixtures.d.ts.map +1 -0
  529. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductSearchFixtures.js +188 -0
  530. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductSearchFixtures.js.map +1 -0
  531. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeEngineTestUtils.d.ts +1 -1
  532. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeEngineTestUtils.d.ts.map +1 -1
  533. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeEngineTestUtils.js +33 -3
  534. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeEngineTestUtils.js.map +1 -1
  535. package/lib/index.css +2 -2
  536. package/lib/index.css.map +1 -1
  537. package/lib/index.d.ts +22 -3
  538. package/lib/index.d.ts.map +1 -1
  539. package/lib/index.js +19 -1
  540. package/lib/index.js.map +1 -1
  541. package/lib/stores/CubeAddPlacement.d.ts +39 -0
  542. package/lib/stores/CubeAddPlacement.d.ts.map +1 -0
  543. package/lib/stores/CubeAddPlacement.js +51 -0
  544. package/lib/stores/CubeAddPlacement.js.map +1 -0
  545. package/lib/stores/CubeDataProductRecheck.d.ts +27 -0
  546. package/lib/stores/CubeDataProductRecheck.d.ts.map +1 -0
  547. package/lib/stores/CubeDataProductRecheck.js +54 -0
  548. package/lib/stores/CubeDataProductRecheck.js.map +1 -0
  549. package/lib/stores/CubeDataProductRuntimeState.d.ts +88 -0
  550. package/lib/stores/CubeDataProductRuntimeState.d.ts.map +1 -0
  551. package/lib/stores/CubeDataProductRuntimeState.js +190 -0
  552. package/lib/stores/CubeDataProductRuntimeState.js.map +1 -0
  553. package/lib/stores/CubeDataProductWarehouse.d.ts +19 -0
  554. package/lib/stores/CubeDataProductWarehouse.d.ts.map +1 -0
  555. package/lib/stores/CubeDataProductWarehouse.js +25 -0
  556. package/lib/stores/CubeDataProductWarehouse.js.map +1 -0
  557. package/lib/stores/CubeDevSettingsState.d.ts +47 -0
  558. package/lib/stores/CubeDevSettingsState.d.ts.map +1 -0
  559. package/lib/stores/CubeDevSettingsState.js +99 -0
  560. package/lib/stores/CubeDevSettingsState.js.map +1 -0
  561. package/lib/stores/CubeEditorState.d.ts +242 -28
  562. package/lib/stores/CubeEditorState.d.ts.map +1 -1
  563. package/lib/stores/CubeEditorState.js +751 -66
  564. package/lib/stores/CubeEditorState.js.map +1 -1
  565. package/lib/stores/CubeEngineChecks.d.ts +59 -0
  566. package/lib/stores/CubeEngineChecks.d.ts.map +1 -0
  567. package/lib/stores/CubeEngineChecks.js +100 -0
  568. package/lib/stores/CubeEngineChecks.js.map +1 -0
  569. package/lib/stores/CubeEntrySource.d.ts +78 -0
  570. package/lib/stores/CubeEntrySource.d.ts.map +1 -0
  571. package/lib/stores/CubeEntrySource.js +200 -0
  572. package/lib/stores/CubeEntrySource.js.map +1 -0
  573. package/lib/stores/CubeExamples.d.ts +43 -0
  574. package/lib/stores/CubeExamples.d.ts.map +1 -0
  575. package/lib/stores/CubeExamples.js +333 -0
  576. package/lib/stores/CubeExamples.js.map +1 -0
  577. package/lib/stores/CubeExamplesState.d.ts +45 -0
  578. package/lib/stores/CubeExamplesState.d.ts.map +1 -0
  579. package/lib/stores/CubeExamplesState.js +81 -0
  580. package/lib/stores/CubeExamplesState.js.map +1 -0
  581. package/lib/stores/CubeExecutionState.d.ts +6 -2
  582. package/lib/stores/CubeExecutionState.d.ts.map +1 -1
  583. package/lib/stores/CubeExecutionState.js +39 -38
  584. package/lib/stores/CubeExecutionState.js.map +1 -1
  585. package/lib/stores/CubeExportState.d.ts +41 -0
  586. package/lib/stores/CubeExportState.d.ts.map +1 -0
  587. package/lib/stores/CubeExportState.js +134 -0
  588. package/lib/stores/CubeExportState.js.map +1 -0
  589. package/lib/stores/CubeExpressionFilterCheck.d.ts +51 -0
  590. package/lib/stores/CubeExpressionFilterCheck.d.ts.map +1 -0
  591. package/lib/stores/CubeExpressionFilterCheck.js +134 -0
  592. package/lib/stores/CubeExpressionFilterCheck.js.map +1 -0
  593. package/lib/stores/CubeExtendTyping.d.ts +64 -0
  594. package/lib/stores/CubeExtendTyping.d.ts.map +1 -0
  595. package/lib/stores/CubeExtendTyping.js +149 -0
  596. package/lib/stores/CubeExtendTyping.js.map +1 -0
  597. package/lib/stores/CubeFunctionRecheck.d.ts +30 -0
  598. package/lib/stores/CubeFunctionRecheck.d.ts.map +1 -0
  599. package/lib/stores/CubeFunctionRecheck.js +67 -0
  600. package/lib/stores/CubeFunctionRecheck.js.map +1 -0
  601. package/lib/stores/CubeGridFetcher.d.ts +75 -0
  602. package/lib/stores/CubeGridFetcher.d.ts.map +1 -0
  603. package/lib/stores/CubeGridFetcher.js +197 -0
  604. package/lib/stores/CubeGridFetcher.js.map +1 -0
  605. package/lib/stores/CubeGridQuickActions.d.ts +27 -7
  606. package/lib/stores/CubeGridQuickActions.d.ts.map +1 -1
  607. package/lib/stores/CubeGridQuickActions.js +79 -21
  608. package/lib/stores/CubeGridQuickActions.js.map +1 -1
  609. package/lib/stores/CubeGridState.d.ts +136 -0
  610. package/lib/stores/CubeGridState.d.ts.map +1 -0
  611. package/lib/stores/CubeGridState.js +317 -0
  612. package/lib/stores/CubeGridState.js.map +1 -0
  613. package/lib/stores/CubeHost.d.ts +74 -1
  614. package/lib/stores/CubeHost.d.ts.map +1 -1
  615. package/lib/stores/CubeHost.js +25 -1
  616. package/lib/stores/CubeHost.js.map +1 -1
  617. package/lib/stores/CubeIngestRecheck.d.ts +26 -0
  618. package/lib/stores/CubeIngestRecheck.d.ts.map +1 -0
  619. package/lib/stores/CubeIngestRecheck.js +53 -0
  620. package/lib/stores/CubeIngestRecheck.js.map +1 -0
  621. package/lib/stores/CubeLambdaImportState.d.ts +118 -0
  622. package/lib/stores/CubeLambdaImportState.d.ts.map +1 -0
  623. package/lib/stores/CubeLambdaImportState.js +302 -0
  624. package/lib/stores/CubeLambdaImportState.js.map +1 -0
  625. package/lib/stores/CubeLambdaSources.d.ts +45 -0
  626. package/lib/stores/CubeLambdaSources.d.ts.map +1 -0
  627. package/lib/stores/CubeLambdaSources.js +261 -0
  628. package/lib/stores/CubeLambdaSources.js.map +1 -0
  629. package/lib/stores/CubeNodeEditorState.d.ts +101 -5
  630. package/lib/stores/CubeNodeEditorState.d.ts.map +1 -1
  631. package/lib/stores/CubeNodeEditorState.js +221 -10
  632. package/lib/stores/CubeNodeEditorState.js.map +1 -1
  633. package/lib/stores/CubeQueryRun.d.ts +59 -0
  634. package/lib/stores/CubeQueryRun.d.ts.map +1 -0
  635. package/lib/stores/CubeQueryRun.js +101 -0
  636. package/lib/stores/CubeQueryRun.js.map +1 -0
  637. package/lib/stores/CubeRunStatsState.d.ts +61 -0
  638. package/lib/stores/CubeRunStatsState.d.ts.map +1 -0
  639. package/lib/stores/CubeRunStatsState.js +54 -0
  640. package/lib/stores/CubeRunStatsState.js.map +1 -0
  641. package/lib/stores/CubeRunningStepLambda.d.ts +25 -0
  642. package/lib/stores/CubeRunningStepLambda.d.ts.map +1 -0
  643. package/lib/stores/CubeRunningStepLambda.js +45 -0
  644. package/lib/stores/CubeRunningStepLambda.js.map +1 -0
  645. package/lib/stores/CubeServiceRecheck.d.ts +29 -0
  646. package/lib/stores/CubeServiceRecheck.d.ts.map +1 -0
  647. package/lib/stores/CubeServiceRecheck.js +33 -0
  648. package/lib/stores/CubeServiceRecheck.js.map +1 -0
  649. package/lib/stores/CubeShowPureState.d.ts +18 -2
  650. package/lib/stores/CubeShowPureState.d.ts.map +1 -1
  651. package/lib/stores/CubeShowPureState.js +46 -13
  652. package/lib/stores/CubeShowPureState.js.map +1 -1
  653. package/lib/stores/CubeSourcePickerState.d.ts +70 -65
  654. package/lib/stores/CubeSourcePickerState.d.ts.map +1 -1
  655. package/lib/stores/CubeSourcePickerState.js +207 -267
  656. package/lib/stores/CubeSourcePickerState.js.map +1 -1
  657. package/lib/stores/CubeSpecTransferState.d.ts +2 -2
  658. package/lib/stores/CubeSpecTransferState.js +2 -2
  659. package/lib/stores/LocalModelCatalog.d.ts +2 -0
  660. package/lib/stores/LocalModelCatalog.d.ts.map +1 -1
  661. package/lib/stores/LocalModelCatalog.js +19 -3
  662. package/lib/stores/LocalModelCatalog.js.map +1 -1
  663. package/lib/stores/editors/CubeAggregationRows.d.ts +80 -0
  664. package/lib/stores/editors/CubeAggregationRows.d.ts.map +1 -0
  665. package/lib/stores/editors/CubeAggregationRows.js +164 -0
  666. package/lib/stores/editors/CubeAggregationRows.js.map +1 -0
  667. package/lib/stores/editors/CubeConcatDraft.d.ts +30 -0
  668. package/lib/stores/editors/CubeConcatDraft.d.ts.map +1 -0
  669. package/lib/stores/editors/CubeConcatDraft.js +44 -0
  670. package/lib/stores/editors/CubeConcatDraft.js.map +1 -0
  671. package/lib/stores/editors/CubeDifferenceDraft.d.ts +49 -0
  672. package/lib/stores/editors/CubeDifferenceDraft.d.ts.map +1 -0
  673. package/lib/stores/editors/CubeDifferenceDraft.js +111 -0
  674. package/lib/stores/editors/CubeDifferenceDraft.js.map +1 -0
  675. package/lib/stores/editors/CubeExpressionFilterDraft.d.ts +91 -0
  676. package/lib/stores/editors/CubeExpressionFilterDraft.d.ts.map +1 -0
  677. package/lib/stores/editors/CubeExpressionFilterDraft.js +254 -0
  678. package/lib/stores/editors/CubeExpressionFilterDraft.js.map +1 -0
  679. package/lib/stores/editors/CubeExtendDraft.d.ts +110 -0
  680. package/lib/stores/editors/CubeExtendDraft.d.ts.map +1 -0
  681. package/lib/stores/editors/CubeExtendDraft.js +359 -0
  682. package/lib/stores/editors/CubeExtendDraft.js.map +1 -0
  683. package/lib/stores/editors/CubeFunctionDraft.d.ts +34 -0
  684. package/lib/stores/editors/CubeFunctionDraft.d.ts.map +1 -0
  685. package/lib/stores/editors/CubeFunctionDraft.js +69 -0
  686. package/lib/stores/editors/CubeFunctionDraft.js.map +1 -0
  687. package/lib/stores/editors/CubeGroupDraft.d.ts +61 -0
  688. package/lib/stores/editors/CubeGroupDraft.d.ts.map +1 -0
  689. package/lib/stores/editors/CubeGroupDraft.js +106 -0
  690. package/lib/stores/editors/CubeGroupDraft.js.map +1 -0
  691. package/lib/stores/editors/CubeJoinDraft.d.ts +9 -10
  692. package/lib/stores/editors/CubeJoinDraft.d.ts.map +1 -1
  693. package/lib/stores/editors/CubeJoinDraft.js +92 -21
  694. package/lib/stores/editors/CubeJoinDraft.js.map +1 -1
  695. package/lib/stores/editors/CubeJoinKeyPairs.d.ts +38 -0
  696. package/lib/stores/editors/CubeJoinKeyPairs.d.ts.map +1 -0
  697. package/lib/stores/editors/CubeJoinKeyPairs.js +33 -0
  698. package/lib/stores/editors/CubeJoinKeyPairs.js.map +1 -0
  699. package/lib/stores/editors/CubeNodeDraft.d.ts +20 -6
  700. package/lib/stores/editors/CubeNodeDraft.d.ts.map +1 -1
  701. package/lib/stores/editors/CubeNodeDraft.js +23 -5
  702. package/lib/stores/editors/CubeNodeDraft.js.map +1 -1
  703. package/lib/stores/editors/CubeNodeDraftRegistry.d.ts +4 -2
  704. package/lib/stores/editors/CubeNodeDraftRegistry.d.ts.map +1 -1
  705. package/lib/stores/editors/CubeNodeDraftRegistry.js +39 -3
  706. package/lib/stores/editors/CubeNodeDraftRegistry.js.map +1 -1
  707. package/lib/stores/editors/CubePartitionDraft.d.ts +70 -0
  708. package/lib/stores/editors/CubePartitionDraft.d.ts.map +1 -0
  709. package/lib/stores/editors/CubePartitionDraft.js +154 -0
  710. package/lib/stores/editors/CubePartitionDraft.js.map +1 -0
  711. package/lib/stores/editors/CubePivotDraft.d.ts +93 -0
  712. package/lib/stores/editors/CubePivotDraft.d.ts.map +1 -0
  713. package/lib/stores/editors/CubePivotDraft.js +267 -0
  714. package/lib/stores/editors/CubePivotDraft.js.map +1 -0
  715. package/lib/stores/editors/CubeSortDraft.d.ts +2 -10
  716. package/lib/stores/editors/CubeSortDraft.d.ts.map +1 -1
  717. package/lib/stores/editors/CubeSortDraft.js +9 -35
  718. package/lib/stores/editors/CubeSortDraft.js.map +1 -1
  719. package/lib/stores/editors/CubeSortRows.d.ts +34 -0
  720. package/lib/stores/editors/CubeSortRows.d.ts.map +1 -0
  721. package/lib/stores/editors/CubeSortRows.js +50 -0
  722. package/lib/stores/editors/CubeSortRows.js.map +1 -0
  723. package/lib/stores/fixtures/CubeNorthwindModel.d.ts +7 -0
  724. package/lib/stores/fixtures/CubeNorthwindModel.d.ts.map +1 -1
  725. package/lib/stores/fixtures/CubeNorthwindModel.js +99 -87
  726. package/lib/stores/fixtures/CubeNorthwindModel.js.map +1 -1
  727. package/lib/stores/fixtures/CubeSalesDuckDbModel.d.ts +26 -0
  728. package/lib/stores/fixtures/CubeSalesDuckDbModel.d.ts.map +1 -0
  729. package/lib/stores/fixtures/CubeSalesDuckDbModel.js +46 -0
  730. package/lib/stores/fixtures/CubeSalesDuckDbModel.js.map +1 -0
  731. package/lib/stores/fixtures/CubeSampleSql.d.ts +34 -0
  732. package/lib/stores/fixtures/CubeSampleSql.d.ts.map +1 -0
  733. package/lib/stores/fixtures/CubeSampleSql.js +64 -0
  734. package/lib/stores/fixtures/CubeSampleSql.js.map +1 -0
  735. package/lib/stores/fixtures/CubeSportsModel.d.ts +27 -0
  736. package/lib/stores/fixtures/CubeSportsModel.d.ts.map +1 -0
  737. package/lib/stores/fixtures/CubeSportsModel.js +158 -0
  738. package/lib/stores/fixtures/CubeSportsModel.js.map +1 -0
  739. package/lib/stores/fixtures/CubeTradesModel.d.ts +33 -0
  740. package/lib/stores/fixtures/CubeTradesModel.d.ts.map +1 -0
  741. package/lib/stores/fixtures/CubeTradesModel.js +227 -0
  742. package/lib/stores/fixtures/CubeTradesModel.js.map +1 -0
  743. package/lib/stores/source-picker/CubeCsvSetupSql.d.ts +71 -0
  744. package/lib/stores/source-picker/CubeCsvSetupSql.d.ts.map +1 -0
  745. package/lib/stores/source-picker/CubeCsvSetupSql.js +392 -0
  746. package/lib/stores/source-picker/CubeCsvSetupSql.js.map +1 -0
  747. package/lib/stores/source-picker/CubeDataProductTabState.d.ts +215 -0
  748. package/lib/stores/source-picker/CubeDataProductTabState.d.ts.map +1 -0
  749. package/lib/stores/source-picker/CubeDataProductTabState.js +766 -0
  750. package/lib/stores/source-picker/CubeDataProductTabState.js.map +1 -0
  751. package/lib/stores/source-picker/CubeDirectConnectionTabState.d.ts +163 -0
  752. package/lib/stores/source-picker/CubeDirectConnectionTabState.d.ts.map +1 -0
  753. package/lib/stores/source-picker/CubeDirectConnectionTabState.js +668 -0
  754. package/lib/stores/source-picker/CubeDirectConnectionTabState.js.map +1 -0
  755. package/lib/stores/source-picker/CubeIngestTabState.d.ts +127 -0
  756. package/lib/stores/source-picker/CubeIngestTabState.d.ts.map +1 -0
  757. package/lib/stores/source-picker/CubeIngestTabState.js +510 -0
  758. package/lib/stores/source-picker/CubeIngestTabState.js.map +1 -0
  759. package/lib/stores/source-picker/CubeInlineModelTabState.d.ts +203 -0
  760. package/lib/stores/source-picker/CubeInlineModelTabState.d.ts.map +1 -0
  761. package/lib/stores/source-picker/CubeInlineModelTabState.js +734 -0
  762. package/lib/stores/source-picker/CubeInlineModelTabState.js.map +1 -0
  763. package/lib/stores/source-picker/CubeProjectTabState.d.ts +77 -0
  764. package/lib/stores/source-picker/CubeProjectTabState.d.ts.map +1 -0
  765. package/lib/stores/source-picker/CubeProjectTabState.js +206 -0
  766. package/lib/stores/source-picker/CubeProjectTabState.js.map +1 -0
  767. package/lib/stores/source-picker/CubeServiceTabState.d.ts +74 -0
  768. package/lib/stores/source-picker/CubeServiceTabState.d.ts.map +1 -0
  769. package/lib/stores/source-picker/CubeServiceTabState.js +216 -0
  770. package/lib/stores/source-picker/CubeServiceTabState.js.map +1 -0
  771. package/lib/stores/source-picker/CubeSourcePickerTab.d.ts +60 -0
  772. package/lib/stores/source-picker/CubeSourcePickerTab.d.ts.map +1 -0
  773. package/lib/stores/source-picker/CubeSourcePickerTab.js +45 -0
  774. package/lib/stores/source-picker/CubeSourcePickerTab.js.map +1 -0
  775. package/package.json +12 -7
  776. package/src/__lib__/LegendCubeCommand.ts +12 -0
  777. package/src/__lib__/LegendCubeDataProductLabels.ts +91 -0
  778. package/src/__lib__/LegendCubeDirectConnectionLabels.ts +111 -0
  779. package/src/__lib__/LegendCubeFunctionLabels.ts +41 -0
  780. package/src/__lib__/LegendCubeHelpText.ts +48 -2
  781. package/src/__lib__/LegendCubeIngestLabels.ts +40 -0
  782. package/src/__lib__/LegendCubeLabels.ts +327 -12
  783. package/src/__lib__/LegendCubeProjectLabels.ts +25 -0
  784. package/src/__lib__/LegendCubeProjectSourceLabels.ts +26 -0
  785. package/src/__lib__/LegendCubeServiceLabels.ts +41 -0
  786. package/src/__lib__/LegendCubeTesting.ts +8 -0
  787. package/src/__test-utils__/CubeCanvasTestUtils.ts +1 -1
  788. package/src/__test-utils__/CubeConnectionTestSupport.ts +45 -0
  789. package/src/__test-utils__/CubeDirectConnectionFixtures.ts +70 -0
  790. package/src/__test-utils__/CubeEngineTestSupport.ts +40 -1
  791. package/src/__test-utils__/CubeExpressionTestUtils.ts +146 -0
  792. package/src/__test-utils__/CubeFunctionTestOutline.ts +78 -0
  793. package/src/__test-utils__/CubeLambdaCorpus.ts +137 -0
  794. package/src/__test-utils__/CubeOperationsTestUtils.ts +93 -18
  795. package/src/__test-utils__/CubePageTestUtils.tsx +69 -0
  796. package/src/__test-utils__/CubeTestApplication.ts +46 -2
  797. package/src/__test-utils__/FakeCubeConnectionExplorer.ts +111 -0
  798. package/src/__test-utils__/FakeCubeDataProductCatalog.ts +227 -0
  799. package/src/__test-utils__/FakeCubeEngine.ts +52 -1
  800. package/src/__test-utils__/FakeCubeIngestCatalog.ts +198 -0
  801. package/src/__test-utils__/FakeCubeProjectCatalog.ts +89 -0
  802. package/src/__test-utils__/FakeCubeServiceCatalog.ts +57 -0
  803. package/src/components/CubeAddItems.tsx +186 -0
  804. package/src/components/CubeDialogTheme.ts +25 -0
  805. package/src/components/CubeEditor.tsx +195 -140
  806. package/src/components/CubeEntrySourceBanner.tsx +64 -0
  807. package/src/components/CubeFileMenu.tsx +127 -0
  808. package/src/components/CubeLambdaImportBanner.tsx +97 -0
  809. package/src/components/CubeNodeIcon.tsx +20 -0
  810. package/src/components/CubeSchemaColumnsTable.tsx +54 -0
  811. package/src/components/canvas/CubeCanvas.tsx +94 -20
  812. package/src/components/canvas/CubeCanvasContextMenu.tsx +64 -32
  813. package/src/components/canvas/CubeCanvasDnd.ts +16 -9
  814. package/src/components/canvas/CubeCanvasElements.ts +84 -5
  815. package/src/components/canvas/CubeCanvasLayout.ts +1 -1
  816. package/src/components/canvas/CubeCanvasNode.tsx +88 -43
  817. package/src/components/canvas/CubeCanvasNodeFocus.ts +37 -0
  818. package/src/components/canvas/CubeNodeEditorAnchor.ts +82 -0
  819. package/src/components/dev-settings/CubeDevSettings.tsx +154 -0
  820. package/src/components/editors/CubeAggregationRowEditor.tsx +224 -0
  821. package/src/components/editors/CubeColumnChecklist.tsx +136 -0
  822. package/src/components/editors/CubeColumnPicker.tsx +6 -3
  823. package/src/components/editors/CubeConcatEditor.tsx +374 -0
  824. package/src/components/editors/CubeDataProductSourceEditor.tsx +134 -0
  825. package/src/components/editors/CubeDifferenceEditor.tsx +87 -0
  826. package/src/components/editors/CubeExpressionFilterEditor.tsx +193 -0
  827. package/src/components/editors/CubeExtendEditor.tsx +271 -0
  828. package/src/components/editors/CubeFilterEditor.tsx +20 -1
  829. package/src/components/editors/CubeFunctionSourceEditor.tsx +140 -0
  830. package/src/components/editors/CubeGroupEditor.tsx +135 -0
  831. package/src/components/editors/CubeIngestSourceEditor.tsx +104 -0
  832. package/src/components/editors/CubeJoinEditor.tsx +34 -135
  833. package/src/components/editors/CubeJoinKeyRows.tsx +183 -0
  834. package/src/components/editors/CubeNodeEditorPanel.tsx +111 -36
  835. package/src/components/editors/CubeNodeEditorPopper.tsx +191 -0
  836. package/src/components/editors/CubeNodeEditorRegistry.ts +33 -0
  837. package/src/components/editors/CubePartitionEditor.tsx +208 -0
  838. package/src/components/editors/CubePivotEditor.tsx +277 -0
  839. package/src/components/editors/CubeRenameEditor.tsx +10 -5
  840. package/src/components/editors/CubeRestrictEditor.tsx +9 -3
  841. package/src/components/editors/CubeServiceSourceEditor.tsx +77 -0
  842. package/src/components/editors/CubeSortEditor.tsx +20 -142
  843. package/src/components/editors/CubeSortRowEditor.tsx +176 -0
  844. package/src/components/editors/CubeSourceEditor.tsx +42 -30
  845. package/src/components/editors/CubeWarehouseControl.tsx +113 -0
  846. package/src/components/editors/useCubeNodeEditorDismiss.ts +103 -0
  847. package/src/components/examples/CubeExamplesDialog.tsx +199 -0
  848. package/src/components/grid/CubeColumnFormatDialog.tsx +289 -0
  849. package/src/components/grid/CubeDrilldownBar.tsx +219 -0
  850. package/src/components/grid/CubeGridRegion.tsx +214 -60
  851. package/src/components/grid/CubeGridValues.ts +201 -1
  852. package/src/components/grid/CubeResultGrid.tsx +461 -43
  853. package/src/components/grid/CubeRunStatsPanel.tsx +156 -0
  854. package/src/components/grid/CubeServerSideGrid.tsx +200 -0
  855. package/src/components/grid/CubeSqlDialog.tsx +90 -0
  856. package/src/components/grid/CubeSqlFormat.ts +37 -0
  857. package/src/components/palette/CubePalette.tsx +70 -19
  858. package/src/components/show-pure/CubeShowPureDialog.tsx +19 -5
  859. package/src/components/source-picker/CubeDataProductTab.tsx +486 -0
  860. package/src/components/source-picker/CubeDirectConnectionTab.tsx +352 -0
  861. package/src/components/source-picker/CubeFunctionSteps.tsx +244 -0
  862. package/src/components/source-picker/CubeIngestTab.tsx +312 -0
  863. package/src/components/source-picker/CubeInlineModelTab.tsx +220 -0
  864. package/src/components/source-picker/CubePickerListItem.tsx +118 -0
  865. package/src/components/source-picker/CubePickerStep.tsx +49 -0
  866. package/src/components/source-picker/CubeProjectTab.tsx +117 -0
  867. package/src/components/source-picker/CubeServiceTab.tsx +151 -0
  868. package/src/components/source-picker/CubeSourcePicker.tsx +99 -228
  869. package/src/components/source-picker/CubeTablePreview.tsx +49 -0
  870. package/src/components/spec-transfer/CubeImportPureDialog.tsx +122 -0
  871. package/src/components/spec-transfer/CubeSpecTransferDialog.tsx +22 -9
  872. package/src/graph-manager/CubeConnectionExplorer.ts +106 -0
  873. package/src/graph-manager/CubeDataProduct.ts +150 -0
  874. package/src/graph-manager/CubeDataProductCatalog.ts +256 -0
  875. package/src/graph-manager/CubeDirectConnection.ts +67 -0
  876. package/src/graph-manager/CubeEngine.ts +94 -2
  877. package/src/graph-manager/CubeEngineClientSettings.ts +64 -0
  878. package/src/graph-manager/CubeIngest.ts +159 -0
  879. package/src/graph-manager/CubeIngestCatalog.ts +202 -0
  880. package/src/graph-manager/CubeLakehouseEnvironment.ts +27 -0
  881. package/src/graph-manager/CubeLakehouseRuntime.ts +43 -0
  882. package/src/graph-manager/CubeProject.ts +117 -0
  883. package/src/graph-manager/CubeProjectCatalog.ts +40 -0
  884. package/src/graph-manager/CubeService.ts +29 -0
  885. package/src/graph-manager/CubeServiceCatalog.ts +35 -0
  886. package/src/graph-manager/protocol/pure/CubeEngineBuilder.ts +256 -2
  887. package/src/graph-manager/protocol/pure/v1/V1_CubeDataProductArtifact.ts +251 -0
  888. package/src/graph-manager/protocol/pure/v1/V1_CubeDataProductModel.ts +107 -0
  889. package/src/graph-manager/protocol/pure/v1/V1_CubeDirectConnection.ts +339 -0
  890. package/src/graph-manager/protocol/pure/v1/V1_CubeDirectModel.ts +151 -0
  891. package/src/graph-manager/protocol/pure/v1/V1_CubeEngineErrors.ts +45 -4
  892. package/src/graph-manager/protocol/pure/v1/V1_CubeExpression.ts +89 -0
  893. package/src/graph-manager/protocol/pure/v1/V1_CubeFunctionOutlineBuilder.ts +312 -0
  894. package/src/graph-manager/protocol/pure/v1/V1_CubeIngestDefinition.ts +227 -0
  895. package/src/graph-manager/protocol/pure/v1/V1_CubeIngestModel.ts +174 -0
  896. package/src/graph-manager/protocol/pure/v1/V1_CubeLakehouseEnvironmentResolver.ts +141 -0
  897. package/src/graph-manager/protocol/pure/v1/V1_CubeLambdaReader.ts +471 -0
  898. package/src/graph-manager/protocol/pure/v1/V1_CubeLambdaSerializer.ts +153 -18
  899. package/src/graph-manager/protocol/pure/v1/V1_CubeModelOutlineBuilder.ts +3 -1
  900. package/src/graph-manager/protocol/pure/v1/V1_CubeSchemaExploration.ts +361 -0
  901. package/src/graph-manager/protocol/pure/v1/V1_LegendCubeConnectionExplorer.ts +122 -0
  902. package/src/graph-manager/protocol/pure/v1/V1_LegendCubeDataProductCatalog.ts +744 -0
  903. package/src/graph-manager/protocol/pure/v1/V1_LegendCubeEngine.ts +1083 -25
  904. package/src/graph-manager/protocol/pure/v1/V1_LegendCubeIngestCatalog.ts +459 -0
  905. package/src/graph-manager/protocol/pure/v1/V1_LegendCubeProjectCatalog.ts +152 -0
  906. package/src/graph-manager/protocol/pure/v1/V1_LegendCubeServiceCatalog.ts +92 -0
  907. package/src/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeConnectionExplorerTestUtils.ts +61 -0
  908. package/src/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductFixtures.ts +337 -0
  909. package/src/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductSearchFixtures.ts +206 -0
  910. package/src/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeEngineTestUtils.ts +48 -2
  911. package/src/index.ts +52 -2
  912. package/src/stores/CubeAddPlacement.ts +87 -0
  913. package/src/stores/CubeDataProductRecheck.ts +93 -0
  914. package/src/stores/CubeDataProductRuntimeState.ts +256 -0
  915. package/src/stores/CubeDataProductWarehouse.ts +40 -0
  916. package/src/stores/CubeDevSettingsState.ts +117 -0
  917. package/src/stores/CubeEditorState.ts +1030 -92
  918. package/src/stores/CubeEngineChecks.ts +240 -0
  919. package/src/stores/CubeEntrySource.ts +278 -0
  920. package/src/stores/CubeExamples.ts +526 -0
  921. package/src/stores/CubeExamplesState.ts +110 -0
  922. package/src/stores/CubeExecutionState.ts +50 -62
  923. package/src/stores/CubeExportState.ts +196 -0
  924. package/src/stores/CubeExpressionFilterCheck.ts +218 -0
  925. package/src/stores/CubeExtendTyping.ts +251 -0
  926. package/src/stores/CubeFunctionRecheck.ts +97 -0
  927. package/src/stores/CubeGridFetcher.ts +302 -0
  928. package/src/stores/CubeGridQuickActions.ts +97 -20
  929. package/src/stores/CubeGridState.ts +450 -0
  930. package/src/stores/CubeHost.ts +119 -1
  931. package/src/stores/CubeIngestRecheck.ts +92 -0
  932. package/src/stores/CubeLambdaImportState.ts +434 -0
  933. package/src/stores/CubeLambdaSources.ts +390 -0
  934. package/src/stores/CubeNodeEditorState.ts +278 -9
  935. package/src/stores/CubeQueryRun.ts +169 -0
  936. package/src/stores/CubeRunStatsState.ts +91 -0
  937. package/src/stores/CubeRunningStepLambda.ts +62 -0
  938. package/src/stores/CubeServiceRecheck.ts +53 -0
  939. package/src/stores/CubeShowPureState.ts +57 -15
  940. package/src/stores/CubeSourcePickerState.ts +231 -325
  941. package/src/stores/CubeSpecTransferState.ts +2 -2
  942. package/src/stores/LocalModelCatalog.ts +27 -3
  943. package/src/stores/editors/CubeAggregationRows.ts +299 -0
  944. package/src/stores/editors/CubeConcatDraft.ts +49 -0
  945. package/src/stores/editors/CubeDifferenceDraft.ts +147 -0
  946. package/src/stores/editors/CubeExpressionFilterDraft.ts +385 -0
  947. package/src/stores/editors/CubeExtendDraft.ts +532 -0
  948. package/src/stores/editors/CubeFunctionDraft.ts +92 -0
  949. package/src/stores/editors/CubeGroupDraft.ts +145 -0
  950. package/src/stores/editors/CubeJoinDraft.ts +130 -41
  951. package/src/stores/editors/CubeJoinKeyPairs.ts +68 -0
  952. package/src/stores/editors/CubeNodeDraft.ts +26 -6
  953. package/src/stores/editors/CubeNodeDraftRegistry.ts +52 -2
  954. package/src/stores/editors/CubePartitionDraft.ts +214 -0
  955. package/src/stores/editors/CubePivotDraft.ts +355 -0
  956. package/src/stores/editors/CubeSortDraft.ts +17 -54
  957. package/src/stores/editors/CubeSortRows.ts +84 -0
  958. package/src/stores/fixtures/CubeNorthwindModel.ts +103 -88
  959. package/src/stores/fixtures/CubeSalesDuckDbModel.ts +54 -0
  960. package/src/stores/fixtures/CubeSampleSql.ts +85 -0
  961. package/src/stores/fixtures/CubeSportsModel.ts +182 -0
  962. package/src/stores/fixtures/CubeTradesModel.ts +276 -0
  963. package/src/stores/source-picker/CubeCsvSetupSql.ts +444 -0
  964. package/src/stores/source-picker/CubeDataProductTabState.ts +966 -0
  965. package/src/stores/source-picker/CubeDirectConnectionTabState.ts +846 -0
  966. package/src/stores/source-picker/CubeIngestTabState.ts +625 -0
  967. package/src/stores/source-picker/CubeInlineModelTabState.ts +928 -0
  968. package/src/stores/source-picker/CubeProjectTabState.ts +250 -0
  969. package/src/stores/source-picker/CubeServiceTabState.ts +288 -0
  970. package/src/stores/source-picker/CubeSourcePickerTab.ts +79 -0
  971. package/tsconfig.json +139 -0
@@ -0,0 +1,149 @@
1
+ /**
2
+ * Copyright (c) 2026-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 { colSpec, colSpecArray, EmitRole, func, getExtendSignature, hashText, lambda, lambdaJson, originOf, printIR, QueryEmitter, stableJsonText, } from '@finos/legend-cube';
17
+ import { CubeEngineError, CubeEngineErrorKind, } from '../graph-manager/CubeEngine.js';
18
+ // Typing an Extend's columns with the engine (PLAN §11.7): its input's
19
+ // relation, as Cube types any node, then one extend per column. The whole
20
+ // chain gives every type; each shorter chain, typed with it, tells which
21
+ // column the engine fails on, since a stored lambda has no locations.
22
+ /** An engine message without the compiler's ` - Context:[…]` trail, which repeats what it was doing */
23
+ export const withoutEngineContext = (message) => message.replace(/ - Context:\[[^\n]*/gu, '');
24
+ /** The key of the lambda that types the first `count` columns */
25
+ const keyOf = (extendId, count) => `${extendId}#${count}`;
26
+ /**
27
+ * The lambdas that type an Extend's columns, by key: the input's relation
28
+ * then the first k columns, for every k. A located lambda keeps its
29
+ * locations, so an error points into its text; a stored one is marked with
30
+ * the Extend, so an error lands on it. The input must be valid.
31
+ */
32
+ export const buildCubeExtendTypingLambdas = (query, extend, columns, registry, located) => {
33
+ const [inputId] = query.getInputIds(extend.id);
34
+ if (inputId === undefined) {
35
+ throw new Error(`Extend "${extend.id}" has no input to type it on`);
36
+ }
37
+ const input = new QueryEmitter(query, registry).emitRelation(inputId);
38
+ const lambdas = new Map();
39
+ columns.reduce((relation, column, index) => {
40
+ const extended = func('extend', [
41
+ relation,
42
+ colSpecArray([
43
+ colSpec(column.name, lambdaJson(column.lambda, located ? undefined : originOf(extend.id, EmitRole.EXPRESSION))),
44
+ ]),
45
+ ]);
46
+ lambdas.set(keyOf(extend.id, index + 1), lambda([], [extended]));
47
+ return extended;
48
+ }, input);
49
+ return lambdas;
50
+ };
51
+ /** Each model's digest, by the object, so a large model is digested once */
52
+ const MODEL_DIGESTS = new WeakMap();
53
+ const digestModel = (model) => {
54
+ let digest = MODEL_DIGESTS.get(model);
55
+ if (digest === undefined) {
56
+ digest = hashText(stableJsonText(model));
57
+ MODEL_DIGESTS.set(model, digest);
58
+ }
59
+ return digest;
60
+ };
61
+ /**
62
+ * What the engine is given for a node's input when it types an Extend or
63
+ * checks a Filter by Expression, digested (PLAN §11.7, §11.11): the input's
64
+ * relation as emitted, and the model. A typing or a check records it
65
+ * (`upstream`), since the engine sees more than Cube's schema does;
66
+ * `undefined` when the input can't be emitted, e.g. it is invalid.
67
+ */
68
+ export const getCubeExtendUpstream = (emitter, extendId, model) => {
69
+ const [inputId] = emitter.query.getInputIds(extendId);
70
+ if (inputId === undefined || !emitter.canEmit(inputId)) {
71
+ return undefined;
72
+ }
73
+ return hashText(`${digestModel(model)}\n${printIR(emitter.emitRelation(inputId))}`);
74
+ };
75
+ /** The digest of what the engine was given for the input, which the typing recorded */
76
+ export const getCubeExtendTypingUpstream = (typing) => typing.kind === 'unresolved' ? undefined : typing.upstream;
77
+ const upstreamOf = getCubeExtendTypingUpstream;
78
+ /**
79
+ * Whether the Extend's typing gives its types for this input: typed, for
80
+ * this schema and these columns, and for this input as the engine is given
81
+ * it, or recorded without it, as when loaded
82
+ */
83
+ export const isCubeExtendTypingCurrent = (extend, input, upstream) => {
84
+ const { typing } = extend;
85
+ const recorded = upstreamOf(typing);
86
+ return (typing.kind === 'typed' &&
87
+ extend.currentTyping(input) === typing &&
88
+ (recorded === undefined || recorded === upstream));
89
+ };
90
+ /**
91
+ * The typing the engine's answers give, for this input and these columns:
92
+ * every column's type, from the whole chain, else the first column whose
93
+ * chain fails, with the engine's error (a network failure on none)
94
+ */
95
+ export const readCubeExtendTyping = (answers, extend, input, columns, upstream) => {
96
+ const signature = getExtendSignature(input, extend.columns);
97
+ const whole = answers.get(keyOf(extend.id, columns.length));
98
+ if (whole !== undefined && !(whole instanceof CubeEngineError)) {
99
+ return {
100
+ typing: {
101
+ kind: 'typed',
102
+ signature,
103
+ types: whole.columns
104
+ .slice(-columns.length)
105
+ .map((column) => column.type),
106
+ upstream,
107
+ },
108
+ };
109
+ }
110
+ const failing = columns.findIndex((_, index) => answers.get(keyOf(extend.id, index + 1)) instanceof CubeEngineError);
111
+ const error = answers.get(keyOf(extend.id, failing + 1)) ??
112
+ new CubeEngineError(CubeEngineErrorKind.NETWORK, 'The engine gave no type for these columns', extend.id);
113
+ return {
114
+ typing: {
115
+ kind: 'failed',
116
+ signature,
117
+ message: withoutEngineContext(error.detail),
118
+ column: failing < 0 || error.kind === CubeEngineErrorKind.NETWORK
119
+ ? undefined
120
+ : failing,
121
+ upstream,
122
+ },
123
+ error,
124
+ };
125
+ };
126
+ /**
127
+ * Whether two typings say the same: the same kind, signature and input as
128
+ * the engine was given it, and the same types, or the same failure
129
+ */
130
+ export const isSameCubeExtendTyping = (a, b) => {
131
+ if (upstreamOf(a) !== upstreamOf(b)) {
132
+ return false;
133
+ }
134
+ if (a.kind === 'typed' && b.kind === 'typed') {
135
+ return (a.signature === b.signature &&
136
+ a.types.length === b.types.length &&
137
+ a.types.every((type, index) => {
138
+ const other = b.types[index];
139
+ return other !== undefined && type.equals(other);
140
+ }));
141
+ }
142
+ if (a.kind === 'failed' && b.kind === 'failed') {
143
+ return (a.signature === b.signature &&
144
+ a.message === b.message &&
145
+ a.column === b.column);
146
+ }
147
+ return a.kind === 'unresolved' && b.kind === 'unresolved';
148
+ };
149
+ //# sourceMappingURL=CubeExtendTyping.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CubeExtendTyping.js","sourceRoot":"","sources":["../../src/stores/CubeExtendTyping.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Copyright (c) 2026-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 FunctionSource, type IR, type ModelContext, type Schema } from '@finos/legend-cube';
17
+ import { CubeEngineError, type CubeEngine, type NodeId } from '../graph-manager/CubeEngine.js';
18
+ /**
19
+ * The lambda that types a function source, `{| sales::ordersAbove(…)}`: its
20
+ * values where they are valid, else a placeholder of the parameter's type, or
21
+ * `[]` for an empty optional one
22
+ */
23
+ export declare const buildCubeFunctionTypingLambda: (source: FunctionSource) => IR;
24
+ /**
25
+ * Types a cube's functions again with the engine (PLAN §6.5), in one call:
26
+ * their columns as the engine types the call. One answer per source,
27
+ * failures included; never rejects.
28
+ */
29
+ export declare const recheckCubeFunctionSources: (engine: CubeEngine, model: ModelContext, sources: readonly FunctionSource[]) => Promise<Map<NodeId, Schema | CubeEngineError>>;
30
+ //# sourceMappingURL=CubeFunctionRecheck.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CubeFunctionRecheck.d.ts","sourceRoot":"","sources":["../../src/stores/CubeFunctionRecheck.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAGL,KAAK,cAAc,EAEnB,KAAK,EAAE,EAGP,KAAK,YAAY,EACjB,KAAK,MAAM,EACZ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,eAAe,EAEf,KAAK,UAAU,EACf,KAAK,MAAM,EACZ,MAAM,gCAAgC,CAAC;AAcxC;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,GAAI,QAAQ,cAAc,KAAG,EAatE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,GACrC,QAAQ,UAAU,EAClB,OAAO,YAAY,EACnB,SAAS,SAAS,cAAc,EAAE,KACjC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,eAAe,CAAC,CAqB/C,CAAC"}
@@ -0,0 +1,67 @@
1
+ /**
2
+ * Copyright (c) 2026-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 { emitFunctionSource, getLiteralKinds, lambda, } from '@finos/legend-cube';
17
+ import { CubeEngineError, CubeEngineErrorKind, } from '../graph-manager/CubeEngine.js';
18
+ /** A value of each kind, which only types the call: a function's columns don't depend on its values */
19
+ const PLACEHOLDERS = {
20
+ string: { kind: 'string', value: '' },
21
+ boolean: { kind: 'boolean', value: false },
22
+ integer: { kind: 'integer', value: '0' },
23
+ float: { kind: 'float', value: '0' },
24
+ decimal: { kind: 'decimal', value: '0' },
25
+ strictDate: { kind: 'strictDate', value: '2000-01-01' },
26
+ dateTime: { kind: 'dateTime', value: '2000-01-01T00:00:00' },
27
+ enum: { kind: 'enum', value: '' },
28
+ };
29
+ /**
30
+ * The lambda that types a function source, `{| sales::ordersAbove(…)}`: its
31
+ * values where they are valid, else a placeholder of the parameter's type, or
32
+ * `[]` for an empty optional one
33
+ */
34
+ export const buildCubeFunctionTypingLambda = (source) => {
35
+ const values = source.parameters.map((parameter, index) => {
36
+ const value = source.values[index];
37
+ if (value !== undefined && value.kind !== 'invalid') {
38
+ return value;
39
+ }
40
+ if (value === undefined && parameter.optional) {
41
+ return undefined;
42
+ }
43
+ const [kind] = getLiteralKinds(parameter.type);
44
+ return kind ? PLACEHOLDERS[kind] : undefined;
45
+ });
46
+ return lambda([], [emitFunctionSource(source.withValues(values))]);
47
+ };
48
+ /**
49
+ * Types a cube's functions again with the engine (PLAN §6.5), in one call:
50
+ * their columns as the engine types the call. One answer per source,
51
+ * failures included; never rejects.
52
+ */
53
+ export const recheckCubeFunctionSources = async (engine, model, sources) => {
54
+ try {
55
+ return await engine.typeLambdas(model, new Map(sources.map((source) => [
56
+ source.id,
57
+ buildCubeFunctionTypingLambda(source),
58
+ ])));
59
+ }
60
+ catch (error) {
61
+ const failure = error instanceof CubeEngineError
62
+ ? error
63
+ : new CubeEngineError(CubeEngineErrorKind.NETWORK, error instanceof Error ? error.message : String(error));
64
+ return new Map(sources.map((source) => [source.id, failure]));
65
+ }
66
+ };
67
+ //# sourceMappingURL=CubeFunctionRecheck.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CubeFunctionRecheck.js","sourceRoot":"","sources":["../../src/stores/CubeFunctionRecheck.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,75 @@
1
+ /**
2
+ * Copyright (c) 2026-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 ColumnDirection, type DrilldownCell, type DrilldownLevel } from '@finos/legend-cube';
17
+ import { type CubeResultValue } from '../graph-manager/CubeEngine.js';
18
+ import type { CubeEditorState } from './CubeEditorState.js';
19
+ import type { CubeExecutionResult } from './CubeExecutionState.js';
20
+ /** A row of a level, by the run's column positions */
21
+ export interface CubeGridRow {
22
+ /** Each run column's value, `undefined` where the level shows none (a group row's column with no aggregation) */
23
+ readonly cells: readonly (CubeResultValue | undefined)[];
24
+ /** On a group row, how many of the run's rows the group holds */
25
+ readonly count?: number | undefined;
26
+ }
27
+ /** The rows of one level of the grid: the run's rows, or groups of them */
28
+ export interface CubeGridLevelRows {
29
+ readonly level: DrilldownLevel;
30
+ readonly rows: readonly CubeGridRow[];
31
+ /** The engine returned more than the run's row limit */
32
+ readonly limited: boolean;
33
+ }
34
+ /** An answer for rows the grid no longer shows: a newer run, or the grid purged its rows; it is dropped */
35
+ export declare class CubeGridFetchDropped extends Error {
36
+ constructor();
37
+ }
38
+ /** The most rows the cache holds across its levels; the oldest levels go first (PLAN §11.10) */
39
+ export declare const MAX_CUBE_GRID_CACHED_ROWS = 200000;
40
+ export declare const CUBE_GRID_CONTEXT_CHANGED = "The cube's model, runtime or warehouse changed since this run: execute again to see more of its rows.";
41
+ /**
42
+ * Fetches the levels of the grid's server-side mode (PLAN §11.10): each a
43
+ * query derived from the run on screen, never the live cube, with the
44
+ * drill-down the cube has now and the grid's sort, run as Execute runs
45
+ * (`runCubeQuery`), with the run's model, runtime and row limit. Answers are
46
+ * cached by the derived query, the oldest dropped past
47
+ * `MAX_CUBE_GRID_CACHED_ROWS` rows. `purge()` drops them all, aborts the
48
+ * fetches in flight and drops their answers, as a new run does.
49
+ */
50
+ export declare class CubeGridFetcher {
51
+ readonly editorState: CubeEditorState;
52
+ /** The most rows the cache holds */
53
+ readonly maxCachedRows: number;
54
+ /** Bumped by each purge: an answer of an older generation is dropped */
55
+ private generation;
56
+ private resultId;
57
+ /** In the order last used, the oldest first */
58
+ private readonly cache;
59
+ private readonly controllers;
60
+ constructor(editorState: CubeEditorState, maxCachedRows?: number);
61
+ /** How many rows the cache holds */
62
+ get cachedRows(): number;
63
+ /** Drops every cached level, and aborts the fetches in flight, whose answers are then dropped */
64
+ purge(): void;
65
+ /**
66
+ * The rows of the level under the expanded groups' keys (outermost first;
67
+ * none for the top level), sorted by the grid. Rejects with a
68
+ * `CubeEngineError`, or a `CubeGridFetchDropped` when the answer is for rows
69
+ * the grid no longer shows.
70
+ */
71
+ fetchLevel(result: CubeExecutionResult, keys: readonly DrilldownCell[], sorts: readonly ColumnDirection[]): Promise<CubeGridLevelRows>;
72
+ /** Drops the least recently used levels until the cache holds at most its rows, never the one just answered */
73
+ private evict;
74
+ }
75
+ //# sourceMappingURL=CubeGridFetcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CubeGridFetcher.d.ts","sourceRoot":"","sources":["../../src/stores/CubeGridFetcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAGL,KAAK,eAAe,EAEpB,KAAK,aAAa,EAClB,KAAK,cAAc,EAIpB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAGL,KAAK,eAAe,EACrB,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAGnE,sDAAsD;AACtD,MAAM,WAAW,WAAW;IAC1B,iHAAiH;IACjH,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,eAAe,GAAG,SAAS,CAAC,EAAE,CAAC;IACzD,iEAAiE;IACjE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACrC;AAED,2EAA2E;AAC3E,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,QAAQ,CAAC,IAAI,EAAE,SAAS,WAAW,EAAE,CAAC;IACtC,wDAAwD;IACxD,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAED,2GAA2G;AAC3G,qBAAa,oBAAqB,SAAQ,KAAK;;CAK9C;AAED,gGAAgG;AAChG,eAAO,MAAM,yBAAyB,SAAU,CAAC;AAEjD,eAAO,MAAM,yBAAyB,0GACmE,CAAC;AAkC1G;;;;;;;;GAQG;AACH,qBAAa,eAAe;IAC1B,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAC;IACtC,oCAAoC;IACpC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,wEAAwE;IACxE,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,QAAQ,CAAqB;IACrC,+CAA+C;IAC/C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAkC;IACxD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA8B;gBAGxD,WAAW,EAAE,eAAe,EAC5B,aAAa,SAA4B;IAM3C,oCAAoC;IACpC,IAAI,UAAU,IAAI,MAAM,CAKvB;IAED,iGAAiG;IACjG,KAAK,IAAI,IAAI;IAOb;;;;;OAKG;IACH,UAAU,CACR,MAAM,EAAE,mBAAmB,EAC3B,IAAI,EAAE,SAAS,aAAa,EAAE,EAC9B,KAAK,EAAE,SAAS,eAAe,EAAE,GAChC,OAAO,CAAC,iBAAiB,CAAC;IAyI7B,+GAA+G;IAC/G,OAAO,CAAC,KAAK;CAUd"}
@@ -0,0 +1,197 @@
1
+ /**
2
+ * Copyright (c) 2026-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 { buildSchemasAndValidity, checkDrilldown, deriveDrilldownLevel, printIR, QueryEmitter, SortDirection, } from '@finos/legend-cube';
17
+ import { NULL_CELL_TEXT } from '../__lib__/LegendCubeLabels.js';
18
+ import { CubeEngineError, CubeEngineErrorKind, } from '../graph-manager/CubeEngine.js';
19
+ import { runCubeQuery } from './CubeQueryRun.js';
20
+ /** An answer for rows the grid no longer shows: a newer run, or the grid purged its rows; it is dropped */
21
+ export class CubeGridFetchDropped extends Error {
22
+ constructor() {
23
+ super('The rows were asked for by a grid that no longer shows them');
24
+ this.name = 'CubeGridFetchDropped';
25
+ }
26
+ }
27
+ /** The most rows the cache holds across its levels; the oldest levels go first (PLAN §11.10) */
28
+ export const MAX_CUBE_GRID_CACHED_ROWS = 200_000;
29
+ export const CUBE_GRID_CONTEXT_CHANGED = "The cube's model, runtime or warehouse changed since this run: execute again to see more of its rows.";
30
+ /** How a fetch is shown in the run stats, e.g. `Rows of SHIP_COUNTRY "France"` */
31
+ const describeFetch = (level, keys, levels, sorts) => {
32
+ const of = keys
33
+ .map((key, index) => `${levels[index]} ${key === null ? NULL_CELL_TEXT : JSON.stringify(String(key))}`)
34
+ .join(', ');
35
+ const sorted = sorts
36
+ .map(({ column, direction }) => `${column} ${direction === SortDirection.DESC ? 'descending' : 'ascending'}`)
37
+ .join(', ');
38
+ return [
39
+ level.isLeaf ? 'Rows' : `Groups by ${level.groupColumns.at(-1)}`,
40
+ of ? ` of ${of}` : '',
41
+ sorted ? `, sorted by ${sorted}` : '',
42
+ ].join('');
43
+ };
44
+ /**
45
+ * Fetches the levels of the grid's server-side mode (PLAN §11.10): each a
46
+ * query derived from the run on screen, never the live cube, with the
47
+ * drill-down the cube has now and the grid's sort, run as Execute runs
48
+ * (`runCubeQuery`), with the run's model, runtime and row limit. Answers are
49
+ * cached by the derived query, the oldest dropped past
50
+ * `MAX_CUBE_GRID_CACHED_ROWS` rows. `purge()` drops them all, aborts the
51
+ * fetches in flight and drops their answers, as a new run does.
52
+ */
53
+ export class CubeGridFetcher {
54
+ editorState;
55
+ /** The most rows the cache holds */
56
+ maxCachedRows;
57
+ /** Bumped by each purge: an answer of an older generation is dropped */
58
+ generation = 0;
59
+ resultId;
60
+ /** In the order last used, the oldest first */
61
+ cache = new Map();
62
+ controllers = new Set();
63
+ constructor(editorState, maxCachedRows = MAX_CUBE_GRID_CACHED_ROWS) {
64
+ this.editorState = editorState;
65
+ this.maxCachedRows = maxCachedRows;
66
+ }
67
+ /** How many rows the cache holds */
68
+ get cachedRows() {
69
+ return Array.from(this.cache.values()).reduce((total, cached) => total + cached.rows, 0);
70
+ }
71
+ /** Drops every cached level, and aborts the fetches in flight, whose answers are then dropped */
72
+ purge() {
73
+ this.generation += 1;
74
+ this.cache.clear();
75
+ this.controllers.forEach((controller) => controller.abort());
76
+ this.controllers.clear();
77
+ }
78
+ /**
79
+ * The rows of the level under the expanded groups' keys (outermost first;
80
+ * none for the top level), sorted by the grid. Rejects with a
81
+ * `CubeEngineError`, or a `CubeGridFetchDropped` when the answer is for rows
82
+ * the grid no longer shows.
83
+ */
84
+ fetchLevel(result, keys, sorts) {
85
+ if (result.id !== this.resultId) {
86
+ this.purge();
87
+ this.resultId = result.id;
88
+ }
89
+ const { editorState } = this;
90
+ const model = result.context?.model;
91
+ const runtime = result.context?.runtime;
92
+ const captureId = result.query.selected;
93
+ if (!model || !runtime || captureId === undefined) {
94
+ return Promise.reject(new Error('A run has a model, a runtime and a node'));
95
+ }
96
+ // the warehouse is read from the page when the query runs, so a fetch
97
+ // under another one would run the run's query elsewhere
98
+ if (result.context !== editorState.document.context ||
99
+ result.warehouse !== editorState.dataProductRuntime.effectiveWarehouse) {
100
+ return Promise.reject(new CubeEngineError(CubeEngineErrorKind.EXECUTION, CUBE_GRID_CONTEXT_CHANGED, captureId));
101
+ }
102
+ let level;
103
+ const drilldown = checkDrilldown(editorState.document.meta.drilldown ?? { columns: [], aggregations: [] }, result.schema);
104
+ try {
105
+ level = deriveDrilldownLevel({
106
+ query: result.query,
107
+ captureId,
108
+ schema: result.schema,
109
+ drilldown,
110
+ keys,
111
+ sorts,
112
+ });
113
+ }
114
+ catch (error) {
115
+ return Promise.reject(new CubeEngineError(CubeEngineErrorKind.EXECUTION, error instanceof Error ? error.message : String(error), captureId));
116
+ }
117
+ const runId = level.query.selected;
118
+ // Cube's own checks first, so the engine never gets a query Cube knows is wrong
119
+ const { schemas, validity } = buildSchemasAndValidity(level.query, editorState.registry.queryRules);
120
+ const problem = (validity.get(runId) ?? [])[0];
121
+ const schema = schemas.get(runId);
122
+ if (problem !== undefined || !schema) {
123
+ return Promise.reject(new CubeEngineError(CubeEngineErrorKind.EXECUTION, `These rows can't be fetched: ${problem ?? 'the query has no columns'}`, captureId));
124
+ }
125
+ // the whole run, so a sort the row order keeps is in it
126
+ const key = printIR(new QueryEmitter(level.query, editorState.registry).emitExecutionLambda({
127
+ rowLimit: result.rowLimit,
128
+ runtime,
129
+ }));
130
+ const cached = this.cache.get(key);
131
+ if (cached) {
132
+ // last used now
133
+ this.cache.delete(key);
134
+ this.cache.set(key, cached);
135
+ return cached.promise;
136
+ }
137
+ const generation = this.generation;
138
+ const controller = new AbortController();
139
+ this.controllers.add(controller);
140
+ const entry = {
141
+ rows: 0,
142
+ promise: runCubeQuery(editorState, {
143
+ query: level.query,
144
+ model,
145
+ runtime,
146
+ schema,
147
+ rowLimit: result.rowLimit,
148
+ abortController: controller,
149
+ label: describeFetch(level, keys, drilldown.columns, sorts),
150
+ })
151
+ .then((run) => {
152
+ if (generation !== this.generation) {
153
+ throw new CubeGridFetchDropped();
154
+ }
155
+ const positions = result.schema.columns.map(({ name }) => {
156
+ const output = level.columns.get(name);
157
+ return output === undefined
158
+ ? -1
159
+ : schema.columns.findIndex((column) => column.name === output);
160
+ });
161
+ const countAt = level.countColumn
162
+ ? schema.columns.findIndex((column) => column.name === level.countColumn)
163
+ : -1;
164
+ const rows = run.rows.map((row) => ({
165
+ cells: positions.map((position) => position === -1 ? undefined : (row[position] ?? null)),
166
+ ...(countAt === -1 ? {} : { count: Number(row[countAt]) }),
167
+ }));
168
+ entry.rows = rows.length;
169
+ this.evict(key);
170
+ return { level, rows, limited: run.limited };
171
+ })
172
+ .catch((error) => {
173
+ if (this.cache.get(key) === entry) {
174
+ this.cache.delete(key);
175
+ }
176
+ throw generation !== this.generation
177
+ ? new CubeGridFetchDropped()
178
+ : error;
179
+ })
180
+ .finally(() => this.controllers.delete(controller)),
181
+ };
182
+ this.cache.set(key, entry);
183
+ return entry.promise;
184
+ }
185
+ /** Drops the least recently used levels until the cache holds at most its rows, never the one just answered */
186
+ evict(keep) {
187
+ for (const [key] of this.cache) {
188
+ if (this.cachedRows <= this.maxCachedRows) {
189
+ return;
190
+ }
191
+ if (key !== keep) {
192
+ this.cache.delete(key);
193
+ }
194
+ }
195
+ }
196
+ }
197
+ //# sourceMappingURL=CubeGridFetcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CubeGridFetcher.js","sourceRoot":"","sources":["../../src/stores/CubeGridFetcher.ts"],"names":[],"mappings":"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"}
@@ -13,8 +13,15 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
+ import { type Schema } from '@finos/legend-cube';
16
17
  import type { CubeResultValue } from '../graph-manager/CubeEngine.js';
17
18
  import type { CubeEditorState } from './CubeEditorState.js';
19
+ /**
20
+ * The name of a Group by's Count rows: `Count Rows`, or with a number after it
21
+ * when an input column already has that name in any case, e.g. on a Group of
22
+ * a Group (PLAN §11.5)
23
+ */
24
+ export declare const getGroupByCountName: (schema: Schema) => string;
18
25
  /** One of the grid's quick actions on a cell (spec §12.4) */
19
26
  export interface CubeGridQuickAction {
20
27
  /** e.g. `Sort by "SHIP_COUNTRY"` */
@@ -26,15 +33,28 @@ export interface CubeGridQuickAction {
26
33
  /** Adds its node after the node that runs, as one undo step; nothing runs */
27
34
  readonly apply: () => void;
28
35
  }
36
+ /** What a cell of the grid holds */
37
+ export declare enum CubeGridCellKind {
38
+ /** A run row's value, or a group row's key */
39
+ VALUE = "value",
40
+ /** A group row's aggregation of its rows' values (PLAN §11.10) */
41
+ AGGREGATE = "aggregate",
42
+ /** A group row's column with no aggregation: nothing */
43
+ EMPTY = "empty"
44
+ }
29
45
  /**
30
- * The quick actions on a cell of the shown rows (spec §12.4, PLAN §11.4):
31
- * "Sort by" adds an ascending Sort on the cell's column, and "Filter by" an
32
- * Equal on its value (Is Empty on a null), after the node that runs, which
33
- * they replace as the node that runs. Both need the rows to be from the
34
- * current query, no run in flight, and a cube that can change; "Sort by" a
35
- * type that sorts, and "Filter by" a value its column's type can compare.
46
+ * The quick actions on a cell of the shown rows (spec §12.4, PLAN §11.4,
47
+ * §11.5 and §11.10): "Sort by" adds an ascending Sort on the cell's column,
48
+ * "Group by" a Group by it with Count rows, and "Filter by" an Equal on its
49
+ * value (Is Empty on a null; on a float, In the value and its 32-bit value
50
+ * when they differ, so a `REAL` value is found, as a drill-down's key is,
51
+ * PLAN §11.14), after the node that runs, which they replace as
52
+ * the node that runs; a group row's cell other than its key has no value of a
53
+ * row, so "Filter by" is disabled there. All need the rows to be from the current query, no run in
54
+ * flight, and a cube that can change; "Sort by" and "Group by" a type that
55
+ * compares, and "Filter by" a value its column's type can compare.
36
56
  * Read when the menu opens; `[]` when the position is not a column of the
37
57
  * shown rows.
38
58
  */
39
- export declare const getCubeGridQuickActions: (editorState: CubeEditorState, position: number, cell: CubeResultValue) => CubeGridQuickAction[];
59
+ export declare const getCubeGridQuickActions: (editorState: CubeEditorState, position: number, cell: CubeResultValue, cellKind?: CubeGridCellKind) => CubeGridQuickAction[];
40
60
  //# sourceMappingURL=CubeGridQuickActions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CubeGridQuickActions.d.ts","sourceRoot":"","sources":["../../src/stores/CubeGridQuickActions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAgBH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D,6DAA6D;AAC7D,MAAM,WAAW,mBAAmB;IAClC,oCAAoC;IACpC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,sEAAsE;IACtE,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5C,gFAAgF;IAChF,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,6EAA6E;IAC7E,QAAQ,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC;CAC5B;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,uBAAuB,GAClC,aAAa,eAAe,EAC5B,UAAU,MAAM,EAChB,MAAM,eAAe,KACpB,mBAAmB,EAqErB,CAAC"}
1
+ {"version":3,"file":"CubeGridQuickActions.d.ts","sourceRoot":"","sources":["../../src/stores/CubeGridQuickActions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAUL,KAAK,MAAM,EAGZ,MAAM,oBAAoB,CAAC;AAM5B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,GAAI,QAAQ,MAAM,KAAG,MAWpD,CAAC;AAEF,6DAA6D;AAC7D,MAAM,WAAW,mBAAmB;IAClC,oCAAoC;IACpC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,sEAAsE;IACtE,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5C,gFAAgF;IAChF,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,6EAA6E;IAC7E,QAAQ,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC;CAC5B;AAED,oCAAoC;AACpC,oBAAY,gBAAgB;IAC1B,8CAA8C;IAC9C,KAAK,UAAU;IACf,kEAAkE;IAClE,SAAS,cAAc;IACvB,wDAAwD;IACxD,KAAK,UAAU;CAChB;AAED;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,uBAAuB,GAClC,aAAa,eAAe,EAC5B,UAAU,MAAM,EAChB,MAAM,eAAe,EACrB,2BAAiC,KAChC,mBAAmB,EA4GrB,CAAC"}