@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
@@ -0,0 +1,72 @@
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 { action, makeObservable, observable } from 'mobx';
17
+ import { parseWholeNumberText } from './CubeIntegerText.js';
18
+ import { CubeNodeDraft } from './CubeNodeDraft.js';
19
+ const textOf = (value) => value === undefined ? '' : String(value);
20
+ /**
21
+ * The Slice editor's draft (spec §17.6: start and stop integer fields). It
22
+ * keeps the texts as typed; a text that isn't a whole number builds a
23
+ * cleared bound, which the node reports, never the default (spec §7.9). A
24
+ * field that holds the text it opened with keeps its saved bound, so a bound
25
+ * the field can't read (`1.5` from an imported spec) is kept unless the user
26
+ * types something else in that field.
27
+ */
28
+ export class CubeSliceDraft extends CubeNodeDraft {
29
+ startText;
30
+ stopText;
31
+ /** The texts the fields opened with, which keep the saved bounds */
32
+ initialStartText;
33
+ initialStopText;
34
+ constructor(original) {
35
+ super(original);
36
+ makeObservable(this, {
37
+ startText: observable,
38
+ stopText: observable,
39
+ setStartText: action,
40
+ setStopText: action,
41
+ });
42
+ this.initialStartText = textOf(original.start);
43
+ this.initialStopText = textOf(original.stop);
44
+ this.startText = this.initialStartText;
45
+ this.stopText = this.initialStopText;
46
+ }
47
+ /** The start the text gives: `undefined` unless it is a whole number */
48
+ get start() {
49
+ return parseWholeNumberText(this.startText);
50
+ }
51
+ /** The stop the text gives: `undefined` unless it is a whole number */
52
+ get stop() {
53
+ return parseWholeNumberText(this.stopText);
54
+ }
55
+ setStartText(text) {
56
+ this.startText = text;
57
+ }
58
+ setStopText(text) {
59
+ this.stopText = text;
60
+ }
61
+ /** The original while each field holds its opening text or the same bound */
62
+ build() {
63
+ const { original, start, stop } = this;
64
+ const keepStart = this.startText.trim() === this.initialStartText ||
65
+ start === original.start;
66
+ const keepStop = this.stopText.trim() === this.initialStopText || stop === original.stop;
67
+ return keepStart && keepStop
68
+ ? original
69
+ : original.withRange(keepStart ? original.start : start, keepStop ? original.stop : stop);
70
+ }
71
+ }
72
+ //# sourceMappingURL=CubeSliceDraft.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CubeSliceDraft.js","sourceRoot":"","sources":["../../../src/stores/editors/CubeSliceDraft.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,MAAM,MAAM,GAAG,CAAC,KAAyB,EAAU,EAAE,CACnD,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAE3C;;;;;;;GAOG;AACH,MAAM,OAAO,cAAe,SAAQ,aAAoB;IACtD,SAAS,CAAS;IAClB,QAAQ,CAAS;IACjB,oEAAoE;IACnD,gBAAgB,CAAS;IACzB,eAAe,CAAS;IAEzC,YAAY,QAAe;QACzB,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChB,cAAc,CAAC,IAAI,EAAE;YACnB,SAAS,EAAE,UAAU;YACrB,QAAQ,EAAE,UAAU;YACpB,YAAY,EAAE,MAAM;YACpB,WAAW,EAAE,MAAM;SACpB,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC/C,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC;IACvC,CAAC;IAED,wEAAwE;IACxE,IAAI,KAAK;QACP,OAAO,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC9C,CAAC;IAED,uEAAuE;IACvE,IAAI,IAAI;QACN,OAAO,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC;IAED,YAAY,CAAC,IAAY;QACvB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACxB,CAAC;IAED,WAAW,CAAC,IAAY;QACtB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,CAAC;IAED,6EAA6E;IAC7E,KAAK;QACH,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QACvC,MAAM,SAAS,GACb,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC,gBAAgB;YAC/C,KAAK,KAAK,QAAQ,CAAC,KAAK,CAAC;QAC3B,MAAM,QAAQ,GACZ,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC,eAAe,IAAI,IAAI,KAAK,QAAQ,CAAC,IAAI,CAAC;QAC1E,OAAO,SAAS,IAAI,QAAQ;YAC1B,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,QAAQ,CAAC,SAAS,CAChB,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAClC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAChC,CAAC;IACR,CAAC;CACF"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Copyright (c) 2026-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { type ColumnDirection, type Sort, type SortDirection } from '@finos/legend-cube';
17
+ import { CubeNodeDraft } from './CubeNodeDraft.js';
18
+ import { type CubeSortRow } from './CubeSortRows.js';
19
+ /**
20
+ * The Sort editor's draft (spec §17.6: a list of column and direction rows,
21
+ * most significant first). A row without a column is left out when built, as
22
+ * a Rename's blank rows are. While the rows are the ones it opened with, the
23
+ * original is given back, so a saved key without a column (from an imported
24
+ * spec) is kept until the rows change; removing its row removes it.
25
+ */
26
+ export declare class CubeSortDraft extends CubeNodeDraft<Sort> {
27
+ rows: readonly CubeSortRow[];
28
+ /** The rows' keys when the editor opened, blank ones included */
29
+ private readonly initialKeys;
30
+ constructor(original: Sort);
31
+ /** The keys the rows build, in order: a row without a column is left out */
32
+ get sorts(): ColumnDirection[];
33
+ addRow(): void;
34
+ removeRow(key: number): void;
35
+ /** Moves a row one place up (`-1`) or down (`1`), if it can go there */
36
+ moveRow(key: number, offset: -1 | 1): void;
37
+ setColumn(key: number, column: string): void;
38
+ setDirection(key: number, direction: SortDirection): void;
39
+ build(): Sort;
40
+ }
41
+ //# sourceMappingURL=CubeSortDraft.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CubeSortDraft.d.ts","sourceRoot":"","sources":["../../../src/stores/editors/CubeSortDraft.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,IAAI,EACT,KAAK,aAAa,EACnB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAEL,KAAK,WAAW,EAMjB,MAAM,mBAAmB,CAAC;AAE3B;;;;;;GAMG;AACH,qBAAa,aAAc,SAAQ,aAAa,CAAC,IAAI,CAAC;IACpD,IAAI,EAAE,SAAS,WAAW,EAAE,CAAC;IAC7B,iEAAiE;IACjE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA6B;gBAE7C,QAAQ,EAAE,IAAI;IAgB1B,4EAA4E;IAC5E,IAAI,KAAK,IAAI,eAAe,EAAE,CAE7B;IAED,MAAM,IAAI,IAAI;IAId,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAI5B,wEAAwE;IACxE,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI;IAI1C,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAM5C,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,GAAG,IAAI;IAMzD,KAAK,IAAI,IAAI;CAMd"}
@@ -0,0 +1,73 @@
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 {} from '@finos/legend-cube';
17
+ import { action, makeObservable, observable } from 'mobx';
18
+ import { CubeNodeDraft } from './CubeNodeDraft.js';
19
+ import { blankSortRow, isSameSorts, movedSortRows, sortKeysOfRows, sortRowsOf, sortsOfRows, } from './CubeSortRows.js';
20
+ /**
21
+ * The Sort editor's draft (spec §17.6: a list of column and direction rows,
22
+ * most significant first). A row without a column is left out when built, as
23
+ * a Rename's blank rows are. While the rows are the ones it opened with, the
24
+ * original is given back, so a saved key without a column (from an imported
25
+ * spec) is kept until the rows change; removing its row removes it.
26
+ */
27
+ export class CubeSortDraft extends CubeNodeDraft {
28
+ rows;
29
+ /** The rows' keys when the editor opened, blank ones included */
30
+ initialKeys;
31
+ constructor(original) {
32
+ super(original);
33
+ makeObservable(this, {
34
+ rows: observable.ref,
35
+ addRow: action,
36
+ removeRow: action,
37
+ moveRow: action,
38
+ setColumn: action,
39
+ setDirection: action,
40
+ });
41
+ this.rows = original.sorts.length
42
+ ? sortRowsOf(original.sorts)
43
+ : [blankSortRow()];
44
+ this.initialKeys = sortKeysOfRows(this.rows);
45
+ }
46
+ /** The keys the rows build, in order: a row without a column is left out */
47
+ get sorts() {
48
+ return sortsOfRows(this.rows);
49
+ }
50
+ addRow() {
51
+ this.rows = [...this.rows, blankSortRow()];
52
+ }
53
+ removeRow(key) {
54
+ this.rows = this.rows.filter((row) => row.key !== key);
55
+ }
56
+ /** Moves a row one place up (`-1`) or down (`1`), if it can go there */
57
+ moveRow(key, offset) {
58
+ this.rows = movedSortRows(this.rows, key, offset);
59
+ }
60
+ setColumn(key, column) {
61
+ this.rows = this.rows.map((row) => row.key === key ? { ...row, column } : row);
62
+ }
63
+ setDirection(key, direction) {
64
+ this.rows = this.rows.map((row) => row.key === key ? { ...row, direction } : row);
65
+ }
66
+ build() {
67
+ const { original } = this;
68
+ return isSameSorts(sortKeysOfRows(this.rows), this.initialKeys)
69
+ ? original
70
+ : original.withSorts(this.sorts);
71
+ }
72
+ }
73
+ //# sourceMappingURL=CubeSortDraft.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CubeSortDraft.js","sourceRoot":"","sources":["../../../src/stores/editors/CubeSortDraft.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAIN,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EACL,YAAY,EAEZ,WAAW,EACX,aAAa,EACb,cAAc,EACd,UAAU,EACV,WAAW,GACZ,MAAM,mBAAmB,CAAC;AAE3B;;;;;;GAMG;AACH,MAAM,OAAO,aAAc,SAAQ,aAAmB;IACpD,IAAI,CAAyB;IAC7B,iEAAiE;IAChD,WAAW,CAA6B;IAEzD,YAAY,QAAc;QACxB,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChB,cAAc,CAAC,IAAI,EAAE;YACnB,IAAI,EAAE,UAAU,CAAC,GAAG;YACpB,MAAM,EAAE,MAAM;YACd,SAAS,EAAE,MAAM;YACjB,OAAO,EAAE,MAAM;YACf,SAAS,EAAE,MAAM;YACjB,YAAY,EAAE,MAAM;SACrB,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM;YAC/B,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC5B,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,4EAA4E;IAC5E,IAAI,KAAK;QACP,OAAO,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,SAAS,CAAC,GAAW;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;IACzD,CAAC;IAED,wEAAwE;IACxE,OAAO,CAAC,GAAW,EAAE,MAAc;QACjC,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;IACpD,CAAC;IAED,SAAS,CAAC,GAAW,EAAE,MAAc;QACnC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAChC,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,CAC3C,CAAC;IACJ,CAAC;IAED,YAAY,CAAC,GAAW,EAAE,SAAwB;QAChD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAChC,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,GAAG,CAC9C,CAAC;IACJ,CAAC;IAED,KAAK;QACH,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;QAC1B,OAAO,WAAW,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC;YAC7D,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;CACF"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Copyright (c) 2026-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { type ColumnDirection, SortDirection } from '@finos/legend-cube';
17
+ /** One sort row: a column, `''` until picked, and its direction */
18
+ export interface CubeSortRow {
19
+ /** Identifies the row in the editor */
20
+ readonly key: number;
21
+ readonly column: string;
22
+ readonly direction: SortDirection;
23
+ }
24
+ export declare const blankSortRow: () => CubeSortRow;
25
+ /** The rows of saved sort keys, in order */
26
+ export declare const sortRowsOf: (sorts: readonly ColumnDirection[]) => CubeSortRow[];
27
+ /** Every row's key, a blank one included */
28
+ export declare const sortKeysOfRows: (rows: readonly CubeSortRow[]) => ColumnDirection[];
29
+ /** The keys the rows build, in order: a row without a column is left out */
30
+ export declare const sortsOfRows: (rows: readonly CubeSortRow[]) => ColumnDirection[];
31
+ /** The rows with one moved one place up (`-1`) or down (`1`), if it can go there */
32
+ export declare const movedSortRows: (rows: readonly CubeSortRow[], key: number, offset: -1 | 1) => readonly CubeSortRow[];
33
+ export declare const isSameSorts: (a: readonly ColumnDirection[], b: readonly ColumnDirection[]) => boolean;
34
+ //# sourceMappingURL=CubeSortRows.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CubeSortRows.d.ts","sourceRoot":"","sources":["../../../src/stores/editors/CubeSortRows.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,KAAK,eAAe,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAKzE,mEAAmE;AACnE,MAAM,WAAW,WAAW;IAC1B,uCAAuC;IACvC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC;CACnC;AAID,eAAO,MAAM,YAAY,QAAO,WAI9B,CAAC;AAEH,4CAA4C;AAC5C,eAAO,MAAM,UAAU,GAAI,OAAO,SAAS,eAAe,EAAE,KAAG,WAAW,EAKrE,CAAC;AAEN,4CAA4C;AAC5C,eAAO,MAAM,cAAc,GACzB,MAAM,SAAS,WAAW,EAAE,KAC3B,eAAe,EAC4C,CAAC;AAE/D,4EAA4E;AAC5E,eAAO,MAAM,WAAW,GAAI,MAAM,SAAS,WAAW,EAAE,KAAG,eAAe,EACrB,CAAC;AAEtD,oFAAoF;AACpF,eAAO,MAAM,aAAa,GACxB,MAAM,SAAS,WAAW,EAAE,EAC5B,KAAK,MAAM,EACX,QAAQ,CAAC,CAAC,GAAG,CAAC,KACb,SAAS,WAAW,EAYtB,CAAC;AAEF,eAAO,MAAM,WAAW,GACtB,GAAG,SAAS,eAAe,EAAE,EAC7B,GAAG,SAAS,eAAe,EAAE,KAC5B,OAMA,CAAC"}
@@ -0,0 +1,50 @@
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 { SortDirection } from '@finos/legend-cube';
17
+ let nextRowKey = 1;
18
+ export const blankSortRow = () => ({
19
+ key: nextRowKey++,
20
+ column: '',
21
+ direction: SortDirection.ASC,
22
+ });
23
+ /** The rows of saved sort keys, in order */
24
+ export const sortRowsOf = (sorts) => sorts.map(({ column, direction }) => ({
25
+ key: nextRowKey++,
26
+ column,
27
+ direction,
28
+ }));
29
+ /** Every row's key, a blank one included */
30
+ export const sortKeysOfRows = (rows) => rows.map(({ column, direction }) => ({ column, direction }));
31
+ /** The keys the rows build, in order: a row without a column is left out */
32
+ export const sortsOfRows = (rows) => sortKeysOfRows(rows).filter(({ column }) => column);
33
+ /** The rows with one moved one place up (`-1`) or down (`1`), if it can go there */
34
+ export const movedSortRows = (rows, key, offset) => {
35
+ const from = rows.findIndex((row) => row.key === key);
36
+ const to = from + offset;
37
+ if (from < 0 || to < 0 || to >= rows.length) {
38
+ return rows;
39
+ }
40
+ const moved = [...rows];
41
+ [moved[from], moved[to]] = [
42
+ moved[to],
43
+ moved[from],
44
+ ];
45
+ return moved;
46
+ };
47
+ export const isSameSorts = (a, b) => a.length === b.length &&
48
+ a.every((sort, index) => sort.column === b[index]?.column &&
49
+ sort.direction === b[index]?.direction);
50
+ //# sourceMappingURL=CubeSortRows.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CubeSortRows.js","sourceRoot":"","sources":["../../../src/stores/editors/CubeSortRows.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAwB,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAazE,IAAI,UAAU,GAAG,CAAC,CAAC;AAEnB,MAAM,CAAC,MAAM,YAAY,GAAG,GAAgB,EAAE,CAAC,CAAC;IAC9C,GAAG,EAAE,UAAU,EAAE;IACjB,MAAM,EAAE,EAAE;IACV,SAAS,EAAE,aAAa,CAAC,GAAG;CAC7B,CAAC,CAAC;AAEH,4CAA4C;AAC5C,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAiC,EAAiB,EAAE,CAC7E,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;IACpC,GAAG,EAAE,UAAU,EAAE;IACjB,MAAM;IACN,SAAS;CACV,CAAC,CAAC,CAAC;AAEN,4CAA4C;AAC5C,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,IAA4B,EACT,EAAE,CACrB,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AAE/D,4EAA4E;AAC5E,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAA4B,EAAqB,EAAE,CAC7E,cAAc,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;AAEtD,oFAAoF;AACpF,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,IAA4B,EAC5B,GAAW,EACX,MAAc,EACU,EAAE;IAC1B,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;IACtD,MAAM,EAAE,GAAG,IAAI,GAAG,MAAM,CAAC;IACzB,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAC5C,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;IACxB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG;QACzB,KAAK,CAAC,EAAE,CAAgB;QACxB,KAAK,CAAC,IAAI,CAAgB;KAC3B,CAAC;IACF,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,CAA6B,EAC7B,CAA6B,EACpB,EAAE,CACX,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;IACrB,CAAC,CAAC,KAAK,CACL,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CACd,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM;QAChC,IAAI,CAAC,SAAS,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,SAAS,CACzC,CAAC"}
@@ -18,6 +18,13 @@ export declare const CUBE_NORTHWIND_DATABASE = "showcase::northwind::store::Nort
18
18
  export declare const CUBE_NORTHWIND_CONNECTION = "showcase::northwind::connection::NorthwindConnection";
19
19
  export declare const CUBE_NORTHWIND_RUNTIME = "showcase::northwind::mapping::StoreRuntime";
20
20
  export declare const CUBE_NORTHWIND_MODEL_CODE: string;
21
+ /**
22
+ * Northwind as the Sample Data tab offers it: Northwind's own tables, without
23
+ * Cube's test tables
24
+ */
25
+ export declare const CUBE_NORTHWIND_SAMPLE_MODEL_CODE: string;
21
26
  /** The Cube Northwind fixture as a cube saves it (PLAN §6.2.2) */
22
27
  export declare const CUBE_NORTHWIND_MODEL: ModelContext;
28
+ /** The Northwind sample, without Cube's test tables, as a cube saves it */
29
+ export declare const CUBE_NORTHWIND_SAMPLE_MODEL: ModelContext;
23
30
  //# sourceMappingURL=CubeNorthwindModel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CubeNorthwindModel.d.ts","sourceRoot":"","sources":["../../../src/stores/fixtures/CubeNorthwindModel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAUvD,eAAO,MAAM,uBAAuB,kDACa,CAAC;AAClD,eAAO,MAAM,yBAAyB,yDACkB,CAAC;AACzD,eAAO,MAAM,sBAAsB,+CACW,CAAC;AAwD/C,eAAO,MAAM,yBAAyB,QAqQrC,CAAC;AAEF,kEAAkE;AAClE,eAAO,MAAM,oBAAoB,EAAE,YAGjC,CAAC"}
1
+ {"version":3,"file":"CubeNorthwindModel.d.ts","sourceRoot":"","sources":["../../../src/stores/fixtures/CubeNorthwindModel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAWvD,eAAO,MAAM,uBAAuB,kDACa,CAAC;AAClD,eAAO,MAAM,yBAAyB,yDACkB,CAAC;AACzD,eAAO,MAAM,sBAAsB,+CACW,CAAC;AA+T/C,eAAO,MAAM,yBAAyB,QAA2B,CAAC;AAElE;;;GAGG;AACH,eAAO,MAAM,gCAAgC,QAA4B,CAAC;AAE1E,kEAAkE;AAClE,eAAO,MAAM,oBAAoB,EAAE,YAGjC,CAAC;AAEH,2EAA2E;AAC3E,eAAO,MAAM,2BAA2B,EAAE,YAGxC,CAAC"}
@@ -13,6 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
+ import { toPureSetupSqls } from './CubeSampleSql.js';
16
17
  // The Cube Northwind fixture (PLAN §6.2.4): a corrected copy of the Northwind
17
18
  // Database of the query builder's tests, which is left as it is. Corrections:
18
19
  // the money columns are REAL (they were OTHER, typed String); the binary
@@ -63,12 +64,89 @@ const CUBETEST_SETUP_SQLS = [
63
64
  'create table CUBETEST.KEY_NUM (K NUMERIC(12,4))',
64
65
  'insert into CUBETEST.KEY_NUM values (1.2500), (3.0000)',
65
66
  ];
66
- /** A Pure string literal */
67
- const pureString = (text) => `'${text.replaceAll('\\', '\\\\').replaceAll("'", "\\'")}'`;
68
- const SETUP_SQLS = ['call loadNorthwindData()', ...CUBETEST_SETUP_SQLS]
69
- .map((sql) => ` ${pureString(sql)}`)
70
- .join(',\n');
71
- export const CUBE_NORTHWIND_MODEL_CODE = `###Relational
67
+ /** The CUBETEST schema and the decoy table, in the Database's text */
68
+ const CUBETEST_DATABASE_TEXT = ` Schema CUBETEST
69
+ (
70
+ Table ALLTYPES
71
+ (
72
+ ID INTEGER PRIMARY KEY,
73
+ TI TINYINT,
74
+ SI SMALLINT,
75
+ BI BIGINT,
76
+ F FLOAT,
77
+ D DOUBLE,
78
+ DEC DECIMAL(10, 2),
79
+ NUM NUMERIC(12, 4),
80
+ DT DATE,
81
+ TS TIMESTAMP,
82
+ B BIT,
83
+ VC VARCHAR(20)
84
+ )
85
+ Table "ORDER.LINES"
86
+ (
87
+ LINE_ID INTEGER PRIMARY KEY,
88
+ RIGHT_COL VARCHAR(10)
89
+ )
90
+ Table PROBLEM_BINARY
91
+ (
92
+ ID INTEGER PRIMARY KEY,
93
+ PAYLOAD BINARY(8)
94
+ )
95
+ Table PROBLEM_CHAR
96
+ (
97
+ CODE CHAR(3) PRIMARY KEY,
98
+ LABEL VARCHAR(10)
99
+ )
100
+ Table PROBLEM_OTHER
101
+ (
102
+ ID INTEGER PRIMARY KEY,
103
+ O OTHER
104
+ )
105
+ View PROBLEM_VIEW
106
+ (
107
+ ID: CUBETEST.ALLTYPES.ID PRIMARY KEY,
108
+ VC: CUBETEST.ALLTYPES.VC
109
+ )
110
+ Table EMP_REGION
111
+ (
112
+ EMPLOYEE_ID SMALLINT PRIMARY KEY,
113
+ REGION VARCHAR(15)
114
+ )
115
+ Table CUST_REGION
116
+ (
117
+ CUSTOMER_ID VARCHAR(5) PRIMARY KEY,
118
+ REGION VARCHAR(15)
119
+ )
120
+ Table CATEGORY_REGION
121
+ (
122
+ CATEGORY_ID SMALLINT PRIMARY KEY,
123
+ SHIP_REGION VARCHAR(15) NOT NULL
124
+ )
125
+ Table KEY_VC15
126
+ (
127
+ K VARCHAR(15)
128
+ )
129
+ Table KEY_VC2
130
+ (
131
+ K VARCHAR(2)
132
+ )
133
+ Table KEY_DEC
134
+ (
135
+ K DECIMAL(10, 2)
136
+ )
137
+ Table KEY_NUM
138
+ (
139
+ K NUMERIC(12, 4)
140
+ )
141
+ )
142
+ Table CUBETEST
143
+ (
144
+ WRONG_TABLE VARCHAR(10)
145
+ )
146
+
147
+ `;
148
+ /** The Northwind model's text, with Cube's test tables or without */
149
+ const northwindModelCode = (withTestTables) => `###Relational
72
150
  Database ${CUBE_NORTHWIND_DATABASE}
73
151
  (
74
152
  Schema NORTHWIND
@@ -205,86 +283,7 @@ Database ${CUBE_NORTHWIND_DATABASE}
205
283
  STATE_REGION VARCHAR(50)
206
284
  )
207
285
  )
208
- Schema CUBETEST
209
- (
210
- Table ALLTYPES
211
- (
212
- ID INTEGER PRIMARY KEY,
213
- TI TINYINT,
214
- SI SMALLINT,
215
- BI BIGINT,
216
- F FLOAT,
217
- D DOUBLE,
218
- DEC DECIMAL(10, 2),
219
- NUM NUMERIC(12, 4),
220
- DT DATE,
221
- TS TIMESTAMP,
222
- B BIT,
223
- VC VARCHAR(20)
224
- )
225
- Table "ORDER.LINES"
226
- (
227
- LINE_ID INTEGER PRIMARY KEY,
228
- RIGHT_COL VARCHAR(10)
229
- )
230
- Table PROBLEM_BINARY
231
- (
232
- ID INTEGER PRIMARY KEY,
233
- PAYLOAD BINARY(8)
234
- )
235
- Table PROBLEM_CHAR
236
- (
237
- CODE CHAR(3) PRIMARY KEY,
238
- LABEL VARCHAR(10)
239
- )
240
- Table PROBLEM_OTHER
241
- (
242
- ID INTEGER PRIMARY KEY,
243
- O OTHER
244
- )
245
- View PROBLEM_VIEW
246
- (
247
- ID: CUBETEST.ALLTYPES.ID PRIMARY KEY,
248
- VC: CUBETEST.ALLTYPES.VC
249
- )
250
- Table EMP_REGION
251
- (
252
- EMPLOYEE_ID SMALLINT PRIMARY KEY,
253
- REGION VARCHAR(15)
254
- )
255
- Table CUST_REGION
256
- (
257
- CUSTOMER_ID VARCHAR(5) PRIMARY KEY,
258
- REGION VARCHAR(15)
259
- )
260
- Table CATEGORY_REGION
261
- (
262
- CATEGORY_ID SMALLINT PRIMARY KEY,
263
- SHIP_REGION VARCHAR(15) NOT NULL
264
- )
265
- Table KEY_VC15
266
- (
267
- K VARCHAR(15)
268
- )
269
- Table KEY_VC2
270
- (
271
- K VARCHAR(2)
272
- )
273
- Table KEY_DEC
274
- (
275
- K DECIMAL(10, 2)
276
- )
277
- Table KEY_NUM
278
- (
279
- K NUMERIC(12, 4)
280
- )
281
- )
282
- Table CUBETEST
283
- (
284
- WRONG_TABLE VARCHAR(10)
285
- )
286
-
287
- Join ORDERS_CUSTMERS(NORTHWIND.ORDERS.CUSTOMER_ID = NORTHWIND.CUSTOMERS.CUSTOMER_ID)
286
+ ${withTestTables ? CUBETEST_DATABASE_TEXT : '\n'} Join ORDERS_CUSTMERS(NORTHWIND.ORDERS.CUSTOMER_ID = NORTHWIND.CUSTOMERS.CUSTOMER_ID)
288
287
  Join ORDERS_EMPLOYEES(NORTHWIND.ORDERS.EMPLOYEE_ID = NORTHWIND.EMPLOYEES.EMPLOYEE_ID)
289
288
  Join ORDERS_SHIPPERS(NORTHWIND.ORDERS.SHIP_VIA = NORTHWIND.SHIPPERS.SHIPPER_ID)
290
289
  Join ORDERS_ORDER_DETAILS(NORTHWIND.ORDERS.ORDER_ID = NORTHWIND.ORDER_DETAILS.ORDER_ID)
@@ -308,7 +307,9 @@ RelationalDatabaseConnection ${CUBE_NORTHWIND_CONNECTION}
308
307
  specification: LocalH2
309
308
  {
310
309
  testDataSetupSqls: [
311
- ${SETUP_SQLS}
310
+ ${toPureSetupSqls(withTestTables
311
+ ? ['call loadNorthwindData()', ...CUBETEST_SETUP_SQLS]
312
+ : ['call loadNorthwindData()'])}
312
313
  ];
313
314
  };
314
315
  auth: DefaultH2;
@@ -330,9 +331,20 @@ Runtime ${CUBE_NORTHWIND_RUNTIME}
330
331
  ];
331
332
  }
332
333
  `;
334
+ export const CUBE_NORTHWIND_MODEL_CODE = northwindModelCode(true);
335
+ /**
336
+ * Northwind as the Sample Data tab offers it: Northwind's own tables, without
337
+ * Cube's test tables
338
+ */
339
+ export const CUBE_NORTHWIND_SAMPLE_MODEL_CODE = northwindModelCode(false);
333
340
  /** The Cube Northwind fixture as a cube saves it (PLAN §6.2.2) */
334
341
  export const CUBE_NORTHWIND_MODEL = Object.freeze({
335
342
  _type: 'text',
336
343
  code: CUBE_NORTHWIND_MODEL_CODE,
337
344
  });
345
+ /** The Northwind sample, without Cube's test tables, as a cube saves it */
346
+ export const CUBE_NORTHWIND_SAMPLE_MODEL = Object.freeze({
347
+ _type: 'text',
348
+ code: CUBE_NORTHWIND_SAMPLE_MODEL_CODE,
349
+ });
338
350
  //# sourceMappingURL=CubeNorthwindModel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CubeNorthwindModel.js","sourceRoot":"","sources":["../../../src/stores/fixtures/CubeNorthwindModel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,8EAA8E;AAC9E,8EAA8E;AAC9E,yEAAyE;AACzE,2EAA2E;AAC3E,8EAA8E;AAC9E,4EAA4E;AAC5E,gDAAgD;AAEhD,MAAM,CAAC,MAAM,uBAAuB,GAClC,+CAA+C,CAAC;AAClD,MAAM,CAAC,MAAM,yBAAyB,GACpC,sDAAsD,CAAC;AACzD,MAAM,CAAC,MAAM,sBAAsB,GACjC,4CAA4C,CAAC;AAE/C;;;GAGG;AACH,MAAM,mBAAmB,GAAG;IAC1B,wCAAwC;IACxC,wBAAwB;IAExB,0DAA0D;IAC1D,oMAAoM;IACpM,oIAAoI;IACpI,4IAA4I;IAC5I,+CAA+C;IAE/C,wEAAwE;IACxE,iEAAiE;IACjE,0FAA0F;IAC1F,0DAA0D;IAC1D,sCAAsC;IACtC,wDAAwD;IACxD,8CAA8C;IAE9C,yEAAyE;IACzE,kFAAkF;IAClF,qDAAqD;IACrD,kFAAkF;IAClF,2DAA2D;IAC3D,6EAA6E;IAC7E,wDAAwD;IAExD,4EAA4E;IAC5E,yFAAyF;IACzF,0FAA0F;IAC1F,qHAAqH;IAErH,yEAAyE;IACzE,gDAAgD;IAChD,qEAAqE;IACrE,8CAA8C;IAC9C,4DAA4D;IAC5D,iDAAiD;IACjD,oDAAoD;IACpD,iDAAiD;IACjD,wDAAwD;CACzD,CAAC;AAEF,4BAA4B;AAC5B,MAAM,UAAU,GAAG,CAAC,IAAY,EAAU,EAAE,CAC1C,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;AAE9D,MAAM,UAAU,GAAG,CAAC,0BAA0B,EAAE,GAAG,mBAAmB,CAAC;KACpE,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,SAAS,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;KACxC,IAAI,CAAC,KAAK,CAAC,CAAC;AAEf,MAAM,CAAC,MAAM,yBAAyB,GAAG;WAC9B,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BAwOH,yBAAyB;;WAE7C,uBAAuB;;;;;EAKhC,UAAU;;;;;;;;UAQF,sBAAsB;;;;;;;MAO1B,uBAAuB;;sBAEP,yBAAyB;;;;CAI9C,CAAC;AAEF,kEAAkE;AAClE,MAAM,CAAC,MAAM,oBAAoB,GAAiB,MAAM,CAAC,MAAM,CAAC;IAC9D,KAAK,EAAE,MAAM;IACb,IAAI,EAAE,yBAAyB;CAChC,CAAC,CAAC"}
1
+ {"version":3,"file":"CubeNorthwindModel.js","sourceRoot":"","sources":["../../../src/stores/fixtures/CubeNorthwindModel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,8EAA8E;AAC9E,8EAA8E;AAC9E,yEAAyE;AACzE,2EAA2E;AAC3E,8EAA8E;AAC9E,4EAA4E;AAC5E,gDAAgD;AAEhD,MAAM,CAAC,MAAM,uBAAuB,GAClC,+CAA+C,CAAC;AAClD,MAAM,CAAC,MAAM,yBAAyB,GACpC,sDAAsD,CAAC;AACzD,MAAM,CAAC,MAAM,sBAAsB,GACjC,4CAA4C,CAAC;AAE/C;;;GAGG;AACH,MAAM,mBAAmB,GAAG;IAC1B,wCAAwC;IACxC,wBAAwB;IAExB,0DAA0D;IAC1D,oMAAoM;IACpM,oIAAoI;IACpI,4IAA4I;IAC5I,+CAA+C;IAE/C,wEAAwE;IACxE,iEAAiE;IACjE,0FAA0F;IAC1F,0DAA0D;IAC1D,sCAAsC;IACtC,wDAAwD;IACxD,8CAA8C;IAE9C,yEAAyE;IACzE,kFAAkF;IAClF,qDAAqD;IACrD,kFAAkF;IAClF,2DAA2D;IAC3D,6EAA6E;IAC7E,wDAAwD;IAExD,4EAA4E;IAC5E,yFAAyF;IACzF,0FAA0F;IAC1F,qHAAqH;IAErH,yEAAyE;IACzE,gDAAgD;IAChD,qEAAqE;IACrE,8CAA8C;IAC9C,4DAA4D;IAC5D,iDAAiD;IACjD,oDAAoD;IACpD,iDAAiD;IACjD,wDAAwD;CACzD,CAAC;AAEF,sEAAsE;AACtE,MAAM,sBAAsB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+E9B,CAAC;AAEF,qEAAqE;AACrE,MAAM,kBAAkB,GAAG,CAAC,cAAuB,EAAU,EAAE,CAAC;WACrD,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwIhC,cAAc,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,IAAI;;;;;;;;;;;;;;;;;+BAiBjB,yBAAyB;;WAE7C,uBAAuB;;;;;EAKhC,eAAe,CACf,cAAc;IACZ,CAAC,CAAC,CAAC,0BAA0B,EAAE,GAAG,mBAAmB,CAAC;IACtD,CAAC,CAAC,CAAC,0BAA0B,CAAC,CACjC;;;;;;;;UAQS,sBAAsB;;;;;;;MAO1B,uBAAuB;;sBAEP,yBAAyB;;;;CAI9C,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;AAElE;;;GAGG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;AAE1E,kEAAkE;AAClE,MAAM,CAAC,MAAM,oBAAoB,GAAiB,MAAM,CAAC,MAAM,CAAC;IAC9D,KAAK,EAAE,MAAM;IACb,IAAI,EAAE,yBAAyB;CAChC,CAAC,CAAC;AAEH,2EAA2E;AAC3E,MAAM,CAAC,MAAM,2BAA2B,GAAiB,MAAM,CAAC,MAAM,CAAC;IACrE,KAAK,EAAE,MAAM;IACb,IAAI,EAAE,gCAAgC;CACvC,CAAC,CAAC"}
@@ -0,0 +1,34 @@
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
+ /** A seeded random number generator (mulberry32): numbers in [0, 1) */
17
+ export declare const createSampleRandom: (seed: number) => (() => number);
18
+ /** An item of the list, picked with the random number given */
19
+ export declare const pickSample: <T>(items: readonly T[], random: number) => T;
20
+ /** A value of a setup SQL row: a number, a text, a date, or NULL */
21
+ export type SampleSqlValue = number | string | {
22
+ readonly date: string;
23
+ } | {
24
+ readonly decimal: string;
25
+ } | null;
26
+ /** One insert of every row of a table */
27
+ export declare const sampleInsert: (table: string, rows: readonly (readonly SampleSqlValue[])[]) => string;
28
+ /** A Pure string literal */
29
+ export declare const pureString: (text: string) => string;
30
+ /** The setup SQL as the `testDataSetupSqls` of a LocalH2 connection */
31
+ export declare const toPureSetupSqls: (sqls: readonly string[]) => string;
32
+ /** A day as `YYYY-MM-DD`, some days after the first one given */
33
+ export declare const addSampleDays: (first: string, days: number) => string;
34
+ //# sourceMappingURL=CubeSampleSql.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CubeSampleSql.d.ts","sourceRoot":"","sources":["../../../src/stores/fixtures/CubeSampleSql.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAMH,uEAAuE;AACvE,eAAO,MAAM,kBAAkB,GAAI,MAAM,MAAM,KAAG,CAAC,MAAM,MAAM,CAS9D,CAAC;AAEF,+DAA+D;AAC/D,eAAO,MAAM,UAAU,GAAI,CAAC,EAAE,OAAO,SAAS,CAAC,EAAE,EAAE,QAAQ,MAAM,KAAG,CAMnE,CAAC;AAEF,oEAAoE;AACpE,MAAM,MAAM,cAAc,GACtB,MAAM,GACN,MAAM,GACN;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACzB;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAC5B,IAAI,CAAC;AAeT,yCAAyC;AACzC,eAAO,MAAM,YAAY,GACvB,OAAO,MAAM,EACb,MAAM,SAAS,CAAC,SAAS,cAAc,EAAE,CAAC,EAAE,KAC3C,MAGc,CAAC;AAElB,4BAA4B;AAC5B,eAAO,MAAM,UAAU,GAAI,MAAM,MAAM,KAAG,MACmB,CAAC;AAE9D,uEAAuE;AACvE,eAAO,MAAM,eAAe,GAAI,MAAM,SAAS,MAAM,EAAE,KAAG,MACC,CAAC;AAE5D,iEAAiE;AACjE,eAAO,MAAM,aAAa,GAAI,OAAO,MAAM,EAAE,MAAM,MAAM,KAAG,MAI3D,CAAC"}
@@ -0,0 +1,64 @@
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
+ // What the sample models are made of: seeded random numbers, so a sample's
17
+ // rows are the same on every load (a saved cube holds the model text, which
18
+ // must not change), and setup SQL that H2 and DuckDB both run.
19
+ /** A seeded random number generator (mulberry32): numbers in [0, 1) */
20
+ export const createSampleRandom = (seed) => {
21
+ let state = seed >>> 0;
22
+ return () => {
23
+ state = (state + 0x6d2b79f5) >>> 0;
24
+ let t = state;
25
+ t = Math.imul(t ^ (t >>> 15), t | 1);
26
+ t ^= t + Math.imul(t ^ (t >>> 7), t | 61);
27
+ return ((t ^ (t >>> 14)) >>> 0) / 4294967296;
28
+ };
29
+ };
30
+ /** An item of the list, picked with the random number given */
31
+ export const pickSample = (items, random) => {
32
+ const item = items[Math.floor(random * items.length)];
33
+ if (item === undefined) {
34
+ throw new Error(`Can't pick from an empty list`);
35
+ }
36
+ return item;
37
+ };
38
+ const sqlValue = (value) => {
39
+ if (value === null) {
40
+ return 'NULL';
41
+ }
42
+ if (typeof value === 'number') {
43
+ return String(value);
44
+ }
45
+ if (typeof value === 'string') {
46
+ return `'${value.replaceAll("'", "''")}'`;
47
+ }
48
+ return 'date' in value ? `DATE '${value.date}'` : value.decimal;
49
+ };
50
+ /** One insert of every row of a table */
51
+ export const sampleInsert = (table, rows) => `insert into ${table} values ${rows
52
+ .map((row) => `(${row.map(sqlValue).join(', ')})`)
53
+ .join(', ')}`;
54
+ /** A Pure string literal */
55
+ export const pureString = (text) => `'${text.replaceAll('\\', '\\\\').replaceAll("'", "\\'")}'`;
56
+ /** The setup SQL as the `testDataSetupSqls` of a LocalH2 connection */
57
+ export const toPureSetupSqls = (sqls) => sqls.map((sql) => ` ${pureString(sql)}`).join(',\n');
58
+ /** A day as `YYYY-MM-DD`, some days after the first one given */
59
+ export const addSampleDays = (first, days) => {
60
+ const date = new Date(`${first}T00:00:00Z`);
61
+ date.setUTCDate(date.getUTCDate() + days);
62
+ return date.toISOString().slice(0, 10);
63
+ };
64
+ //# sourceMappingURL=CubeSampleSql.js.map