@finos/legend-cube-builder 0.0.2 → 0.0.4

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 (761) hide show
  1. package/README.md +93 -1
  2. package/docs/adding-an-operation.md +181 -0
  3. package/docs/hosting.md +157 -0
  4. package/docs/testing.md +188 -0
  5. package/lib/__lib__/LegendCubeCommand.d.ts +2 -1
  6. package/lib/__lib__/LegendCubeCommand.d.ts.map +1 -1
  7. package/lib/__lib__/LegendCubeCommand.js +5 -0
  8. package/lib/__lib__/LegendCubeCommand.js.map +1 -1
  9. package/lib/__lib__/LegendCubeDataProductLabels.d.ts +45 -0
  10. package/lib/__lib__/LegendCubeDataProductLabels.d.ts.map +1 -0
  11. package/lib/__lib__/LegendCubeDataProductLabels.js +60 -0
  12. package/lib/__lib__/LegendCubeDataProductLabels.js.map +1 -0
  13. package/lib/__lib__/LegendCubeDirectConnectionLabels.d.ts +56 -0
  14. package/lib/__lib__/LegendCubeDirectConnectionLabels.d.ts.map +1 -0
  15. package/lib/__lib__/LegendCubeDirectConnectionLabels.js +76 -0
  16. package/lib/__lib__/LegendCubeDirectConnectionLabels.js.map +1 -0
  17. package/lib/__lib__/LegendCubeHelpText.d.ts.map +1 -1
  18. package/lib/__lib__/LegendCubeHelpText.js +21 -3
  19. package/lib/__lib__/LegendCubeHelpText.js.map +1 -1
  20. package/lib/__lib__/LegendCubeIngestLabels.d.ts +25 -0
  21. package/lib/__lib__/LegendCubeIngestLabels.d.ts.map +1 -0
  22. package/lib/__lib__/LegendCubeIngestLabels.js +29 -0
  23. package/lib/__lib__/LegendCubeIngestLabels.js.map +1 -0
  24. package/lib/__lib__/LegendCubeLabels.d.ts +95 -3
  25. package/lib/__lib__/LegendCubeLabels.d.ts.map +1 -1
  26. package/lib/__lib__/LegendCubeLabels.js +121 -4
  27. package/lib/__lib__/LegendCubeLabels.js.map +1 -1
  28. package/lib/__lib__/LegendCubeProjectLabels.d.ts +22 -0
  29. package/lib/__lib__/LegendCubeProjectLabels.d.ts.map +1 -0
  30. package/lib/__lib__/LegendCubeProjectLabels.js +23 -0
  31. package/lib/__lib__/LegendCubeProjectLabels.js.map +1 -0
  32. package/lib/__lib__/LegendCubeTesting.d.ts +1 -0
  33. package/lib/__lib__/LegendCubeTesting.d.ts.map +1 -1
  34. package/lib/__lib__/LegendCubeTesting.js +1 -0
  35. package/lib/__lib__/LegendCubeTesting.js.map +1 -1
  36. package/lib/__test-utils__/CubeCanvasTestUtils.d.ts.map +1 -1
  37. package/lib/__test-utils__/CubeCanvasTestUtils.js +1 -1
  38. package/lib/__test-utils__/CubeCanvasTestUtils.js.map +1 -1
  39. package/lib/__test-utils__/CubeConnectionTestSupport.d.ts +22 -0
  40. package/lib/__test-utils__/CubeConnectionTestSupport.d.ts.map +1 -0
  41. package/lib/__test-utils__/CubeConnectionTestSupport.js +30 -0
  42. package/lib/__test-utils__/CubeConnectionTestSupport.js.map +1 -0
  43. package/lib/__test-utils__/CubeDirectConnectionFixtures.d.ts +31 -0
  44. package/lib/__test-utils__/CubeDirectConnectionFixtures.d.ts.map +1 -0
  45. package/lib/__test-utils__/CubeDirectConnectionFixtures.js +63 -0
  46. package/lib/__test-utils__/CubeDirectConnectionFixtures.js.map +1 -0
  47. package/lib/__test-utils__/CubeEngineTestSupport.d.ts +18 -0
  48. package/lib/__test-utils__/CubeEngineTestSupport.d.ts.map +1 -1
  49. package/lib/__test-utils__/CubeEngineTestSupport.js +51 -0
  50. package/lib/__test-utils__/CubeEngineTestSupport.js.map +1 -1
  51. package/lib/__test-utils__/CubeExpressionTestUtils.d.ts +37 -0
  52. package/lib/__test-utils__/CubeExpressionTestUtils.d.ts.map +1 -0
  53. package/lib/__test-utils__/CubeExpressionTestUtils.js +83 -0
  54. package/lib/__test-utils__/CubeExpressionTestUtils.js.map +1 -0
  55. package/lib/__test-utils__/CubeOperationsTestUtils.d.ts +67 -0
  56. package/lib/__test-utils__/CubeOperationsTestUtils.d.ts.map +1 -0
  57. package/lib/__test-utils__/CubeOperationsTestUtils.js +138 -0
  58. package/lib/__test-utils__/CubeOperationsTestUtils.js.map +1 -0
  59. package/lib/__test-utils__/CubePageTestUtils.d.ts +12 -0
  60. package/lib/__test-utils__/CubePageTestUtils.d.ts.map +1 -1
  61. package/lib/__test-utils__/CubePageTestUtils.js +25 -1
  62. package/lib/__test-utils__/CubePageTestUtils.js.map +1 -1
  63. package/lib/__test-utils__/CubeTestApplication.d.ts +5 -1
  64. package/lib/__test-utils__/CubeTestApplication.d.ts.map +1 -1
  65. package/lib/__test-utils__/CubeTestApplication.js +9 -1
  66. package/lib/__test-utils__/CubeTestApplication.js.map +1 -1
  67. package/lib/__test-utils__/FakeCubeConnectionExplorer.d.ts +33 -0
  68. package/lib/__test-utils__/FakeCubeConnectionExplorer.d.ts.map +1 -0
  69. package/lib/__test-utils__/FakeCubeConnectionExplorer.js +67 -0
  70. package/lib/__test-utils__/FakeCubeConnectionExplorer.js.map +1 -0
  71. package/lib/__test-utils__/FakeCubeDataProductCatalog.d.ts +45 -0
  72. package/lib/__test-utils__/FakeCubeDataProductCatalog.d.ts.map +1 -0
  73. package/lib/__test-utils__/FakeCubeDataProductCatalog.js +137 -0
  74. package/lib/__test-utils__/FakeCubeDataProductCatalog.js.map +1 -0
  75. package/lib/__test-utils__/FakeCubeEngine.d.ts +2 -0
  76. package/lib/__test-utils__/FakeCubeEngine.d.ts.map +1 -1
  77. package/lib/__test-utils__/FakeCubeEngine.js +21 -2
  78. package/lib/__test-utils__/FakeCubeEngine.js.map +1 -1
  79. package/lib/__test-utils__/FakeCubeIngestCatalog.d.ts +35 -0
  80. package/lib/__test-utils__/FakeCubeIngestCatalog.d.ts.map +1 -0
  81. package/lib/__test-utils__/FakeCubeIngestCatalog.js +107 -0
  82. package/lib/__test-utils__/FakeCubeIngestCatalog.js.map +1 -0
  83. package/lib/__test-utils__/FakeCubeProjectCatalog.d.ts +30 -0
  84. package/lib/__test-utils__/FakeCubeProjectCatalog.d.ts.map +1 -0
  85. package/lib/__test-utils__/FakeCubeProjectCatalog.js +64 -0
  86. package/lib/__test-utils__/FakeCubeProjectCatalog.js.map +1 -0
  87. package/lib/components/CubeAddItems.d.ts +35 -0
  88. package/lib/components/CubeAddItems.d.ts.map +1 -0
  89. package/lib/components/CubeAddItems.js +82 -0
  90. package/lib/components/CubeAddItems.js.map +1 -0
  91. package/lib/components/CubeEditor.d.ts +5 -1
  92. package/lib/components/CubeEditor.d.ts.map +1 -1
  93. package/lib/components/CubeEditor.js +33 -13
  94. package/lib/components/CubeEditor.js.map +1 -1
  95. package/lib/components/CubeEntrySourceBanner.d.ts +23 -0
  96. package/lib/components/CubeEntrySourceBanner.d.ts.map +1 -0
  97. package/lib/components/CubeEntrySourceBanner.js +32 -0
  98. package/lib/components/CubeEntrySourceBanner.js.map +1 -0
  99. package/lib/components/CubeNodeIcon.d.ts.map +1 -1
  100. package/lib/components/CubeNodeIcon.js +19 -2
  101. package/lib/components/CubeNodeIcon.js.map +1 -1
  102. package/lib/components/CubeSchemaColumnsTable.d.ts +21 -0
  103. package/lib/components/CubeSchemaColumnsTable.d.ts.map +1 -0
  104. package/lib/components/CubeSchemaColumnsTable.js +6 -0
  105. package/lib/components/CubeSchemaColumnsTable.js.map +1 -0
  106. package/lib/components/canvas/CubeCanvas.d.ts +4 -3
  107. package/lib/components/canvas/CubeCanvas.d.ts.map +1 -1
  108. package/lib/components/canvas/CubeCanvas.js +33 -12
  109. package/lib/components/canvas/CubeCanvas.js.map +1 -1
  110. package/lib/components/canvas/CubeCanvasContextMenu.d.ts +8 -4
  111. package/lib/components/canvas/CubeCanvasContextMenu.d.ts.map +1 -1
  112. package/lib/components/canvas/CubeCanvasContextMenu.js +19 -9
  113. package/lib/components/canvas/CubeCanvasContextMenu.js.map +1 -1
  114. package/lib/components/canvas/CubeCanvasDnd.d.ts +7 -5
  115. package/lib/components/canvas/CubeCanvasDnd.d.ts.map +1 -1
  116. package/lib/components/canvas/CubeCanvasDnd.js +14 -9
  117. package/lib/components/canvas/CubeCanvasDnd.js.map +1 -1
  118. package/lib/components/canvas/CubeCanvasElements.d.ts +2 -0
  119. package/lib/components/canvas/CubeCanvasElements.d.ts.map +1 -1
  120. package/lib/components/canvas/CubeCanvasElements.js +8 -4
  121. package/lib/components/canvas/CubeCanvasElements.js.map +1 -1
  122. package/lib/components/canvas/CubeCanvasNode.d.ts.map +1 -1
  123. package/lib/components/canvas/CubeCanvasNode.js +30 -17
  124. package/lib/components/canvas/CubeCanvasNode.js.map +1 -1
  125. package/lib/components/canvas/CubeCanvasNodeFocus.d.ts +22 -0
  126. package/lib/components/canvas/CubeCanvasNodeFocus.d.ts.map +1 -0
  127. package/lib/components/canvas/CubeCanvasNodeFocus.js +31 -0
  128. package/lib/components/canvas/CubeCanvasNodeFocus.js.map +1 -0
  129. package/lib/components/canvas/CubeNodeEditorAnchor.d.ts +44 -0
  130. package/lib/components/canvas/CubeNodeEditorAnchor.d.ts.map +1 -0
  131. package/lib/components/canvas/CubeNodeEditorAnchor.js +51 -0
  132. package/lib/components/canvas/CubeNodeEditorAnchor.js.map +1 -0
  133. package/lib/components/editors/CubeAggregationRowEditor.d.ts +48 -0
  134. package/lib/components/editors/CubeAggregationRowEditor.d.ts.map +1 -0
  135. package/lib/components/editors/CubeAggregationRowEditor.js +72 -0
  136. package/lib/components/editors/CubeAggregationRowEditor.js.map +1 -0
  137. package/lib/components/editors/CubeColumnChecklist.d.ts +42 -0
  138. package/lib/components/editors/CubeColumnChecklist.d.ts.map +1 -0
  139. package/lib/components/editors/CubeColumnChecklist.js +41 -0
  140. package/lib/components/editors/CubeColumnChecklist.js.map +1 -0
  141. package/lib/components/editors/CubeColumnPicker.d.ts +9 -2
  142. package/lib/components/editors/CubeColumnPicker.d.ts.map +1 -1
  143. package/lib/components/editors/CubeColumnPicker.js +9 -4
  144. package/lib/components/editors/CubeColumnPicker.js.map +1 -1
  145. package/lib/components/editors/CubeConcatEditor.d.ts +33 -0
  146. package/lib/components/editors/CubeConcatEditor.d.ts.map +1 -0
  147. package/lib/components/editors/CubeConcatEditor.js +147 -0
  148. package/lib/components/editors/CubeConcatEditor.js.map +1 -0
  149. package/lib/components/editors/CubeDataProductSourceEditor.d.ts +25 -0
  150. package/lib/components/editors/CubeDataProductSourceEditor.d.ts.map +1 -0
  151. package/lib/components/editors/CubeDataProductSourceEditor.js +53 -0
  152. package/lib/components/editors/CubeDataProductSourceEditor.js.map +1 -0
  153. package/lib/components/editors/CubeDifferenceEditor.d.ts +25 -0
  154. package/lib/components/editors/CubeDifferenceEditor.d.ts.map +1 -0
  155. package/lib/components/editors/CubeDifferenceEditor.js +29 -0
  156. package/lib/components/editors/CubeDifferenceEditor.js.map +1 -0
  157. package/lib/components/editors/CubeDistinctEditor.d.ts +23 -0
  158. package/lib/components/editors/CubeDistinctEditor.d.ts.map +1 -0
  159. package/lib/components/editors/CubeDistinctEditor.js +24 -0
  160. package/lib/components/editors/CubeDistinctEditor.js.map +1 -0
  161. package/lib/components/editors/CubeExtendEditor.d.ts +25 -0
  162. package/lib/components/editors/CubeExtendEditor.d.ts.map +1 -0
  163. package/lib/components/editors/CubeExtendEditor.js +86 -0
  164. package/lib/components/editors/CubeExtendEditor.js.map +1 -0
  165. package/lib/components/editors/CubeFilterEditor.d.ts.map +1 -1
  166. package/lib/components/editors/CubeFilterEditor.js +3 -3
  167. package/lib/components/editors/CubeFilterEditor.js.map +1 -1
  168. package/lib/components/editors/CubeGroupEditor.d.ts +28 -0
  169. package/lib/components/editors/CubeGroupEditor.d.ts.map +1 -0
  170. package/lib/components/editors/CubeGroupEditor.js +70 -0
  171. package/lib/components/editors/CubeGroupEditor.js.map +1 -0
  172. package/lib/components/editors/CubeIngestSourceEditor.d.ts +26 -0
  173. package/lib/components/editors/CubeIngestSourceEditor.d.ts.map +1 -0
  174. package/lib/components/editors/CubeIngestSourceEditor.js +47 -0
  175. package/lib/components/editors/CubeIngestSourceEditor.js.map +1 -0
  176. package/lib/components/editors/CubeIntegerField.d.ts +29 -0
  177. package/lib/components/editors/CubeIntegerField.d.ts.map +1 -0
  178. package/lib/components/editors/CubeIntegerField.js +30 -0
  179. package/lib/components/editors/CubeIntegerField.js.map +1 -0
  180. package/lib/components/editors/CubeJoinEditor.d.ts +2 -4
  181. package/lib/components/editors/CubeJoinEditor.d.ts.map +1 -1
  182. package/lib/components/editors/CubeJoinEditor.js +15 -37
  183. package/lib/components/editors/CubeJoinEditor.js.map +1 -1
  184. package/lib/components/editors/CubeJoinKeyRows.d.ts +34 -0
  185. package/lib/components/editors/CubeJoinKeyRows.d.ts.map +1 -0
  186. package/lib/components/editors/CubeJoinKeyRows.js +65 -0
  187. package/lib/components/editors/CubeJoinKeyRows.js.map +1 -0
  188. package/lib/components/editors/CubeNodeEditorPanel.d.ts +7 -5
  189. package/lib/components/editors/CubeNodeEditorPanel.d.ts.map +1 -1
  190. package/lib/components/editors/CubeNodeEditorPanel.js +53 -14
  191. package/lib/components/editors/CubeNodeEditorPanel.js.map +1 -1
  192. package/lib/components/editors/CubeNodeEditorPopper.d.ts +40 -0
  193. package/lib/components/editors/CubeNodeEditorPopper.d.ts.map +1 -0
  194. package/lib/components/editors/CubeNodeEditorPopper.js +125 -0
  195. package/lib/components/editors/CubeNodeEditorPopper.js.map +1 -0
  196. package/lib/components/editors/CubeNodeEditorRegistry.d.ts.map +1 -1
  197. package/lib/components/editors/CubeNodeEditorRegistry.js +28 -1
  198. package/lib/components/editors/CubeNodeEditorRegistry.js.map +1 -1
  199. package/lib/components/editors/CubePartitionEditor.d.ts +30 -0
  200. package/lib/components/editors/CubePartitionEditor.d.ts.map +1 -0
  201. package/lib/components/editors/CubePartitionEditor.js +93 -0
  202. package/lib/components/editors/CubePartitionEditor.js.map +1 -0
  203. package/lib/components/editors/CubeRenameEditor.d.ts +26 -0
  204. package/lib/components/editors/CubeRenameEditor.d.ts.map +1 -0
  205. package/lib/components/editors/CubeRenameEditor.js +60 -0
  206. package/lib/components/editors/CubeRenameEditor.js.map +1 -0
  207. package/lib/components/editors/CubeRestrictEditor.d.ts +26 -0
  208. package/lib/components/editors/CubeRestrictEditor.d.ts.map +1 -0
  209. package/lib/components/editors/CubeRestrictEditor.js +23 -0
  210. package/lib/components/editors/CubeRestrictEditor.js.map +1 -0
  211. package/lib/components/editors/CubeRowCountEditor.d.ts +25 -0
  212. package/lib/components/editors/CubeRowCountEditor.d.ts.map +1 -0
  213. package/lib/components/editors/CubeRowCountEditor.js +38 -0
  214. package/lib/components/editors/CubeRowCountEditor.js.map +1 -0
  215. package/lib/components/editors/CubeSliceEditor.d.ts +25 -0
  216. package/lib/components/editors/CubeSliceEditor.d.ts.map +1 -0
  217. package/lib/components/editors/CubeSliceEditor.js +40 -0
  218. package/lib/components/editors/CubeSliceEditor.js.map +1 -0
  219. package/lib/components/editors/CubeSortEditor.d.ts +27 -0
  220. package/lib/components/editors/CubeSortEditor.d.ts.map +1 -0
  221. package/lib/components/editors/CubeSortEditor.js +45 -0
  222. package/lib/components/editors/CubeSortEditor.js.map +1 -0
  223. package/lib/components/editors/CubeSortRowEditor.d.ts +47 -0
  224. package/lib/components/editors/CubeSortRowEditor.d.ts.map +1 -0
  225. package/lib/components/editors/CubeSortRowEditor.js +62 -0
  226. package/lib/components/editors/CubeSortRowEditor.js.map +1 -0
  227. package/lib/components/editors/CubeSourceEditor.d.ts.map +1 -1
  228. package/lib/components/editors/CubeSourceEditor.js +18 -6
  229. package/lib/components/editors/CubeSourceEditor.js.map +1 -1
  230. package/lib/components/editors/CubeValueEditor.d.ts.map +1 -1
  231. package/lib/components/editors/CubeValueEditor.js +2 -1
  232. package/lib/components/editors/CubeValueEditor.js.map +1 -1
  233. package/lib/components/editors/CubeWarehouseControl.d.ts +30 -0
  234. package/lib/components/editors/CubeWarehouseControl.d.ts.map +1 -0
  235. package/lib/components/editors/CubeWarehouseControl.js +44 -0
  236. package/lib/components/editors/CubeWarehouseControl.js.map +1 -0
  237. package/lib/components/editors/useCubeNodeEditorDismiss.d.ts +31 -0
  238. package/lib/components/editors/useCubeNodeEditorDismiss.d.ts.map +1 -0
  239. package/lib/components/editors/useCubeNodeEditorDismiss.js +83 -0
  240. package/lib/components/editors/useCubeNodeEditorDismiss.js.map +1 -0
  241. package/lib/components/examples/CubeExamplesDialog.d.ts +26 -0
  242. package/lib/components/examples/CubeExamplesDialog.d.ts.map +1 -0
  243. package/lib/components/examples/CubeExamplesDialog.js +68 -0
  244. package/lib/components/examples/CubeExamplesDialog.js.map +1 -0
  245. package/lib/components/grid/CubeGridRegion.d.ts.map +1 -1
  246. package/lib/components/grid/CubeGridRegion.js +20 -9
  247. package/lib/components/grid/CubeGridRegion.js.map +1 -1
  248. package/lib/components/grid/CubeGridValues.d.ts +16 -0
  249. package/lib/components/grid/CubeGridValues.d.ts.map +1 -1
  250. package/lib/components/grid/CubeGridValues.js +44 -0
  251. package/lib/components/grid/CubeGridValues.js.map +1 -1
  252. package/lib/components/grid/CubeResultGrid.d.ts +14 -1
  253. package/lib/components/grid/CubeResultGrid.d.ts.map +1 -1
  254. package/lib/components/grid/CubeResultGrid.js +55 -7
  255. package/lib/components/grid/CubeResultGrid.js.map +1 -1
  256. package/lib/components/palette/CubePalette.d.ts.map +1 -1
  257. package/lib/components/palette/CubePalette.js +23 -12
  258. package/lib/components/palette/CubePalette.js.map +1 -1
  259. package/lib/components/source-picker/CubeDataProductTab.d.ts +27 -0
  260. package/lib/components/source-picker/CubeDataProductTab.d.ts.map +1 -0
  261. package/lib/components/source-picker/CubeDataProductTab.js +102 -0
  262. package/lib/components/source-picker/CubeDataProductTab.js.map +1 -0
  263. package/lib/components/source-picker/CubeDirectConnectionTab.d.ts +27 -0
  264. package/lib/components/source-picker/CubeDirectConnectionTab.d.ts.map +1 -0
  265. package/lib/components/source-picker/CubeDirectConnectionTab.js +87 -0
  266. package/lib/components/source-picker/CubeDirectConnectionTab.js.map +1 -0
  267. package/lib/components/source-picker/CubeIngestTab.d.ts +28 -0
  268. package/lib/components/source-picker/CubeIngestTab.d.ts.map +1 -0
  269. package/lib/components/source-picker/CubeIngestTab.js +66 -0
  270. package/lib/components/source-picker/CubeIngestTab.js.map +1 -0
  271. package/lib/components/source-picker/CubeInlineModelTab.d.ts +37 -0
  272. package/lib/components/source-picker/CubeInlineModelTab.d.ts.map +1 -0
  273. package/lib/components/source-picker/CubeInlineModelTab.js +71 -0
  274. package/lib/components/source-picker/CubeInlineModelTab.js.map +1 -0
  275. package/lib/components/source-picker/CubePickerStep.d.ts +27 -0
  276. package/lib/components/source-picker/CubePickerStep.d.ts.map +1 -0
  277. package/lib/components/source-picker/CubePickerStep.js +23 -0
  278. package/lib/components/source-picker/CubePickerStep.js.map +1 -0
  279. package/lib/components/source-picker/CubeProjectTab.d.ts +27 -0
  280. package/lib/components/source-picker/CubeProjectTab.d.ts.map +1 -0
  281. package/lib/components/source-picker/CubeProjectTab.js +50 -0
  282. package/lib/components/source-picker/CubeProjectTab.js.map +1 -0
  283. package/lib/components/source-picker/CubeSourcePicker.d.ts +6 -0
  284. package/lib/components/source-picker/CubeSourcePicker.d.ts.map +1 -1
  285. package/lib/components/source-picker/CubeSourcePicker.js +20 -58
  286. package/lib/components/source-picker/CubeSourcePicker.js.map +1 -1
  287. package/lib/components/spec-transfer/CubeSpecTransferDialog.js +1 -1
  288. package/lib/components/spec-transfer/CubeSpecTransferDialog.js.map +1 -1
  289. package/lib/graph-manager/CubeConnectionExplorer.d.ts +90 -0
  290. package/lib/graph-manager/CubeConnectionExplorer.d.ts.map +1 -0
  291. package/lib/graph-manager/CubeConnectionExplorer.js +34 -0
  292. package/lib/graph-manager/CubeConnectionExplorer.js.map +1 -0
  293. package/lib/graph-manager/CubeDataProduct.d.ts +66 -0
  294. package/lib/graph-manager/CubeDataProduct.d.ts.map +1 -0
  295. package/lib/graph-manager/CubeDataProduct.js +102 -0
  296. package/lib/graph-manager/CubeDataProduct.js.map +1 -0
  297. package/lib/graph-manager/CubeDataProductCatalog.d.ts +167 -0
  298. package/lib/graph-manager/CubeDataProductCatalog.d.ts.map +1 -0
  299. package/lib/graph-manager/CubeDataProductCatalog.js +116 -0
  300. package/lib/graph-manager/CubeDataProductCatalog.js.map +1 -0
  301. package/lib/graph-manager/CubeDirectConnection.d.ts +38 -0
  302. package/lib/graph-manager/CubeDirectConnection.d.ts.map +1 -0
  303. package/lib/graph-manager/CubeDirectConnection.js +48 -0
  304. package/lib/graph-manager/CubeDirectConnection.js.map +1 -0
  305. package/lib/graph-manager/CubeEngine.d.ts +50 -2
  306. package/lib/graph-manager/CubeEngine.d.ts.map +1 -1
  307. package/lib/graph-manager/CubeEngine.js +4 -1
  308. package/lib/graph-manager/CubeEngine.js.map +1 -1
  309. package/lib/graph-manager/CubeIngest.d.ts +50 -0
  310. package/lib/graph-manager/CubeIngest.d.ts.map +1 -0
  311. package/lib/graph-manager/CubeIngest.js +88 -0
  312. package/lib/graph-manager/CubeIngest.js.map +1 -0
  313. package/lib/graph-manager/CubeIngestCatalog.d.ts +116 -0
  314. package/lib/graph-manager/CubeIngestCatalog.d.ts.map +1 -0
  315. package/lib/graph-manager/CubeIngestCatalog.js +80 -0
  316. package/lib/graph-manager/CubeIngestCatalog.js.map +1 -0
  317. package/lib/graph-manager/CubeLakehouseEnvironment.d.ts +26 -0
  318. package/lib/graph-manager/CubeLakehouseEnvironment.d.ts.map +1 -0
  319. package/lib/graph-manager/CubeLakehouseEnvironment.js +17 -0
  320. package/lib/graph-manager/CubeLakehouseEnvironment.js.map +1 -0
  321. package/lib/graph-manager/CubeModelOutlineHelper.d.ts +8 -0
  322. package/lib/graph-manager/CubeModelOutlineHelper.d.ts.map +1 -1
  323. package/lib/graph-manager/CubeModelOutlineHelper.js +21 -0
  324. package/lib/graph-manager/CubeModelOutlineHelper.js.map +1 -1
  325. package/lib/graph-manager/CubeProject.d.ts +41 -0
  326. package/lib/graph-manager/CubeProject.d.ts.map +1 -0
  327. package/lib/graph-manager/CubeProject.js +84 -0
  328. package/lib/graph-manager/CubeProject.js.map +1 -0
  329. package/lib/graph-manager/CubeProjectCatalog.d.ts +35 -0
  330. package/lib/graph-manager/CubeProjectCatalog.d.ts.map +1 -0
  331. package/lib/graph-manager/CubeProjectCatalog.js +17 -0
  332. package/lib/graph-manager/CubeProjectCatalog.js.map +1 -0
  333. package/lib/graph-manager/protocol/pure/CubeEngineBuilder.d.ts +63 -1
  334. package/lib/graph-manager/protocol/pure/CubeEngineBuilder.d.ts.map +1 -1
  335. package/lib/graph-manager/protocol/pure/CubeEngineBuilder.js +50 -1
  336. package/lib/graph-manager/protocol/pure/CubeEngineBuilder.js.map +1 -1
  337. package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductArtifact.d.ts +44 -0
  338. package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductArtifact.d.ts.map +1 -0
  339. package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductArtifact.js +192 -0
  340. package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductArtifact.js.map +1 -0
  341. package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductModel.d.ts +29 -0
  342. package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductModel.d.ts.map +1 -0
  343. package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductModel.js +84 -0
  344. package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductModel.js.map +1 -0
  345. package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectConnection.d.ts +41 -0
  346. package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectConnection.d.ts.map +1 -0
  347. package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectConnection.js +246 -0
  348. package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectConnection.js.map +1 -0
  349. package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectModel.d.ts +43 -0
  350. package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectModel.d.ts.map +1 -0
  351. package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectModel.js +112 -0
  352. package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectModel.js.map +1 -0
  353. package/lib/graph-manager/protocol/pure/v1/V1_CubeEngineErrors.d.ts.map +1 -1
  354. package/lib/graph-manager/protocol/pure/v1/V1_CubeEngineErrors.js +30 -4
  355. package/lib/graph-manager/protocol/pure/v1/V1_CubeEngineErrors.js.map +1 -1
  356. package/lib/graph-manager/protocol/pure/v1/V1_CubeExpression.d.ts +23 -0
  357. package/lib/graph-manager/protocol/pure/v1/V1_CubeExpression.d.ts.map +1 -0
  358. package/lib/graph-manager/protocol/pure/v1/V1_CubeExpression.js +68 -0
  359. package/lib/graph-manager/protocol/pure/v1/V1_CubeExpression.js.map +1 -0
  360. package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestDefinition.d.ts +30 -0
  361. package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestDefinition.d.ts.map +1 -0
  362. package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestDefinition.js +140 -0
  363. package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestDefinition.js.map +1 -0
  364. package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestModel.d.ts +62 -0
  365. package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestModel.d.ts.map +1 -0
  366. package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestModel.js +119 -0
  367. package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestModel.js.map +1 -0
  368. package/lib/graph-manager/protocol/pure/v1/V1_CubeLakehouseEnvironmentResolver.d.ts +33 -0
  369. package/lib/graph-manager/protocol/pure/v1/V1_CubeLakehouseEnvironmentResolver.d.ts.map +1 -0
  370. package/lib/graph-manager/protocol/pure/v1/V1_CubeLakehouseEnvironmentResolver.js +94 -0
  371. package/lib/graph-manager/protocol/pure/v1/V1_CubeLakehouseEnvironmentResolver.js.map +1 -0
  372. package/lib/graph-manager/protocol/pure/v1/V1_CubeLambdaSerializer.d.ts.map +1 -1
  373. package/lib/graph-manager/protocol/pure/v1/V1_CubeLambdaSerializer.js +63 -4
  374. package/lib/graph-manager/protocol/pure/v1/V1_CubeLambdaSerializer.js.map +1 -1
  375. package/lib/graph-manager/protocol/pure/v1/V1_CubeModelOutlineBuilder.d.ts.map +1 -1
  376. package/lib/graph-manager/protocol/pure/v1/V1_CubeModelOutlineBuilder.js +56 -3
  377. package/lib/graph-manager/protocol/pure/v1/V1_CubeModelOutlineBuilder.js.map +1 -1
  378. package/lib/graph-manager/protocol/pure/v1/V1_CubeSchemaExploration.d.ts +67 -0
  379. package/lib/graph-manager/protocol/pure/v1/V1_CubeSchemaExploration.d.ts.map +1 -0
  380. package/lib/graph-manager/protocol/pure/v1/V1_CubeSchemaExploration.js +238 -0
  381. package/lib/graph-manager/protocol/pure/v1/V1_CubeSchemaExploration.js.map +1 -0
  382. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeConnectionExplorer.d.ts +34 -0
  383. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeConnectionExplorer.d.ts.map +1 -0
  384. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeConnectionExplorer.js +64 -0
  385. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeConnectionExplorer.js.map +1 -0
  386. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeDataProductCatalog.d.ts +104 -0
  387. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeDataProductCatalog.d.ts.map +1 -0
  388. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeDataProductCatalog.js +484 -0
  389. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeDataProductCatalog.js.map +1 -0
  390. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeEngine.d.ts +97 -3
  391. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeEngine.d.ts.map +1 -1
  392. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeEngine.js +585 -20
  393. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeEngine.js.map +1 -1
  394. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeIngestCatalog.d.ts +69 -0
  395. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeIngestCatalog.d.ts.map +1 -0
  396. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeIngestCatalog.js +270 -0
  397. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeIngestCatalog.js.map +1 -0
  398. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeProjectCatalog.d.ts +35 -0
  399. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeProjectCatalog.d.ts.map +1 -0
  400. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeProjectCatalog.js +91 -0
  401. package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeProjectCatalog.js.map +1 -0
  402. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeConnectionExplorerTestUtils.d.ts +25 -0
  403. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeConnectionExplorerTestUtils.d.ts.map +1 -0
  404. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeConnectionExplorerTestUtils.js +47 -0
  405. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeConnectionExplorerTestUtils.js.map +1 -0
  406. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductFixtures.d.ts +28 -0
  407. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductFixtures.d.ts.map +1 -0
  408. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductFixtures.js +310 -0
  409. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductFixtures.js.map +1 -0
  410. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductSearchFixtures.d.ts +33 -0
  411. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductSearchFixtures.d.ts.map +1 -0
  412. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductSearchFixtures.js +188 -0
  413. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductSearchFixtures.js.map +1 -0
  414. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeEngineTestUtils.d.ts +1 -1
  415. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeEngineTestUtils.d.ts.map +1 -1
  416. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeEngineTestUtils.js +30 -4
  417. package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeEngineTestUtils.js.map +1 -1
  418. package/lib/index.css +2 -2
  419. package/lib/index.css.map +1 -1
  420. package/lib/index.d.ts +11 -1
  421. package/lib/index.d.ts.map +1 -1
  422. package/lib/index.js +10 -1
  423. package/lib/index.js.map +1 -1
  424. package/lib/stores/CubeAddPlacement.d.ts +32 -0
  425. package/lib/stores/CubeAddPlacement.d.ts.map +1 -0
  426. package/lib/stores/CubeAddPlacement.js +40 -0
  427. package/lib/stores/CubeAddPlacement.js.map +1 -0
  428. package/lib/stores/CubeDataProductRecheck.d.ts +27 -0
  429. package/lib/stores/CubeDataProductRecheck.d.ts.map +1 -0
  430. package/lib/stores/CubeDataProductRecheck.js +54 -0
  431. package/lib/stores/CubeDataProductRecheck.js.map +1 -0
  432. package/lib/stores/CubeDataProductRuntimeState.d.ts +88 -0
  433. package/lib/stores/CubeDataProductRuntimeState.d.ts.map +1 -0
  434. package/lib/stores/CubeDataProductRuntimeState.js +190 -0
  435. package/lib/stores/CubeDataProductRuntimeState.js.map +1 -0
  436. package/lib/stores/CubeDataProductWarehouse.d.ts +19 -0
  437. package/lib/stores/CubeDataProductWarehouse.d.ts.map +1 -0
  438. package/lib/stores/CubeDataProductWarehouse.js +25 -0
  439. package/lib/stores/CubeDataProductWarehouse.js.map +1 -0
  440. package/lib/stores/CubeEditorState.d.ts +133 -19
  441. package/lib/stores/CubeEditorState.d.ts.map +1 -1
  442. package/lib/stores/CubeEditorState.js +433 -52
  443. package/lib/stores/CubeEditorState.js.map +1 -1
  444. package/lib/stores/CubeEntrySource.d.ts +78 -0
  445. package/lib/stores/CubeEntrySource.d.ts.map +1 -0
  446. package/lib/stores/CubeEntrySource.js +200 -0
  447. package/lib/stores/CubeEntrySource.js.map +1 -0
  448. package/lib/stores/CubeExamples.d.ts +43 -0
  449. package/lib/stores/CubeExamples.d.ts.map +1 -0
  450. package/lib/stores/CubeExamples.js +296 -0
  451. package/lib/stores/CubeExamples.js.map +1 -0
  452. package/lib/stores/CubeExamplesState.d.ts +45 -0
  453. package/lib/stores/CubeExamplesState.d.ts.map +1 -0
  454. package/lib/stores/CubeExamplesState.js +81 -0
  455. package/lib/stores/CubeExamplesState.js.map +1 -0
  456. package/lib/stores/CubeExecutionState.d.ts +6 -2
  457. package/lib/stores/CubeExecutionState.d.ts.map +1 -1
  458. package/lib/stores/CubeExecutionState.js +34 -8
  459. package/lib/stores/CubeExecutionState.js.map +1 -1
  460. package/lib/stores/CubeExtendTyping.d.ts +72 -0
  461. package/lib/stores/CubeExtendTyping.d.ts.map +1 -0
  462. package/lib/stores/CubeExtendTyping.js +176 -0
  463. package/lib/stores/CubeExtendTyping.js.map +1 -0
  464. package/lib/stores/CubeGridQuickActions.d.ts +48 -0
  465. package/lib/stores/CubeGridQuickActions.d.ts.map +1 -0
  466. package/lib/stores/CubeGridQuickActions.js +124 -0
  467. package/lib/stores/CubeGridQuickActions.js.map +1 -0
  468. package/lib/stores/CubeHost.d.ts +32 -1
  469. package/lib/stores/CubeHost.d.ts.map +1 -1
  470. package/lib/stores/CubeHost.js +21 -1
  471. package/lib/stores/CubeHost.js.map +1 -1
  472. package/lib/stores/CubeIngestRecheck.d.ts +26 -0
  473. package/lib/stores/CubeIngestRecheck.d.ts.map +1 -0
  474. package/lib/stores/CubeIngestRecheck.js +53 -0
  475. package/lib/stores/CubeIngestRecheck.js.map +1 -0
  476. package/lib/stores/CubeNodeEditorState.d.ts +120 -6
  477. package/lib/stores/CubeNodeEditorState.d.ts.map +1 -1
  478. package/lib/stores/CubeNodeEditorState.js +275 -9
  479. package/lib/stores/CubeNodeEditorState.js.map +1 -1
  480. package/lib/stores/CubeShowPureState.d.ts +9 -3
  481. package/lib/stores/CubeShowPureState.d.ts.map +1 -1
  482. package/lib/stores/CubeShowPureState.js +28 -8
  483. package/lib/stores/CubeShowPureState.js.map +1 -1
  484. package/lib/stores/CubeSourcePickerState.d.ts +54 -65
  485. package/lib/stores/CubeSourcePickerState.d.ts.map +1 -1
  486. package/lib/stores/CubeSourcePickerState.js +155 -276
  487. package/lib/stores/CubeSourcePickerState.js.map +1 -1
  488. package/lib/stores/CubeSpecTransferState.d.ts +2 -2
  489. package/lib/stores/CubeSpecTransferState.js +2 -2
  490. package/lib/stores/LocalModelCatalog.d.ts +2 -0
  491. package/lib/stores/LocalModelCatalog.d.ts.map +1 -1
  492. package/lib/stores/LocalModelCatalog.js +17 -3
  493. package/lib/stores/LocalModelCatalog.js.map +1 -1
  494. package/lib/stores/editors/CubeAggregationRows.d.ts +80 -0
  495. package/lib/stores/editors/CubeAggregationRows.d.ts.map +1 -0
  496. package/lib/stores/editors/CubeAggregationRows.js +164 -0
  497. package/lib/stores/editors/CubeAggregationRows.js.map +1 -0
  498. package/lib/stores/editors/CubeConcatDraft.d.ts +30 -0
  499. package/lib/stores/editors/CubeConcatDraft.d.ts.map +1 -0
  500. package/lib/stores/editors/CubeConcatDraft.js +44 -0
  501. package/lib/stores/editors/CubeConcatDraft.js.map +1 -0
  502. package/lib/stores/editors/CubeDifferenceDraft.d.ts +49 -0
  503. package/lib/stores/editors/CubeDifferenceDraft.d.ts.map +1 -0
  504. package/lib/stores/editors/CubeDifferenceDraft.js +111 -0
  505. package/lib/stores/editors/CubeDifferenceDraft.js.map +1 -0
  506. package/lib/stores/editors/CubeExtendDraft.d.ts +110 -0
  507. package/lib/stores/editors/CubeExtendDraft.d.ts.map +1 -0
  508. package/lib/stores/editors/CubeExtendDraft.js +359 -0
  509. package/lib/stores/editors/CubeExtendDraft.js.map +1 -0
  510. package/lib/stores/editors/CubeGroupDraft.d.ts +61 -0
  511. package/lib/stores/editors/CubeGroupDraft.d.ts.map +1 -0
  512. package/lib/stores/editors/CubeGroupDraft.js +106 -0
  513. package/lib/stores/editors/CubeGroupDraft.js.map +1 -0
  514. package/lib/stores/editors/CubeIntegerText.d.ts +24 -0
  515. package/lib/stores/editors/CubeIntegerText.d.ts.map +1 -0
  516. package/lib/stores/editors/CubeIntegerText.js +33 -0
  517. package/lib/stores/editors/CubeIntegerText.js.map +1 -0
  518. package/lib/stores/editors/CubeJoinDraft.d.ts +20 -13
  519. package/lib/stores/editors/CubeJoinDraft.d.ts.map +1 -1
  520. package/lib/stores/editors/CubeJoinDraft.js +109 -29
  521. package/lib/stores/editors/CubeJoinDraft.js.map +1 -1
  522. package/lib/stores/editors/CubeJoinKeyPairs.d.ts +38 -0
  523. package/lib/stores/editors/CubeJoinKeyPairs.d.ts.map +1 -0
  524. package/lib/stores/editors/CubeJoinKeyPairs.js +33 -0
  525. package/lib/stores/editors/CubeJoinKeyPairs.js.map +1 -0
  526. package/lib/stores/editors/CubeNodeDraft.d.ts +20 -6
  527. package/lib/stores/editors/CubeNodeDraft.d.ts.map +1 -1
  528. package/lib/stores/editors/CubeNodeDraft.js +23 -5
  529. package/lib/stores/editors/CubeNodeDraft.js.map +1 -1
  530. package/lib/stores/editors/CubeNodeDraftRegistry.d.ts +6 -0
  531. package/lib/stores/editors/CubeNodeDraftRegistry.d.ts.map +1 -1
  532. package/lib/stores/editors/CubeNodeDraftRegistry.js +42 -1
  533. package/lib/stores/editors/CubeNodeDraftRegistry.js.map +1 -1
  534. package/lib/stores/editors/CubePartitionDraft.d.ts +70 -0
  535. package/lib/stores/editors/CubePartitionDraft.d.ts.map +1 -0
  536. package/lib/stores/editors/CubePartitionDraft.js +154 -0
  537. package/lib/stores/editors/CubePartitionDraft.js.map +1 -0
  538. package/lib/stores/editors/CubeRenameDraft.d.ts +44 -0
  539. package/lib/stores/editors/CubeRenameDraft.d.ts.map +1 -0
  540. package/lib/stores/editors/CubeRenameDraft.js +79 -0
  541. package/lib/stores/editors/CubeRenameDraft.js.map +1 -0
  542. package/lib/stores/editors/CubeRestrictDraft.d.ts +37 -0
  543. package/lib/stores/editors/CubeRestrictDraft.d.ts.map +1 -0
  544. package/lib/stores/editors/CubeRestrictDraft.js +73 -0
  545. package/lib/stores/editors/CubeRestrictDraft.js.map +1 -0
  546. package/lib/stores/editors/CubeRowCountDraft.d.ts +42 -0
  547. package/lib/stores/editors/CubeRowCountDraft.d.ts.map +1 -0
  548. package/lib/stores/editors/CubeRowCountDraft.js +55 -0
  549. package/lib/stores/editors/CubeRowCountDraft.js.map +1 -0
  550. package/lib/stores/editors/CubeSliceDraft.d.ts +42 -0
  551. package/lib/stores/editors/CubeSliceDraft.d.ts.map +1 -0
  552. package/lib/stores/editors/CubeSliceDraft.js +72 -0
  553. package/lib/stores/editors/CubeSliceDraft.js.map +1 -0
  554. package/lib/stores/editors/CubeSortDraft.d.ts +41 -0
  555. package/lib/stores/editors/CubeSortDraft.d.ts.map +1 -0
  556. package/lib/stores/editors/CubeSortDraft.js +73 -0
  557. package/lib/stores/editors/CubeSortDraft.js.map +1 -0
  558. package/lib/stores/editors/CubeSortRows.d.ts +34 -0
  559. package/lib/stores/editors/CubeSortRows.d.ts.map +1 -0
  560. package/lib/stores/editors/CubeSortRows.js +50 -0
  561. package/lib/stores/editors/CubeSortRows.js.map +1 -0
  562. package/lib/stores/fixtures/CubeNorthwindModel.d.ts +7 -0
  563. package/lib/stores/fixtures/CubeNorthwindModel.d.ts.map +1 -1
  564. package/lib/stores/fixtures/CubeNorthwindModel.js +99 -87
  565. package/lib/stores/fixtures/CubeNorthwindModel.js.map +1 -1
  566. package/lib/stores/fixtures/CubeSampleSql.d.ts +34 -0
  567. package/lib/stores/fixtures/CubeSampleSql.d.ts.map +1 -0
  568. package/lib/stores/fixtures/CubeSampleSql.js +64 -0
  569. package/lib/stores/fixtures/CubeSampleSql.js.map +1 -0
  570. package/lib/stores/fixtures/CubeSportsModel.d.ts +27 -0
  571. package/lib/stores/fixtures/CubeSportsModel.d.ts.map +1 -0
  572. package/lib/stores/fixtures/CubeSportsModel.js +158 -0
  573. package/lib/stores/fixtures/CubeSportsModel.js.map +1 -0
  574. package/lib/stores/fixtures/CubeTradesModel.d.ts +29 -0
  575. package/lib/stores/fixtures/CubeTradesModel.d.ts.map +1 -0
  576. package/lib/stores/fixtures/CubeTradesModel.js +197 -0
  577. package/lib/stores/fixtures/CubeTradesModel.js.map +1 -0
  578. package/lib/stores/source-picker/CubeCsvSetupSql.d.ts +71 -0
  579. package/lib/stores/source-picker/CubeCsvSetupSql.d.ts.map +1 -0
  580. package/lib/stores/source-picker/CubeCsvSetupSql.js +392 -0
  581. package/lib/stores/source-picker/CubeCsvSetupSql.js.map +1 -0
  582. package/lib/stores/source-picker/CubeDataProductTabState.d.ts +186 -0
  583. package/lib/stores/source-picker/CubeDataProductTabState.d.ts.map +1 -0
  584. package/lib/stores/source-picker/CubeDataProductTabState.js +681 -0
  585. package/lib/stores/source-picker/CubeDataProductTabState.js.map +1 -0
  586. package/lib/stores/source-picker/CubeDirectConnectionTabState.d.ts +140 -0
  587. package/lib/stores/source-picker/CubeDirectConnectionTabState.d.ts.map +1 -0
  588. package/lib/stores/source-picker/CubeDirectConnectionTabState.js +516 -0
  589. package/lib/stores/source-picker/CubeDirectConnectionTabState.js.map +1 -0
  590. package/lib/stores/source-picker/CubeIngestTabState.d.ts +114 -0
  591. package/lib/stores/source-picker/CubeIngestTabState.d.ts.map +1 -0
  592. package/lib/stores/source-picker/CubeIngestTabState.js +455 -0
  593. package/lib/stores/source-picker/CubeIngestTabState.js.map +1 -0
  594. package/lib/stores/source-picker/CubeInlineModelTabState.d.ts +107 -0
  595. package/lib/stores/source-picker/CubeInlineModelTabState.d.ts.map +1 -0
  596. package/lib/stores/source-picker/CubeInlineModelTabState.js +347 -0
  597. package/lib/stores/source-picker/CubeInlineModelTabState.js.map +1 -0
  598. package/lib/stores/source-picker/CubeProjectTabState.d.ts +62 -0
  599. package/lib/stores/source-picker/CubeProjectTabState.d.ts.map +1 -0
  600. package/lib/stores/source-picker/CubeProjectTabState.js +181 -0
  601. package/lib/stores/source-picker/CubeProjectTabState.js.map +1 -0
  602. package/lib/stores/source-picker/CubeSourcePickerTab.d.ts +48 -0
  603. package/lib/stores/source-picker/CubeSourcePickerTab.d.ts.map +1 -0
  604. package/lib/stores/source-picker/CubeSourcePickerTab.js +24 -0
  605. package/lib/stores/source-picker/CubeSourcePickerTab.js.map +1 -0
  606. package/package.json +12 -8
  607. package/src/__lib__/LegendCubeCommand.ts +5 -0
  608. package/src/__lib__/LegendCubeDataProductLabels.ts +91 -0
  609. package/src/__lib__/LegendCubeDirectConnectionLabels.ts +111 -0
  610. package/src/__lib__/LegendCubeHelpText.ts +46 -2
  611. package/src/__lib__/LegendCubeIngestLabels.ts +40 -0
  612. package/src/__lib__/LegendCubeLabels.ts +192 -4
  613. package/src/__lib__/LegendCubeProjectLabels.ts +25 -0
  614. package/src/__lib__/LegendCubeTesting.ts +1 -0
  615. package/src/__test-utils__/CubeCanvasTestUtils.ts +1 -1
  616. package/src/__test-utils__/CubeConnectionTestSupport.ts +45 -0
  617. package/src/__test-utils__/CubeDirectConnectionFixtures.ts +70 -0
  618. package/src/__test-utils__/CubeEngineTestSupport.ts +73 -0
  619. package/src/__test-utils__/CubeExpressionTestUtils.ts +119 -0
  620. package/src/__test-utils__/CubeOperationsTestUtils.ts +252 -0
  621. package/src/__test-utils__/CubePageTestUtils.tsx +35 -0
  622. package/src/__test-utils__/CubeTestApplication.ts +21 -2
  623. package/src/__test-utils__/FakeCubeConnectionExplorer.ts +111 -0
  624. package/src/__test-utils__/FakeCubeDataProductCatalog.ts +227 -0
  625. package/src/__test-utils__/FakeCubeEngine.ts +32 -2
  626. package/src/__test-utils__/FakeCubeIngestCatalog.ts +180 -0
  627. package/src/__test-utils__/FakeCubeProjectCatalog.ts +89 -0
  628. package/src/components/CubeAddItems.tsx +179 -0
  629. package/src/components/CubeEditor.tsx +73 -44
  630. package/src/components/CubeEntrySourceBanner.tsx +64 -0
  631. package/src/components/CubeNodeIcon.tsx +31 -1
  632. package/src/components/CubeSchemaColumnsTable.tsx +49 -0
  633. package/src/components/canvas/CubeCanvas.tsx +51 -14
  634. package/src/components/canvas/CubeCanvasContextMenu.tsx +31 -30
  635. package/src/components/canvas/CubeCanvasDnd.ts +16 -9
  636. package/src/components/canvas/CubeCanvasElements.ts +12 -3
  637. package/src/components/canvas/CubeCanvasNode.tsx +62 -36
  638. package/src/components/canvas/CubeCanvasNodeFocus.ts +37 -0
  639. package/src/components/canvas/CubeNodeEditorAnchor.ts +82 -0
  640. package/src/components/editors/CubeAggregationRowEditor.tsx +224 -0
  641. package/src/components/editors/CubeColumnChecklist.tsx +130 -0
  642. package/src/components/editors/CubeColumnPicker.tsx +36 -12
  643. package/src/components/editors/CubeConcatEditor.tsx +374 -0
  644. package/src/components/editors/CubeDataProductSourceEditor.tsx +134 -0
  645. package/src/components/editors/CubeDifferenceEditor.tsx +87 -0
  646. package/src/components/editors/CubeDistinctEditor.tsx +28 -0
  647. package/src/components/editors/CubeExtendEditor.tsx +271 -0
  648. package/src/components/editors/CubeFilterEditor.tsx +7 -0
  649. package/src/components/editors/CubeGroupEditor.tsx +135 -0
  650. package/src/components/editors/CubeIngestSourceEditor.tsx +104 -0
  651. package/src/components/editors/CubeIntegerField.tsx +51 -0
  652. package/src/components/editors/CubeJoinEditor.tsx +34 -131
  653. package/src/components/editors/CubeJoinKeyRows.tsx +183 -0
  654. package/src/components/editors/CubeNodeEditorPanel.tsx +103 -29
  655. package/src/components/editors/CubeNodeEditorPopper.tsx +183 -0
  656. package/src/components/editors/CubeNodeEditorRegistry.ts +41 -0
  657. package/src/components/editors/CubePartitionEditor.tsx +208 -0
  658. package/src/components/editors/CubeRenameEditor.tsx +148 -0
  659. package/src/components/editors/CubeRestrictEditor.tsx +103 -0
  660. package/src/components/editors/CubeRowCountEditor.tsx +53 -0
  661. package/src/components/editors/CubeSliceEditor.tsx +69 -0
  662. package/src/components/editors/CubeSortEditor.tsx +84 -0
  663. package/src/components/editors/CubeSortRowEditor.tsx +176 -0
  664. package/src/components/editors/CubeSourceEditor.tsx +42 -40
  665. package/src/components/editors/CubeValueEditor.tsx +2 -1
  666. package/src/components/editors/CubeWarehouseControl.tsx +113 -0
  667. package/src/components/editors/useCubeNodeEditorDismiss.ts +103 -0
  668. package/src/components/examples/CubeExamplesDialog.tsx +199 -0
  669. package/src/components/grid/CubeGridRegion.tsx +49 -10
  670. package/src/components/grid/CubeGridValues.ts +55 -0
  671. package/src/components/grid/CubeResultGrid.tsx +83 -13
  672. package/src/components/palette/CubePalette.tsx +33 -15
  673. package/src/components/source-picker/CubeDataProductTab.tsx +392 -0
  674. package/src/components/source-picker/CubeDirectConnectionTab.tsx +340 -0
  675. package/src/components/source-picker/CubeIngestTab.tsx +232 -0
  676. package/src/components/source-picker/CubeInlineModelTab.tsx +191 -0
  677. package/src/components/source-picker/CubePickerStep.tsx +49 -0
  678. package/src/components/source-picker/CubeProjectTab.tsx +114 -0
  679. package/src/components/source-picker/CubeSourcePicker.tsx +62 -227
  680. package/src/components/spec-transfer/CubeSpecTransferDialog.tsx +1 -1
  681. package/src/graph-manager/CubeConnectionExplorer.ts +106 -0
  682. package/src/graph-manager/CubeDataProduct.ts +150 -0
  683. package/src/graph-manager/CubeDataProductCatalog.ts +245 -0
  684. package/src/graph-manager/CubeDirectConnection.ts +67 -0
  685. package/src/graph-manager/CubeEngine.ts +57 -1
  686. package/src/graph-manager/CubeIngest.ts +144 -0
  687. package/src/graph-manager/CubeIngestCatalog.ts +169 -0
  688. package/src/graph-manager/CubeLakehouseEnvironment.ts +27 -0
  689. package/src/graph-manager/CubeModelOutlineHelper.ts +26 -0
  690. package/src/graph-manager/CubeProject.ts +117 -0
  691. package/src/graph-manager/CubeProjectCatalog.ts +40 -0
  692. package/src/graph-manager/protocol/pure/CubeEngineBuilder.ts +145 -1
  693. package/src/graph-manager/protocol/pure/v1/V1_CubeDataProductArtifact.ts +251 -0
  694. package/src/graph-manager/protocol/pure/v1/V1_CubeDataProductModel.ts +101 -0
  695. package/src/graph-manager/protocol/pure/v1/V1_CubeDirectConnection.ts +339 -0
  696. package/src/graph-manager/protocol/pure/v1/V1_CubeDirectModel.ts +151 -0
  697. package/src/graph-manager/protocol/pure/v1/V1_CubeEngineErrors.ts +45 -4
  698. package/src/graph-manager/protocol/pure/v1/V1_CubeExpression.ts +89 -0
  699. package/src/graph-manager/protocol/pure/v1/V1_CubeIngestDefinition.ts +201 -0
  700. package/src/graph-manager/protocol/pure/v1/V1_CubeIngestModel.ts +183 -0
  701. package/src/graph-manager/protocol/pure/v1/V1_CubeLakehouseEnvironmentResolver.ts +141 -0
  702. package/src/graph-manager/protocol/pure/v1/V1_CubeLambdaSerializer.ts +84 -4
  703. package/src/graph-manager/protocol/pure/v1/V1_CubeModelOutlineBuilder.ts +89 -3
  704. package/src/graph-manager/protocol/pure/v1/V1_CubeSchemaExploration.ts +361 -0
  705. package/src/graph-manager/protocol/pure/v1/V1_LegendCubeConnectionExplorer.ts +116 -0
  706. package/src/graph-manager/protocol/pure/v1/V1_LegendCubeDataProductCatalog.ts +744 -0
  707. package/src/graph-manager/protocol/pure/v1/V1_LegendCubeEngine.ts +967 -24
  708. package/src/graph-manager/protocol/pure/v1/V1_LegendCubeIngestCatalog.ts +459 -0
  709. package/src/graph-manager/protocol/pure/v1/V1_LegendCubeProjectCatalog.ts +147 -0
  710. package/src/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeConnectionExplorerTestUtils.ts +61 -0
  711. package/src/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductFixtures.ts +337 -0
  712. package/src/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductSearchFixtures.ts +206 -0
  713. package/src/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeEngineTestUtils.ts +48 -4
  714. package/src/index.ts +20 -0
  715. package/src/stores/CubeAddPlacement.ts +67 -0
  716. package/src/stores/CubeDataProductRecheck.ts +93 -0
  717. package/src/stores/CubeDataProductRuntimeState.ts +256 -0
  718. package/src/stores/CubeDataProductWarehouse.ts +40 -0
  719. package/src/stores/CubeEditorState.ts +621 -68
  720. package/src/stores/CubeEntrySource.ts +278 -0
  721. package/src/stores/CubeExamples.ts +457 -0
  722. package/src/stores/CubeExamplesState.ts +108 -0
  723. package/src/stores/CubeExecutionState.ts +60 -8
  724. package/src/stores/CubeExtendTyping.ts +291 -0
  725. package/src/stores/CubeGridQuickActions.ts +184 -0
  726. package/src/stores/CubeHost.ts +71 -1
  727. package/src/stores/CubeIngestRecheck.ts +92 -0
  728. package/src/stores/CubeNodeEditorState.ts +348 -10
  729. package/src/stores/CubeShowPureState.ts +33 -8
  730. package/src/stores/CubeSourcePickerState.ts +160 -330
  731. package/src/stores/CubeSpecTransferState.ts +2 -2
  732. package/src/stores/LocalModelCatalog.ts +22 -3
  733. package/src/stores/editors/CubeAggregationRows.ts +299 -0
  734. package/src/stores/editors/CubeConcatDraft.ts +49 -0
  735. package/src/stores/editors/CubeDifferenceDraft.ts +147 -0
  736. package/src/stores/editors/CubeExtendDraft.ts +532 -0
  737. package/src/stores/editors/CubeGroupDraft.ts +145 -0
  738. package/src/stores/editors/CubeIntegerText.ts +34 -0
  739. package/src/stores/editors/CubeJoinDraft.ts +170 -54
  740. package/src/stores/editors/CubeJoinKeyPairs.ts +68 -0
  741. package/src/stores/editors/CubeNodeDraft.ts +26 -6
  742. package/src/stores/editors/CubeNodeDraftRegistry.ts +60 -1
  743. package/src/stores/editors/CubePartitionDraft.ts +214 -0
  744. package/src/stores/editors/CubeRenameDraft.ts +110 -0
  745. package/src/stores/editors/CubeRestrictDraft.ts +83 -0
  746. package/src/stores/editors/CubeRowCountDraft.ts +69 -0
  747. package/src/stores/editors/CubeSliceDraft.ts +87 -0
  748. package/src/stores/editors/CubeSortDraft.ts +98 -0
  749. package/src/stores/editors/CubeSortRows.ts +84 -0
  750. package/src/stores/fixtures/CubeNorthwindModel.ts +103 -88
  751. package/src/stores/fixtures/CubeSampleSql.ts +85 -0
  752. package/src/stores/fixtures/CubeSportsModel.ts +182 -0
  753. package/src/stores/fixtures/CubeTradesModel.ts +241 -0
  754. package/src/stores/source-picker/CubeCsvSetupSql.ts +444 -0
  755. package/src/stores/source-picker/CubeDataProductTabState.ts +839 -0
  756. package/src/stores/source-picker/CubeDirectConnectionTabState.ts +647 -0
  757. package/src/stores/source-picker/CubeIngestTabState.ts +551 -0
  758. package/src/stores/source-picker/CubeInlineModelTabState.ts +448 -0
  759. package/src/stores/source-picker/CubeProjectTabState.ts +218 -0
  760. package/src/stores/source-picker/CubeSourcePickerTab.ts +50 -0
  761. package/tsconfig.json +104 -0
@@ -13,7 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import type { NodeRegistry, QueryNode } from '@finos/legend-cube';
16
+ import { type NodeRegistry, type QueryNode } from '@finos/legend-cube';
17
17
  import { CUBE_EDITOR_CLOSED_REASON } from '../__lib__/LegendCubeLabels.js';
18
18
  import type { CubeEditorState } from './CubeEditorState.js';
19
19
  import type { CubeNodeDraft } from './editors/CubeNodeDraft.js';
@@ -24,9 +24,11 @@ import type { CubeNodeDraft } from './editors/CubeNodeDraft.js';
24
24
  */
25
25
  export declare const isSameNodeContent: (registry: NodeRegistry, a: QueryNode, b: QueryNode) => boolean;
26
26
  /**
27
- * The node editor in the side panel (PLAN §7.4, spec §17.5). Opening it
28
- * never changes which node Execute runs. Edits go to a draft, and only Apply,
29
- * or closing the panel, stores them, as one undo step; Cancel drops them.
27
+ * The node editor (PLAN §7.4, §11.8, spec §17.5). Opening it never changes
28
+ * which node Execute runs. Edits go to a draft, and only Apply, or closing
29
+ * the editor, stores them, as one undo step; Cancel drops them. Every close
30
+ * that applies goes through `finish`, which first lets the editor's fields
31
+ * commit text typed but not yet stored.
30
32
  *
31
33
  * The panel follows the cube (user's choice, 2026-10-07): when the node it
32
34
  * shows is replaced or removed underneath it, by Undo, a re-check or a
@@ -42,6 +44,12 @@ export declare class CubeNodeEditorState {
42
44
  draft: CubeNodeDraft | undefined;
43
45
  /** Why the panel closed by itself, until it opens again or is dismissed */
44
46
  notice: string | undefined;
47
+ /** A node the keyboard goes back to, once its editor closed from the keyboard */
48
+ nodeToFocus: string | undefined;
49
+ /** How many dropdowns, pickers or dialogs opened from the editor hold it open */
50
+ private holds;
51
+ /** What commits the editor's pending input, e.g. a field's text not yet stored, in order */
52
+ private flushers;
45
53
  private readonly disposeSync;
46
54
  constructor(editorState: CubeEditorState);
47
55
  /** The node the panel shows, as the cube has it now */
@@ -50,7 +58,10 @@ export declare class CubeNodeEditorState {
50
58
  get edited(): QueryNode | undefined;
51
59
  /** The draft saves differently from the node it was made from */
52
60
  get hasChanges(): boolean;
53
- /** Opens the panel on a node, closing (and so applying) the one it showed */
61
+ /**
62
+ * Opens the editor on a node, finishing (and so applying) the one it showed;
63
+ * does nothing while that one is held open, or kept open saying why
64
+ */
54
65
  open(nodeId: string): void;
55
66
  /**
56
67
  * Stores the draft in place of the node, as one undo step, and goes on
@@ -65,8 +76,111 @@ export declare class CubeNodeEditorState {
65
76
  * node, whose settings followed its inputs
66
77
  */
67
78
  swapInputs(): void;
68
- /** Applies the draft, then closes the panel (spec §17.5: edits commit on close) */
79
+ /**
80
+ * The cube's query with the draft in place of its node, when it has
81
+ * changes, and the schemas of the node's inputs, which the draft doesn't
82
+ * change
83
+ */
84
+ private get queryWithEdits();
85
+ /**
86
+ * Whether the join being edited, edits included, can have the columns its
87
+ * inputs share renamed (spec §7.11's autofix, PLAN §11.4): its only problem
88
+ * is the duplicate rule, and the cube isn't read-only
89
+ */
90
+ get canRenameDuplicateColumns(): boolean;
91
+ /**
92
+ * Renames the columns the join's inputs share with a Rename before each
93
+ * input, applying the draft first, as one undo step, then goes on editing
94
+ * the join, whose keys follow the renames
95
+ */
96
+ renameDuplicateColumns(): void;
97
+ /**
98
+ * The query with the draft applied and the node's input schemas, when the
99
+ * node is the one the panel was opened on and the cube can be changed
100
+ */
101
+ private get fixable();
102
+ /**
103
+ * Applies a fix of the query made from the draft applied, as one undo step,
104
+ * then goes on editing the node
105
+ */
106
+ private applyFix;
107
+ /**
108
+ * Whether the concat being edited can be fixed by a Rename before its
109
+ * second input (PLAN §11.5, Q6), and the cube isn't read-only
110
+ */
111
+ get canRenameConcatInput(): boolean;
112
+ /** Adds the Rename before the concat's second input, as one undo step */
113
+ renameConcatInput(): void;
114
+ /**
115
+ * Whether the concat being edited can be fixed by a Restrict before its
116
+ * wider input (PLAN §11.5, Q6), and the cube isn't read-only
117
+ */
118
+ get canRestrictConcatInput(): boolean;
119
+ /** Adds the Restrict before the concat's wider input, as one undo step */
120
+ restrictConcatInput(): void;
121
+ /**
122
+ * Applies the draft, then closes the panel (spec §17.5: edits commit on
123
+ * close). A draft whose Apply waits, e.g. an Extend whose expressions
124
+ * aren't validated, keeps the panel open and says why, rather than
125
+ * dropping or storing what can't be applied yet; Cancel drops it.
126
+ */
69
127
  close(): void;
128
+ /**
129
+ * Whether a dropdown, picker or dialog opened from the editor is open: then
130
+ * nothing outside it closes the editor, and the page's shortcuts wait
131
+ * (spec §17.5)
132
+ */
133
+ get isHeld(): boolean;
134
+ /**
135
+ * Holds the editor open while something opened from it is open; call the
136
+ * returned function, once, when that closes
137
+ */
138
+ holdOpen(): () => void;
139
+ /**
140
+ * Has `finish` commit the editor's pending input first, e.g. by moving the
141
+ * focus out of a field that stores its text on blur; returns the function
142
+ * that removes it. One asked to run first runs before the others: the
143
+ * editor's blur, so a field's text is stored before what reads it.
144
+ */
145
+ addFlusher(flush: () => void, options?: {
146
+ first?: boolean;
147
+ /** Whether it has input to commit, e.g. text typed and not applied */
148
+ isPending?: () => boolean;
149
+ }): () => void;
150
+ /**
151
+ * Whether the editor holds input a flusher would commit on closing, e.g. a
152
+ * warehouse typed and not applied; read when asked, not observed
153
+ */
154
+ hasPendingInput(): boolean;
155
+ /**
156
+ * Keeps the editor open, saying why, when its draft's Apply waits, e.g. an
157
+ * Extend whose expressions aren't validated (PLAN §11.7), rather than
158
+ * dropping or storing what can't be applied yet; says whether it did
159
+ */
160
+ private keepOpenWhileWaiting;
161
+ /**
162
+ * Finishes with the editor as anything but Cancel does (PLAN §11.8): commits
163
+ * its pending input, then closes it, applying the edits as one undo step.
164
+ * Edits the query can't take close it with a notice instead of vanishing.
165
+ * Does nothing while something opened from the editor holds it open, and
166
+ * keeps it open, saying why, while its Apply waits (PLAN §11.7).
167
+ */
168
+ private finishWith;
169
+ /** Finishes with the editor (`finishWith`); says whether it is closed */
170
+ finish(): boolean;
171
+ /**
172
+ * Finishes with the editor (`finishWith`); says whether its edits, if any,
173
+ * are now in the cube, so what comes next acts on them: false while it is
174
+ * held or kept open, or when its edits had to be dropped
175
+ */
176
+ finishApplied(): boolean;
177
+ /**
178
+ * Runs what a shortcut does (F9, Ctrl+Z), which may finish the editor: when
179
+ * it closes the editor while the keyboard was in it, the keyboard goes back
180
+ * to the node (PLAN §11.8), as on Escape. The canvas takes the request.
181
+ */
182
+ runFromKeyboard(run: () => void, focusWasInEditor: boolean): void;
183
+ clearNodeToFocus(): void;
70
184
  /** Closes the panel, dropping the draft */
71
185
  cancel(): void;
72
186
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"CubeNodeEditorState.d.ts","sourceRoot":"","sources":["../../src/stores/CubeNodeEditorState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AASlE,OAAO,EACL,yBAAyB,EAE1B,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAGhE;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAC5B,UAAU,YAAY,EACtB,GAAG,SAAS,EACZ,GAAG,SAAS,KACX,OAWF,CAAC;AAEF;;;;;;;;;GASG;AACH,qBAAa,mBAAmB;IAC9B,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAC;IAEtC,2DAA2D;IAC3D,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,kDAAkD;IAClD,OAAO,CAAC,OAAO,CAAqB;IACpC,KAAK,EAAE,aAAa,GAAG,SAAS,CAAC;IACjC,2EAA2E;IAC3E,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAE3B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;gBAEpC,WAAW,EAAE,eAAe;IA0BxC,uDAAuD;IACvD,IAAI,IAAI,IAAI,SAAS,GAAG,SAAS,CAIhC;IAED,sDAAsD;IACtD,IAAI,MAAM,IAAI,SAAS,GAAG,SAAS,CAElC;IAED,iEAAiE;IACjE,IAAI,UAAU,IAAI,OAAO,CAOxB;IAED,6EAA6E;IAC7E,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAc1B;;;;OAIG;IACH,KAAK,IAAI,IAAI;IAkBb,IAAI,aAAa,IAAI,OAAO,CAO3B;IAED;;;;OAIG;IACH,UAAU,IAAI,IAAI;IAclB,mFAAmF;IACnF,KAAK,IAAI,IAAI;IAKb,2CAA2C;IAC3C,MAAM,IAAI,IAAI;IAId;;;OAGG;IACH,OAAO,CAAC,MAAM,EAAE,yBAAyB,GAAG,IAAI;IAQhD,aAAa,IAAI,IAAI;IAIrB,0DAA0D;IAC1D,OAAO,IAAI,IAAI;IAIf,OAAO,CAAC,IAAI;IAMZ,OAAO,CAAC,KAAK;IAMb,4EAA4E;IAC5E,OAAO,CAAC,IAAI;CAiBb"}
1
+ {"version":3,"file":"CubeNodeEditorState.d.ts","sourceRoot":"","sources":["../../src/stores/CubeNodeEditorState.ts"],"names":[],"mappings":"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"}
@@ -13,8 +13,9 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
+ import { canFixJoinDuplicates, canRenameConcatInput, canRestrictConcatInput, fixJoinDuplicates, renameConcatInput, restrictConcatInput, } from '@finos/legend-cube';
16
17
  import { action, computed, makeObservable, observable, reaction, } from 'mobx';
17
- import { CUBE_EDITOR_CLOSED_REASON, getEditorClosedNotice, } from '../__lib__/LegendCubeLabels.js';
18
+ import { CUBE_EDITOR_CLOSED_REASON, getEditorClosedNotice, getEditorKeptOpenNotice, } from '../__lib__/LegendCubeLabels.js';
18
19
  import { createCubeNodeDraft } from './editors/CubeNodeDraftRegistry.js';
19
20
  /**
20
21
  * Whether two nodes of the same id save the same: their own fields, as the
@@ -32,9 +33,11 @@ export const isSameNodeContent = (registry, a, b) => {
32
33
  JSON.stringify([definition.spec.encode(b), b.rest]));
33
34
  };
34
35
  /**
35
- * The node editor in the side panel (PLAN §7.4, spec §17.5). Opening it
36
- * never changes which node Execute runs. Edits go to a draft, and only Apply,
37
- * or closing the panel, stores them, as one undo step; Cancel drops them.
36
+ * The node editor (PLAN §7.4, §11.8, spec §17.5). Opening it never changes
37
+ * which node Execute runs. Edits go to a draft, and only Apply, or closing
38
+ * the editor, stores them, as one undo step; Cancel drops them. Every close
39
+ * that applies goes through `finish`, which first lets the editor's fields
40
+ * commit text typed but not yet stored.
38
41
  *
39
42
  * The panel follows the cube (user's choice, 2026-10-07): when the node it
40
43
  * shows is replaced or removed underneath it, by Undo, a re-check or a
@@ -50,11 +53,25 @@ export class CubeNodeEditorState {
50
53
  draft;
51
54
  /** Why the panel closed by itself, until it opens again or is dismissed */
52
55
  notice;
56
+ /** A node the keyboard goes back to, once its editor closed from the keyboard */
57
+ nodeToFocus;
58
+ /** How many dropdowns, pickers or dialogs opened from the editor hold it open */
59
+ holds = 0;
60
+ /** What commits the editor's pending input, e.g. a field's text not yet stored, in order */
61
+ flushers = [];
53
62
  disposeSync;
54
63
  constructor(editorState) {
55
64
  makeObservable(this, {
56
65
  nodeId: observable,
57
66
  nodeKey: observable,
67
+ holds: observable,
68
+ nodeToFocus: observable,
69
+ runFromKeyboard: action,
70
+ clearNodeToFocus: action,
71
+ isHeld: computed,
72
+ holdOpen: action,
73
+ finish: action,
74
+ finishApplied: action,
58
75
  draft: observable.ref,
59
76
  notice: observable,
60
77
  node: computed,
@@ -62,8 +79,14 @@ export class CubeNodeEditorState {
62
79
  hasChanges: computed,
63
80
  open: action,
64
81
  canSwapInputs: computed,
82
+ canRenameDuplicateColumns: computed,
83
+ canRenameConcatInput: computed,
84
+ canRestrictConcatInput: computed,
65
85
  apply: action,
66
86
  swapInputs: action,
87
+ renameDuplicateColumns: action,
88
+ renameConcatInput: action,
89
+ restrictConcatInput: action,
67
90
  close: action,
68
91
  cancel: action,
69
92
  discard: action,
@@ -90,7 +113,10 @@ export class CubeNodeEditorState {
90
113
  edited !== undefined &&
91
114
  !isSameNodeContent(this.editorState.registry, edited, draft.original));
92
115
  }
93
- /** Opens the panel on a node, closing (and so applying) the one it showed */
116
+ /**
117
+ * Opens the editor on a node, finishing (and so applying) the one it showed;
118
+ * does nothing while that one is held open, or kept open saying why
119
+ */
94
120
  open(nodeId) {
95
121
  if (nodeId === this.nodeId) {
96
122
  this.notice = undefined;
@@ -100,9 +126,11 @@ export class CubeNodeEditorState {
100
126
  if (!node) {
101
127
  return;
102
128
  }
103
- this.close();
104
129
  this.notice = undefined;
105
- this.bind(node);
130
+ if (this.finish()) {
131
+ // the node as the cube has it once the other editor finished
132
+ this.bind(this.editorState.document.query.getNode(nodeId) ?? node);
133
+ }
106
134
  }
107
135
  /**
108
136
  * Stores the draft in place of the node, as one undo step, and goes on
@@ -115,7 +143,8 @@ export class CubeNodeEditorState {
115
143
  !edited ||
116
144
  node.key !== this.nodeKey ||
117
145
  !this.hasChanges ||
118
- this.editorState.readOnly) {
146
+ this.editorState.readOnly ||
147
+ this.draft?.applyDisabledReason !== undefined) {
119
148
  return;
120
149
  }
121
150
  const { query } = this.editorState.document;
@@ -148,10 +177,243 @@ export class CubeNodeEditorState {
148
177
  this.editorState.applyQuery(query);
149
178
  this.bind(query.getNode(node.id) ?? node);
150
179
  }
151
- /** Applies the draft, then closes the panel (spec §17.5: edits commit on close) */
180
+ /**
181
+ * The cube's query with the draft in place of its node, when it has
182
+ * changes, and the schemas of the node's inputs, which the draft doesn't
183
+ * change
184
+ */
185
+ get queryWithEdits() {
186
+ const { node, edited } = this;
187
+ let { query } = this.editorState.document;
188
+ if (edited && this.hasChanges && query.canReplace(edited)) {
189
+ query = query.replace(edited);
190
+ }
191
+ return {
192
+ query,
193
+ inputSchemas: node
194
+ ? query
195
+ .getInputIds(node.id)
196
+ .map((inputId) => inputId === undefined
197
+ ? undefined
198
+ : this.editorState.analysis.schemas.get(inputId))
199
+ : [],
200
+ };
201
+ }
202
+ /**
203
+ * Whether the join being edited, edits included, can have the columns its
204
+ * inputs share renamed (spec §7.11's autofix, PLAN §11.4): its only problem
205
+ * is the duplicate rule, and the cube isn't read-only
206
+ */
207
+ get canRenameDuplicateColumns() {
208
+ const { node } = this;
209
+ if (!node || node.key !== this.nodeKey || this.editorState.readOnly) {
210
+ return false;
211
+ }
212
+ const { query, inputSchemas } = this.queryWithEdits;
213
+ const [leftSchema, rightSchema] = inputSchemas;
214
+ return canFixJoinDuplicates(query, node.id, leftSchema, rightSchema);
215
+ }
216
+ /**
217
+ * Renames the columns the join's inputs share with a Rename before each
218
+ * input, applying the draft first, as one undo step, then goes on editing
219
+ * the join, whose keys follow the renames
220
+ */
221
+ renameDuplicateColumns() {
222
+ const { node } = this;
223
+ if (!node || !this.canRenameDuplicateColumns) {
224
+ return;
225
+ }
226
+ const { query, inputSchemas } = this.queryWithEdits;
227
+ const [leftSchema, rightSchema] = inputSchemas;
228
+ const fixed = fixJoinDuplicates(query, node.id, leftSchema, rightSchema);
229
+ this.editorState.applyQuery(fixed);
230
+ this.bind(fixed.getNode(node.id) ?? node);
231
+ }
232
+ /**
233
+ * The query with the draft applied and the node's input schemas, when the
234
+ * node is the one the panel was opened on and the cube can be changed
235
+ */
236
+ get fixable() {
237
+ const { node } = this;
238
+ return node && node.key === this.nodeKey && !this.editorState.readOnly
239
+ ? { node, ...this.queryWithEdits }
240
+ : undefined;
241
+ }
242
+ /**
243
+ * Applies a fix of the query made from the draft applied, as one undo step,
244
+ * then goes on editing the node
245
+ */
246
+ applyFix(fix) {
247
+ const { fixable } = this;
248
+ if (!fixable) {
249
+ return;
250
+ }
251
+ const { node, query, inputSchemas } = fixable;
252
+ const fixed = fix(query, node.id, inputSchemas);
253
+ this.editorState.applyQuery(fixed);
254
+ this.bind(fixed.getNode(node.id) ?? node);
255
+ }
256
+ /**
257
+ * Whether the concat being edited can be fixed by a Rename before its
258
+ * second input (PLAN §11.5, Q6), and the cube isn't read-only
259
+ */
260
+ get canRenameConcatInput() {
261
+ const { fixable } = this;
262
+ return (fixable !== undefined &&
263
+ canRenameConcatInput(fixable.query, fixable.node.id, fixable.inputSchemas[0], fixable.inputSchemas[1]));
264
+ }
265
+ /** Adds the Rename before the concat's second input, as one undo step */
266
+ renameConcatInput() {
267
+ if (this.canRenameConcatInput) {
268
+ this.applyFix((query, nodeId, [first, second]) => renameConcatInput(query, nodeId, first, second));
269
+ }
270
+ }
271
+ /**
272
+ * Whether the concat being edited can be fixed by a Restrict before its
273
+ * wider input (PLAN §11.5, Q6), and the cube isn't read-only
274
+ */
275
+ get canRestrictConcatInput() {
276
+ const { fixable } = this;
277
+ return (fixable !== undefined &&
278
+ canRestrictConcatInput(fixable.query, fixable.node.id, fixable.inputSchemas[0], fixable.inputSchemas[1]));
279
+ }
280
+ /** Adds the Restrict before the concat's wider input, as one undo step */
281
+ restrictConcatInput() {
282
+ if (this.canRestrictConcatInput) {
283
+ this.applyFix((query, nodeId, [first, second]) => restrictConcatInput(query, nodeId, first, second));
284
+ }
285
+ }
286
+ /**
287
+ * Applies the draft, then closes the panel (spec §17.5: edits commit on
288
+ * close). A draft whose Apply waits, e.g. an Extend whose expressions
289
+ * aren't validated, keeps the panel open and says why, rather than
290
+ * dropping or storing what can't be applied yet; Cancel drops it.
291
+ */
152
292
  close() {
293
+ if (this.keepOpenWhileWaiting()) {
294
+ return;
295
+ }
153
296
  this.apply();
154
297
  this.reset();
298
+ this.notice = undefined;
299
+ }
300
+ /**
301
+ * Whether a dropdown, picker or dialog opened from the editor is open: then
302
+ * nothing outside it closes the editor, and the page's shortcuts wait
303
+ * (spec §17.5)
304
+ */
305
+ get isHeld() {
306
+ return this.holds > 0;
307
+ }
308
+ /**
309
+ * Holds the editor open while something opened from it is open; call the
310
+ * returned function, once, when that closes
311
+ */
312
+ holdOpen() {
313
+ this.holds += 1;
314
+ let released = false;
315
+ return action(() => {
316
+ if (!released) {
317
+ released = true;
318
+ this.holds -= 1;
319
+ }
320
+ });
321
+ }
322
+ /**
323
+ * Has `finish` commit the editor's pending input first, e.g. by moving the
324
+ * focus out of a field that stores its text on blur; returns the function
325
+ * that removes it. One asked to run first runs before the others: the
326
+ * editor's blur, so a field's text is stored before what reads it.
327
+ */
328
+ addFlusher(flush, options) {
329
+ const flusher = { flush, isPending: options?.isPending ?? (() => false) };
330
+ this.flushers = options?.first
331
+ ? [flusher, ...this.flushers]
332
+ : [...this.flushers, flusher];
333
+ return () => {
334
+ this.flushers = this.flushers.filter((other) => other !== flusher);
335
+ };
336
+ }
337
+ /**
338
+ * Whether the editor holds input a flusher would commit on closing, e.g. a
339
+ * warehouse typed and not applied; read when asked, not observed
340
+ */
341
+ hasPendingInput() {
342
+ return this.flushers.some((flusher) => flusher.isPending());
343
+ }
344
+ /**
345
+ * Keeps the editor open, saying why, when its draft's Apply waits, e.g. an
346
+ * Extend whose expressions aren't validated (PLAN §11.7), rather than
347
+ * dropping or storing what can't be applied yet; says whether it did
348
+ */
349
+ keepOpenWhileWaiting() {
350
+ const { nodeId, draft } = this;
351
+ const waiting = draft?.applyDisabledReason;
352
+ if (nodeId === undefined ||
353
+ waiting === undefined ||
354
+ !this.hasChanges ||
355
+ this.editorState.readOnly) {
356
+ return false;
357
+ }
358
+ this.notice = getEditorKeptOpenNotice(nodeId, waiting);
359
+ return true;
360
+ }
361
+ /**
362
+ * Finishes with the editor as anything but Cancel does (PLAN §11.8): commits
363
+ * its pending input, then closes it, applying the edits as one undo step.
364
+ * Edits the query can't take close it with a notice instead of vanishing.
365
+ * Does nothing while something opened from the editor holds it open, and
366
+ * keeps it open, saying why, while its Apply waits (PLAN §11.7).
367
+ */
368
+ finishWith() {
369
+ if (this.nodeId === undefined) {
370
+ return 'closed';
371
+ }
372
+ if (this.isHeld) {
373
+ return 'held';
374
+ }
375
+ this.flushers.forEach((flusher) => flusher.flush());
376
+ if (this.keepOpenWhileWaiting()) {
377
+ return 'kept';
378
+ }
379
+ const { edited } = this;
380
+ if (edited !== undefined &&
381
+ this.hasChanges &&
382
+ !this.editorState.readOnly &&
383
+ !this.editorState.document.query.canReplace(edited)) {
384
+ this.discard(CUBE_EDITOR_CLOSED_REASON.CANNOT_APPLY);
385
+ return 'dropped';
386
+ }
387
+ this.close();
388
+ return 'closed';
389
+ }
390
+ /** Finishes with the editor (`finishWith`); says whether it is closed */
391
+ finish() {
392
+ const finished = this.finishWith();
393
+ return finished === 'dropped' || finished === 'closed';
394
+ }
395
+ /**
396
+ * Finishes with the editor (`finishWith`); says whether its edits, if any,
397
+ * are now in the cube, so what comes next acts on them: false while it is
398
+ * held or kept open, or when its edits had to be dropped
399
+ */
400
+ finishApplied() {
401
+ return this.finishWith() === 'closed';
402
+ }
403
+ /**
404
+ * Runs what a shortcut does (F9, Ctrl+Z), which may finish the editor: when
405
+ * it closes the editor while the keyboard was in it, the keyboard goes back
406
+ * to the node (PLAN §11.8), as on Escape. The canvas takes the request.
407
+ */
408
+ runFromKeyboard(run, focusWasInEditor) {
409
+ const { nodeId } = this;
410
+ run();
411
+ if (focusWasInEditor && nodeId !== undefined && this.nodeId === undefined) {
412
+ this.nodeToFocus = nodeId;
413
+ }
414
+ }
415
+ clearNodeToFocus() {
416
+ this.nodeToFocus = undefined;
155
417
  }
156
418
  /** Closes the panel, dropping the draft */
157
419
  cancel() {
@@ -192,6 +454,10 @@ export class CubeNodeEditorState {
192
454
  return;
193
455
  }
194
456
  if (this.hasChanges) {
457
+ if (node && this.draft?.follow(node)) {
458
+ this.nodeKey = node.key;
459
+ return;
460
+ }
195
461
  this.discard(node
196
462
  ? CUBE_EDITOR_CLOSED_REASON.NODE_CHANGED
197
463
  : CUBE_EDITOR_CLOSED_REASON.NODE_REMOVED);
@@ -1 +1 @@
1
- {"version":3,"file":"CubeNodeEditorState.js","sourceRoot":"","sources":["../../src/stores/CubeNodeEditorState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CubeNodeEditorState.js","sourceRoot":"","sources":["../../src/stores/CubeNodeEditorState.ts"],"names":[],"mappings":"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"}
@@ -18,8 +18,11 @@ import { CubeEngineError } from '../graph-manager/CubeEngine.js';
18
18
  import type { CubeEditorState } from './CubeEditorState.js';
19
19
  /**
20
20
  * Show Pure: the Pure text of what Execute would run, the capture node's
21
- * execution lambda with the row limit, as the engine renders it. For display
22
- * only: the text is never parsed back (PLAN §8.7).
21
+ * execution lambda, as the engine renders it. It leaves out the row limit
22
+ * Execute adds (`limit(rowLimit + 1)`, how the grid knows there are more
23
+ * rows), as Legend Query's own Show Pure does: only a Take or Drop the user
24
+ * added shows (user, 2026-10-10). For display only: the text is never parsed
25
+ * back (PLAN §8.7).
23
26
  */
24
27
  export declare class CubeShowPureState {
25
28
  readonly editorState: CubeEditorState;
@@ -31,7 +34,10 @@ export declare class CubeShowPureState {
31
34
  /** Counts renders, so one that finishes after the dialog closed is dropped */
32
35
  private request;
33
36
  constructor(editorState: CubeEditorState);
34
- /** Opens the dialog and renders the query; does nothing when Execute can't run */
37
+ /**
38
+ * Opens the dialog and renders the query, written for the database it runs
39
+ * on, as Execute writes it; does nothing when Execute can't run
40
+ */
35
41
  open(): GeneratorFn<void>;
36
42
  close(): void;
37
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CubeShowPureState.d.ts","sourceRoot":"","sources":["../../src/stores/CubeShowPureState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,EACL,eAAe,EAEhB,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D;;;;GAIG;AACH,qBAAa,iBAAiB;IAC5B,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAC;IAEtC,MAAM,UAAS;IACf,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,oEAAoE;IACpE,KAAK,EAAE,eAAe,GAAG,SAAS,CAAC;IACnC,WAAW,UAAS;IACpB,8EAA8E;IAC9E,OAAO,CAAC,OAAO,CAAK;gBAER,WAAW,EAAE,eAAe;IAYxC,kFAAkF;IACjF,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC;IAmC1B,KAAK,IAAI,IAAI;CAOd"}
1
+ {"version":3,"file":"CubeShowPureState.d.ts","sourceRoot":"","sources":["../../src/stores/CubeShowPureState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,EACL,eAAe,EAEhB,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D;;;;;;;GAOG;AACH,qBAAa,iBAAiB;IAC5B,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAC;IAEtC,MAAM,UAAS;IACf,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,oEAAoE;IACpE,KAAK,EAAE,eAAe,GAAG,SAAS,CAAC;IACnC,WAAW,UAAS;IACpB,8EAA8E;IAC9E,OAAO,CAAC,OAAO,CAAK;gBAER,WAAW,EAAE,eAAe;IAYxC;;;OAGG;IACF,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC;IAqD1B,KAAK,IAAI,IAAI;CAOd"}
@@ -13,12 +13,16 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { action, flow, makeObservable, observable } from 'mobx';
16
+ import { needsDatabaseType } from '@finos/legend-cube';
17
+ import { action, flow, flowResult, makeObservable, observable } from 'mobx';
17
18
  import { CubeEngineError, CubeEngineErrorKind, } from '../graph-manager/CubeEngine.js';
18
19
  /**
19
20
  * Show Pure: the Pure text of what Execute would run, the capture node's
20
- * execution lambda with the row limit, as the engine renders it. For display
21
- * only: the text is never parsed back (PLAN §8.7).
21
+ * execution lambda, as the engine renders it. It leaves out the row limit
22
+ * Execute adds (`limit(rowLimit + 1)`, how the grid knows there are more
23
+ * rows), as Legend Query's own Show Pure does: only a Take or Drop the user
24
+ * added shows (user, 2026-10-10). For display only: the text is never parsed
25
+ * back (PLAN §8.7).
22
26
  */
23
27
  export class CubeShowPureState {
24
28
  editorState;
@@ -40,11 +44,18 @@ export class CubeShowPureState {
40
44
  });
41
45
  this.editorState = editorState;
42
46
  }
43
- /** Opens the dialog and renders the query; does nothing when Execute can't run */
47
+ /**
48
+ * Opens the dialog and renders the query, written for the database it runs
49
+ * on, as Execute writes it; does nothing when Execute can't run
50
+ */
44
51
  *open() {
45
- const { execution, document, emitter, rowLimit, host } = this.editorState;
46
- const runtime = document.context?.runtime;
47
- if (!execution.canExecute || runtime === undefined) {
52
+ const { execution, document, emitter, host } = this.editorState;
53
+ const { query, context } = document;
54
+ const runtime = context?.runtime;
55
+ const model = context?.model;
56
+ // checked by canExecute
57
+ const captureId = query.selected;
58
+ if (!execution.canExecute || runtime === undefined || model === undefined) {
48
59
  return;
49
60
  }
50
61
  const request = ++this.request;
@@ -53,7 +64,16 @@ export class CubeShowPureState {
53
64
  this.error = undefined;
54
65
  this.isRendering = true;
55
66
  try {
56
- const text = (yield host.engine.renderPure(emitter.emitExecutionLambda({ rowLimit, runtime })));
67
+ let databaseType;
68
+ if (needsDatabaseType(query, captureId)) {
69
+ yield flowResult(this.editorState.loadModelOutline(model));
70
+ // closed, or opened again, while the outline loaded
71
+ if (request !== this.request) {
72
+ return;
73
+ }
74
+ databaseType = this.editorState.getRunDatabaseType(query, captureId, model, runtime);
75
+ }
76
+ const text = (yield host.engine.renderPure(emitter.emitExecutionLambda({ runtime, databaseType })));
57
77
  if (request === this.request) {
58
78
  this.text = text;
59
79
  }