@finos/legend-cube-builder 0.0.3 → 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.
- package/README.md +52 -19
- package/docs/adding-an-operation.md +102 -13
- package/docs/hosting.md +82 -4
- package/docs/testing.md +114 -9
- package/lib/__lib__/LegendCubeCommand.d.ts +2 -1
- package/lib/__lib__/LegendCubeCommand.d.ts.map +1 -1
- package/lib/__lib__/LegendCubeCommand.js +5 -0
- package/lib/__lib__/LegendCubeCommand.js.map +1 -1
- package/lib/__lib__/LegendCubeDataProductLabels.d.ts +45 -0
- package/lib/__lib__/LegendCubeDataProductLabels.d.ts.map +1 -0
- package/lib/__lib__/LegendCubeDataProductLabels.js +60 -0
- package/lib/__lib__/LegendCubeDataProductLabels.js.map +1 -0
- package/lib/__lib__/LegendCubeDirectConnectionLabels.d.ts +56 -0
- package/lib/__lib__/LegendCubeDirectConnectionLabels.d.ts.map +1 -0
- package/lib/__lib__/LegendCubeDirectConnectionLabels.js +76 -0
- package/lib/__lib__/LegendCubeDirectConnectionLabels.js.map +1 -0
- package/lib/__lib__/LegendCubeHelpText.d.ts.map +1 -1
- package/lib/__lib__/LegendCubeHelpText.js +12 -2
- package/lib/__lib__/LegendCubeHelpText.js.map +1 -1
- package/lib/__lib__/LegendCubeIngestLabels.d.ts +25 -0
- package/lib/__lib__/LegendCubeIngestLabels.d.ts.map +1 -0
- package/lib/__lib__/LegendCubeIngestLabels.js +29 -0
- package/lib/__lib__/LegendCubeIngestLabels.js.map +1 -0
- package/lib/__lib__/LegendCubeLabels.d.ts +76 -3
- package/lib/__lib__/LegendCubeLabels.d.ts.map +1 -1
- package/lib/__lib__/LegendCubeLabels.js +102 -4
- package/lib/__lib__/LegendCubeLabels.js.map +1 -1
- package/lib/__lib__/LegendCubeProjectLabels.d.ts +22 -0
- package/lib/__lib__/LegendCubeProjectLabels.d.ts.map +1 -0
- package/lib/__lib__/LegendCubeProjectLabels.js +23 -0
- package/lib/__lib__/LegendCubeProjectLabels.js.map +1 -0
- package/lib/__lib__/LegendCubeTesting.d.ts +1 -0
- package/lib/__lib__/LegendCubeTesting.d.ts.map +1 -1
- package/lib/__lib__/LegendCubeTesting.js +1 -0
- package/lib/__lib__/LegendCubeTesting.js.map +1 -1
- package/lib/__test-utils__/CubeCanvasTestUtils.d.ts.map +1 -1
- package/lib/__test-utils__/CubeCanvasTestUtils.js +1 -1
- package/lib/__test-utils__/CubeCanvasTestUtils.js.map +1 -1
- package/lib/__test-utils__/CubeConnectionTestSupport.d.ts +22 -0
- package/lib/__test-utils__/CubeConnectionTestSupport.d.ts.map +1 -0
- package/lib/__test-utils__/CubeConnectionTestSupport.js +30 -0
- package/lib/__test-utils__/CubeConnectionTestSupport.js.map +1 -0
- package/lib/__test-utils__/CubeDirectConnectionFixtures.d.ts +31 -0
- package/lib/__test-utils__/CubeDirectConnectionFixtures.d.ts.map +1 -0
- package/lib/__test-utils__/CubeDirectConnectionFixtures.js +63 -0
- package/lib/__test-utils__/CubeDirectConnectionFixtures.js.map +1 -0
- package/lib/__test-utils__/CubeEngineTestSupport.d.ts +12 -0
- package/lib/__test-utils__/CubeEngineTestSupport.d.ts.map +1 -1
- package/lib/__test-utils__/CubeEngineTestSupport.js +21 -0
- package/lib/__test-utils__/CubeEngineTestSupport.js.map +1 -1
- package/lib/__test-utils__/CubeExpressionTestUtils.d.ts +37 -0
- package/lib/__test-utils__/CubeExpressionTestUtils.d.ts.map +1 -0
- package/lib/__test-utils__/CubeExpressionTestUtils.js +83 -0
- package/lib/__test-utils__/CubeExpressionTestUtils.js.map +1 -0
- package/lib/__test-utils__/CubeOperationsTestUtils.d.ts +25 -0
- package/lib/__test-utils__/CubeOperationsTestUtils.d.ts.map +1 -1
- package/lib/__test-utils__/CubeOperationsTestUtils.js +56 -10
- package/lib/__test-utils__/CubeOperationsTestUtils.js.map +1 -1
- package/lib/__test-utils__/CubePageTestUtils.d.ts +12 -0
- package/lib/__test-utils__/CubePageTestUtils.d.ts.map +1 -1
- package/lib/__test-utils__/CubePageTestUtils.js +25 -1
- package/lib/__test-utils__/CubePageTestUtils.js.map +1 -1
- package/lib/__test-utils__/CubeTestApplication.d.ts +5 -1
- package/lib/__test-utils__/CubeTestApplication.d.ts.map +1 -1
- package/lib/__test-utils__/CubeTestApplication.js +9 -1
- package/lib/__test-utils__/CubeTestApplication.js.map +1 -1
- package/lib/__test-utils__/FakeCubeConnectionExplorer.d.ts +33 -0
- package/lib/__test-utils__/FakeCubeConnectionExplorer.d.ts.map +1 -0
- package/lib/__test-utils__/FakeCubeConnectionExplorer.js +67 -0
- package/lib/__test-utils__/FakeCubeConnectionExplorer.js.map +1 -0
- package/lib/__test-utils__/FakeCubeDataProductCatalog.d.ts +45 -0
- package/lib/__test-utils__/FakeCubeDataProductCatalog.d.ts.map +1 -0
- package/lib/__test-utils__/FakeCubeDataProductCatalog.js +137 -0
- package/lib/__test-utils__/FakeCubeDataProductCatalog.js.map +1 -0
- package/lib/__test-utils__/FakeCubeEngine.d.ts +2 -0
- package/lib/__test-utils__/FakeCubeEngine.d.ts.map +1 -1
- package/lib/__test-utils__/FakeCubeEngine.js +14 -1
- package/lib/__test-utils__/FakeCubeEngine.js.map +1 -1
- package/lib/__test-utils__/FakeCubeIngestCatalog.d.ts +35 -0
- package/lib/__test-utils__/FakeCubeIngestCatalog.d.ts.map +1 -0
- package/lib/__test-utils__/FakeCubeIngestCatalog.js +107 -0
- package/lib/__test-utils__/FakeCubeIngestCatalog.js.map +1 -0
- package/lib/__test-utils__/FakeCubeProjectCatalog.d.ts +30 -0
- package/lib/__test-utils__/FakeCubeProjectCatalog.d.ts.map +1 -0
- package/lib/__test-utils__/FakeCubeProjectCatalog.js +64 -0
- package/lib/__test-utils__/FakeCubeProjectCatalog.js.map +1 -0
- package/lib/components/CubeAddItems.d.ts +35 -0
- package/lib/components/CubeAddItems.d.ts.map +1 -0
- package/lib/components/CubeAddItems.js +82 -0
- package/lib/components/CubeAddItems.js.map +1 -0
- package/lib/components/CubeEditor.d.ts +5 -1
- package/lib/components/CubeEditor.d.ts.map +1 -1
- package/lib/components/CubeEditor.js +33 -13
- package/lib/components/CubeEditor.js.map +1 -1
- package/lib/components/CubeEntrySourceBanner.d.ts +23 -0
- package/lib/components/CubeEntrySourceBanner.d.ts.map +1 -0
- package/lib/components/CubeEntrySourceBanner.js +32 -0
- package/lib/components/CubeEntrySourceBanner.js.map +1 -0
- package/lib/components/CubeNodeIcon.d.ts.map +1 -1
- package/lib/components/CubeNodeIcon.js +8 -1
- package/lib/components/CubeNodeIcon.js.map +1 -1
- package/lib/components/CubeSchemaColumnsTable.d.ts +21 -0
- package/lib/components/CubeSchemaColumnsTable.d.ts.map +1 -0
- package/lib/components/CubeSchemaColumnsTable.js +6 -0
- package/lib/components/CubeSchemaColumnsTable.js.map +1 -0
- package/lib/components/canvas/CubeCanvas.d.ts +4 -3
- package/lib/components/canvas/CubeCanvas.d.ts.map +1 -1
- package/lib/components/canvas/CubeCanvas.js +31 -12
- package/lib/components/canvas/CubeCanvas.js.map +1 -1
- package/lib/components/canvas/CubeCanvasContextMenu.d.ts +8 -4
- package/lib/components/canvas/CubeCanvasContextMenu.d.ts.map +1 -1
- package/lib/components/canvas/CubeCanvasContextMenu.js +19 -9
- package/lib/components/canvas/CubeCanvasContextMenu.js.map +1 -1
- package/lib/components/canvas/CubeCanvasDnd.d.ts +7 -5
- package/lib/components/canvas/CubeCanvasDnd.d.ts.map +1 -1
- package/lib/components/canvas/CubeCanvasDnd.js +14 -9
- package/lib/components/canvas/CubeCanvasDnd.js.map +1 -1
- package/lib/components/canvas/CubeCanvasElements.d.ts.map +1 -1
- package/lib/components/canvas/CubeCanvasElements.js +6 -3
- package/lib/components/canvas/CubeCanvasElements.js.map +1 -1
- package/lib/components/canvas/CubeCanvasNode.d.ts.map +1 -1
- package/lib/components/canvas/CubeCanvasNode.js +30 -20
- package/lib/components/canvas/CubeCanvasNode.js.map +1 -1
- package/lib/components/canvas/CubeCanvasNodeFocus.d.ts +22 -0
- package/lib/components/canvas/CubeCanvasNodeFocus.d.ts.map +1 -0
- package/lib/components/canvas/CubeCanvasNodeFocus.js +31 -0
- package/lib/components/canvas/CubeCanvasNodeFocus.js.map +1 -0
- package/lib/components/canvas/CubeNodeEditorAnchor.d.ts +44 -0
- package/lib/components/canvas/CubeNodeEditorAnchor.d.ts.map +1 -0
- package/lib/components/canvas/CubeNodeEditorAnchor.js +51 -0
- package/lib/components/canvas/CubeNodeEditorAnchor.js.map +1 -0
- package/lib/components/editors/CubeAggregationRowEditor.d.ts +48 -0
- package/lib/components/editors/CubeAggregationRowEditor.d.ts.map +1 -0
- package/lib/components/editors/CubeAggregationRowEditor.js +72 -0
- package/lib/components/editors/CubeAggregationRowEditor.js.map +1 -0
- package/lib/components/editors/CubeColumnChecklist.d.ts +42 -0
- package/lib/components/editors/CubeColumnChecklist.d.ts.map +1 -0
- package/lib/components/editors/CubeColumnChecklist.js +41 -0
- package/lib/components/editors/CubeColumnChecklist.js.map +1 -0
- package/lib/components/editors/CubeConcatEditor.d.ts +33 -0
- package/lib/components/editors/CubeConcatEditor.d.ts.map +1 -0
- package/lib/components/editors/CubeConcatEditor.js +147 -0
- package/lib/components/editors/CubeConcatEditor.js.map +1 -0
- package/lib/components/editors/CubeDataProductSourceEditor.d.ts +25 -0
- package/lib/components/editors/CubeDataProductSourceEditor.d.ts.map +1 -0
- package/lib/components/editors/CubeDataProductSourceEditor.js +53 -0
- package/lib/components/editors/CubeDataProductSourceEditor.js.map +1 -0
- package/lib/components/editors/CubeDifferenceEditor.d.ts +25 -0
- package/lib/components/editors/CubeDifferenceEditor.d.ts.map +1 -0
- package/lib/components/editors/CubeDifferenceEditor.js +29 -0
- package/lib/components/editors/CubeDifferenceEditor.js.map +1 -0
- package/lib/components/editors/CubeExtendEditor.d.ts +25 -0
- package/lib/components/editors/CubeExtendEditor.d.ts.map +1 -0
- package/lib/components/editors/CubeExtendEditor.js +86 -0
- package/lib/components/editors/CubeExtendEditor.js.map +1 -0
- package/lib/components/editors/CubeFilterEditor.d.ts.map +1 -1
- package/lib/components/editors/CubeFilterEditor.js +3 -3
- package/lib/components/editors/CubeFilterEditor.js.map +1 -1
- package/lib/components/editors/CubeGroupEditor.d.ts +28 -0
- package/lib/components/editors/CubeGroupEditor.d.ts.map +1 -0
- package/lib/components/editors/CubeGroupEditor.js +70 -0
- package/lib/components/editors/CubeGroupEditor.js.map +1 -0
- package/lib/components/editors/CubeIngestSourceEditor.d.ts +26 -0
- package/lib/components/editors/CubeIngestSourceEditor.d.ts.map +1 -0
- package/lib/components/editors/CubeIngestSourceEditor.js +47 -0
- package/lib/components/editors/CubeIngestSourceEditor.js.map +1 -0
- package/lib/components/editors/CubeJoinEditor.d.ts +2 -4
- package/lib/components/editors/CubeJoinEditor.d.ts.map +1 -1
- package/lib/components/editors/CubeJoinEditor.js +7 -37
- package/lib/components/editors/CubeJoinEditor.js.map +1 -1
- package/lib/components/editors/CubeJoinKeyRows.d.ts +34 -0
- package/lib/components/editors/CubeJoinKeyRows.d.ts.map +1 -0
- package/lib/components/editors/CubeJoinKeyRows.js +65 -0
- package/lib/components/editors/CubeJoinKeyRows.js.map +1 -0
- package/lib/components/editors/CubeNodeEditorPanel.d.ts +7 -5
- package/lib/components/editors/CubeNodeEditorPanel.d.ts.map +1 -1
- package/lib/components/editors/CubeNodeEditorPanel.js +51 -13
- package/lib/components/editors/CubeNodeEditorPanel.js.map +1 -1
- package/lib/components/editors/CubeNodeEditorPopper.d.ts +40 -0
- package/lib/components/editors/CubeNodeEditorPopper.d.ts.map +1 -0
- package/lib/components/editors/CubeNodeEditorPopper.js +125 -0
- package/lib/components/editors/CubeNodeEditorPopper.js.map +1 -0
- package/lib/components/editors/CubeNodeEditorRegistry.d.ts.map +1 -1
- package/lib/components/editors/CubeNodeEditorRegistry.js +15 -1
- package/lib/components/editors/CubeNodeEditorRegistry.js.map +1 -1
- package/lib/components/editors/CubePartitionEditor.d.ts +30 -0
- package/lib/components/editors/CubePartitionEditor.d.ts.map +1 -0
- package/lib/components/editors/CubePartitionEditor.js +93 -0
- package/lib/components/editors/CubePartitionEditor.js.map +1 -0
- package/lib/components/editors/CubeRenameEditor.d.ts.map +1 -1
- package/lib/components/editors/CubeRenameEditor.js +6 -4
- package/lib/components/editors/CubeRenameEditor.js.map +1 -1
- package/lib/components/editors/CubeRestrictEditor.js +1 -1
- package/lib/components/editors/CubeRestrictEditor.js.map +1 -1
- package/lib/components/editors/CubeSortEditor.d.ts.map +1 -1
- package/lib/components/editors/CubeSortEditor.js +10 -37
- package/lib/components/editors/CubeSortEditor.js.map +1 -1
- package/lib/components/editors/CubeSortRowEditor.d.ts +47 -0
- package/lib/components/editors/CubeSortRowEditor.d.ts.map +1 -0
- package/lib/components/editors/CubeSortRowEditor.js +62 -0
- package/lib/components/editors/CubeSortRowEditor.js.map +1 -0
- package/lib/components/editors/CubeSourceEditor.d.ts.map +1 -1
- package/lib/components/editors/CubeSourceEditor.js +18 -5
- package/lib/components/editors/CubeSourceEditor.js.map +1 -1
- package/lib/components/editors/CubeWarehouseControl.d.ts +30 -0
- package/lib/components/editors/CubeWarehouseControl.d.ts.map +1 -0
- package/lib/components/editors/CubeWarehouseControl.js +44 -0
- package/lib/components/editors/CubeWarehouseControl.js.map +1 -0
- package/lib/components/editors/useCubeNodeEditorDismiss.d.ts +31 -0
- package/lib/components/editors/useCubeNodeEditorDismiss.d.ts.map +1 -0
- package/lib/components/editors/useCubeNodeEditorDismiss.js +83 -0
- package/lib/components/editors/useCubeNodeEditorDismiss.js.map +1 -0
- package/lib/components/examples/CubeExamplesDialog.d.ts +26 -0
- package/lib/components/examples/CubeExamplesDialog.d.ts.map +1 -0
- package/lib/components/examples/CubeExamplesDialog.js +68 -0
- package/lib/components/examples/CubeExamplesDialog.js.map +1 -0
- package/lib/components/grid/CubeGridRegion.d.ts.map +1 -1
- package/lib/components/grid/CubeGridRegion.js +19 -8
- package/lib/components/grid/CubeGridRegion.js.map +1 -1
- package/lib/components/grid/CubeGridValues.d.ts +16 -0
- package/lib/components/grid/CubeGridValues.d.ts.map +1 -1
- package/lib/components/grid/CubeGridValues.js +44 -0
- package/lib/components/grid/CubeGridValues.js.map +1 -1
- package/lib/components/grid/CubeResultGrid.d.ts.map +1 -1
- package/lib/components/grid/CubeResultGrid.js +14 -2
- package/lib/components/grid/CubeResultGrid.js.map +1 -1
- package/lib/components/palette/CubePalette.d.ts.map +1 -1
- package/lib/components/palette/CubePalette.js +23 -12
- package/lib/components/palette/CubePalette.js.map +1 -1
- package/lib/components/source-picker/CubeDataProductTab.d.ts +27 -0
- package/lib/components/source-picker/CubeDataProductTab.d.ts.map +1 -0
- package/lib/components/source-picker/CubeDataProductTab.js +102 -0
- package/lib/components/source-picker/CubeDataProductTab.js.map +1 -0
- package/lib/components/source-picker/CubeDirectConnectionTab.d.ts +27 -0
- package/lib/components/source-picker/CubeDirectConnectionTab.d.ts.map +1 -0
- package/lib/components/source-picker/CubeDirectConnectionTab.js +87 -0
- package/lib/components/source-picker/CubeDirectConnectionTab.js.map +1 -0
- package/lib/components/source-picker/CubeIngestTab.d.ts +28 -0
- package/lib/components/source-picker/CubeIngestTab.d.ts.map +1 -0
- package/lib/components/source-picker/CubeIngestTab.js +66 -0
- package/lib/components/source-picker/CubeIngestTab.js.map +1 -0
- package/lib/components/source-picker/CubeInlineModelTab.d.ts +37 -0
- package/lib/components/source-picker/CubeInlineModelTab.d.ts.map +1 -0
- package/lib/components/source-picker/CubeInlineModelTab.js +71 -0
- package/lib/components/source-picker/CubeInlineModelTab.js.map +1 -0
- package/lib/components/source-picker/CubePickerStep.d.ts +27 -0
- package/lib/components/source-picker/CubePickerStep.d.ts.map +1 -0
- package/lib/components/source-picker/CubePickerStep.js +23 -0
- package/lib/components/source-picker/CubePickerStep.js.map +1 -0
- package/lib/components/source-picker/CubeProjectTab.d.ts +27 -0
- package/lib/components/source-picker/CubeProjectTab.d.ts.map +1 -0
- package/lib/components/source-picker/CubeProjectTab.js +50 -0
- package/lib/components/source-picker/CubeProjectTab.js.map +1 -0
- package/lib/components/source-picker/CubeSourcePicker.d.ts +6 -0
- package/lib/components/source-picker/CubeSourcePicker.d.ts.map +1 -1
- package/lib/components/source-picker/CubeSourcePicker.js +20 -58
- package/lib/components/source-picker/CubeSourcePicker.js.map +1 -1
- package/lib/components/spec-transfer/CubeSpecTransferDialog.js +1 -1
- package/lib/components/spec-transfer/CubeSpecTransferDialog.js.map +1 -1
- package/lib/graph-manager/CubeConnectionExplorer.d.ts +90 -0
- package/lib/graph-manager/CubeConnectionExplorer.d.ts.map +1 -0
- package/lib/graph-manager/CubeConnectionExplorer.js +34 -0
- package/lib/graph-manager/CubeConnectionExplorer.js.map +1 -0
- package/lib/graph-manager/CubeDataProduct.d.ts +66 -0
- package/lib/graph-manager/CubeDataProduct.d.ts.map +1 -0
- package/lib/graph-manager/CubeDataProduct.js +102 -0
- package/lib/graph-manager/CubeDataProduct.js.map +1 -0
- package/lib/graph-manager/CubeDataProductCatalog.d.ts +167 -0
- package/lib/graph-manager/CubeDataProductCatalog.d.ts.map +1 -0
- package/lib/graph-manager/CubeDataProductCatalog.js +116 -0
- package/lib/graph-manager/CubeDataProductCatalog.js.map +1 -0
- package/lib/graph-manager/CubeDirectConnection.d.ts +38 -0
- package/lib/graph-manager/CubeDirectConnection.d.ts.map +1 -0
- package/lib/graph-manager/CubeDirectConnection.js +48 -0
- package/lib/graph-manager/CubeDirectConnection.js.map +1 -0
- package/lib/graph-manager/CubeEngine.d.ts +37 -2
- package/lib/graph-manager/CubeEngine.d.ts.map +1 -1
- package/lib/graph-manager/CubeEngine.js +4 -1
- package/lib/graph-manager/CubeEngine.js.map +1 -1
- package/lib/graph-manager/CubeIngest.d.ts +50 -0
- package/lib/graph-manager/CubeIngest.d.ts.map +1 -0
- package/lib/graph-manager/CubeIngest.js +88 -0
- package/lib/graph-manager/CubeIngest.js.map +1 -0
- package/lib/graph-manager/CubeIngestCatalog.d.ts +116 -0
- package/lib/graph-manager/CubeIngestCatalog.d.ts.map +1 -0
- package/lib/graph-manager/CubeIngestCatalog.js +80 -0
- package/lib/graph-manager/CubeIngestCatalog.js.map +1 -0
- package/lib/graph-manager/CubeLakehouseEnvironment.d.ts +26 -0
- package/lib/graph-manager/CubeLakehouseEnvironment.d.ts.map +1 -0
- package/lib/graph-manager/CubeLakehouseEnvironment.js +17 -0
- package/lib/graph-manager/CubeLakehouseEnvironment.js.map +1 -0
- package/lib/graph-manager/CubeProject.d.ts +41 -0
- package/lib/graph-manager/CubeProject.d.ts.map +1 -0
- package/lib/graph-manager/CubeProject.js +84 -0
- package/lib/graph-manager/CubeProject.js.map +1 -0
- package/lib/graph-manager/CubeProjectCatalog.d.ts +35 -0
- package/lib/graph-manager/CubeProjectCatalog.d.ts.map +1 -0
- package/lib/graph-manager/CubeProjectCatalog.js +17 -0
- package/lib/graph-manager/CubeProjectCatalog.js.map +1 -0
- package/lib/graph-manager/protocol/pure/CubeEngineBuilder.d.ts +63 -1
- package/lib/graph-manager/protocol/pure/CubeEngineBuilder.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/CubeEngineBuilder.js +50 -1
- package/lib/graph-manager/protocol/pure/CubeEngineBuilder.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductArtifact.d.ts +44 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductArtifact.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductArtifact.js +192 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductArtifact.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductModel.d.ts +29 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductModel.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductModel.js +84 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeDataProductModel.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectConnection.d.ts +41 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectConnection.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectConnection.js +246 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectConnection.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectModel.d.ts +43 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectModel.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectModel.js +112 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeDirectModel.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeEngineErrors.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/V1_CubeEngineErrors.js +30 -4
- package/lib/graph-manager/protocol/pure/v1/V1_CubeEngineErrors.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/V1_CubeExpression.d.ts +23 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeExpression.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeExpression.js +68 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeExpression.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestDefinition.d.ts +30 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestDefinition.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestDefinition.js +140 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestDefinition.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestModel.d.ts +62 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestModel.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestModel.js +119 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeIngestModel.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeLakehouseEnvironmentResolver.d.ts +33 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeLakehouseEnvironmentResolver.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeLakehouseEnvironmentResolver.js +94 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeLakehouseEnvironmentResolver.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeLambdaSerializer.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/V1_CubeLambdaSerializer.js +63 -4
- package/lib/graph-manager/protocol/pure/v1/V1_CubeLambdaSerializer.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/V1_CubeSchemaExploration.d.ts +67 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeSchemaExploration.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeSchemaExploration.js +238 -0
- package/lib/graph-manager/protocol/pure/v1/V1_CubeSchemaExploration.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeConnectionExplorer.d.ts +34 -0
- package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeConnectionExplorer.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeConnectionExplorer.js +64 -0
- package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeConnectionExplorer.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeDataProductCatalog.d.ts +104 -0
- package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeDataProductCatalog.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeDataProductCatalog.js +484 -0
- package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeDataProductCatalog.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeEngine.d.ts +97 -3
- package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeEngine.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeEngine.js +585 -20
- package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeEngine.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeIngestCatalog.d.ts +69 -0
- package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeIngestCatalog.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeIngestCatalog.js +270 -0
- package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeIngestCatalog.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeProjectCatalog.d.ts +35 -0
- package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeProjectCatalog.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeProjectCatalog.js +91 -0
- package/lib/graph-manager/protocol/pure/v1/V1_LegendCubeProjectCatalog.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeConnectionExplorerTestUtils.d.ts +25 -0
- package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeConnectionExplorerTestUtils.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeConnectionExplorerTestUtils.js +47 -0
- package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeConnectionExplorerTestUtils.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductFixtures.d.ts +28 -0
- package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductFixtures.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductFixtures.js +310 -0
- package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductFixtures.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductSearchFixtures.d.ts +33 -0
- package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductSearchFixtures.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductSearchFixtures.js +188 -0
- package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductSearchFixtures.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeEngineTestUtils.d.ts +1 -1
- package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeEngineTestUtils.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeEngineTestUtils.js +27 -1
- package/lib/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeEngineTestUtils.js.map +1 -1
- package/lib/index.css +2 -2
- package/lib/index.css.map +1 -1
- package/lib/index.d.ts +11 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +10 -1
- package/lib/index.js.map +1 -1
- package/lib/stores/CubeAddPlacement.d.ts +32 -0
- package/lib/stores/CubeAddPlacement.d.ts.map +1 -0
- package/lib/stores/CubeAddPlacement.js +40 -0
- package/lib/stores/CubeAddPlacement.js.map +1 -0
- package/lib/stores/CubeDataProductRecheck.d.ts +27 -0
- package/lib/stores/CubeDataProductRecheck.d.ts.map +1 -0
- package/lib/stores/CubeDataProductRecheck.js +54 -0
- package/lib/stores/CubeDataProductRecheck.js.map +1 -0
- package/lib/stores/CubeDataProductRuntimeState.d.ts +88 -0
- package/lib/stores/CubeDataProductRuntimeState.d.ts.map +1 -0
- package/lib/stores/CubeDataProductRuntimeState.js +190 -0
- package/lib/stores/CubeDataProductRuntimeState.js.map +1 -0
- package/lib/stores/CubeDataProductWarehouse.d.ts +19 -0
- package/lib/stores/CubeDataProductWarehouse.d.ts.map +1 -0
- package/lib/stores/CubeDataProductWarehouse.js +25 -0
- package/lib/stores/CubeDataProductWarehouse.js.map +1 -0
- package/lib/stores/CubeEditorState.d.ts +100 -16
- package/lib/stores/CubeEditorState.d.ts.map +1 -1
- package/lib/stores/CubeEditorState.js +347 -47
- package/lib/stores/CubeEditorState.js.map +1 -1
- package/lib/stores/CubeEntrySource.d.ts +78 -0
- package/lib/stores/CubeEntrySource.d.ts.map +1 -0
- package/lib/stores/CubeEntrySource.js +200 -0
- package/lib/stores/CubeEntrySource.js.map +1 -0
- package/lib/stores/CubeExamples.d.ts +43 -0
- package/lib/stores/CubeExamples.d.ts.map +1 -0
- package/lib/stores/CubeExamples.js +296 -0
- package/lib/stores/CubeExamples.js.map +1 -0
- package/lib/stores/CubeExamplesState.d.ts +45 -0
- package/lib/stores/CubeExamplesState.d.ts.map +1 -0
- package/lib/stores/CubeExamplesState.js +81 -0
- package/lib/stores/CubeExamplesState.js.map +1 -0
- package/lib/stores/CubeExecutionState.d.ts +6 -2
- package/lib/stores/CubeExecutionState.d.ts.map +1 -1
- package/lib/stores/CubeExecutionState.js +15 -5
- package/lib/stores/CubeExecutionState.js.map +1 -1
- package/lib/stores/CubeExtendTyping.d.ts +72 -0
- package/lib/stores/CubeExtendTyping.d.ts.map +1 -0
- package/lib/stores/CubeExtendTyping.js +176 -0
- package/lib/stores/CubeExtendTyping.js.map +1 -0
- package/lib/stores/CubeGridQuickActions.d.ts +14 -6
- package/lib/stores/CubeGridQuickActions.d.ts.map +1 -1
- package/lib/stores/CubeGridQuickActions.js +53 -15
- package/lib/stores/CubeGridQuickActions.js.map +1 -1
- package/lib/stores/CubeHost.d.ts +32 -1
- package/lib/stores/CubeHost.d.ts.map +1 -1
- package/lib/stores/CubeHost.js +21 -1
- package/lib/stores/CubeHost.js.map +1 -1
- package/lib/stores/CubeIngestRecheck.d.ts +26 -0
- package/lib/stores/CubeIngestRecheck.d.ts.map +1 -0
- package/lib/stores/CubeIngestRecheck.js +53 -0
- package/lib/stores/CubeIngestRecheck.js.map +1 -0
- package/lib/stores/CubeNodeEditorState.d.ts +101 -5
- package/lib/stores/CubeNodeEditorState.d.ts.map +1 -1
- package/lib/stores/CubeNodeEditorState.js +221 -10
- package/lib/stores/CubeNodeEditorState.js.map +1 -1
- package/lib/stores/CubeShowPureState.d.ts +5 -2
- package/lib/stores/CubeShowPureState.d.ts.map +1 -1
- package/lib/stores/CubeShowPureState.js +7 -4
- package/lib/stores/CubeShowPureState.js.map +1 -1
- package/lib/stores/CubeSourcePickerState.d.ts +54 -65
- package/lib/stores/CubeSourcePickerState.d.ts.map +1 -1
- package/lib/stores/CubeSourcePickerState.js +155 -276
- package/lib/stores/CubeSourcePickerState.js.map +1 -1
- package/lib/stores/CubeSpecTransferState.d.ts +2 -2
- package/lib/stores/CubeSpecTransferState.js +2 -2
- package/lib/stores/LocalModelCatalog.d.ts +2 -0
- package/lib/stores/LocalModelCatalog.d.ts.map +1 -1
- package/lib/stores/LocalModelCatalog.js +17 -3
- package/lib/stores/LocalModelCatalog.js.map +1 -1
- package/lib/stores/editors/CubeAggregationRows.d.ts +80 -0
- package/lib/stores/editors/CubeAggregationRows.d.ts.map +1 -0
- package/lib/stores/editors/CubeAggregationRows.js +164 -0
- package/lib/stores/editors/CubeAggregationRows.js.map +1 -0
- package/lib/stores/editors/CubeConcatDraft.d.ts +30 -0
- package/lib/stores/editors/CubeConcatDraft.d.ts.map +1 -0
- package/lib/stores/editors/CubeConcatDraft.js +44 -0
- package/lib/stores/editors/CubeConcatDraft.js.map +1 -0
- package/lib/stores/editors/CubeDifferenceDraft.d.ts +49 -0
- package/lib/stores/editors/CubeDifferenceDraft.d.ts.map +1 -0
- package/lib/stores/editors/CubeDifferenceDraft.js +111 -0
- package/lib/stores/editors/CubeDifferenceDraft.js.map +1 -0
- package/lib/stores/editors/CubeExtendDraft.d.ts +110 -0
- package/lib/stores/editors/CubeExtendDraft.d.ts.map +1 -0
- package/lib/stores/editors/CubeExtendDraft.js +359 -0
- package/lib/stores/editors/CubeExtendDraft.js.map +1 -0
- package/lib/stores/editors/CubeGroupDraft.d.ts +61 -0
- package/lib/stores/editors/CubeGroupDraft.d.ts.map +1 -0
- package/lib/stores/editors/CubeGroupDraft.js +106 -0
- package/lib/stores/editors/CubeGroupDraft.js.map +1 -0
- package/lib/stores/editors/CubeJoinDraft.d.ts +9 -10
- package/lib/stores/editors/CubeJoinDraft.d.ts.map +1 -1
- package/lib/stores/editors/CubeJoinDraft.js +92 -21
- package/lib/stores/editors/CubeJoinDraft.js.map +1 -1
- package/lib/stores/editors/CubeJoinKeyPairs.d.ts +38 -0
- package/lib/stores/editors/CubeJoinKeyPairs.d.ts.map +1 -0
- package/lib/stores/editors/CubeJoinKeyPairs.js +33 -0
- package/lib/stores/editors/CubeJoinKeyPairs.js.map +1 -0
- package/lib/stores/editors/CubeNodeDraft.d.ts +20 -6
- package/lib/stores/editors/CubeNodeDraft.d.ts.map +1 -1
- package/lib/stores/editors/CubeNodeDraft.js +23 -5
- package/lib/stores/editors/CubeNodeDraft.js.map +1 -1
- package/lib/stores/editors/CubeNodeDraftRegistry.d.ts.map +1 -1
- package/lib/stores/editors/CubeNodeDraftRegistry.js +20 -1
- package/lib/stores/editors/CubeNodeDraftRegistry.js.map +1 -1
- package/lib/stores/editors/CubePartitionDraft.d.ts +70 -0
- package/lib/stores/editors/CubePartitionDraft.d.ts.map +1 -0
- package/lib/stores/editors/CubePartitionDraft.js +154 -0
- package/lib/stores/editors/CubePartitionDraft.js.map +1 -0
- package/lib/stores/editors/CubeSortDraft.d.ts +2 -10
- package/lib/stores/editors/CubeSortDraft.d.ts.map +1 -1
- package/lib/stores/editors/CubeSortDraft.js +9 -35
- package/lib/stores/editors/CubeSortDraft.js.map +1 -1
- package/lib/stores/editors/CubeSortRows.d.ts +34 -0
- package/lib/stores/editors/CubeSortRows.d.ts.map +1 -0
- package/lib/stores/editors/CubeSortRows.js +50 -0
- package/lib/stores/editors/CubeSortRows.js.map +1 -0
- package/lib/stores/fixtures/CubeNorthwindModel.d.ts +7 -0
- package/lib/stores/fixtures/CubeNorthwindModel.d.ts.map +1 -1
- package/lib/stores/fixtures/CubeNorthwindModel.js +99 -87
- package/lib/stores/fixtures/CubeNorthwindModel.js.map +1 -1
- package/lib/stores/fixtures/CubeSampleSql.d.ts +34 -0
- package/lib/stores/fixtures/CubeSampleSql.d.ts.map +1 -0
- package/lib/stores/fixtures/CubeSampleSql.js +64 -0
- package/lib/stores/fixtures/CubeSampleSql.js.map +1 -0
- package/lib/stores/fixtures/CubeSportsModel.d.ts +27 -0
- package/lib/stores/fixtures/CubeSportsModel.d.ts.map +1 -0
- package/lib/stores/fixtures/CubeSportsModel.js +158 -0
- package/lib/stores/fixtures/CubeSportsModel.js.map +1 -0
- package/lib/stores/fixtures/CubeTradesModel.d.ts +29 -0
- package/lib/stores/fixtures/CubeTradesModel.d.ts.map +1 -0
- package/lib/stores/fixtures/CubeTradesModel.js +197 -0
- package/lib/stores/fixtures/CubeTradesModel.js.map +1 -0
- package/lib/stores/source-picker/CubeCsvSetupSql.d.ts +71 -0
- package/lib/stores/source-picker/CubeCsvSetupSql.d.ts.map +1 -0
- package/lib/stores/source-picker/CubeCsvSetupSql.js +392 -0
- package/lib/stores/source-picker/CubeCsvSetupSql.js.map +1 -0
- package/lib/stores/source-picker/CubeDataProductTabState.d.ts +186 -0
- package/lib/stores/source-picker/CubeDataProductTabState.d.ts.map +1 -0
- package/lib/stores/source-picker/CubeDataProductTabState.js +681 -0
- package/lib/stores/source-picker/CubeDataProductTabState.js.map +1 -0
- package/lib/stores/source-picker/CubeDirectConnectionTabState.d.ts +140 -0
- package/lib/stores/source-picker/CubeDirectConnectionTabState.d.ts.map +1 -0
- package/lib/stores/source-picker/CubeDirectConnectionTabState.js +516 -0
- package/lib/stores/source-picker/CubeDirectConnectionTabState.js.map +1 -0
- package/lib/stores/source-picker/CubeIngestTabState.d.ts +114 -0
- package/lib/stores/source-picker/CubeIngestTabState.d.ts.map +1 -0
- package/lib/stores/source-picker/CubeIngestTabState.js +455 -0
- package/lib/stores/source-picker/CubeIngestTabState.js.map +1 -0
- package/lib/stores/source-picker/CubeInlineModelTabState.d.ts +107 -0
- package/lib/stores/source-picker/CubeInlineModelTabState.d.ts.map +1 -0
- package/lib/stores/source-picker/CubeInlineModelTabState.js +347 -0
- package/lib/stores/source-picker/CubeInlineModelTabState.js.map +1 -0
- package/lib/stores/source-picker/CubeProjectTabState.d.ts +62 -0
- package/lib/stores/source-picker/CubeProjectTabState.d.ts.map +1 -0
- package/lib/stores/source-picker/CubeProjectTabState.js +181 -0
- package/lib/stores/source-picker/CubeProjectTabState.js.map +1 -0
- package/lib/stores/source-picker/CubeSourcePickerTab.d.ts +48 -0
- package/lib/stores/source-picker/CubeSourcePickerTab.d.ts.map +1 -0
- package/lib/stores/source-picker/CubeSourcePickerTab.js +24 -0
- package/lib/stores/source-picker/CubeSourcePickerTab.js.map +1 -0
- package/package.json +10 -6
- package/src/__lib__/LegendCubeCommand.ts +5 -0
- package/src/__lib__/LegendCubeDataProductLabels.ts +91 -0
- package/src/__lib__/LegendCubeDirectConnectionLabels.ts +111 -0
- package/src/__lib__/LegendCubeHelpText.ts +25 -1
- package/src/__lib__/LegendCubeIngestLabels.ts +40 -0
- package/src/__lib__/LegendCubeLabels.ts +162 -4
- package/src/__lib__/LegendCubeProjectLabels.ts +25 -0
- package/src/__lib__/LegendCubeTesting.ts +1 -0
- package/src/__test-utils__/CubeCanvasTestUtils.ts +1 -1
- package/src/__test-utils__/CubeConnectionTestSupport.ts +45 -0
- package/src/__test-utils__/CubeDirectConnectionFixtures.ts +70 -0
- package/src/__test-utils__/CubeEngineTestSupport.ts +38 -0
- package/src/__test-utils__/CubeExpressionTestUtils.ts +119 -0
- package/src/__test-utils__/CubeOperationsTestUtils.ts +93 -18
- package/src/__test-utils__/CubePageTestUtils.tsx +35 -0
- package/src/__test-utils__/CubeTestApplication.ts +21 -2
- package/src/__test-utils__/FakeCubeConnectionExplorer.ts +111 -0
- package/src/__test-utils__/FakeCubeDataProductCatalog.ts +227 -0
- package/src/__test-utils__/FakeCubeEngine.ts +25 -1
- package/src/__test-utils__/FakeCubeIngestCatalog.ts +180 -0
- package/src/__test-utils__/FakeCubeProjectCatalog.ts +89 -0
- package/src/components/CubeAddItems.tsx +179 -0
- package/src/components/CubeEditor.tsx +73 -44
- package/src/components/CubeEntrySourceBanner.tsx +64 -0
- package/src/components/CubeNodeIcon.tsx +13 -0
- package/src/components/CubeSchemaColumnsTable.tsx +49 -0
- package/src/components/canvas/CubeCanvas.tsx +49 -14
- package/src/components/canvas/CubeCanvasContextMenu.tsx +31 -30
- package/src/components/canvas/CubeCanvasDnd.ts +16 -9
- package/src/components/canvas/CubeCanvasElements.ts +8 -2
- package/src/components/canvas/CubeCanvasNode.tsx +61 -43
- package/src/components/canvas/CubeCanvasNodeFocus.ts +37 -0
- package/src/components/canvas/CubeNodeEditorAnchor.ts +82 -0
- package/src/components/editors/CubeAggregationRowEditor.tsx +224 -0
- package/src/components/editors/CubeColumnChecklist.tsx +130 -0
- package/src/components/editors/CubeConcatEditor.tsx +374 -0
- package/src/components/editors/CubeDataProductSourceEditor.tsx +134 -0
- package/src/components/editors/CubeDifferenceEditor.tsx +87 -0
- package/src/components/editors/CubeExtendEditor.tsx +271 -0
- package/src/components/editors/CubeFilterEditor.tsx +7 -0
- package/src/components/editors/CubeGroupEditor.tsx +135 -0
- package/src/components/editors/CubeIngestSourceEditor.tsx +104 -0
- package/src/components/editors/CubeJoinEditor.tsx +12 -132
- package/src/components/editors/CubeJoinKeyRows.tsx +183 -0
- package/src/components/editors/CubeNodeEditorPanel.tsx +91 -28
- package/src/components/editors/CubeNodeEditorPopper.tsx +183 -0
- package/src/components/editors/CubeNodeEditorRegistry.ts +21 -0
- package/src/components/editors/CubePartitionEditor.tsx +208 -0
- package/src/components/editors/CubeRenameEditor.tsx +10 -5
- package/src/components/editors/CubeRestrictEditor.tsx +1 -1
- package/src/components/editors/CubeSortEditor.tsx +20 -142
- package/src/components/editors/CubeSortRowEditor.tsx +176 -0
- package/src/components/editors/CubeSourceEditor.tsx +42 -30
- package/src/components/editors/CubeWarehouseControl.tsx +113 -0
- package/src/components/editors/useCubeNodeEditorDismiss.ts +103 -0
- package/src/components/examples/CubeExamplesDialog.tsx +199 -0
- package/src/components/grid/CubeGridRegion.tsx +48 -10
- package/src/components/grid/CubeGridValues.ts +55 -0
- package/src/components/grid/CubeResultGrid.tsx +24 -8
- package/src/components/palette/CubePalette.tsx +33 -15
- package/src/components/source-picker/CubeDataProductTab.tsx +392 -0
- package/src/components/source-picker/CubeDirectConnectionTab.tsx +340 -0
- package/src/components/source-picker/CubeIngestTab.tsx +232 -0
- package/src/components/source-picker/CubeInlineModelTab.tsx +191 -0
- package/src/components/source-picker/CubePickerStep.tsx +49 -0
- package/src/components/source-picker/CubeProjectTab.tsx +114 -0
- package/src/components/source-picker/CubeSourcePicker.tsx +62 -227
- package/src/components/spec-transfer/CubeSpecTransferDialog.tsx +1 -1
- package/src/graph-manager/CubeConnectionExplorer.ts +106 -0
- package/src/graph-manager/CubeDataProduct.ts +150 -0
- package/src/graph-manager/CubeDataProductCatalog.ts +245 -0
- package/src/graph-manager/CubeDirectConnection.ts +67 -0
- package/src/graph-manager/CubeEngine.ts +43 -1
- package/src/graph-manager/CubeIngest.ts +144 -0
- package/src/graph-manager/CubeIngestCatalog.ts +169 -0
- package/src/graph-manager/CubeLakehouseEnvironment.ts +27 -0
- package/src/graph-manager/CubeProject.ts +117 -0
- package/src/graph-manager/CubeProjectCatalog.ts +40 -0
- package/src/graph-manager/protocol/pure/CubeEngineBuilder.ts +145 -1
- package/src/graph-manager/protocol/pure/v1/V1_CubeDataProductArtifact.ts +251 -0
- package/src/graph-manager/protocol/pure/v1/V1_CubeDataProductModel.ts +101 -0
- package/src/graph-manager/protocol/pure/v1/V1_CubeDirectConnection.ts +339 -0
- package/src/graph-manager/protocol/pure/v1/V1_CubeDirectModel.ts +151 -0
- package/src/graph-manager/protocol/pure/v1/V1_CubeEngineErrors.ts +45 -4
- package/src/graph-manager/protocol/pure/v1/V1_CubeExpression.ts +89 -0
- package/src/graph-manager/protocol/pure/v1/V1_CubeIngestDefinition.ts +201 -0
- package/src/graph-manager/protocol/pure/v1/V1_CubeIngestModel.ts +183 -0
- package/src/graph-manager/protocol/pure/v1/V1_CubeLakehouseEnvironmentResolver.ts +141 -0
- package/src/graph-manager/protocol/pure/v1/V1_CubeLambdaSerializer.ts +84 -4
- package/src/graph-manager/protocol/pure/v1/V1_CubeSchemaExploration.ts +361 -0
- package/src/graph-manager/protocol/pure/v1/V1_LegendCubeConnectionExplorer.ts +116 -0
- package/src/graph-manager/protocol/pure/v1/V1_LegendCubeDataProductCatalog.ts +744 -0
- package/src/graph-manager/protocol/pure/v1/V1_LegendCubeEngine.ts +967 -24
- package/src/graph-manager/protocol/pure/v1/V1_LegendCubeIngestCatalog.ts +459 -0
- package/src/graph-manager/protocol/pure/v1/V1_LegendCubeProjectCatalog.ts +147 -0
- package/src/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeConnectionExplorerTestUtils.ts +61 -0
- package/src/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductFixtures.ts +337 -0
- package/src/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeDataProductSearchFixtures.ts +206 -0
- package/src/graph-manager/protocol/pure/v1/__test-utils__/V1_CubeEngineTestUtils.ts +42 -1
- package/src/index.ts +20 -0
- package/src/stores/CubeAddPlacement.ts +67 -0
- package/src/stores/CubeDataProductRecheck.ts +93 -0
- package/src/stores/CubeDataProductRuntimeState.ts +256 -0
- package/src/stores/CubeDataProductWarehouse.ts +40 -0
- package/src/stores/CubeEditorState.ts +511 -63
- package/src/stores/CubeEntrySource.ts +278 -0
- package/src/stores/CubeExamples.ts +457 -0
- package/src/stores/CubeExamplesState.ts +108 -0
- package/src/stores/CubeExecutionState.ts +24 -5
- package/src/stores/CubeExtendTyping.ts +291 -0
- package/src/stores/CubeGridQuickActions.ts +69 -14
- package/src/stores/CubeHost.ts +71 -1
- package/src/stores/CubeIngestRecheck.ts +92 -0
- package/src/stores/CubeNodeEditorState.ts +278 -9
- package/src/stores/CubeShowPureState.ts +7 -4
- package/src/stores/CubeSourcePickerState.ts +160 -330
- package/src/stores/CubeSpecTransferState.ts +2 -2
- package/src/stores/LocalModelCatalog.ts +22 -3
- package/src/stores/editors/CubeAggregationRows.ts +299 -0
- package/src/stores/editors/CubeConcatDraft.ts +49 -0
- package/src/stores/editors/CubeDifferenceDraft.ts +147 -0
- package/src/stores/editors/CubeExtendDraft.ts +532 -0
- package/src/stores/editors/CubeGroupDraft.ts +145 -0
- package/src/stores/editors/CubeJoinDraft.ts +130 -41
- package/src/stores/editors/CubeJoinKeyPairs.ts +68 -0
- package/src/stores/editors/CubeNodeDraft.ts +26 -6
- package/src/stores/editors/CubeNodeDraftRegistry.ts +25 -0
- package/src/stores/editors/CubePartitionDraft.ts +214 -0
- package/src/stores/editors/CubeSortDraft.ts +17 -54
- package/src/stores/editors/CubeSortRows.ts +84 -0
- package/src/stores/fixtures/CubeNorthwindModel.ts +103 -88
- package/src/stores/fixtures/CubeSampleSql.ts +85 -0
- package/src/stores/fixtures/CubeSportsModel.ts +182 -0
- package/src/stores/fixtures/CubeTradesModel.ts +241 -0
- package/src/stores/source-picker/CubeCsvSetupSql.ts +444 -0
- package/src/stores/source-picker/CubeDataProductTabState.ts +839 -0
- package/src/stores/source-picker/CubeDirectConnectionTabState.ts +647 -0
- package/src/stores/source-picker/CubeIngestTabState.ts +551 -0
- package/src/stores/source-picker/CubeInlineModelTabState.ts +448 -0
- package/src/stores/source-picker/CubeProjectTabState.ts +218 -0
- package/src/stores/source-picker/CubeSourcePickerTab.ts +50 -0
- package/tsconfig.json +89 -0
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2026-present, Goldman Sachs
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
import { CubeDataProductEnvironmentType } from './CubeDataProduct.js';
|
|
17
|
+
// An ingest cube (PLAN §6.7) saves, as its model, what Data Cube's producer
|
|
18
|
+
// source picks before a definition: the class (production or production
|
|
19
|
+
// parallel), the producer deployment and, once picked, the warehouse. Its
|
|
20
|
+
// sources save each definition's URN, path and data set. The engine's
|
|
21
|
+
// implementation builds, for each call, a model of the definitions the call
|
|
22
|
+
// reads, as the ingest server serves them, and for a run a lakehouse runtime
|
|
23
|
+
// at a fixed path, which the saved runtime names
|
|
24
|
+
export const CUBE_INGEST_MODEL_TYPE = 'cubeIngest';
|
|
25
|
+
export const CUBE_INGEST_RUNTIME_PATH = 'cube::ingest::Runtime';
|
|
26
|
+
const ENVIRONMENT_TYPES = Object.values(CubeDataProductEnvironmentType);
|
|
27
|
+
const isNonEmptyString = (value) => typeof value === 'string' && value.length > 0;
|
|
28
|
+
export const createCubeIngestModel = (settings) => ({
|
|
29
|
+
_type: CUBE_INGEST_MODEL_TYPE,
|
|
30
|
+
environmentType: settings.environmentType,
|
|
31
|
+
producerDeploymentId: settings.producerDeploymentId,
|
|
32
|
+
...(settings.warehouse !== undefined
|
|
33
|
+
? { warehouse: settings.warehouse }
|
|
34
|
+
: {}),
|
|
35
|
+
});
|
|
36
|
+
export const isCubeIngestModel = (model) => model._type === CUBE_INGEST_MODEL_TYPE;
|
|
37
|
+
/** The same model, running on another warehouse */
|
|
38
|
+
export const withCubeIngestWarehouse = (model, warehouse) => ({ ...model, warehouse });
|
|
39
|
+
/** What's wrong with an ingest model, e.g. one saved by a later Cube: nothing for one Cube can use */
|
|
40
|
+
export const checkCubeIngestModel = (model) => {
|
|
41
|
+
const problems = [];
|
|
42
|
+
if (!ENVIRONMENT_TYPES.includes(model.environmentType)) {
|
|
43
|
+
problems.push(`Cube doesn't know the environment type "${String(model.environmentType)}"`);
|
|
44
|
+
}
|
|
45
|
+
if (typeof model.producerDeploymentId !== 'string' ||
|
|
46
|
+
!/^\d+$/u.test(model.producerDeploymentId)) {
|
|
47
|
+
problems.push(`The cube's producer deployment must be a deployment id`);
|
|
48
|
+
}
|
|
49
|
+
if (model.warehouse !== undefined && !isNonEmptyString(model.warehouse)) {
|
|
50
|
+
problems.push(`The cube's warehouse must be a name`);
|
|
51
|
+
}
|
|
52
|
+
return problems;
|
|
53
|
+
};
|
|
54
|
+
/** An ingest model's settings, when Cube can use it */
|
|
55
|
+
export const getCubeIngestSettings = (model) => isCubeIngestModel(model) && !checkCubeIngestModel(model).length
|
|
56
|
+
? {
|
|
57
|
+
environmentType: model.environmentType,
|
|
58
|
+
producerDeploymentId: model.producerDeploymentId,
|
|
59
|
+
warehouse: model.warehouse,
|
|
60
|
+
}
|
|
61
|
+
: undefined;
|
|
62
|
+
/** The class a URN's environment segment names */
|
|
63
|
+
const URN_ENVIRONMENT_TYPES = {
|
|
64
|
+
prod: CubeDataProductEnvironmentType.PRODUCTION,
|
|
65
|
+
'prod-parallel': CubeDataProductEnvironmentType.PRODUCTION_PARALLEL,
|
|
66
|
+
};
|
|
67
|
+
const SDLC_DEPLOYED_URN = /^urn:lakehouse:(?<environment>[^:]+):ingest:definition:alloy-git:(?<groupId>[^~]+)~(?<artifactId>[^~]+)~(?<definition>.+)$/u;
|
|
68
|
+
/**
|
|
69
|
+
* A deployed definition's URN, when it was deployed from SDLC
|
|
70
|
+
* (`urn:lakehouse:<prod|prod-parallel>:ingest:definition:alloy-git:<group>~<artifact>~<path>`);
|
|
71
|
+
* nothing for an ad hoc one (`rest-api:`), another class, or text that isn't one
|
|
72
|
+
*/
|
|
73
|
+
export const parseCubeIngestUrn = (urn) => {
|
|
74
|
+
const parts = SDLC_DEPLOYED_URN.exec(urn)?.groups;
|
|
75
|
+
const environment = parts?.environment;
|
|
76
|
+
const environmentType = environment && Object.hasOwn(URN_ENVIRONMENT_TYPES, environment)
|
|
77
|
+
? URN_ENVIRONMENT_TYPES[environment]
|
|
78
|
+
: undefined;
|
|
79
|
+
return parts && environmentType
|
|
80
|
+
? {
|
|
81
|
+
environmentType,
|
|
82
|
+
groupId: parts.groupId ?? '',
|
|
83
|
+
artifactId: parts.artifactId ?? '',
|
|
84
|
+
definition: parts.definition ?? '',
|
|
85
|
+
}
|
|
86
|
+
: undefined;
|
|
87
|
+
};
|
|
88
|
+
//# sourceMappingURL=CubeIngest.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CubeIngest.js","sourceRoot":"","sources":["../../src/graph-manager/CubeIngest.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2026-present, Goldman Sachs
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
import type { Schema } from '@finos/legend-cube';
|
|
17
|
+
import type { CubeDataProductEnvironmentType } from './CubeDataProduct.js';
|
|
18
|
+
import type { CubeEngineError, NodeId } from './CubeEngine.js';
|
|
19
|
+
/** A data set of a deployed ingest definition, as the definition declares it */
|
|
20
|
+
export declare class CubeIngestDataSet {
|
|
21
|
+
readonly name: string;
|
|
22
|
+
/** Its columns: the declared ones, then the milestoning ones of its write mode; none when they can't be read */
|
|
23
|
+
readonly schema: Schema | undefined;
|
|
24
|
+
/** Why it can't be picked, e.g. it is a materialized view; none when it can */
|
|
25
|
+
readonly disabledReason: string | undefined;
|
|
26
|
+
readonly primaryKey: readonly string[];
|
|
27
|
+
constructor(fields: {
|
|
28
|
+
name: string;
|
|
29
|
+
schema?: Schema | undefined;
|
|
30
|
+
disabledReason?: string | undefined;
|
|
31
|
+
primaryKey?: readonly string[];
|
|
32
|
+
});
|
|
33
|
+
get isPickable(): boolean;
|
|
34
|
+
}
|
|
35
|
+
/** The viewer's ingest environment for a class: shown in the Ingest tab, never saved */
|
|
36
|
+
export declare class CubeIngestEnvironment {
|
|
37
|
+
readonly environmentType: CubeDataProductEnvironmentType;
|
|
38
|
+
/** The environment's name, as the platform lists it */
|
|
39
|
+
readonly name: string;
|
|
40
|
+
/** The environment a run's lakehouse runtime names */
|
|
41
|
+
readonly runtimeEnvironment: string;
|
|
42
|
+
constructor(fields: {
|
|
43
|
+
environmentType: CubeDataProductEnvironmentType;
|
|
44
|
+
name: string;
|
|
45
|
+
runtimeEnvironment: string;
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
/** A producer deployment of the viewer's ingest environment */
|
|
49
|
+
export declare class CubeIngestProducer {
|
|
50
|
+
/** Its deployment id, as text */
|
|
51
|
+
readonly deploymentId: string;
|
|
52
|
+
readonly urn: string;
|
|
53
|
+
constructor(fields: {
|
|
54
|
+
deploymentId: string;
|
|
55
|
+
urn: string;
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
/** A definition a producer deployment deployed from SDLC */
|
|
59
|
+
export declare class CubeIngestDefinitionCandidate {
|
|
60
|
+
readonly urn: string;
|
|
61
|
+
/** The IngestDefinition element's path */
|
|
62
|
+
readonly definition: string;
|
|
63
|
+
readonly groupId: string;
|
|
64
|
+
readonly artifactId: string;
|
|
65
|
+
constructor(fields: {
|
|
66
|
+
urn: string;
|
|
67
|
+
definition: string;
|
|
68
|
+
groupId: string;
|
|
69
|
+
artifactId: string;
|
|
70
|
+
});
|
|
71
|
+
/** The definition's element name: the last segment of its path */
|
|
72
|
+
get name(): string;
|
|
73
|
+
}
|
|
74
|
+
/** A producer deployment's definitions: those Cube reads, and how many it left out */
|
|
75
|
+
export interface CubeIngestDefinitionList {
|
|
76
|
+
readonly candidates: readonly CubeIngestDefinitionCandidate[];
|
|
77
|
+
/** Definitions not deployed from SDLC, or deployed to another class */
|
|
78
|
+
readonly droppedCount: number;
|
|
79
|
+
}
|
|
80
|
+
/** Where a saved ingest source's data set is */
|
|
81
|
+
export interface CubeIngestDataSetLocation {
|
|
82
|
+
readonly ingestDefinitionUrn: string;
|
|
83
|
+
readonly ingestDefinition: string;
|
|
84
|
+
readonly dataSet: string;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* The deployed ingest definitions, for the source dialog and for re-checking
|
|
88
|
+
* saved sources: its own port, so hosts without them need none. Calls fail
|
|
89
|
+
* with a `CubeEngineError`: with no node for listing and describing, with
|
|
90
|
+
* the node's id for schemas
|
|
91
|
+
*/
|
|
92
|
+
export interface CubeIngestCatalog {
|
|
93
|
+
/** The classes the host lists, the default first */
|
|
94
|
+
readonly environmentTypes: readonly CubeDataProductEnvironmentType[];
|
|
95
|
+
/** The viewer's ingest environment for a class */
|
|
96
|
+
resolveEnvironment(environmentType: CubeDataProductEnvironmentType): Promise<CubeIngestEnvironment>;
|
|
97
|
+
/** The producer deployments of the viewer's ingest environment for a class */
|
|
98
|
+
listProducers(environmentType: CubeDataProductEnvironmentType): Promise<readonly CubeIngestProducer[]>;
|
|
99
|
+
/** A producer deployment's SDLC-deployed definitions of the class */
|
|
100
|
+
listDefinitions(environmentType: CubeDataProductEnvironmentType, producerDeploymentId: string): Promise<CubeIngestDefinitionList>;
|
|
101
|
+
/**
|
|
102
|
+
* A definition's data sets, typed from what it declares. `fresh` reads the
|
|
103
|
+
* definition again rather than what this page visit read
|
|
104
|
+
*/
|
|
105
|
+
describe(urn: string, environmentType: CubeDataProductEnvironmentType, options?: {
|
|
106
|
+
readonly fresh?: boolean | undefined;
|
|
107
|
+
}): Promise<readonly CubeIngestDataSet[]>;
|
|
108
|
+
/**
|
|
109
|
+
* The schema of each saved source, from its definition as deployed: one
|
|
110
|
+
* entry per key, failures included. `fresh` reads the definitions again
|
|
111
|
+
*/
|
|
112
|
+
resolveSchemas(environmentType: CubeDataProductEnvironmentType, sources: ReadonlyMap<NodeId, CubeIngestDataSetLocation>, options?: {
|
|
113
|
+
readonly fresh?: boolean | undefined;
|
|
114
|
+
}): Promise<Map<NodeId, Schema | CubeEngineError>>;
|
|
115
|
+
}
|
|
116
|
+
//# sourceMappingURL=CubeIngestCatalog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CubeIngestCatalog.d.ts","sourceRoot":"","sources":["../../src/graph-manager/CubeIngestCatalog.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,80 @@
|
|
|
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
|
+
// The deployed ingest definitions of a host's lakehouse (PLAN §6.7), as Data
|
|
17
|
+
// Cube's producer source lists them: the viewer's ingest environment for a
|
|
18
|
+
// class, its producer deployments, a deployment's SDLC-deployed definitions,
|
|
19
|
+
// and a definition's data sets
|
|
20
|
+
/** A data set of a deployed ingest definition, as the definition declares it */
|
|
21
|
+
export class CubeIngestDataSet {
|
|
22
|
+
name;
|
|
23
|
+
/** Its columns: the declared ones, then the milestoning ones of its write mode; none when they can't be read */
|
|
24
|
+
schema;
|
|
25
|
+
/** Why it can't be picked, e.g. it is a materialized view; none when it can */
|
|
26
|
+
disabledReason;
|
|
27
|
+
primaryKey;
|
|
28
|
+
constructor(fields) {
|
|
29
|
+
this.name = fields.name;
|
|
30
|
+
this.schema = fields.schema;
|
|
31
|
+
this.disabledReason = fields.disabledReason;
|
|
32
|
+
this.primaryKey = fields.primaryKey ?? [];
|
|
33
|
+
}
|
|
34
|
+
get isPickable() {
|
|
35
|
+
return this.disabledReason === undefined && this.schema !== undefined;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
/** The viewer's ingest environment for a class: shown in the Ingest tab, never saved */
|
|
39
|
+
export class CubeIngestEnvironment {
|
|
40
|
+
environmentType;
|
|
41
|
+
/** The environment's name, as the platform lists it */
|
|
42
|
+
name;
|
|
43
|
+
/** The environment a run's lakehouse runtime names */
|
|
44
|
+
runtimeEnvironment;
|
|
45
|
+
constructor(fields) {
|
|
46
|
+
this.environmentType = fields.environmentType;
|
|
47
|
+
this.name = fields.name;
|
|
48
|
+
this.runtimeEnvironment = fields.runtimeEnvironment;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
/** A producer deployment of the viewer's ingest environment */
|
|
52
|
+
export class CubeIngestProducer {
|
|
53
|
+
/** Its deployment id, as text */
|
|
54
|
+
deploymentId;
|
|
55
|
+
urn;
|
|
56
|
+
constructor(fields) {
|
|
57
|
+
this.deploymentId = fields.deploymentId;
|
|
58
|
+
this.urn = fields.urn;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
/** A definition a producer deployment deployed from SDLC */
|
|
62
|
+
export class CubeIngestDefinitionCandidate {
|
|
63
|
+
urn;
|
|
64
|
+
/** The IngestDefinition element's path */
|
|
65
|
+
definition;
|
|
66
|
+
groupId;
|
|
67
|
+
artifactId;
|
|
68
|
+
constructor(fields) {
|
|
69
|
+
this.urn = fields.urn;
|
|
70
|
+
this.definition = fields.definition;
|
|
71
|
+
this.groupId = fields.groupId;
|
|
72
|
+
this.artifactId = fields.artifactId;
|
|
73
|
+
}
|
|
74
|
+
/** The definition's element name: the last segment of its path */
|
|
75
|
+
get name() {
|
|
76
|
+
const index = this.definition.lastIndexOf('::');
|
|
77
|
+
return index < 0 ? this.definition : this.definition.slice(index + 2);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=CubeIngestCatalog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CubeIngestCatalog.js","sourceRoot":"","sources":["../../src/graph-manager/CubeIngestCatalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAMH,6EAA6E;AAC7E,2EAA2E;AAC3E,6EAA6E;AAC7E,+BAA+B;AAE/B,gFAAgF;AAChF,MAAM,OAAO,iBAAiB;IACnB,IAAI,CAAS;IACtB,gHAAgH;IACvG,MAAM,CAAqB;IACpC,+EAA+E;IACtE,cAAc,CAAqB;IACnC,UAAU,CAAoB;IAEvC,YAAY,MAKX;QACC,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;QAC5C,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;IAC5C,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,cAAc,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC;IACxE,CAAC;CACF;AAED,wFAAwF;AACxF,MAAM,OAAO,qBAAqB;IACvB,eAAe,CAAiC;IACzD,uDAAuD;IAC9C,IAAI,CAAS;IACtB,sDAAsD;IAC7C,kBAAkB,CAAS;IAEpC,YAAY,MAIX;QACC,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;QAC9C,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC,kBAAkB,CAAC;IACtD,CAAC;CACF;AAED,+DAA+D;AAC/D,MAAM,OAAO,kBAAkB;IAC7B,iCAAiC;IACxB,YAAY,CAAS;IACrB,GAAG,CAAS;IAErB,YAAY,MAA6C;QACvD,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QACxC,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;IACxB,CAAC;CACF;AAED,4DAA4D;AAC5D,MAAM,OAAO,6BAA6B;IAC/B,GAAG,CAAS;IACrB,0CAA0C;IACjC,UAAU,CAAS;IACnB,OAAO,CAAS;IAChB,UAAU,CAAS;IAE5B,YAAY,MAKX;QACC,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;QACtB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACpC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;IACtC,CAAC;IAED,kEAAkE;IAClE,IAAI,IAAI;QACN,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAChD,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IACxE,CAAC;CACF"}
|
|
@@ -0,0 +1,26 @@
|
|
|
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 { CubeDataProductProject } from './CubeDataProduct.js';
|
|
17
|
+
/**
|
|
18
|
+
* The viewer's lakehouse environment (PLAN §6.8), which a data product run
|
|
19
|
+
* names in its lakehouse runtime: its own port, so hosts without a lakehouse
|
|
20
|
+
* need none. Fails with a `CubeEngineError` when the viewer has none
|
|
21
|
+
*/
|
|
22
|
+
export interface CubeLakehouseEnvironment {
|
|
23
|
+
/** The viewer's environment for the project's class, e.g. `env`, or `env-pp` for production-parallel */
|
|
24
|
+
resolveEnvironment(project: CubeDataProductProject): Promise<string>;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=CubeLakehouseEnvironment.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CubeLakehouseEnvironment.d.ts","sourceRoot":"","sources":["../../src/graph-manager/CubeLakehouseEnvironment.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAEnE;;;;GAIG;AACH,MAAM,WAAW,wBAAwB;IACvC,wGAAwG;IACxG,kBAAkB,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACtE"}
|
|
@@ -0,0 +1,17 @@
|
|
|
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
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=CubeLakehouseEnvironment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CubeLakehouseEnvironment.js","sourceRoot":"","sources":["../../src/graph-manager/CubeLakehouseEnvironment.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG"}
|
|
@@ -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 { ModelContext } from '@finos/legend-cube';
|
|
17
|
+
/** The engine's model kind of a project pointer */
|
|
18
|
+
export declare const CUBE_PROJECT_MODEL_TYPE = "pointer";
|
|
19
|
+
/** A published project at one version */
|
|
20
|
+
export interface CubeProjectCoordinates {
|
|
21
|
+
readonly groupId: string;
|
|
22
|
+
readonly artifactId: string;
|
|
23
|
+
readonly versionId: string;
|
|
24
|
+
}
|
|
25
|
+
/** Whether a version can move: a SNAPSHOT, or the depot's `latest` and `HEAD` aliases */
|
|
26
|
+
export declare const isCubeMovingProjectVersion: (versionId: string) => boolean;
|
|
27
|
+
/** The model of a cube on a project's Database */
|
|
28
|
+
export declare const createCubeProjectModel: (project: CubeProjectCoordinates) => ModelContext;
|
|
29
|
+
/** Whether the model is a project pointer, whether or not Cube can run it */
|
|
30
|
+
export declare const isCubeProjectModel: (model: ModelContext) => boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Why Cube can't run a project model, in words a user can act on; none when
|
|
33
|
+
* it can. Only released versions are read (user, 2026-10-09): a version that
|
|
34
|
+
* moves would change a saved cube's tables under it
|
|
35
|
+
*/
|
|
36
|
+
export declare const checkCubeProjectModel: (model: ModelContext) => readonly string[];
|
|
37
|
+
/** The project of a project model Cube can run; undefined for any other model */
|
|
38
|
+
export declare const getCubeProjectCoordinates: (model: ModelContext) => CubeProjectCoordinates | undefined;
|
|
39
|
+
/** The project as people read it: `group:artifact` at its version */
|
|
40
|
+
export declare const formatCubeProject: (project: CubeProjectCoordinates) => string;
|
|
41
|
+
//# sourceMappingURL=CubeProject.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CubeProject.d.ts","sourceRoot":"","sources":["../../src/graph-manager/CubeProject.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAOvD,mDAAmD;AACnD,eAAO,MAAM,uBAAuB,YAAY,CAAC;AAGjD,yCAAyC;AACzC,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAKD,yFAAyF;AACzF,eAAO,MAAM,0BAA0B,GAAI,WAAW,MAAM,KAAG,OAGzC,CAAC;AAEvB,kDAAkD;AAClD,eAAO,MAAM,sBAAsB,GACjC,SAAS,sBAAsB,KAC9B,YAU4B,CAAC;AAWhC,6EAA6E;AAC7E,eAAO,MAAM,kBAAkB,GAAI,OAAO,YAAY,KAAG,OAEX,CAAC;AAE/C;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,GAChC,OAAO,YAAY,KAClB,SAAS,MAAM,EAkBjB,CAAC;AAEF,iFAAiF;AACjF,eAAO,MAAM,yBAAyB,GACpC,OAAO,YAAY,KAClB,sBAAsB,GAAG,SAU3B,CAAC;AAEF,qEAAqE;AACrE,eAAO,MAAM,iBAAiB,GAAI,SAAS,sBAAsB,KAAG,MACH,CAAC"}
|
|
@@ -0,0 +1,84 @@
|
|
|
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 cube on a published project's Database (PLAN §6.2.2, §6.3) saves the
|
|
17
|
+
// project at one released version as its model: the engine's alloy pointer,
|
|
18
|
+
// sent to the engine as saved, which fetches the project from its depot. The
|
|
19
|
+
// saved runtime is one of the project's own.
|
|
20
|
+
/** The engine's model kind of a project pointer */
|
|
21
|
+
export const CUBE_PROJECT_MODEL_TYPE = 'pointer';
|
|
22
|
+
const ALLOY_SDLC_TYPE = 'alloy';
|
|
23
|
+
const isNonEmptyString = (value) => typeof value === 'string' && value.length > 0;
|
|
24
|
+
/** Whether a version can move: a SNAPSHOT, or the depot's `latest` and `HEAD` aliases */
|
|
25
|
+
export const isCubeMovingProjectVersion = (versionId) => versionId.endsWith('SNAPSHOT') ||
|
|
26
|
+
versionId === 'latest' ||
|
|
27
|
+
versionId === 'HEAD';
|
|
28
|
+
/** The model of a cube on a project's Database */
|
|
29
|
+
export const createCubeProjectModel = (project) => ({
|
|
30
|
+
_type: CUBE_PROJECT_MODEL_TYPE,
|
|
31
|
+
sdlcInfo: {
|
|
32
|
+
_type: ALLOY_SDLC_TYPE,
|
|
33
|
+
groupId: project.groupId,
|
|
34
|
+
artifactId: project.artifactId,
|
|
35
|
+
version: project.versionId,
|
|
36
|
+
packageableElementPointers: [],
|
|
37
|
+
},
|
|
38
|
+
});
|
|
39
|
+
const sdlcInfoOf = (model) => {
|
|
40
|
+
const sdlcInfo = model.sdlcInfo;
|
|
41
|
+
return sdlcInfo && typeof sdlcInfo === 'object' && !Array.isArray(sdlcInfo)
|
|
42
|
+
? sdlcInfo
|
|
43
|
+
: undefined;
|
|
44
|
+
};
|
|
45
|
+
/** Whether the model is a project pointer, whether or not Cube can run it */
|
|
46
|
+
export const isCubeProjectModel = (model) => model._type === CUBE_PROJECT_MODEL_TYPE &&
|
|
47
|
+
sdlcInfoOf(model)?._type === ALLOY_SDLC_TYPE;
|
|
48
|
+
/**
|
|
49
|
+
* Why Cube can't run a project model, in words a user can act on; none when
|
|
50
|
+
* it can. Only released versions are read (user, 2026-10-09): a version that
|
|
51
|
+
* moves would change a saved cube's tables under it
|
|
52
|
+
*/
|
|
53
|
+
export const checkCubeProjectModel = (model) => {
|
|
54
|
+
const sdlcInfo = sdlcInfoOf(model);
|
|
55
|
+
if (!sdlcInfo) {
|
|
56
|
+
return [`The cube's project has no coordinates`];
|
|
57
|
+
}
|
|
58
|
+
const problems = [];
|
|
59
|
+
['groupId', 'artifactId', 'version'].forEach((key) => {
|
|
60
|
+
if (!isNonEmptyString(sdlcInfo[key])) {
|
|
61
|
+
problems.push(`The cube's project has no ${key}`);
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
const version = sdlcInfo.version;
|
|
65
|
+
if (isNonEmptyString(version) && isCubeMovingProjectVersion(version)) {
|
|
66
|
+
problems.push(`Cube reads released versions only, not ${version}: pick a released version`);
|
|
67
|
+
}
|
|
68
|
+
return problems;
|
|
69
|
+
};
|
|
70
|
+
/** The project of a project model Cube can run; undefined for any other model */
|
|
71
|
+
export const getCubeProjectCoordinates = (model) => {
|
|
72
|
+
if (!isCubeProjectModel(model) || checkCubeProjectModel(model).length) {
|
|
73
|
+
return undefined;
|
|
74
|
+
}
|
|
75
|
+
const sdlcInfo = sdlcInfoOf(model);
|
|
76
|
+
return {
|
|
77
|
+
groupId: sdlcInfo.groupId,
|
|
78
|
+
artifactId: sdlcInfo.artifactId,
|
|
79
|
+
versionId: sdlcInfo.version,
|
|
80
|
+
};
|
|
81
|
+
};
|
|
82
|
+
/** The project as people read it: `group:artifact` at its version */
|
|
83
|
+
export const formatCubeProject = (project) => `${project.groupId}:${project.artifactId} ${project.versionId}`;
|
|
84
|
+
//# sourceMappingURL=CubeProject.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CubeProject.js","sourceRoot":"","sources":["../../src/graph-manager/CubeProject.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
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 { CubeModelOutline } from './CubeEngine.js';
|
|
17
|
+
import type { CubeProjectCoordinates } from './CubeProject.js';
|
|
18
|
+
/** A published project, without a version */
|
|
19
|
+
export interface CubeProjectSummary {
|
|
20
|
+
readonly groupId: string;
|
|
21
|
+
readonly artifactId: string;
|
|
22
|
+
}
|
|
23
|
+
export interface CubeProjectCatalog {
|
|
24
|
+
/** Every published project, by group and artifact */
|
|
25
|
+
listProjects(): Promise<readonly CubeProjectSummary[]>;
|
|
26
|
+
/** The project's released versions, newest first: never a SNAPSHOT or an alias */
|
|
27
|
+
listVersions(project: CubeProjectSummary): Promise<readonly string[]>;
|
|
28
|
+
/**
|
|
29
|
+
* The project's own Databases at the version, and the runtimes of the
|
|
30
|
+
* project and its dependencies; a dependency's Databases are not offered
|
|
31
|
+
* (user, 2026-10-09)
|
|
32
|
+
*/
|
|
33
|
+
loadOutline(project: CubeProjectCoordinates): Promise<CubeModelOutline>;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=CubeProjectCatalog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CubeProjectCatalog.d.ts","sourceRoot":"","sources":["../../src/graph-manager/CubeProjectCatalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAK/D,6CAA6C;AAC7C,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,kBAAkB;IACjC,qDAAqD;IACrD,YAAY,IAAI,OAAO,CAAC,SAAS,kBAAkB,EAAE,CAAC,CAAC;IACvD,kFAAkF;IAClF,YAAY,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAAC;IACtE;;;;OAIG;IACH,WAAW,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;CACzE"}
|
|
@@ -0,0 +1,17 @@
|
|
|
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
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=CubeProjectCatalog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CubeProjectCatalog.js","sourceRoot":"","sources":["../../src/graph-manager/CubeProjectCatalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG"}
|
|
@@ -13,8 +13,16 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
+
import type { DepotServerClient } from '@finos/legend-server-depot';
|
|
17
|
+
import type { LakehouseContractServerClient, LakehouseIngestServerClient, LakehousePlatformServerClient } from '@finos/legend-server-lakehouse';
|
|
18
|
+
import type { MarketplaceServerClient } from '@finos/legend-server-marketplace';
|
|
16
19
|
import type { TracerService } from '@finos/legend-shared';
|
|
20
|
+
import type { CubeConnectionExplorer } from '../../CubeConnectionExplorer.js';
|
|
21
|
+
import type { CubeDataProductCatalog, CubeMarketplaceLinkTarget } from '../../CubeDataProductCatalog.js';
|
|
17
22
|
import type { CubeEngine } from '../../CubeEngine.js';
|
|
23
|
+
import type { CubeIngestCatalog } from '../../CubeIngestCatalog.js';
|
|
24
|
+
import type { CubeLakehouseEnvironment } from '../../CubeLakehouseEnvironment.js';
|
|
25
|
+
import type { CubeProjectCatalog } from '../../CubeProjectCatalog.js';
|
|
18
26
|
import { type V1_CubeEngineConfig } from './v1/V1_LegendCubeEngine.js';
|
|
19
27
|
/** The engine client's configuration, as the host gives it (e.g. Legend Query's engine server URL) */
|
|
20
28
|
export type CubeEngineConfig = V1_CubeEngineConfig;
|
|
@@ -22,5 +30,59 @@ export type CubeEngineConfig = V1_CubeEngineConfig;
|
|
|
22
30
|
* The Cube engine of a host (PLAN §3.2): the only place that builds the
|
|
23
31
|
* Legend implementation, so hosts never name a V1_* symbol
|
|
24
32
|
*/
|
|
25
|
-
export declare const buildCubeEngine: (config: CubeEngineConfig, tracerService: TracerService
|
|
33
|
+
export declare const buildCubeEngine: (config: CubeEngineConfig, tracerService: TracerService, options?: {
|
|
34
|
+
/** Data product cubes run only with one */
|
|
35
|
+
lakehouseEnvironment?: CubeLakehouseEnvironment | undefined;
|
|
36
|
+
/** The warehouse the viewer last picked, for a data product cube without its own */
|
|
37
|
+
getRememberedWarehouse?: (() => string | undefined) | undefined;
|
|
38
|
+
/** Ingest cubes run only with one, built by `buildCubeIngestCatalog` */
|
|
39
|
+
ingestCatalog?: CubeIngestCatalog | undefined;
|
|
40
|
+
}) => CubeEngine;
|
|
41
|
+
/**
|
|
42
|
+
* The connection explorer of a host that offers direct connections (PLAN
|
|
43
|
+
* §6.8), over the same engine as its Cube engine
|
|
44
|
+
*/
|
|
45
|
+
export declare const buildCubeConnectionExplorer: (config: CubeEngineConfig, tracerService: TracerService) => CubeConnectionExplorer;
|
|
46
|
+
/** What a host gives Cube to read its deployed data products (PLAN §6.8) */
|
|
47
|
+
export interface CubeLakehouseServices {
|
|
48
|
+
readonly contractServerClient: LakehouseContractServerClient;
|
|
49
|
+
readonly depotServerClient: DepotServerClient;
|
|
50
|
+
readonly getAccessToken: () => string | undefined;
|
|
51
|
+
/** The viewer, whose lakehouse environment data product runs use */
|
|
52
|
+
readonly getCurrentUser: () => string;
|
|
53
|
+
/** The environment the host remembers for the viewer, used before their entitlements' first one */
|
|
54
|
+
readonly getPreferredEnvironment?: (() => string | undefined) | undefined;
|
|
55
|
+
/** The marketplace's search API: with it, the source dialog searches there, never reading the lakehouse's whole list */
|
|
56
|
+
readonly marketplaceServerClient?: MarketplaceServerClient | undefined;
|
|
57
|
+
/** A deployed data product's page in the host's marketplace; none when the host has no marketplace */
|
|
58
|
+
readonly getMarketplaceLink?: ((target: CubeMarketplaceLinkTarget) => string | undefined) | undefined;
|
|
59
|
+
/**
|
|
60
|
+
* The stereotype the host's marketplace marks access point groups open to
|
|
61
|
+
* everyone with; without it, a group with no contract shows no access
|
|
62
|
+
*/
|
|
63
|
+
readonly enterpriseStereotype?: {
|
|
64
|
+
readonly profile: string;
|
|
65
|
+
readonly value: string;
|
|
66
|
+
} | undefined;
|
|
67
|
+
/** The lakehouse platform, whose ingest environments the Ingest tab reads (PLAN §6.7) */
|
|
68
|
+
readonly platformServerClient?: LakehousePlatformServerClient | undefined;
|
|
69
|
+
/** A client for the ingest servers the platform names: each call names its server */
|
|
70
|
+
readonly ingestServerClient?: LakehouseIngestServerClient | undefined;
|
|
71
|
+
}
|
|
72
|
+
/** The deployed data products of a host with a lakehouse and a depot */
|
|
73
|
+
export declare const buildCubeDataProductCatalog: (services: CubeLakehouseServices) => CubeDataProductCatalog;
|
|
74
|
+
/**
|
|
75
|
+
* The published projects a cube reads Databases from (PLAN §6.3), through
|
|
76
|
+
* the host's depot. It reads nothing until the source dialog's Project tab
|
|
77
|
+
* asks
|
|
78
|
+
*/
|
|
79
|
+
export declare const buildCubeProjectCatalog: (depotServerClient: DepotServerClient) => CubeProjectCatalog;
|
|
80
|
+
/** The viewer's lakehouse environment, which the engine needs to run data product cubes */
|
|
81
|
+
export declare const buildCubeLakehouseEnvironment: (services: CubeLakehouseServices) => CubeLakehouseEnvironment;
|
|
82
|
+
/**
|
|
83
|
+
* The deployed ingest definitions of a host with a lakehouse platform (PLAN
|
|
84
|
+
* §6.7), or none without one. It parses definitions with the engine Cube
|
|
85
|
+
* uses; pass it to `buildCubeEngine` too, so ingest cubes run
|
|
86
|
+
*/
|
|
87
|
+
export declare const buildCubeIngestCatalog: (config: CubeEngineConfig, tracerService: TracerService, services: CubeLakehouseServices) => CubeIngestCatalog | undefined;
|
|
26
88
|
//# sourceMappingURL=CubeEngineBuilder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CubeEngineBuilder.d.ts","sourceRoot":"","sources":["../../../../src/graph-manager/protocol/pure/CubeEngineBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,6BAA6B,CAAC;AAErC,sGAAsG;AACtG,MAAM,MAAM,gBAAgB,GAAG,mBAAmB,CAAC;AAEnD;;;GAGG;AACH,eAAO,MAAM,eAAe,GAC1B,QAAQ,gBAAgB,EACxB,eAAe,aAAa,KAC3B,
|
|
1
|
+
{"version":3,"file":"CubeEngineBuilder.d.ts","sourceRoot":"","sources":["../../../../src/graph-manager/protocol/pure/CubeEngineBuilder.ts"],"names":[],"mappings":"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"}
|