@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
@@ -13,10 +13,117 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
+ import { V1_EngineServerClient } from '@finos/legend-graph';
17
+ import { parseLosslessJSON, stringifyLosslessJSON, } from '@finos/legend-shared';
18
+ import { V1_CubeLakehouseEnvironmentResolver } from './v1/V1_CubeLakehouseEnvironmentResolver.js';
19
+ import { V1_LegendCubeConnectionExplorer } from './v1/V1_LegendCubeConnectionExplorer.js';
20
+ import { V1_LegendCubeDataProductCatalog } from './v1/V1_LegendCubeDataProductCatalog.js';
21
+ import { V1_LegendCubeIngestCatalog } from './v1/V1_LegendCubeIngestCatalog.js';
22
+ import { V1_LegendCubeProjectCatalog } from './v1/V1_LegendCubeProjectCatalog.js';
23
+ import { V1_LegendCubeServiceCatalog } from './v1/V1_LegendCubeServiceCatalog.js';
24
+ import { V1_readCubeIngestDataSets } from './v1/V1_CubeIngestDefinition.js';
25
+ import { V1_serializeCubeLambda } from './v1/V1_CubeLambdaSerializer.js';
26
+ import { V1_readCubeLambda, V1_readCubeValueSpecification, } from './v1/V1_CubeLambdaReader.js';
27
+ import { V1_readCubeExpression } from './v1/V1_CubeExpression.js';
16
28
  import { V1_LegendCubeEngine, } from './v1/V1_LegendCubeEngine.js';
17
29
  /**
18
30
  * The Cube engine of a host (PLAN §3.2): the only place that builds the
19
31
  * Legend implementation, so hosts never name a V1_* symbol
20
32
  */
21
- export const buildCubeEngine = (config, tracerService) => new V1_LegendCubeEngine(config, tracerService);
33
+ export const buildCubeEngine = (config, tracerService, options) => new V1_LegendCubeEngine(config, tracerService, {
34
+ clientSettings: options?.clientSettings,
35
+ lakehouseEnvironment: options?.lakehouseEnvironment,
36
+ getRememberedWarehouse: options?.getRememberedWarehouse,
37
+ dataProductModels: options?.dataProductModelSource,
38
+ // the catalog reads the definitions the engine types and runs on
39
+ ingestDefinitions: options?.ingestDefinitionSource ??
40
+ (options?.ingestCatalog instanceof V1_LegendCubeIngestCatalog
41
+ ? options.ingestCatalog
42
+ : undefined),
43
+ });
44
+ /**
45
+ * The connection explorer of a host that offers direct connections (PLAN
46
+ * §6.8), over the same engine as its Cube engine
47
+ */
48
+ export const buildCubeConnectionExplorer = (config, tracerService, clientSettings) => new V1_LegendCubeConnectionExplorer(config, tracerService, clientSettings);
49
+ /** The deployed data products of a host with a lakehouse and a depot */
50
+ export const buildCubeDataProductCatalog = (services) => new V1_LegendCubeDataProductCatalog(services.contractServerClient, services.depotServerClient, services.getAccessToken, {
51
+ marketplaceServerClient: services.marketplaceServerClient,
52
+ marketplaceLink: services.getMarketplaceLink,
53
+ getCurrentUser: services.getCurrentUser,
54
+ enterpriseStereotype: services.enterpriseStereotype,
55
+ });
56
+ /**
57
+ * The published projects a cube reads Databases from (PLAN §6.3), through
58
+ * the host's depot. It reads nothing until the source dialog's Project tab
59
+ * asks
60
+ */
61
+ export const buildCubeProjectCatalog = (depotServerClient) => new V1_LegendCubeProjectCatalog(depotServerClient);
62
+ /**
63
+ * The services in the engine's registry (PLAN §6.4), read through their own
64
+ * client, configured as the engine's. The registry isn't in every engine: a
65
+ * host whose engine has none offers no catalog.
66
+ */
67
+ export const buildCubeServiceCatalog = (config, tracerService, clientSettings) => {
68
+ const engineClient = new V1_EngineServerClient(config);
69
+ // every call throws without one
70
+ engineClient.setTracerService(tracerService);
71
+ clientSettings?.register(engineClient);
72
+ return new V1_LegendCubeServiceCatalog(() => engineClient.getServicesInfo());
73
+ };
74
+ /** The viewer's lakehouse environment, which the engine needs to run data product cubes */
75
+ export const buildCubeLakehouseEnvironment = (services) => new V1_CubeLakehouseEnvironmentResolver(services.contractServerClient, services.getAccessToken, services.getCurrentUser, services.getPreferredEnvironment);
76
+ /**
77
+ * The deployed ingest definitions of a host with a lakehouse platform (PLAN
78
+ * §6.7), or none without one. It parses definitions with the engine Cube
79
+ * uses; pass it to `buildCubeEngine` too, so ingest cubes run
80
+ */
81
+ export const buildCubeIngestCatalog = (config, tracerService, services, clientSettings) => {
82
+ const { platformServerClient, ingestServerClient } = services;
83
+ if (!platformServerClient || !ingestServerClient) {
84
+ return undefined;
85
+ }
86
+ const engineClient = new V1_EngineServerClient(config);
87
+ // every call throws without one
88
+ engineClient.setTracerService(tracerService);
89
+ clientSettings?.register(engineClient);
90
+ const environment = new V1_CubeLakehouseEnvironmentResolver(services.contractServerClient, services.getAccessToken, services.getCurrentUser, services.getPreferredEnvironment);
91
+ return new V1_LegendCubeIngestCatalog(platformServerClient, ingestServerClient, () => environment.resolveBaseEnvironment(), (code) => engineClient.grammarToJSON_model(code), services.getAccessToken);
92
+ };
93
+ /** The JSON without any `sourceInformation`, at any depth */
94
+ const withoutSourceInformation = (json) => Array.isArray(json)
95
+ ? json.map(withoutSourceInformation)
96
+ : json !== null && typeof json === 'object'
97
+ ? Object.fromEntries(Object.entries(json)
98
+ .filter(([key]) => key !== 'sourceInformation')
99
+ .map(([key, value]) => [key, withoutSourceInformation(value)]))
100
+ : json;
101
+ /**
102
+ * A lambda Cube emitted, as protocol JSON for a host to keep, e.g. in a
103
+ * Studio ingest definition: plain JSON numbers, and none of the source
104
+ * information Cube stamps on a lambda to place the engine's errors
105
+ */
106
+ export const serializeCubeLambdaForHost = (lambda) => withoutSourceInformation(JSON.parse(stringifyLosslessJSON(V1_serializeCubeLambda(lambda))));
107
+ /**
108
+ * The data sets of an ingest definition's content, its protocol JSON, in
109
+ * order, typed from what it declares; for a host that lists definitions of
110
+ * its own, e.g. Studio's workspace. Throws when the content can't be read.
111
+ */
112
+ export const readCubeIngestDataSets = (content) => V1_readCubeIngestDataSets(content);
113
+ /**
114
+ * The IR of a lambda's protocol JSON, Cube's or the engine's grammar's, for
115
+ * Import Pure (PLAN §11.18): a host's matview, or a pasted lambda. Throws a
116
+ * `CubeLambdaReadError` naming what Cube can't read.
117
+ */
118
+ export const readCubeLambdaJson = (json) => V1_readCubeLambda(json);
119
+ /**
120
+ * How Import Pure stores an expression it reads into a step, and reads one a
121
+ * step stores (PLAN §11.18): as the Extend and Filter by Expression editors
122
+ * store the engine's JSON, with no source information and number literals as
123
+ * their digit strings
124
+ */
125
+ export const CUBE_EXPRESSION_CODEC = {
126
+ write: (lambda) => V1_readCubeExpression(parseLosslessJSON(stringifyLosslessJSON(V1_serializeCubeLambda(lambda)))).lambda,
127
+ read: (json) => V1_readCubeValueSpecification(json),
128
+ };
22
129
  //# sourceMappingURL=CubeEngineBuilder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CubeEngineBuilder.js","sourceRoot":"","sources":["../../../../src/graph-manager/protocol/pure/CubeEngineBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,EAEL,mBAAmB,GACpB,MAAM,6BAA6B,CAAC;AAKrC;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,MAAwB,EACxB,aAA4B,EAChB,EAAE,CAAC,IAAI,mBAAmB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC"}
1
+ {"version":3,"file":"CubeEngineBuilder.js","sourceRoot":"","sources":["../../../../src/graph-manager/protocol/pure/CubeEngineBuilder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
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 { Schema } from '@finos/legend-cube';
17
+ import { type CubeAccessPointLocation, type CubeDataProductCandidate, CubeDataProductDescription } from '../../../CubeDataProductCatalog.js';
18
+ /** How many sample rows the preview shows */
19
+ export declare const V1_CUBE_SAMPLE_ROW_LIMIT = 5;
20
+ /** Why an access point can't be picked */
21
+ export declare const V1_CUBE_ACCESS_POINT_REASON: {
22
+ readonly MODEL_GROUP: "Model access point groups are not supported yet";
23
+ readonly NOT_LAKEHOUSE: "Only Lakehouse access points can be added for now";
24
+ readonly PARAMETERS: "It takes parameters, which Cube does not support yet";
25
+ readonly NOT_DEPLOYED: "It is not in the deployed artifact";
26
+ readonly NO_DEFINITION: "Cube couldn't read the data product's definition";
27
+ readonly NO_RELATION: "Its result is not a relation";
28
+ readonly NO_TYPE: "Its columns are not in the deployed artifact";
29
+ readonly BAD_MULTIPLICITY: (column: string) => string;
30
+ };
31
+ /** The stereotype a host's marketplace marks groups open to everyone with */
32
+ export interface V1_CubeEnterpriseStereotype {
33
+ readonly profile: string;
34
+ readonly value: string;
35
+ }
36
+ /**
37
+ * A product's access points by group, as its definition lists them. One is
38
+ * pickable when it is a Lakehouse access point without parameters, outside
39
+ * a model group, deployed with a relation of columns Cube can read
40
+ */
41
+ export declare const V1_readCubeDataProductDescription: (candidate: CubeDataProductCandidate, artifact: unknown, definition: unknown, enterpriseStereotype?: V1_CubeEnterpriseStereotype | undefined) => CubeDataProductDescription;
42
+ /** A saved source's schema, from the product's description, or why it has none */
43
+ export declare const V1_findCubeAccessPointSchema: (description: CubeDataProductDescription, location: CubeAccessPointLocation) => Schema | string;
44
+ //# sourceMappingURL=V1_CubeDataProductArtifact.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"V1_CubeDataProductArtifact.d.ts","sourceRoot":"","sources":["../../../../../src/graph-manager/protocol/pure/v1/V1_CubeDataProductArtifact.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAGL,KAAK,uBAAuB,EAC5B,KAAK,wBAAwB,EAC7B,0BAA0B,EAC3B,MAAM,oCAAoC,CAAC;AAW5C,6CAA6C;AAC7C,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAM1C,0CAA0C;AAC1C,eAAO,MAAM,2BAA2B;;;;;;;;wCAQX,MAAM,KAAG,MAAM;CAElC,CAAC;AA4FX,6EAA6E;AAC7E,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAeD;;;;GAIG;AACH,eAAO,MAAM,iCAAiC,GAC5C,WAAW,wBAAwB,EACnC,UAAU,OAAO,EACjB,YAAY,OAAO,EACnB,uBAAuB,2BAA2B,GAAG,SAAS,KAC7D,0BA4DF,CAAC;AAEF,kFAAkF;AAClF,eAAO,MAAM,4BAA4B,GACvC,aAAa,0BAA0B,EACvC,UAAU,uBAAuB,KAChC,MAAM,GAAG,MAUX,CAAC"}
@@ -0,0 +1,192 @@
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 { CubeAccessPoint, CubeAccessPointGroup, CubeDataProductDescription, } from '../../../CubeDataProductCatalog.js';
17
+ import { V1_buildCubeSchema } from './V1_CubeRelationTypeAdapter.js';
18
+ // A deployed data product's access points (PLAN §6.8), read from two
19
+ // documents: the product's definition at its deployed version (titles, kinds
20
+ // and parameters) and its deployed artifact (each access point's columns, as
21
+ // the engine typed them when it deployed, and sample rows). Both are read
22
+ // tolerantly: what Cube doesn't know is skipped, and a problem stays on its
23
+ // access point, which is listed but can't be picked. No engine call
24
+ /** How many sample rows the preview shows */
25
+ export const V1_CUBE_SAMPLE_ROW_LIMIT = 5;
26
+ const LAKEHOUSE_ACCESS_POINT_TYPE = 'lakehouseAccessPoint';
27
+ const MODEL_ACCESS_POINT_GROUP_TYPE = 'modelAccessPointGroup';
28
+ const RELATION_TYPE = 'relationType';
29
+ /** Why an access point can't be picked */
30
+ export const V1_CUBE_ACCESS_POINT_REASON = {
31
+ MODEL_GROUP: 'Model access point groups are not supported yet',
32
+ NOT_LAKEHOUSE: 'Only Lakehouse access points can be added for now',
33
+ PARAMETERS: 'It takes parameters, which Cube does not support yet',
34
+ NOT_DEPLOYED: 'It is not in the deployed artifact',
35
+ NO_DEFINITION: "Cube couldn't read the data product's definition",
36
+ NO_RELATION: 'Its result is not a relation',
37
+ NO_TYPE: 'Its columns are not in the deployed artifact',
38
+ BAD_MULTIPLICITY: (column) => `Column "${column}" holds more than one value, which Cube can't show`,
39
+ };
40
+ const asObject = (value) => value && typeof value === 'object' && !Array.isArray(value)
41
+ ? value
42
+ : {};
43
+ const asList = (value) => Array.isArray(value) ? value : [];
44
+ const asString = (value) => typeof value === 'string' && value.length ? value : undefined;
45
+ /** A pair's key: an access point is known by its group and its own id */
46
+ const keyOf = (groupId, accessPointId) => JSON.stringify([groupId, accessPointId]);
47
+ /** The artifact's access point implementations, by group and id */
48
+ const readImplementations = (artifact) => {
49
+ const implementations = new Map();
50
+ asList(asObject(artifact).accessPointGroups).forEach((group) => {
51
+ const groupId = asString(asObject(group).id);
52
+ if (!groupId) {
53
+ return;
54
+ }
55
+ asList(asObject(group).accessPointImplementations).forEach((value) => {
56
+ const implementation = asObject(value);
57
+ const id = asString(implementation.id);
58
+ if (id) {
59
+ implementations.set(keyOf(groupId, id), implementation);
60
+ }
61
+ });
62
+ });
63
+ return implementations;
64
+ };
65
+ /**
66
+ * An access point's columns, from its implementation's lambdaGenericType:
67
+ * the first relation type among its type arguments, whatever the outer type
68
+ * (a relation, or an ingest relation accessor)
69
+ */
70
+ const readSchema = (implementation) => {
71
+ const genericType = asObject(implementation.lambdaGenericType);
72
+ if (!Object.keys(genericType).length) {
73
+ return { reason: V1_CUBE_ACCESS_POINT_REASON.NO_TYPE };
74
+ }
75
+ const relationType = asList(genericType.typeArguments)
76
+ .map((argument) => asObject(asObject(argument).rawType))
77
+ .find((rawType) => rawType._type === RELATION_TYPE);
78
+ if (!relationType) {
79
+ return { reason: V1_CUBE_ACCESS_POINT_REASON.NO_RELATION };
80
+ }
81
+ for (const column of asList(relationType.columns).map(asObject)) {
82
+ const multiplicity = asObject(column.multiplicity);
83
+ if (Object.keys(multiplicity).length && multiplicity.upperBound !== 1) {
84
+ return {
85
+ reason: V1_CUBE_ACCESS_POINT_REASON.BAD_MULTIPLICITY(String(column.name)),
86
+ };
87
+ }
88
+ }
89
+ try {
90
+ return { schema: V1_buildCubeSchema(relationType) };
91
+ }
92
+ catch (error) {
93
+ return { reason: error instanceof Error ? error.message : String(error) };
94
+ }
95
+ };
96
+ /** Up to the preview's limit of rows, by the schema's columns; the artifact holds them as text */
97
+ const readSampleRows = (implementation, schema) => {
98
+ const element = asObject(implementation.relationElement);
99
+ const columns = asList(element.columns).map(String);
100
+ const positions = schema.columns.map((column) => columns.indexOf(column.name));
101
+ return asList(element.rows)
102
+ .slice(0, V1_CUBE_SAMPLE_ROW_LIMIT)
103
+ .map((row) => {
104
+ const values = asList(asObject(row).values);
105
+ return positions.map((position) => {
106
+ const value = position < 0 ? undefined : values[position];
107
+ return value === undefined || value === null ? null : String(value);
108
+ });
109
+ });
110
+ };
111
+ /** Whether a group's definition carries the host's enterprise stereotype */
112
+ const isEnterpriseGroup = (group, stereotype) => stereotype !== undefined &&
113
+ asList(group.stereotypes)
114
+ .map(asObject)
115
+ .some((each) => each.profile === stereotype.profile && each.value === stereotype.value);
116
+ /**
117
+ * A product's access points by group, as its definition lists them. One is
118
+ * pickable when it is a Lakehouse access point without parameters, outside
119
+ * a model group, deployed with a relation of columns Cube can read
120
+ */
121
+ export const V1_readCubeDataProductDescription = (candidate, artifact, definition, enterpriseStereotype) => {
122
+ const implementations = readImplementations(artifact);
123
+ const hasDefinition = Boolean(asObject(definition).accessPointGroups);
124
+ // without a definition, the artifact's groups are listed, unpickable
125
+ const groupsJson = hasDefinition
126
+ ? asList(asObject(definition).accessPointGroups)
127
+ : asList(asObject(artifact).accessPointGroups).map((group) => ({
128
+ ...asObject(group),
129
+ accessPoints: asList(asObject(group).accessPointImplementations),
130
+ }));
131
+ const groups = groupsJson
132
+ .map(asObject)
133
+ .filter((group) => asString(group.id))
134
+ .map((group) => {
135
+ const groupId = group.id;
136
+ const isModelGroup = group._type === MODEL_ACCESS_POINT_GROUP_TYPE;
137
+ return new CubeAccessPointGroup({
138
+ id: groupId,
139
+ title: asString(group.title),
140
+ isEnterprise: isEnterpriseGroup(group, enterpriseStereotype),
141
+ accessPoints: asList(group.accessPoints)
142
+ .map(asObject)
143
+ .filter((point) => asString(point.id))
144
+ .map((point) => {
145
+ const id = point.id;
146
+ const implementation = implementations.get(keyOf(groupId, id));
147
+ const read = implementation
148
+ ? readSchema(implementation)
149
+ : undefined;
150
+ const schema = read && 'schema' in read ? read.schema : undefined;
151
+ const disabledReason = !hasDefinition
152
+ ? V1_CUBE_ACCESS_POINT_REASON.NO_DEFINITION
153
+ : isModelGroup
154
+ ? V1_CUBE_ACCESS_POINT_REASON.MODEL_GROUP
155
+ : point._type !== LAKEHOUSE_ACCESS_POINT_TYPE
156
+ ? V1_CUBE_ACCESS_POINT_REASON.NOT_LAKEHOUSE
157
+ : asList(asObject(point.func).parameters).length
158
+ ? V1_CUBE_ACCESS_POINT_REASON.PARAMETERS
159
+ : !implementation
160
+ ? V1_CUBE_ACCESS_POINT_REASON.NOT_DEPLOYED
161
+ : read && 'reason' in read
162
+ ? read.reason
163
+ : undefined;
164
+ return new CubeAccessPoint({
165
+ id,
166
+ title: asString(point.title),
167
+ description: asString(point.description) ??
168
+ asString(implementation?.description),
169
+ schema,
170
+ disabledReason,
171
+ sampleRows: implementation && schema
172
+ ? readSampleRows(implementation, schema)
173
+ : [],
174
+ });
175
+ }),
176
+ });
177
+ });
178
+ return new CubeDataProductDescription(candidate, groups);
179
+ };
180
+ /** A saved source's schema, from the product's description, or why it has none */
181
+ export const V1_findCubeAccessPointSchema = (description, location) => {
182
+ const accessPoint = description.groups
183
+ .find((group) => group.id === location.accessPointGroup)
184
+ ?.accessPoints.find((point) => point.id === location.accessPoint);
185
+ if (!accessPoint) {
186
+ return `The data product has no access point "${location.accessPoint}" in group "${location.accessPointGroup}"`;
187
+ }
188
+ return accessPoint.isPickable
189
+ ? accessPoint.schema
190
+ : (accessPoint.disabledReason ?? V1_CUBE_ACCESS_POINT_REASON.NO_TYPE);
191
+ };
192
+ //# sourceMappingURL=V1_CubeDataProductArtifact.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"V1_CubeDataProductArtifact.js","sourceRoot":"","sources":["../../../../../src/graph-manager/protocol/pure/v1/V1_CubeDataProductArtifact.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
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 { IR } from '@finos/legend-cube';
17
+ import type { PlainObject } from '@finos/legend-shared';
18
+ import { type CubeDataProductProject } from '../../../CubeDataProduct.js';
19
+ /** Whether a lambda reads a data product's access point, anywhere in it */
20
+ export declare const V1_hasCubeDataProductAccessor: (ir: IR) => boolean;
21
+ /**
22
+ * The model typing runs on: the project alone, with no runtime; the host's
23
+ * model of it when it has one, e.g. Studio's workspace
24
+ */
25
+ export declare const V1_buildCubeDataProductTypingContext: (project: CubeDataProductProject, projectModel?: PlainObject | undefined) => PlainObject;
26
+ /**
27
+ * The model a run runs on: the project (the host's model of it, when it has
28
+ * one), then a model holding only the lakehouse runtime at Cube's fixed path,
29
+ * with the viewer's environment and the warehouse, always given
30
+ */
31
+ export declare const V1_buildCubeDataProductExecutionContext: (project: CubeDataProductProject, environment: string, warehouse: string, projectModel?: PlainObject | undefined) => PlainObject;
32
+ //# sourceMappingURL=V1_CubeDataProductModel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"V1_CubeDataProductModel.d.ts","sourceRoot":"","sources":["../../../../../src/graph-manager/protocol/pure/v1/V1_CubeDataProductModel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,6BAA6B,CAAC;AA0BrC,2EAA2E;AAC3E,eAAO,MAAM,6BAA6B,GAAI,IAAI,EAAE,KAAG,OAetD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,oCAAoC,GAC/C,SAAS,sBAAsB,EAC/B,eAAe,WAAW,GAAG,SAAS,KACrC,WAAiD,CAAC;AAErD;;;;GAIG;AACH,eAAO,MAAM,uCAAuC,GAClD,SAAS,sBAAsB,EAC/B,aAAa,MAAM,EACnB,WAAW,MAAM,EACjB,eAAe,WAAW,GAAG,SAAS,KACrC,WAsBD,CAAC"}
@@ -0,0 +1,88 @@
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 { CUBE_DATA_PRODUCT_RUNTIME_PATH, } from '../../../CubeDataProduct.js';
17
+ import { CUBE_LAKEHOUSE_RUNTIME_KIND } from '../../../CubeLakehouseRuntime.js';
18
+ // The models a data product cube's engine calls run on (PLAN §6.8), built for
19
+ // each call and never saved: the project at its saved version, and for a run
20
+ // a lakehouse runtime at Cube's fixed path, whose environment and warehouse
21
+ // are resolved for the viewer
22
+ const splitPath = (path) => {
23
+ const index = path.lastIndexOf('::');
24
+ return { package: path.slice(0, index), name: path.slice(index + 2) };
25
+ };
26
+ /** The project at the version its data products were deployed from: never a moving alias */
27
+ const pointerOf = (project) => ({
28
+ _type: 'pointer',
29
+ sdlcInfo: {
30
+ _type: 'alloy',
31
+ baseVersion: 'latest',
32
+ version: project.versionId,
33
+ packageableElementPointers: [],
34
+ groupId: project.groupId,
35
+ artifactId: project.artifactId,
36
+ },
37
+ });
38
+ /** Whether a lambda reads a data product's access point, anywhere in it */
39
+ export const V1_hasCubeDataProductAccessor = (ir) => {
40
+ const visit = (value) => {
41
+ if (Array.isArray(value)) {
42
+ return value.some(visit);
43
+ }
44
+ if (!value || typeof value !== 'object') {
45
+ return false;
46
+ }
47
+ const node = value;
48
+ if (node.k === 'dataProductAccessor') {
49
+ return true;
50
+ }
51
+ return node.k !== 'raw' && Object.values(node).some(visit);
52
+ };
53
+ return visit(ir);
54
+ };
55
+ /**
56
+ * The model typing runs on: the project alone, with no runtime; the host's
57
+ * model of it when it has one, e.g. Studio's workspace
58
+ */
59
+ export const V1_buildCubeDataProductTypingContext = (project, projectModel) => projectModel ?? pointerOf(project);
60
+ /**
61
+ * The model a run runs on: the project (the host's model of it, when it has
62
+ * one), then a model holding only the lakehouse runtime at Cube's fixed path,
63
+ * with the viewer's environment and the warehouse, always given
64
+ */
65
+ export const V1_buildCubeDataProductExecutionContext = (project, environment, warehouse, projectModel) => ({
66
+ _type: 'combination',
67
+ contexts: [
68
+ projectModel ?? pointerOf(project),
69
+ {
70
+ _type: 'data',
71
+ elements: [
72
+ {
73
+ _type: 'runtime',
74
+ ...splitPath(CUBE_DATA_PRODUCT_RUNTIME_PATH),
75
+ runtimeValue: {
76
+ _type: CUBE_LAKEHOUSE_RUNTIME_KIND,
77
+ connectionStores: [],
78
+ connections: [],
79
+ mappings: [],
80
+ environment,
81
+ warehouse,
82
+ },
83
+ },
84
+ ],
85
+ },
86
+ ],
87
+ });
88
+ //# sourceMappingURL=V1_CubeDataProductModel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"V1_CubeDataProductModel.js","sourceRoot":"","sources":["../../../../../src/graph-manager/protocol/pure/v1/V1_CubeDataProductModel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,EACL,8BAA8B,GAE/B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAE/E,8EAA8E;AAC9E,6EAA6E;AAC7E,4EAA4E;AAC5E,8BAA8B;AAE9B,MAAM,SAAS,GAAG,CAAC,IAAY,EAAqC,EAAE;IACpE,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACrC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC;AACxE,CAAC,CAAC;AAEF,4FAA4F;AAC5F,MAAM,SAAS,GAAG,CAAC,OAA+B,EAAe,EAAE,CAAC,CAAC;IACnE,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE;QACR,KAAK,EAAE,OAAO;QACd,WAAW,EAAE,QAAQ;QACrB,OAAO,EAAE,OAAO,CAAC,SAAS;QAC1B,0BAA0B,EAAE,EAAE;QAC9B,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,UAAU,EAAE,OAAO,CAAC,UAAU;KAC/B;CACF,CAAC,CAAC;AAEH,2EAA2E;AAC3E,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,EAAM,EAAW,EAAE;IAC/D,MAAM,KAAK,GAAG,CAAC,KAAc,EAAW,EAAE;QACxC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC;QACD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACxC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,IAAI,GAAG,KAAoB,CAAC;QAClC,IAAI,IAAI,CAAC,CAAC,KAAK,qBAAqB,EAAE,CAAC;YACrC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAI,CAAC,CAAC,KAAK,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7D,CAAC,CAAC;IACF,OAAO,KAAK,CAAC,EAAE,CAAC,CAAC;AACnB,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,oCAAoC,GAAG,CAClD,OAA+B,EAC/B,YAAsC,EACzB,EAAE,CAAC,YAAY,IAAI,SAAS,CAAC,OAAO,CAAC,CAAC;AAErD;;;;GAIG;AACH,MAAM,CAAC,MAAM,uCAAuC,GAAG,CACrD,OAA+B,EAC/B,WAAmB,EACnB,SAAiB,EACjB,YAAsC,EACzB,EAAE,CAAC,CAAC;IACjB,KAAK,EAAE,aAAa;IACpB,QAAQ,EAAE;QACR,YAAY,IAAI,SAAS,CAAC,OAAO,CAAC;QAClC;YACE,KAAK,EAAE,MAAM;YACb,QAAQ,EAAE;gBACR;oBACE,KAAK,EAAE,SAAS;oBAChB,GAAG,SAAS,CAAC,8BAA8B,CAAC;oBAC5C,YAAY,EAAE;wBACZ,KAAK,EAAE,2BAA2B;wBAClC,gBAAgB,EAAE,EAAE;wBACpB,WAAW,EAAE,EAAE;wBACf,QAAQ,EAAE,EAAE;wBACZ,WAAW;wBACX,SAAS;qBACV;iBACF;aACF;SACF;KACF;CACF,CAAC,CAAC"}
@@ -0,0 +1,41 @@
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 { PlainObject } from '@finos/legend-shared';
17
+ import { type CubeConnectionDraft, type CubeConnectionSummary } from '../../../CubeConnectionExplorer.js';
18
+ /**
19
+ * What keeps Cube from using a connection, in words a user can act on: none
20
+ * when the connection is one Cube supports. Values are never repeated, only
21
+ * the names of properties, since a property Cube doesn't know could hold a
22
+ * secret
23
+ */
24
+ export declare const V1_checkCubeDirectConnection: (connection: unknown) => readonly string[];
25
+ /**
26
+ * The connection the form describes, as the engine reads it. It names no
27
+ * store: each call binds it to the Database built for that call
28
+ */
29
+ export declare const V1_buildCubeDirectConnection: (draft: CubeConnectionDraft) => PlainObject;
30
+ /**
31
+ * What the page shows of a connection Cube supports (see
32
+ * `V1_checkCubeDirectConnection`): never its setup SQL
33
+ */
34
+ export declare const V1_summarizeCubeDirectConnection: (connection: PlainObject) => CubeConnectionSummary;
35
+ /**
36
+ * A connection as text that two connections share exactly when they reach the
37
+ * same database the same way: key order, the bound store and source
38
+ * positions don't count. Used to compare connections and to key caches
39
+ */
40
+ export declare const V1_canonicalCubeDirectConnection: (connection: PlainObject) => string;
41
+ //# sourceMappingURL=V1_CubeDirectConnection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"V1_CubeDirectConnection.d.ts","sourceRoot":"","sources":["../../../../../src/graph-manager/protocol/pure/v1/V1_CubeDirectConnection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAGL,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC3B,MAAM,oCAAoC,CAAC;AA+K5C;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,GACvC,YAAY,OAAO,KAClB,SAAS,MAAM,EA+CjB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,4BAA4B,GACvC,OAAO,mBAAmB,KACzB,WAwBF,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gCAAgC,GAC3C,YAAY,WAAW,KACtB,qBAmBF,CAAC;AAoBF;;;;GAIG;AACH,eAAO,MAAM,gCAAgC,GAC3C,YAAY,WAAW,KACtB,MAAoD,CAAC"}