@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
package/docs/testing.md CHANGED
@@ -19,11 +19,15 @@ run some files, e.g. `TEST_GROUP=core yarn workspace @finos/legend-cube-builder
19
19
  - `TEST__renderInCubeApplication(<CubeEditor host={host} />, host.applicationStore, LEGEND_CUBE_TEST_ID.EDITOR)`
20
20
  renders the page in a Legend application and waits for it.
21
21
  - A test of one part of the page makes the state itself, `new CubeEditorState(host, document)`, and renders the part
22
- with it, e.g. `<CubeCanvas editorState={editorState} />` and `<CubeNodeEditorPanel editorState={editorState} />`
23
- (as `CubeJoinEditor.test.tsx` does). `TEST__importDocument(editorState, document)` then imports a cube and waits
24
- for its tables to be typed again, so nothing changes after the test. A `<CubeEditor>` test has no handle on the
25
- state, so it imports through the Import dialog.
26
- - `TEST__findCanvasNode(id)`, `TEST__getCanvasNodes()` and `TEST__getCanvasNodeTooltip(node)` read the canvas.
22
+ with it, e.g. `<CubeCanvas editorState={editorState} />`, which floats the node editor from the canvas when a node
23
+ is clicked (as `CubeJoinEditor.test.tsx` does). `TEST__importDocument(editorState, document)` then imports a cube and waits
24
+ for its tables to be typed again, so nothing changes after the test. A `<CubeEditor>` test gets the page's state by
25
+ spying on `CubeEditorState.prototype.registerCommands`, which the page calls once, and reading the spy's
26
+ `mock.contexts[0]` (as `CubeCommands.test.tsx`'s `renderPage` does); it imports a cube through the Import dialog.
27
+ - `TEST__findCanvasNode(id)`, `TEST__getCanvasNodes()` and `TEST__getCanvasNodeTooltip(node)` read the canvas; the
28
+ tooltip's text is the node's `aria-description`.
29
+ - `TEST__openAddItems()` and `TEST__chooseAddItem(label)` use the header's Add Items, e.g. to open the source dialog on
30
+ a table tab (`'Relational Database Table'`); the empty canvas's link opens it with no tab chosen.
27
31
  - `src/__test-utils__/CubeNorthwindTestQueries.ts` has the Northwind tables' columns and ready-made queries, e.g.
28
32
  `sliceQuery()`.
29
33
 
@@ -35,6 +39,16 @@ What jsdom can't do:
35
39
  - **Print a failing comparison of two queries.** A query holds `BigInt`s, which Jest can't print, so a failing
36
40
  `toBe` between queries crashes the worker. Compare them as booleans: `expect(a === b).toBe(true)`.
37
41
 
42
+ The floating node editor (PLAN §11.8):
43
+
44
+ - **A press outside it** closes it on `pointerdown`, which jsdom 20 has no event class for: dispatch
45
+ `new MouseEvent('pointerdown', { bubbles: true, button: 0 })`, as `useCubeNodeEditorDismiss.test.tsx` does
46
+ (`fireEvent.pointerDown` sends no button).
47
+ - **Its placement** can be tested once the canvas's rectangle and the window's size are stubbed, as
48
+ `CubeNodeEditorPopper.test.tsx` does; flipping and scrolling are checked in a browser.
49
+ - **A tooltip test** lets MUI's 800 ms memory of an open tooltip lapse after each test, or a retry (`jest.retryTimes`,
50
+ set for every package) passes on the shorter `enterNextDelay`, as `CubeCanvas.test.tsx`'s tooltip tests do.
51
+
38
52
  Drag and drop goes through react-dnd's HTML5 backend: fire `dragStart`, `dragEnter`, `dragOver`, `drop` and
39
53
  `dragEnd` on the elements.
40
54
 
@@ -58,14 +72,27 @@ would serve it.
58
72
  keys returned, types and nullability, not SQL or Pure formatting, and never an engine answer that is a known
59
73
  defect.
60
74
  - **Rows come back in the database's order** unless a Sort reaches the node that runs, and H2's order changes between
61
- queries, so compare counts and sets, never positions, without a Sort. Facts of the Cube Northwind data a test may
62
- rely on: ORDERS has 830 orders, `ORDER_ID` running from 10248 to 11077 with no gap. Avoid comparing or sorting on its
63
- 32-bit `REAL` columns (`FREIGHT`, `UNIT_PRICE`, `DISCOUNT`), where exact equality silently matches nothing.
75
+ queries, so compare counts and sets, never positions, without a Sort. A Concat's rows come in no order either.
76
+ Facts of the Cube Northwind data a test may rely on: ORDERS has 830 orders, `ORDER_ID` running from 10248 to 11077
77
+ with no gap, in 21 ship countries; CUSTOMERS has 91 rows and SUPPLIERS 29; `CUBETEST.ALLTYPES` has 3 rows, ID 3
78
+ empty but for its key. Better still, check a result against its tables run alone, as the Concat tests do. Avoid
79
+ comparing or sorting on its 32-bit `REAL` columns (`FREIGHT`, `UNIT_PRICE`, `DISCOUNT`), where exact equality
80
+ silently matches nothing.
64
81
  - `src/__tests__/LegendCubeNorthwind.engine-roundtrip-test.ts` is the slice's automated acceptance (PLAN §11.2 Part
65
82
  A). It logs the engine's commit.
66
83
  - `src/__tests__/LegendCubeOperations.engine-roundtrip-test.ts` checks each operation: its lambda as the engine parses
67
84
  the printed Pure, its typing against Cube's inferred schema, and its rows. Its helpers are in
68
85
  `src/__test-utils__/CubeOperationsTestUtils.ts`; they take any `CubeEngine` and import no `V1_*` class.
86
+ - `src/__tests__/CubeInferenceConformance.engine-roundtrip-test.ts` holds Cube's inference to the engine's (PLAN
87
+ §11.5): it types every node of every case in one batch and compares names, positions, precise types with their
88
+ parameters, and nullability exactly (`TEST__typingDifferences`). Where the engine misreports nullability (an outer
89
+ join's padded columns, the FULL merged key, a Difference's keys named apart, an Extend's columns after `toOne()`), a
90
+ case lists the columns in `widerNullable`, and Cube must say nullable
91
+ there. Every registered node type needs a case, or the coverage test fails, but a data product's access point
92
+ (`NOT_TYPED_BY_THE_ENGINE`: the open-source engine reads no data product; `CubeDataProduct.engine-roundtrip-test.ts`
93
+ types its stand-in). A case whose Concat converts types names the types it converts (`converted`), so a case that
94
+ silently stops converting fails. A case's every node must be valid. The saved-spec samples are typed the same way,
95
+ node by node, but one-way (`CubeSpecCorpus.engine-roundtrip-test.ts`).
69
96
  - **Sort descending in order tests.** H2 scans ORDERS in ascending `ORDER_ID` order, so a test that sorts ascending,
70
97
  or numbers rows by `ORDER_ID`, passes without the sort; the operations tests sort descending, with a control test
71
98
  pinning H2's own order.
@@ -73,11 +100,121 @@ would serve it.
73
100
  them on the fixture's H2, which takes both forms, so their rows can be compared with the native forms'.
74
101
  `src/__tests__/LegendCubeDialects.engine-roundtrip-test.ts` plans them, never running anything, on a test-only copy
75
102
  of the fixture model with a static connection per database type (`CUBE_ENGINE_TEST__generatePlanSql`), and checks
76
- facts about the SQL: row numbers in the Sort's order, no `limit m,n`, no `top N distinct`. A check that should catch
103
+ facts about the SQL: row numbers in the Sort's order, no `limit m,n`, no `top N distinct`; for Group, its reduces,
104
+ HAVING and the GROUP BY target after two Renames (an engine issue, pinned); for Concat, one UNION ALL, each input's
105
+ Sort and Limit in its own subquery, and no SQL cast when it converts types. A check that should catch
77
106
  a missing workaround must fail without it: run it once with the workaround off before relying on it.
107
+ - **Windows** (PLAN §11.6) are planned in `WINDOW_SHAPES` over `WINDOW_DATABASE_TYPES`, since Spanner, Presto and
108
+ Composite refuse any window (pinned): an OVER clause with no frame, `count(col)` and `count(1)` for the counts,
109
+ `rank()`, `dense_rank()` and `row_number()`, M5b's `ntile`, `percent_rank`, `cume_dist`, `lag`, `lead` and
110
+ `first_value`, Last's over the reversed sort (ClickHouse's own `lagInFrame` and `leadInFrame` over a whole-partition
111
+ frame, DuckDB's `first`), with the reversed sort putting empty values at the other end on every type, a Filter after a Partition as a `WITH n_…` and a `WHERE` outside the
112
+ window, never QUALIFY, and the capture's ORDER BY at the root. Run, they are checked three ways: the operations
113
+ tests ("Partition on the engine"), with values worked out on the fixture (rows tied on the sort share a running
114
+ value and a rank); `LegendCubeDirectConnectionOperations.engine-roundtrip-test.ts` on H2 and DuckDB, a second
115
+ database that runs them, windowed Distinct Count included; and `CubeWindowComposition.engine-roundtrip-test.ts`,
116
+ which runs pairs and triples of nodes with a Partition against a small JavaScript reference with SQL's null rules
117
+ and default frame (and M5b's functions, refusing a tie for the ones that depend on a row's place), checks every Partition is written in the array form, and shows (its negative control) that the
118
+ single form, unbound, gives wrong rows. The core's `PartitionEmitter.test.ts` pins the emitted text.
119
+ `CubeWindowIsolation.engine-roundtrip-test.ts` checks the lets themselves through the adapter, with a test-only
120
+ window: they run, type, show in Show Pure, and put an error inside a let on its window.
121
+ - **Difference and Extend** (PLAN §11.7). The operations tests run a Difference against a reference computed from its
122
+ inputs' own rows, every numeric family included; the plan-only test pins its join (a native `full outer join` on
123
+ every type but H2, where the engine emulates it) and its `coalesce(…, 0) - coalesce(…, 0)`, never a cast, and an
124
+ Extend's columns written as their expressions; both run on H2 and DuckDB through the direct connection.
125
+ `CubeExpressions.engine-roundtrip-test.ts` covers Extend's engine calls: an expression parsed with its digits and
126
+ locations, typed as a chain after its input over the cube's model (its own enumerations and functions too), the
127
+ failing column found and located, a plan that fails, and a run. A test that needs a typed Extend without the engine
128
+ builds one with `TEST__typedExtend` (`src/__test-utils__/CubeExpressionTestUtils.ts`), whose types the conformance
129
+ cases check against the engine.
130
+ - **Filter by Expression** (PLAN §11.11). `CubeExpressionFilter.engine-roundtrip-test.ts` checks conditions through the
131
+ adapter (the cube model's function, a nullable comparison without `->toOne()`, a condition's type named when it
132
+ isn't one Boolean, an unknown column located, `&&` without parentheses refused) and runs them on H2: the late
133
+ orders, an empty value kept by a negation compared directly and by neither after `->toOne()`, a window column after
134
+ a Partition, an Extend's column. The plan-only test pins the condition in the `WHERE` on every type, and a window
135
+ column's filter after the window, never `QUALIFY`; the direct connection runs the empty values and the window on H2
136
+ and DuckDB. A test that needs a checked filter without the engine builds one with `TEST__checkedExpressionFilter`.
137
+ - **Pivot** (PLAN §11.12). `CubePivot.engine-roundtrip-test.ts` runs Cube's pivot on a DuckDB direct connection
138
+ (H2 can't run it): sums, counts with 0 where no rows are, averages and minimums, no row column, string values with a
139
+ space, a quote and a bar, a date and a Boolean pivot column, and later steps over the value columns; and Cube
140
+ refusing H2 and Trino. The plan-only test pins a PIVOT on Snowflake, Databricks, MemSQL and DuckDB whose names the
141
+ outer select reads, Trino and Athena planning none, and the other 14 refusing it: when the engine changes, it fails,
142
+ and `PIVOT_UNSUPPORTED_DATABASE_TYPES` can change. Two conformance cases pin the cast's types and emptiness.
143
+ - **The operations cleanup** (PLAN §11.14). `CubeOperationsCleanup.engine-roundtrip-test.ts` runs, on H2 and DuckDB
144
+ direct connections, a String's and a Boolean's Min and Max in a Group and a window, a String's Max in a Pivot
145
+ (DuckDB), the grid's float rule finding a `REAL` value (DuckDB; H2's is CubeDrilldown's), and a Join of `ID` and
146
+ `id` reported and fixed (DuckDB, which keeps their case). The plan-only test pins a pattern that isn't a literal:
147
+ `contains(a, b)` on Snowflake, the column's own SQL as the text on the others, which Cube refuses (a canary).
148
+ - `src/__tests__/CubeExamples.engine-roundtrip-test.ts` compiles the Sports and Trades sample models and opens every
149
+ example cube (PLAN §6.9) as the Examples dialog does: it types its tables, checks every node types as Cube infers it
150
+ (Sum outputs nullable to Cube only, PLAN §5.7) and runs it, counting rows.
78
151
  - `src/__tests__/CubeNorthwindRelationTypes.json` records the engine's relation type for every table of the bundled
79
152
  model. If the test comparing with it fails, the engine's typing changed: check the change, then record the file
80
153
  again by hand.
81
154
 
155
+ ### Direct connections
156
+
157
+ - `TEST__createCubeHost()` also gives `connections`, a fake connection explorer
158
+ (`src/__test-utils__/FakeCubeConnectionExplorer.ts`) whose `listSchemas` answers `CUBE_DIRECT` and whose `listTables`
159
+ answers `FAKE_DIRECT_TABLES`, each a Jest mock.
160
+ - On the engine, `V1_createEngineBackedCubeEngine()` also spies `buildDatabase` (schema exploration), and
161
+ `V1_createEngineBackedCubeConnectionExplorer()` gives a real explorer. `directH2Connection(schema)` and
162
+ `directDuckDBConnection(schema)` (`src/__test-utils__/CubeDirectConnectionFixtures.ts`) build small databases from
163
+ setup SQL.
164
+ - **Setup SQL runs on every pooled connection**, so a setup must first drop what it creates. Each engine test file
165
+ still uses its own schema names, so files never depend on each other's data.
166
+ - **Never assert an engine answer that is a known defect.** Schema exploration types H2's and DuckDB's `DECIMAL(10,2)`
167
+ as `Numeric(0,0)` and DuckDB's `VARCHAR(5)` as `Varchar(0)`; only the core's DuckDB sample
168
+ (`packages/legend-cube/src/spec/__tests__/fixtures/direct/`) holds those types, and no engine test reads it.
169
+
170
+ ### Data products and ingest data sets
171
+
172
+ - **Fakes.** `TEST__createCubeHost()` also gives `dataProducts`, a fake data product catalog
173
+ (`src/__test-utils__/FakeCubeDataProductCatalog.ts`). An ingest catalog is opt-in: build one per test with
174
+ `createFakeCubeIngestCatalog()` (`src/__test-utils__/FakeCubeIngestCatalog.ts`) and pass its `catalog` as the host's
175
+ `ingestCatalog`; without it, Cube offers no Ingest tab.
176
+ - **The open-source engine reads neither.** It has no data product or ingest definition to read, can't parse an ingest
177
+ definition, and can't type or run a `#I{...}#` accessor. So the engine tests stand each source in for with a Pure
178
+ function declaring the relation type the source would have, over an H2 table:
179
+ `src/__tests__/CubeDataProduct.engine-roundtrip-test.ts` for access points, and
180
+ `src/__tests__/CubeIngest.engine-roundtrip-test.ts` for ingest data sets. The ingest one swaps each accessor Cube
181
+ emits for its stand-in, then checks the nodes downstream (a Filter on `LAKE_OUT_ID`, a Join of two data sets, a
182
+ Group) against the engine's typing, and runs them.
183
+ - **Testable locally:** reading a definition's data sets and types, the URN parser, the saved model, the source
184
+ dialog, the panels and the re-checks, all with fakes; downstream lambdas, on the stand-ins.
185
+ - **Not testable locally:** the ingest servers' answers, the parse of a deployed definition's grammar, compiling and
186
+ running `#I{...}#`, the environment name and whether a warehouse is accepted. Those are checked in an internal
187
+ deployment (PLAN §11.2 Part B2).
188
+
82
189
  The engine tests in `src/__tests__/` import `V1_*` classes there, as an exception to the V1 rule: they need both the
83
190
  `v1/` adapter and `stores/`, which the import-hierarchy lint rule keeps apart.
191
+
192
+ ### Depot databases
193
+
194
+ - **Fakes.** `createFakeCubeProjectCatalog()` (`src/__test-utils__/FakeCubeProjectCatalog.ts`) gives a catalog to pass
195
+ as the host's `projectCatalog`; without one, Cube offers no Project tab. Its `com.example:sales` holds the fake
196
+ engine's Northwind Database, so the fake engine types its tables.
197
+ - **CI:** `src/__tests__/CubeDepotSamples.engine-roundtrip-test.ts` compiles the mock depot's committed sample
198
+ projects and types every table of their own Databases. The engine fetches a pointer's project from a depot, which CI
199
+ doesn't run, so no CI test sends a pointer.
200
+ - **By hand (`cube-local`):** with the engine on :6300 and `yarn dev:mock-depot-server` on :6200,
201
+ `TEST_GROUP=cube-local yarn workspace @finos/legend-cube-builder test` runs the real catalog, the engine's pointer
202
+ fetch and the Project tab end to end (`src/__tests__/CubeDepot.cube-local-test.ts`). Its depot client sends its GETs
203
+ through axios, since the repo's Jest setup blocks `fetch`.
204
+ - **Changing the sample projects:** edit `fixtures/legend-mock-server/scripts/generate-cube-depot.mjs` and run it with
205
+ the engine up (`node scripts/generate-cube-depot.mjs`). The engine caches a pointer's project per version, so restart
206
+ it after changing a version it has fetched.
207
+
208
+ ### The results grid
209
+
210
+ - **Server-side mode in jsdom.** ag-grid's server-side row model renders in jsdom, group rows and their expansion
211
+ included, so the region's tests drive it as a user would (`CubeGridRegion.test.tsx`). The logic sits below it, in
212
+ `CubeGridFetcher` and `CubeGridState` (store tests on the fake engine) and the core's `deriveDrilldownLevel`.
213
+ - **Each level on the engine:** `src/__tests__/CubeDrilldown.engine-roundtrip-test.ts` runs drill-down levels on H2
214
+ and compares their groups with groups counted and summed from the run's own rows, keys of every type included (a
215
+ 32-bit `REAL` key needs `In [v, fround(v)]`), and over a Partition and a Limit run.
216
+ - **Around the databases:** the plan-only dialect test plans each level shape on every database type, and the
217
+ conformance suite checks the derived Groups' types against the engine's.
218
+ - **Export:** `src/__tests__/CubeExport.engine-roundtrip-test.ts` reads the engine's CSV. The engine test client sends
219
+ the serialization format the client asks for (Studio's CSV is the engine's `CSV_TRANSFORMED`). jsdom has no
220
+ `URL.createObjectURL`, so a test that saves a file stubs it (`CubeExportState.test.ts`).
@@ -16,11 +16,14 @@
16
16
  import type { CommandConfigData } from '@finos/legend-application';
17
17
  export declare enum LEGEND_CUBE_COMMAND_KEY {
18
18
  EXECUTE = "legend-cube.execute",
19
- UNDO = "legend-cube.undo"
19
+ UNDO = "legend-cube.undo",
20
+ REDO = "legend-cube.redo",
21
+ VALIDATE_EXPRESSIONS = "legend-cube.validate-expressions"
20
22
  }
21
23
  /** Keys as `KeyboardEvent.code` names */
22
24
  export declare const LEGEND_CUBE_COMMAND_CONFIG: CommandConfigData;
23
25
  /** How the buttons' tooltips name the shortcuts */
24
26
  export declare const EXECUTE_SHORTCUT_LABEL = "F9";
25
27
  export declare const UNDO_SHORTCUT_LABEL = "Ctrl+Z / Cmd+Z";
28
+ export declare const REDO_SHORTCUT_LABEL = "Ctrl+Shift+Z / Cmd+Shift+Z";
26
29
  //# sourceMappingURL=LegendCubeCommand.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LegendCubeCommand.d.ts","sourceRoot":"","sources":["../../src/__lib__/LegendCubeCommand.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAOnE,oBAAY,uBAAuB;IACjC,OAAO,wBAAwB;IAC/B,IAAI,qBAAqB;CAC1B;AAED,yCAAyC;AACzC,eAAO,MAAM,0BAA0B,EAAE,iBAUxC,CAAC;AAEF,mDAAmD;AACnD,eAAO,MAAM,sBAAsB,OAAO,CAAC;AAC3C,eAAO,MAAM,mBAAmB,mBAAmB,CAAC"}
1
+ {"version":3,"file":"LegendCubeCommand.d.ts","sourceRoot":"","sources":["../../src/__lib__/LegendCubeCommand.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAOnE,oBAAY,uBAAuB;IACjC,OAAO,wBAAwB;IAC/B,IAAI,qBAAqB;IACzB,IAAI,qBAAqB;IACzB,oBAAoB,qCAAqC;CAC1D;AAED,yCAAyC;AACzC,eAAO,MAAM,0BAA0B,EAAE,iBAmBxC,CAAC;AAEF,mDAAmD;AACnD,eAAO,MAAM,sBAAsB,OAAO,CAAC;AAC3C,eAAO,MAAM,mBAAmB,mBAAmB,CAAC;AACpD,eAAO,MAAM,mBAAmB,+BAA+B,CAAC"}
@@ -21,6 +21,8 @@ export var LEGEND_CUBE_COMMAND_KEY;
21
21
  (function (LEGEND_CUBE_COMMAND_KEY) {
22
22
  LEGEND_CUBE_COMMAND_KEY["EXECUTE"] = "legend-cube.execute";
23
23
  LEGEND_CUBE_COMMAND_KEY["UNDO"] = "legend-cube.undo";
24
+ LEGEND_CUBE_COMMAND_KEY["REDO"] = "legend-cube.redo";
25
+ LEGEND_CUBE_COMMAND_KEY["VALIDATE_EXPRESSIONS"] = "legend-cube.validate-expressions";
24
26
  })(LEGEND_CUBE_COMMAND_KEY || (LEGEND_CUBE_COMMAND_KEY = {}));
25
27
  /** Keys as `KeyboardEvent.code` names */
26
28
  export const LEGEND_CUBE_COMMAND_CONFIG = {
@@ -33,8 +35,18 @@ export const LEGEND_CUBE_COMMAND_CONFIG = {
33
35
  defaultKeyboardShortcut: 'Control+KeyZ',
34
36
  additionalKeyboardShortcuts: ['Meta+KeyZ'],
35
37
  },
38
+ [LEGEND_CUBE_COMMAND_KEY.REDO]: {
39
+ title: 'Redo the last change undone',
40
+ defaultKeyboardShortcut: 'Control+Shift+KeyZ',
41
+ additionalKeyboardShortcuts: ['Meta+Shift+KeyZ', 'Control+KeyY'],
42
+ },
43
+ [LEGEND_CUBE_COMMAND_KEY.VALIDATE_EXPRESSIONS]: {
44
+ title: "Validate the Extend's expressions",
45
+ defaultKeyboardShortcut: 'F10',
46
+ },
36
47
  };
37
48
  /** How the buttons' tooltips name the shortcuts */
38
49
  export const EXECUTE_SHORTCUT_LABEL = 'F9';
39
50
  export const UNDO_SHORTCUT_LABEL = 'Ctrl+Z / Cmd+Z';
51
+ export const REDO_SHORTCUT_LABEL = 'Ctrl+Shift+Z / Cmd+Shift+Z';
40
52
  //# sourceMappingURL=LegendCubeCommand.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LegendCubeCommand.js","sourceRoot":"","sources":["../../src/__lib__/LegendCubeCommand.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,wEAAwE;AACxE,2EAA2E;AAC3E,6EAA6E;AAC7E,oDAAoD;AAEpD,MAAM,CAAN,IAAY,uBAGX;AAHD,WAAY,uBAAuB;IACjC,0DAA+B,CAAA;IAC/B,oDAAyB,CAAA;AAC3B,CAAC,EAHW,uBAAuB,KAAvB,uBAAuB,QAGlC;AAED,yCAAyC;AACzC,MAAM,CAAC,MAAM,0BAA0B,GAAsB;IAC3D,CAAC,uBAAuB,CAAC,OAAO,CAAC,EAAE;QACjC,KAAK,EAAE,mBAAmB;QAC1B,uBAAuB,EAAE,IAAI;KAC9B;IACD,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE;QAC9B,KAAK,EAAE,sBAAsB;QAC7B,uBAAuB,EAAE,cAAc;QACvC,2BAA2B,EAAE,CAAC,WAAW,CAAC;KAC3C;CACF,CAAC;AAEF,mDAAmD;AACnD,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAC;AAC3C,MAAM,CAAC,MAAM,mBAAmB,GAAG,gBAAgB,CAAC"}
1
+ {"version":3,"file":"LegendCubeCommand.js","sourceRoot":"","sources":["../../src/__lib__/LegendCubeCommand.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,wEAAwE;AACxE,2EAA2E;AAC3E,6EAA6E;AAC7E,oDAAoD;AAEpD,MAAM,CAAN,IAAY,uBAKX;AALD,WAAY,uBAAuB;IACjC,0DAA+B,CAAA;IAC/B,oDAAyB,CAAA;IACzB,oDAAyB,CAAA;IACzB,oFAAyD,CAAA;AAC3D,CAAC,EALW,uBAAuB,KAAvB,uBAAuB,QAKlC;AAED,yCAAyC;AACzC,MAAM,CAAC,MAAM,0BAA0B,GAAsB;IAC3D,CAAC,uBAAuB,CAAC,OAAO,CAAC,EAAE;QACjC,KAAK,EAAE,mBAAmB;QAC1B,uBAAuB,EAAE,IAAI;KAC9B;IACD,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE;QAC9B,KAAK,EAAE,sBAAsB;QAC7B,uBAAuB,EAAE,cAAc;QACvC,2BAA2B,EAAE,CAAC,WAAW,CAAC;KAC3C;IACD,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE;QAC9B,KAAK,EAAE,6BAA6B;QACpC,uBAAuB,EAAE,oBAAoB;QAC7C,2BAA2B,EAAE,CAAC,iBAAiB,EAAE,cAAc,CAAC;KACjE;IACD,CAAC,uBAAuB,CAAC,oBAAoB,CAAC,EAAE;QAC9C,KAAK,EAAE,mCAAmC;QAC1C,uBAAuB,EAAE,KAAK;KAC/B;CACF,CAAC;AAEF,mDAAmD;AACnD,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAC;AAC3C,MAAM,CAAC,MAAM,mBAAmB,GAAG,gBAAgB,CAAC;AACpD,MAAM,CAAC,MAAM,mBAAmB,GAAG,4BAA4B,CAAC"}
@@ -0,0 +1,45 @@
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 { SchemaDiff } from '@finos/legend-cube';
17
+ import { CubeDataProductEnvironmentType } from '../graph-manager/CubeDataProduct.js';
18
+ import { CubeAccessPointGroupAccess } from '../graph-manager/CubeDataProductCatalog.js';
19
+ /** The deployment classes' labels, as Data Cube shows them */
20
+ export declare const CUBE_DATA_PRODUCT_ENVIRONMENT_LABELS: Readonly<Record<CubeDataProductEnvironmentType, string>>;
21
+ /** Said of a project deployed from a SNAPSHOT version */
22
+ export declare const CUBE_SNAPSHOT_VERSION_LABEL = "A SNAPSHOT version: its data and columns may change";
23
+ export declare const CUBE_WAREHOUSE_APPLY_TITLE = "Use this warehouse for the cube's next runs; it's remembered for your next cubes";
24
+ /** The warning on an access point that changed since the cube was saved; its new columns are used */
25
+ export declare const getAccessPointDriftWarning: (diff: SchemaDiff) => string;
26
+ /** The warning on an access point Cube couldn't re-check, which keeps its saved columns */
27
+ export declare const getAccessPointRecheckWarning: (firstLine: string) => string;
28
+ export declare const CUBE_DATA_PRODUCT_RECHECK_MESSAGE: {
29
+ readonly NO_ANSWER: "The data product catalog gave no columns for this access point";
30
+ readonly NO_CATALOG: "This Legend deployment doesn't serve data products";
31
+ };
32
+ /**
33
+ * Beside a run's error that says the cube's warehouse can't be used; it
34
+ * offers another only where the warehouse can be changed
35
+ */
36
+ export declare const getCubeWarehouseErrorHint: (warehouse: string, canPickAnother: boolean) => string;
37
+ /** A link to ask for access to an access point group in the marketplace */
38
+ export declare const getCubeRequestAccessLabel: (accessPointGroup: string | undefined, dataProductName: string | undefined) => string;
39
+ /**
40
+ * The viewer's access to a group, as the marketplace says it; a group with
41
+ * no access, or refused, offers to request it instead
42
+ */
43
+ export declare const CUBE_ACCESS_POINT_GROUP_ACCESS_LABELS: Readonly<Partial<Record<CubeAccessPointGroupAccess, string>>>;
44
+ export declare const CUBE_NO_ACCESS_LABEL = "No access";
45
+ //# sourceMappingURL=LegendCubeDataProductLabels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LegendCubeDataProductLabels.d.ts","sourceRoot":"","sources":["../../src/__lib__/LegendCubeDataProductLabels.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAC;AACrF,OAAO,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AAMxF,8DAA8D;AAC9D,eAAO,MAAM,oCAAoC,EAAE,QAAQ,CACzD,MAAM,CAAC,8BAA8B,EAAE,MAAM,CAAC,CAI/C,CAAC;AAEF,yDAAyD;AACzD,eAAO,MAAM,2BAA2B,wDACe,CAAC;AAExD,eAAO,MAAM,0BAA0B,qFAC6C,CAAC;AAErF,qGAAqG;AACrG,eAAO,MAAM,0BAA0B,GAAI,MAAM,UAAU,KAAG,MACsB,CAAC;AAErF,2FAA2F;AAC3F,eAAO,MAAM,4BAA4B,GAAI,WAAW,MAAM,KAAG,MACoB,CAAC;AAEtF,eAAO,MAAM,iCAAiC;;;CAGpC,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,yBAAyB,GACpC,WAAW,MAAM,EACjB,gBAAgB,OAAO,KACtB,MAGqD,CAAC;AAEzD,2EAA2E;AAC3E,eAAO,MAAM,yBAAyB,GACpC,kBAAkB,MAAM,GAAG,SAAS,EACpC,iBAAiB,MAAM,GAAG,SAAS,KAClC,MAGmB,CAAC;AAEvB;;;GAGG;AACH,eAAO,MAAM,qCAAqC,EAAE,QAAQ,CAC1D,OAAO,CAAC,MAAM,CAAC,0BAA0B,EAAE,MAAM,CAAC,CAAC,CAUpD,CAAC;AAEF,eAAO,MAAM,oBAAoB,cAAc,CAAC"}
@@ -0,0 +1,60 @@
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 { CubeDataProductEnvironmentType } from '../graph-manager/CubeDataProduct.js';
17
+ import { CubeAccessPointGroupAccess } from '../graph-manager/CubeDataProductCatalog.js';
18
+ import { getSchemaChangeList } from './LegendCubeLabels.js';
19
+ // The text of data product sources (PLAN §6.8): the source dialog's Data
20
+ // product tab and a data product source's panel
21
+ /** The deployment classes' labels, as Data Cube shows them */
22
+ export const CUBE_DATA_PRODUCT_ENVIRONMENT_LABELS = {
23
+ [CubeDataProductEnvironmentType.PRODUCTION]: 'Production',
24
+ [CubeDataProductEnvironmentType.PRODUCTION_PARALLEL]: 'Production (parallel)',
25
+ };
26
+ /** Said of a project deployed from a SNAPSHOT version */
27
+ export const CUBE_SNAPSHOT_VERSION_LABEL = 'A SNAPSHOT version: its data and columns may change';
28
+ export const CUBE_WAREHOUSE_APPLY_TITLE = "Use this warehouse for the cube's next runs; it's remembered for your next cubes";
29
+ /** The warning on an access point that changed since the cube was saved; its new columns are used */
30
+ export const getAccessPointDriftWarning = (diff) => `This access point changed since the cube was saved: ${getSchemaChangeList(diff)}`;
31
+ /** The warning on an access point Cube couldn't re-check, which keeps its saved columns */
32
+ export const getAccessPointRecheckWarning = (firstLine) => `Could not re-check this access point, so it keeps its saved columns: ${firstLine}`;
33
+ export const CUBE_DATA_PRODUCT_RECHECK_MESSAGE = {
34
+ NO_ANSWER: 'The data product catalog gave no columns for this access point',
35
+ NO_CATALOG: "This Legend deployment doesn't serve data products",
36
+ };
37
+ /**
38
+ * Beside a run's error that says the cube's warehouse can't be used; it
39
+ * offers another only where the warehouse can be changed
40
+ */
41
+ export const getCubeWarehouseErrorHint = (warehouse, canPickAnother) => canPickAnother
42
+ ? `The run couldn't use the warehouse ${warehouse}. Pick another one in a source's panel.`
43
+ : `The run couldn't use the warehouse ${warehouse}.`;
44
+ /** A link to ask for access to an access point group in the marketplace */
45
+ export const getCubeRequestAccessLabel = (accessPointGroup, dataProductName) => accessPointGroup && dataProductName
46
+ ? `Request access to ${accessPointGroup} in ${dataProductName}`
47
+ : 'Request access';
48
+ /**
49
+ * The viewer's access to a group, as the marketplace says it; a group with
50
+ * no access, or refused, offers to request it instead
51
+ */
52
+ export const CUBE_ACCESS_POINT_GROUP_ACCESS_LABELS = {
53
+ [CubeAccessPointGroupAccess.ENTERPRISE]: 'Enterprise access',
54
+ [CubeAccessPointGroupAccess.APPROVED]: 'Entitled',
55
+ [CubeAccessPointGroupAccess.SUBMITTED_FOR_APPROVALS]: 'Submitted for approval',
56
+ [CubeAccessPointGroupAccess.PENDING_MANAGER_APPROVAL]: 'Pending manager approval',
57
+ [CubeAccessPointGroupAccess.PENDING_DATA_OWNER_APPROVAL]: 'Pending data owner approval',
58
+ };
59
+ export const CUBE_NO_ACCESS_LABEL = 'No access';
60
+ //# sourceMappingURL=LegendCubeDataProductLabels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LegendCubeDataProductLabels.js","sourceRoot":"","sources":["../../src/__lib__/LegendCubeDataProductLabels.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAC;AACrF,OAAO,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,yEAAyE;AACzE,gDAAgD;AAEhD,8DAA8D;AAC9D,MAAM,CAAC,MAAM,oCAAoC,GAE7C;IACF,CAAC,8BAA8B,CAAC,UAAU,CAAC,EAAE,YAAY;IACzD,CAAC,8BAA8B,CAAC,mBAAmB,CAAC,EAAE,uBAAuB;CAC9E,CAAC;AAEF,yDAAyD;AACzD,MAAM,CAAC,MAAM,2BAA2B,GACtC,qDAAqD,CAAC;AAExD,MAAM,CAAC,MAAM,0BAA0B,GACrC,kFAAkF,CAAC;AAErF,qGAAqG;AACrG,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,IAAgB,EAAU,EAAE,CACrE,uDAAuD,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;AAErF,2FAA2F;AAC3F,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,SAAiB,EAAU,EAAE,CACxE,wEAAwE,SAAS,EAAE,CAAC;AAEtF,MAAM,CAAC,MAAM,iCAAiC,GAAG;IAC/C,SAAS,EAAE,gEAAgE;IAC3E,UAAU,EAAE,oDAAoD;CACxD,CAAC;AAEX;;;GAGG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,SAAiB,EACjB,cAAuB,EACf,EAAE,CACV,cAAc;IACZ,CAAC,CAAC,sCAAsC,SAAS,yCAAyC;IAC1F,CAAC,CAAC,sCAAsC,SAAS,GAAG,CAAC;AAEzD,2EAA2E;AAC3E,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,gBAAoC,EACpC,eAAmC,EAC3B,EAAE,CACV,gBAAgB,IAAI,eAAe;IACjC,CAAC,CAAC,qBAAqB,gBAAgB,OAAO,eAAe,EAAE;IAC/D,CAAC,CAAC,gBAAgB,CAAC;AAEvB;;;GAGG;AACH,MAAM,CAAC,MAAM,qCAAqC,GAE9C;IACF,CAAC,0BAA0B,CAAC,UAAU,CAAC,EAAE,mBAAmB;IAC5D,CAAC,0BAA0B,CAAC,QAAQ,CAAC,EAAE,UAAU;IACjD,CAAC,0BAA0B,CAAC,uBAAuB,CAAC,EAClD,wBAAwB;IAC1B,CAAC,0BAA0B,CAAC,wBAAwB,CAAC,EACnD,0BAA0B;IAC5B,CAAC,0BAA0B,CAAC,2BAA2B,CAAC,EACtD,6BAA6B;CAChC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,WAAW,CAAC"}
@@ -0,0 +1,56 @@
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 { CubeConnectionDatasourceKind, type CubeConnectionSummary } from '../graph-manager/CubeConnectionExplorer.js';
17
+ /**
18
+ * The setup SQL the H2 form starts with (D5): a small sample database that
19
+ * first drops what it creates, since setup SQL runs on every connection
20
+ */
21
+ export declare const CUBE_DIRECT_SAMPLE_SETUP_SQL: string;
22
+ /** Pending labels: lower-case gerunds, shown as they are (spec §17.13) */
23
+ export declare enum CUBE_DIRECT_PENDING_LABEL {
24
+ TESTING_CONNECTION = "testing connection",
25
+ LISTING_TABLES = "listing tables"
26
+ }
27
+ export declare const CUBE_DIRECT_MESSAGE: {
28
+ readonly H2_NEEDS_SETUP_SQL: "An H2 connection needs setup SQL: the engine creates the database from it";
29
+ readonly CUBE_CHANGED: "The cube changed while the table was loading; pick the table again.";
30
+ readonly NO_SCHEMA_FOUND: "The database has no schema Cube can read";
31
+ readonly NO_TABLE_SCHEMA: "The engine gave no schema for this table";
32
+ };
33
+ /** The text of loading a CSV into an in-memory DuckDB connection */
34
+ export declare const CUBE_CSV_MESSAGE: {
35
+ readonly EMPTY: "The CSV is empty: its first row must name the columns";
36
+ readonly UNCLOSED_QUOTE: (line: number) => string;
37
+ readonly RAGGED_ROW: (row: number, values: number, columns: number) => string;
38
+ readonly TOO_MANY_ROWS: (rows: number, max: number) => string;
39
+ readonly TOO_LONG: (max: number) => string;
40
+ readonly ADDED: (table: string, rows: number, columns: number) => string;
41
+ readonly UNREADABLE_FILE: (name: string) => string;
42
+ };
43
+ export declare const CUBE_CSV_HELP_TEXT = "Paste a CSV, or choose a file, with a header row. Cube adds it to the setup SQL as a table of the csv schema, guessing each column's type from its values; edit the SQL to change them. Up to 10,000 rows: the cube saves them.";
44
+ export declare const CUBE_DIRECT_HELP_TEXT: {
45
+ readonly SETUP_SQL: "The engine runs these statements on every connection, so they should first drop what they create. A statement ends with a line ending in ';'. A statement that returns rows, such as a select, fails.";
46
+ readonly DUCKDB_PATH: "A DuckDB file on the engine's host; leave it empty for an in-memory database.";
47
+ readonly FIXED_CONNECTION: "All of the cube's tables come from this connection: to use another one, remove every node from the cube first.";
48
+ };
49
+ export declare const CUBE_DIRECT_DATASOURCE_LABELS: Readonly<Record<CubeConnectionDatasourceKind, string>>;
50
+ /** How many of a table's columns Cube leaves out, or nothing when it keeps them all */
51
+ export declare const getHiddenColumnsLabel: (count: number) => string | undefined;
52
+ /** What the page shows of a saved connection: never its setup SQL */
53
+ export declare const getCubeConnectionSummaryLabel: (summary: CubeConnectionSummary) => string;
54
+ /** A direct connection shown where Cube can't describe it, e.g. on a host without an explorer */
55
+ export declare const CUBE_DIRECT_CONNECTION_FALLBACK_LABEL = "A direct database connection";
56
+ //# sourceMappingURL=LegendCubeDirectConnectionLabels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LegendCubeDirectConnectionLabels.d.ts","sourceRoot":"","sources":["../../src/__lib__/LegendCubeDirectConnectionLabels.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,4BAA4B,EAC5B,KAAK,qBAAqB,EAC3B,MAAM,4CAA4C,CAAC;AAIpD;;;GAGG;AACH,eAAO,MAAM,4BAA4B,QAO7B,CAAC;AAEb,0EAA0E;AAC1E,oBAAY,yBAAyB;IACnC,kBAAkB,uBAAuB;IACzC,cAAc,mBAAmB;CAClC;AAED,eAAO,MAAM,mBAAmB;;;;;CAOtB,CAAC;AAIX,oEAAoE;AACpE,eAAO,MAAM,gBAAgB;;oCAEJ,MAAM,KAAG,MAAM;+BAEpB,MAAM,UAAU,MAAM,WAAW,MAAM,KAAG,MAAM;mCAE5C,MAAM,OAAO,MAAM,KAAG,MAAM;6BAElC,MAAM,KAAG,MAAM;4BAEhB,MAAM,QAAQ,MAAM,WAAW,MAAM,KAAG,MAAM;qCAErC,MAAM,KAAG,MAAM;CAE/B,CAAC;AAEX,eAAO,MAAM,kBAAkB,oOACoM,CAAC;AAEpO,eAAO,MAAM,qBAAqB;;;;CAOxB,CAAC;AAEX,eAAO,MAAM,6BAA6B,EAAE,QAAQ,CAClD,MAAM,CAAC,4BAA4B,EAAE,MAAM,CAAC,CAO7C,CAAC;AAEF,uFAAuF;AACvF,eAAO,MAAM,qBAAqB,GAAI,OAAO,MAAM,KAAG,MAAM,GAAG,SAGF,CAAC;AAE9D,qEAAqE;AACrE,eAAO,MAAM,6BAA6B,GACxC,SAAS,qBAAqB,KAC7B,MAKW,CAAC;AAEf,iGAAiG;AACjG,eAAO,MAAM,qCAAqC,iCAClB,CAAC"}
@@ -0,0 +1,76 @@
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 { CubeConnectionDatasourceKind, } from '../graph-manager/CubeConnectionExplorer.js';
17
+ // The text of the source picker's database connection tab (PLAN §6.8)
18
+ /**
19
+ * The setup SQL the H2 form starts with (D5): a small sample database that
20
+ * first drops what it creates, since setup SQL runs on every connection
21
+ */
22
+ export const CUBE_DIRECT_SAMPLE_SETUP_SQL = [
23
+ 'drop schema if exists CUBE_SAMPLE cascade;',
24
+ 'create schema CUBE_SAMPLE;',
25
+ 'create table CUBE_SAMPLE.CUSTOMERS (CUSTOMER_ID VARCHAR(5) PRIMARY KEY, COMPANY_NAME VARCHAR(40) NOT NULL, COUNTRY VARCHAR(15));',
26
+ "insert into CUBE_SAMPLE.CUSTOMERS values ('ALFKI', 'Alfreds Futterkiste', 'Germany'), ('ANATR', 'Ana Trujillo Emparedados', 'Mexico'), ('BONAP', 'Bon app''', 'France');",
27
+ 'create table CUBE_SAMPLE.ORDERS (ORDER_ID INT PRIMARY KEY, CUSTOMER_ID VARCHAR(5) NOT NULL, ORDER_DATE DATE, AMOUNT DECIMAL(10,2));',
28
+ "insert into CUBE_SAMPLE.ORDERS values (10248, 'ALFKI', '1997-07-04', 32.38), (10249, 'ANATR', '1997-07-05', 11.61), (10250, 'BONAP', '1997-07-08', 65.83), (10251, 'ALFKI', '1997-07-08', 41.34);",
29
+ ].join('\n');
30
+ /** Pending labels: lower-case gerunds, shown as they are (spec §17.13) */
31
+ export var CUBE_DIRECT_PENDING_LABEL;
32
+ (function (CUBE_DIRECT_PENDING_LABEL) {
33
+ CUBE_DIRECT_PENDING_LABEL["TESTING_CONNECTION"] = "testing connection";
34
+ CUBE_DIRECT_PENDING_LABEL["LISTING_TABLES"] = "listing tables";
35
+ })(CUBE_DIRECT_PENDING_LABEL || (CUBE_DIRECT_PENDING_LABEL = {}));
36
+ export const CUBE_DIRECT_MESSAGE = {
37
+ H2_NEEDS_SETUP_SQL: 'An H2 connection needs setup SQL: the engine creates the database from it',
38
+ CUBE_CHANGED: 'The cube changed while the table was loading; pick the table again.',
39
+ NO_SCHEMA_FOUND: 'The database has no schema Cube can read',
40
+ NO_TABLE_SCHEMA: 'The engine gave no schema for this table',
41
+ };
42
+ const formatCount = (value) => value.toLocaleString('en-US');
43
+ /** The text of loading a CSV into an in-memory DuckDB connection */
44
+ export const CUBE_CSV_MESSAGE = {
45
+ EMPTY: 'The CSV is empty: its first row must name the columns',
46
+ UNCLOSED_QUOTE: (line) => `The quoted value that starts on line ${line} is never closed`,
47
+ RAGGED_ROW: (row, values, columns) => `Row ${formatCount(row)} has ${formatCount(values)} ${values === 1 ? 'value' : 'values'}, but the header names ${formatCount(columns)} ${columns === 1 ? 'column' : 'columns'}`,
48
+ TOO_MANY_ROWS: (rows, max) => `The CSV has ${formatCount(rows)} rows; Cube loads at most ${formatCount(max)}, since the cube saves them and every run loads them again`,
49
+ TOO_LONG: (max) => `The CSV is too long: Cube loads at most ${formatCount(max)} characters`,
50
+ ADDED: (table, rows, columns) => `Added table ${table}: ${formatCount(rows)} ${rows === 1 ? 'row' : 'rows'}, ${formatCount(columns)} ${columns === 1 ? 'column' : 'columns'}. Test the connection to list it.`,
51
+ UNREADABLE_FILE: (name) => `Cube couldn't read the file ${name}`,
52
+ };
53
+ export const CUBE_CSV_HELP_TEXT = "Paste a CSV, or choose a file, with a header row. Cube adds it to the setup SQL as a table of the csv schema, guessing each column's type from its values; edit the SQL to change them. Up to 10,000 rows: the cube saves them.";
54
+ export const CUBE_DIRECT_HELP_TEXT = {
55
+ SETUP_SQL: "The engine runs these statements on every connection, so they should first drop what they create. A statement ends with a line ending in ';'. A statement that returns rows, such as a select, fails.",
56
+ DUCKDB_PATH: "A DuckDB file on the engine's host; leave it empty for an in-memory database.",
57
+ FIXED_CONNECTION: "All of the cube's tables come from this connection: to use another one, remove every node from the cube first.",
58
+ };
59
+ export const CUBE_DIRECT_DATASOURCE_LABELS = {
60
+ [CubeConnectionDatasourceKind.LOCAL_H2]: "an H2 database in the engine's H2 server",
61
+ [CubeConnectionDatasourceKind.DUCKDB_IN_MEMORY]: 'an in-memory DuckDB database',
62
+ [CubeConnectionDatasourceKind.DUCKDB_FILE]: 'a DuckDB file',
63
+ };
64
+ /** How many of a table's columns Cube leaves out, or nothing when it keeps them all */
65
+ export const getHiddenColumnsLabel = (count) => count === 0
66
+ ? undefined
67
+ : `${count} ${count === 1 ? 'column' : 'columns'} hidden`;
68
+ /** What the page shows of a saved connection: never its setup SQL */
69
+ export const getCubeConnectionSummaryLabel = (summary) => [
70
+ `${summary.databaseType}: ${CUBE_DIRECT_DATASOURCE_LABELS[summary.datasourceKind]}${summary.path ? ` (${summary.path})` : ''}`,
71
+ `${summary.setupSqlCount} setup ${summary.setupSqlCount === 1 ? 'statement' : 'statements'}`,
72
+ `authentication ${summary.authenticationKind}`,
73
+ ].join(', ');
74
+ /** A direct connection shown where Cube can't describe it, e.g. on a host without an explorer */
75
+ export const CUBE_DIRECT_CONNECTION_FALLBACK_LABEL = 'A direct database connection';
76
+ //# sourceMappingURL=LegendCubeDirectConnectionLabels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LegendCubeDirectConnectionLabels.js","sourceRoot":"","sources":["../../src/__lib__/LegendCubeDirectConnectionLabels.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,4BAA4B,GAE7B,MAAM,4CAA4C,CAAC;AAEpD,sEAAsE;AAEtE;;;GAGG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,4CAA4C;IAC5C,4BAA4B;IAC5B,kIAAkI;IAClI,0KAA0K;IAC1K,qIAAqI;IACrI,mMAAmM;CACpM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb,0EAA0E;AAC1E,MAAM,CAAN,IAAY,yBAGX;AAHD,WAAY,yBAAyB;IACnC,sEAAyC,CAAA;IACzC,8DAAiC,CAAA;AACnC,CAAC,EAHW,yBAAyB,KAAzB,yBAAyB,QAGpC;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,kBAAkB,EAChB,2EAA2E;IAC7E,YAAY,EACV,qEAAqE;IACvE,eAAe,EAAE,0CAA0C;IAC3D,eAAe,EAAE,0CAA0C;CACnD,CAAC;AAEX,MAAM,WAAW,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;AAE7E,oEAAoE;AACpE,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,KAAK,EAAE,uDAAuD;IAC9D,cAAc,EAAE,CAAC,IAAY,EAAU,EAAE,CACvC,wCAAwC,IAAI,kBAAkB;IAChE,UAAU,EAAE,CAAC,GAAW,EAAE,MAAc,EAAE,OAAe,EAAU,EAAE,CACnE,OAAO,WAAW,CAAC,GAAG,CAAC,QAAQ,WAAW,CAAC,MAAM,CAAC,IAAI,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,0BAA0B,WAAW,CAAC,OAAO,CAAC,IAAI,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE;IACjL,aAAa,EAAE,CAAC,IAAY,EAAE,GAAW,EAAU,EAAE,CACnD,eAAe,WAAW,CAAC,IAAI,CAAC,6BAA6B,WAAW,CAAC,GAAG,CAAC,4DAA4D;IAC3I,QAAQ,EAAE,CAAC,GAAW,EAAU,EAAE,CAChC,2CAA2C,WAAW,CAAC,GAAG,CAAC,aAAa;IAC1E,KAAK,EAAE,CAAC,KAAa,EAAE,IAAY,EAAE,OAAe,EAAU,EAAE,CAC9D,eAAe,KAAK,KAAK,WAAW,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,OAAO,CAAC,IAAI,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,mCAAmC;IAC/K,eAAe,EAAE,CAAC,IAAY,EAAU,EAAE,CACxC,+BAA+B,IAAI,EAAE;CAC/B,CAAC;AAEX,MAAM,CAAC,MAAM,kBAAkB,GAC7B,iOAAiO,CAAC;AAEpO,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,SAAS,EACP,uMAAuM;IACzM,WAAW,EACT,+EAA+E;IACjF,gBAAgB,EACd,gHAAgH;CAC1G,CAAC;AAEX,MAAM,CAAC,MAAM,6BAA6B,GAEtC;IACF,CAAC,4BAA4B,CAAC,QAAQ,CAAC,EACrC,0CAA0C;IAC5C,CAAC,4BAA4B,CAAC,gBAAgB,CAAC,EAC7C,8BAA8B;IAChC,CAAC,4BAA4B,CAAC,WAAW,CAAC,EAAE,eAAe;CAC5D,CAAC;AAEF,uFAAuF;AACvF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,KAAa,EAAsB,EAAE,CACzE,KAAK,KAAK,CAAC;IACT,CAAC,CAAC,SAAS;IACX,CAAC,CAAC,GAAG,KAAK,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,SAAS,CAAC;AAE9D,qEAAqE;AACrE,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAC3C,OAA8B,EACtB,EAAE,CACV;IACE,GAAG,OAAO,CAAC,YAAY,KAAK,6BAA6B,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;IAC9H,GAAG,OAAO,CAAC,aAAa,UAAU,OAAO,CAAC,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,EAAE;IAC5F,kBAAkB,OAAO,CAAC,kBAAkB,EAAE;CAC/C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEf,iGAAiG;AACjG,MAAM,CAAC,MAAM,qCAAqC,GAChD,8BAA8B,CAAC"}
@@ -0,0 +1,29 @@
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 { SchemaDiff } from '@finos/legend-cube';
17
+ export declare const getFunctionDriftWarning: (diff: SchemaDiff) => string;
18
+ export declare const getFunctionRecheckWarning: (firstLine: string) => string;
19
+ export declare const CUBE_FUNCTION_MESSAGE: {
20
+ readonly NO_ANSWER: "The engine gave no columns for this function";
21
+ /** Under a function with its own runtime */
22
+ readonly RUNS_ON: (runtime: string) => string;
23
+ /** A function with its own runtime, on a cube that runs on another */
24
+ readonly OTHER_RUNTIME: (runtime: string, cubeRuntime: string) => string;
25
+ readonly NONE: "This version has no function that returns a relation.";
26
+ readonly NO_MATCH: "No function matches the search.";
27
+ readonly CUBE_CHANGED: "The cube changed while the function was being added; pick it again.";
28
+ };
29
+ //# sourceMappingURL=LegendCubeFunctionLabels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LegendCubeFunctionLabels.d.ts","sourceRoot":"","sources":["../../src/__lib__/LegendCubeFunctionLabels.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAMrD,eAAO,MAAM,uBAAuB,GAAI,MAAM,UAAU,KAAG,MAC+B,CAAC;AAE3F,eAAO,MAAM,yBAAyB,GAAI,WAAW,MAAM,KAAG,MACmB,CAAC;AAElF,eAAO,MAAM,qBAAqB;;IAEhC,4CAA4C;gCACzB,MAAM,KAAG,MAAM;IAElC,sEAAsE;sCAC7C,MAAM,eAAe,MAAM,KAAG,MAAM;;;;CAMrD,CAAC"}
@@ -0,0 +1,31 @@
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 { getSchemaChangeList } from './LegendCubeLabels.js';
17
+ // The text of function sources (PLAN §6.5): the source dialog's Project
18
+ // tab, when it reads functions, and a function's panel
19
+ export const getFunctionDriftWarning = (diff) => `This function's columns changed since the cube was saved: ${getSchemaChangeList(diff)}`;
20
+ export const getFunctionRecheckWarning = (firstLine) => `Could not re-check this function, so it keeps its saved columns: ${firstLine}`;
21
+ export const CUBE_FUNCTION_MESSAGE = {
22
+ NO_ANSWER: 'The engine gave no columns for this function',
23
+ /** Under a function with its own runtime */
24
+ RUNS_ON: (runtime) => `Runs on ${runtime}, set by the function`,
25
+ /** A function with its own runtime, on a cube that runs on another */
26
+ OTHER_RUNTIME: (runtime, cubeRuntime) => `It reads through ${runtime}, but the cube runs on ${cubeRuntime}`,
27
+ NONE: 'This version has no function that returns a relation.',
28
+ NO_MATCH: 'No function matches the search.',
29
+ CUBE_CHANGED: 'The cube changed while the function was being added; pick it again.',
30
+ };
31
+ //# sourceMappingURL=LegendCubeFunctionLabels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LegendCubeFunctionLabels.js","sourceRoot":"","sources":["../../src/__lib__/LegendCubeFunctionLabels.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,wEAAwE;AACxE,uDAAuD;AAEvD,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,IAAgB,EAAU,EAAE,CAClE,6DAA6D,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;AAE3F,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,SAAiB,EAAU,EAAE,CACrE,oEAAoE,SAAS,EAAE,CAAC;AAElF,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,SAAS,EAAE,8CAA8C;IACzD,4CAA4C;IAC5C,OAAO,EAAE,CAAC,OAAe,EAAU,EAAE,CACnC,WAAW,OAAO,uBAAuB;IAC3C,sEAAsE;IACtE,aAAa,EAAE,CAAC,OAAe,EAAE,WAAmB,EAAU,EAAE,CAC9D,oBAAoB,OAAO,0BAA0B,WAAW,EAAE;IACpE,IAAI,EAAE,uDAAuD;IAC7D,QAAQ,EAAE,iCAAiC;IAC3C,YAAY,EACV,qEAAqE;CAC/D,CAAC"}
@@ -15,5 +15,9 @@
15
15
  */
16
16
  export declare const CUBE_NODE_HELP_TEXT: Readonly<Record<string, string>>;
17
17
  /** The tooltip of the editor's Select link (spec §17.9) */
18
- export declare const SELECT_NODE_TOOLTIP = "Selects this node as active and its output will be shown in the grid once query is executed.";
18
+ export declare const SELECT_NODE_TOOLTIP = "Make this the step that runs: Execute shows its rows in the grid.";
19
+ /** The marker on the step that runs, on the canvas and in its editor */
20
+ export declare const RUNNING_NODE_LABEL = "Runs";
21
+ /** What a node's menu and editor call making it the step that runs */
22
+ export declare const RUN_THIS_STEP_LABEL = "Run this step";
19
23
  //# sourceMappingURL=LegendCubeHelpText.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LegendCubeHelpText.d.ts","sourceRoot":"","sources":["../../src/__lib__/LegendCubeHelpText.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAoBH,eAAO,MAAM,mBAAmB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAmBhE,CAAC;AAEF,2DAA2D;AAC3D,eAAO,MAAM,mBAAmB,iGACgE,CAAC"}
1
+ {"version":3,"file":"LegendCubeHelpText.d.ts","sourceRoot":"","sources":["../../src/__lib__/LegendCubeHelpText.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAgCH,eAAO,MAAM,mBAAmB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CA+ChE,CAAC;AAEF,2DAA2D;AAC3D,eAAO,MAAM,mBAAmB,sEACqC,CAAC;AAEtE,wEAAwE;AACxE,eAAO,MAAM,kBAAkB,SAAS,CAAC;AAEzC,sEAAsE;AACtE,eAAO,MAAM,mBAAmB,kBAAkB,CAAC"}