@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,167 @@
|
|
|
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, type CubeDataProductProject } from './CubeDataProduct.js';
|
|
18
|
+
import type { CubeEngineError, CubeResultValue, NodeId } from './CubeEngine.js';
|
|
19
|
+
/** A deployed data product the catalog lists, at the version it was deployed from */
|
|
20
|
+
export declare class CubeDataProductCandidate {
|
|
21
|
+
/** The catalog's id for the product, which its links use */
|
|
22
|
+
readonly id: string;
|
|
23
|
+
/** The deployment, as text */
|
|
24
|
+
readonly deploymentId: string;
|
|
25
|
+
/** The path of its DataProduct element */
|
|
26
|
+
readonly dataProductPath: string;
|
|
27
|
+
readonly title: string;
|
|
28
|
+
readonly description: string | undefined;
|
|
29
|
+
readonly groupId: string;
|
|
30
|
+
readonly artifactId: string;
|
|
31
|
+
/** The version it was deployed from, as the catalog gave it, snapshots included */
|
|
32
|
+
readonly versionId: string;
|
|
33
|
+
readonly environmentType: CubeDataProductEnvironmentType;
|
|
34
|
+
/** The producer's environment, for display */
|
|
35
|
+
readonly producerEnvironmentName: string | undefined;
|
|
36
|
+
constructor(fields: {
|
|
37
|
+
id: string;
|
|
38
|
+
deploymentId: string;
|
|
39
|
+
dataProductPath: string;
|
|
40
|
+
title: string;
|
|
41
|
+
description?: string | undefined;
|
|
42
|
+
groupId: string;
|
|
43
|
+
artifactId: string;
|
|
44
|
+
versionId: string;
|
|
45
|
+
environmentType: CubeDataProductEnvironmentType;
|
|
46
|
+
producerEnvironmentName?: string | undefined;
|
|
47
|
+
});
|
|
48
|
+
/** Whether it was deployed from a moving version, whose data may change under a cube */
|
|
49
|
+
get isSnapshot(): boolean;
|
|
50
|
+
}
|
|
51
|
+
/** An access point of a deployed product, as its artifact describes it */
|
|
52
|
+
export declare class CubeAccessPoint {
|
|
53
|
+
readonly id: string;
|
|
54
|
+
readonly title: string | undefined;
|
|
55
|
+
readonly description: string | undefined;
|
|
56
|
+
/** Its columns, as the artifact types them; none when it can't be read */
|
|
57
|
+
readonly schema: Schema | undefined;
|
|
58
|
+
/** Why it can't be picked, e.g. it takes parameters; none when it can */
|
|
59
|
+
readonly disabledReason: string | undefined;
|
|
60
|
+
/** A few rows the artifact holds, by the schema's columns */
|
|
61
|
+
readonly sampleRows: readonly (readonly CubeResultValue[])[];
|
|
62
|
+
constructor(fields: {
|
|
63
|
+
id: string;
|
|
64
|
+
title?: string | undefined;
|
|
65
|
+
description?: string | undefined;
|
|
66
|
+
schema?: Schema | undefined;
|
|
67
|
+
disabledReason?: string | undefined;
|
|
68
|
+
sampleRows?: readonly (readonly CubeResultValue[])[];
|
|
69
|
+
});
|
|
70
|
+
get isPickable(): boolean;
|
|
71
|
+
}
|
|
72
|
+
export declare class CubeAccessPointGroup {
|
|
73
|
+
readonly id: string;
|
|
74
|
+
readonly title: string | undefined;
|
|
75
|
+
readonly accessPoints: readonly CubeAccessPoint[];
|
|
76
|
+
/** Open to everyone in the organization, as the host's marketplace marks such groups */
|
|
77
|
+
readonly isEnterprise: boolean;
|
|
78
|
+
constructor(fields: {
|
|
79
|
+
id: string;
|
|
80
|
+
title?: string | undefined;
|
|
81
|
+
accessPoints: readonly CubeAccessPoint[];
|
|
82
|
+
isEnterprise?: boolean | undefined;
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* The viewer's access to an access point group, as the marketplace shows
|
|
87
|
+
* it: open to everyone, granted, on its way through approval, refused, or
|
|
88
|
+
* never asked for
|
|
89
|
+
*/
|
|
90
|
+
export declare enum CubeAccessPointGroupAccess {
|
|
91
|
+
ENTERPRISE = "ENTERPRISE",
|
|
92
|
+
APPROVED = "APPROVED",
|
|
93
|
+
SUBMITTED_FOR_APPROVALS = "SUBMITTED_FOR_APPROVALS",
|
|
94
|
+
PENDING_MANAGER_APPROVAL = "PENDING_MANAGER_APPROVAL",
|
|
95
|
+
PENDING_DATA_OWNER_APPROVAL = "PENDING_DATA_OWNER_APPROVAL",
|
|
96
|
+
DENIED = "DENIED",
|
|
97
|
+
NO_ACCESS = "NO_ACCESS"
|
|
98
|
+
}
|
|
99
|
+
/** A deployed product's access points, by group */
|
|
100
|
+
export declare class CubeDataProductDescription {
|
|
101
|
+
readonly candidate: CubeDataProductCandidate;
|
|
102
|
+
readonly groups: readonly CubeAccessPointGroup[];
|
|
103
|
+
constructor(candidate: CubeDataProductCandidate, groups: readonly CubeAccessPointGroup[]);
|
|
104
|
+
}
|
|
105
|
+
/** Where a saved source's access point is */
|
|
106
|
+
export interface CubeAccessPointLocation {
|
|
107
|
+
readonly dataProduct: string;
|
|
108
|
+
readonly accessPointGroup: string;
|
|
109
|
+
readonly accessPoint: string;
|
|
110
|
+
}
|
|
111
|
+
/** What a marketplace link points at */
|
|
112
|
+
export interface CubeMarketplaceLinkTarget {
|
|
113
|
+
readonly dataProductId: string;
|
|
114
|
+
readonly deploymentId: string;
|
|
115
|
+
readonly environmentType: CubeDataProductEnvironmentType;
|
|
116
|
+
readonly accessPointGroup?: string | undefined;
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* The deployed data products, for the source dialog and for re-checking
|
|
120
|
+
* saved sources: its own port, beside the `CubeEngine`, so hosts without
|
|
121
|
+
* data products need neither. Calls fail with a `CubeEngineError`: with no
|
|
122
|
+
* node for listing and describing, with the node's id for schemas
|
|
123
|
+
*/
|
|
124
|
+
export interface CubeDataProductCatalog {
|
|
125
|
+
/** The deployment classes the host lists, the default first */
|
|
126
|
+
readonly environmentTypes: readonly CubeDataProductEnvironmentType[];
|
|
127
|
+
/**
|
|
128
|
+
* Whether `search` matches and ranks the text on a server. Otherwise the
|
|
129
|
+
* text is matched on the client, over the class's whole list
|
|
130
|
+
*/
|
|
131
|
+
readonly searchesOnServer?: boolean | undefined;
|
|
132
|
+
/** The most products one server search gives: an answer this long may be cut short */
|
|
133
|
+
readonly searchLimit?: number | undefined;
|
|
134
|
+
/**
|
|
135
|
+
* Whether an answer `search` gave leaves out matches the server has, as
|
|
136
|
+
* its page says, counting rows the catalog dropped. Without it, an answer
|
|
137
|
+
* as long as `searchLimit` is taken to be cut short
|
|
138
|
+
*/
|
|
139
|
+
readonly isCutShort?: ((answer: readonly CubeDataProductCandidate[]) => boolean) | undefined;
|
|
140
|
+
/**
|
|
141
|
+
* The deployed products of a class whose title, id or description holds
|
|
142
|
+
* the text, or, searching on a server, the ones it matches, in its order
|
|
143
|
+
*/
|
|
144
|
+
search(search: {
|
|
145
|
+
text: string;
|
|
146
|
+
environmentType: CubeDataProductEnvironmentType;
|
|
147
|
+
}, signal?: AbortSignal): Promise<readonly CubeDataProductCandidate[]>;
|
|
148
|
+
/** A product's access points, read from its artifact at the version it was deployed from */
|
|
149
|
+
describe(candidate: CubeDataProductCandidate, signal?: AbortSignal): Promise<CubeDataProductDescription>;
|
|
150
|
+
/**
|
|
151
|
+
* The schema of each saved source, from the artifact at the cube's
|
|
152
|
+
* version: one entry per key, failures included. `fresh` reads the
|
|
153
|
+
* artifact again rather than what this page visit read, e.g. on Refresh
|
|
154
|
+
*/
|
|
155
|
+
resolveSchemas(project: CubeDataProductProject, sources: ReadonlyMap<NodeId, CubeAccessPointLocation>, options?: {
|
|
156
|
+
readonly fresh?: boolean | undefined;
|
|
157
|
+
}): Promise<Map<NodeId, Schema | CubeEngineError>>;
|
|
158
|
+
/** The product's page in the marketplace, or none when the host has no marketplace */
|
|
159
|
+
getMarketplaceLink(target: CubeMarketplaceLinkTarget): string | undefined;
|
|
160
|
+
/**
|
|
161
|
+
* The viewer's access to each of the product's access point groups, by
|
|
162
|
+
* group id; a group it can't tell has no entry. Optional: a host without
|
|
163
|
+
* it shows no access
|
|
164
|
+
*/
|
|
165
|
+
getAccess?(candidate: CubeDataProductCandidate, signal?: AbortSignal): Promise<ReadonlyMap<string, CubeAccessPointGroupAccess>>;
|
|
166
|
+
}
|
|
167
|
+
//# sourceMappingURL=CubeDataProductCatalog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CubeDataProductCatalog.d.ts","sourceRoot":"","sources":["../../src/graph-manager/CubeDataProductCatalog.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 { isCubeSnapshotVersion, } from './CubeDataProduct.js';
|
|
17
|
+
// The deployed data products a cube can read (PLAN §6.8), in Cube's own
|
|
18
|
+
// terms: what the catalog lists, what a product's deployed artifact says of
|
|
19
|
+
// its access points, and the schemas of saved sources. The host's
|
|
20
|
+
// implementation reads the marketplace or the lakehouse's lists, the depot
|
|
21
|
+
// and the artifacts; nothing here names their wire classes
|
|
22
|
+
/** A deployed data product the catalog lists, at the version it was deployed from */
|
|
23
|
+
export class CubeDataProductCandidate {
|
|
24
|
+
/** The catalog's id for the product, which its links use */
|
|
25
|
+
id;
|
|
26
|
+
/** The deployment, as text */
|
|
27
|
+
deploymentId;
|
|
28
|
+
/** The path of its DataProduct element */
|
|
29
|
+
dataProductPath;
|
|
30
|
+
title;
|
|
31
|
+
description;
|
|
32
|
+
groupId;
|
|
33
|
+
artifactId;
|
|
34
|
+
/** The version it was deployed from, as the catalog gave it, snapshots included */
|
|
35
|
+
versionId;
|
|
36
|
+
environmentType;
|
|
37
|
+
/** The producer's environment, for display */
|
|
38
|
+
producerEnvironmentName;
|
|
39
|
+
constructor(fields) {
|
|
40
|
+
this.id = fields.id;
|
|
41
|
+
this.deploymentId = fields.deploymentId;
|
|
42
|
+
this.dataProductPath = fields.dataProductPath;
|
|
43
|
+
this.title = fields.title;
|
|
44
|
+
this.description = fields.description;
|
|
45
|
+
this.groupId = fields.groupId;
|
|
46
|
+
this.artifactId = fields.artifactId;
|
|
47
|
+
this.versionId = fields.versionId;
|
|
48
|
+
this.environmentType = fields.environmentType;
|
|
49
|
+
this.producerEnvironmentName = fields.producerEnvironmentName;
|
|
50
|
+
}
|
|
51
|
+
/** Whether it was deployed from a moving version, whose data may change under a cube */
|
|
52
|
+
get isSnapshot() {
|
|
53
|
+
return isCubeSnapshotVersion(this.versionId);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
/** An access point of a deployed product, as its artifact describes it */
|
|
57
|
+
export class CubeAccessPoint {
|
|
58
|
+
id;
|
|
59
|
+
title;
|
|
60
|
+
description;
|
|
61
|
+
/** Its columns, as the artifact types them; none when it can't be read */
|
|
62
|
+
schema;
|
|
63
|
+
/** Why it can't be picked, e.g. it takes parameters; none when it can */
|
|
64
|
+
disabledReason;
|
|
65
|
+
/** A few rows the artifact holds, by the schema's columns */
|
|
66
|
+
sampleRows;
|
|
67
|
+
constructor(fields) {
|
|
68
|
+
this.id = fields.id;
|
|
69
|
+
this.title = fields.title;
|
|
70
|
+
this.description = fields.description;
|
|
71
|
+
this.schema = fields.schema;
|
|
72
|
+
this.disabledReason = fields.disabledReason;
|
|
73
|
+
this.sampleRows = fields.sampleRows ?? [];
|
|
74
|
+
}
|
|
75
|
+
get isPickable() {
|
|
76
|
+
return this.disabledReason === undefined && this.schema !== undefined;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
export class CubeAccessPointGroup {
|
|
80
|
+
id;
|
|
81
|
+
title;
|
|
82
|
+
accessPoints;
|
|
83
|
+
/** Open to everyone in the organization, as the host's marketplace marks such groups */
|
|
84
|
+
isEnterprise;
|
|
85
|
+
constructor(fields) {
|
|
86
|
+
this.id = fields.id;
|
|
87
|
+
this.title = fields.title;
|
|
88
|
+
this.accessPoints = fields.accessPoints;
|
|
89
|
+
this.isEnterprise = fields.isEnterprise ?? false;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* The viewer's access to an access point group, as the marketplace shows
|
|
94
|
+
* it: open to everyone, granted, on its way through approval, refused, or
|
|
95
|
+
* never asked for
|
|
96
|
+
*/
|
|
97
|
+
export var CubeAccessPointGroupAccess;
|
|
98
|
+
(function (CubeAccessPointGroupAccess) {
|
|
99
|
+
CubeAccessPointGroupAccess["ENTERPRISE"] = "ENTERPRISE";
|
|
100
|
+
CubeAccessPointGroupAccess["APPROVED"] = "APPROVED";
|
|
101
|
+
CubeAccessPointGroupAccess["SUBMITTED_FOR_APPROVALS"] = "SUBMITTED_FOR_APPROVALS";
|
|
102
|
+
CubeAccessPointGroupAccess["PENDING_MANAGER_APPROVAL"] = "PENDING_MANAGER_APPROVAL";
|
|
103
|
+
CubeAccessPointGroupAccess["PENDING_DATA_OWNER_APPROVAL"] = "PENDING_DATA_OWNER_APPROVAL";
|
|
104
|
+
CubeAccessPointGroupAccess["DENIED"] = "DENIED";
|
|
105
|
+
CubeAccessPointGroupAccess["NO_ACCESS"] = "NO_ACCESS";
|
|
106
|
+
})(CubeAccessPointGroupAccess || (CubeAccessPointGroupAccess = {}));
|
|
107
|
+
/** A deployed product's access points, by group */
|
|
108
|
+
export class CubeDataProductDescription {
|
|
109
|
+
candidate;
|
|
110
|
+
groups;
|
|
111
|
+
constructor(candidate, groups) {
|
|
112
|
+
this.candidate = candidate;
|
|
113
|
+
this.groups = groups;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
//# sourceMappingURL=CubeDataProductCatalog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CubeDataProductCatalog.js","sourceRoot":"","sources":["../../src/graph-manager/CubeDataProductCatalog.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
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
|
+
import type { CubeDirectConnection, CubeExploredTable } from './CubeConnectionExplorer.js';
|
|
18
|
+
/** The kind of a direct-connection cube's model: Cube's own, never an engine model kind */
|
|
19
|
+
export declare const CUBE_DIRECT_MODEL_TYPE = "cubeDirectConnection";
|
|
20
|
+
/** The Database every table of a direct-connection cube belongs to */
|
|
21
|
+
export declare const CUBE_DIRECT_DATABASE_PATH = "cube::direct::Database";
|
|
22
|
+
export declare const CUBE_DIRECT_CONNECTION_PATH = "cube::direct::Connection";
|
|
23
|
+
/** The runtime a direct-connection cube runs with */
|
|
24
|
+
export declare const CUBE_DIRECT_RUNTIME_PATH = "cube::direct::Runtime";
|
|
25
|
+
/** The model of a direct-connection cube */
|
|
26
|
+
export declare const createCubeDirectModel: (connection: CubeDirectConnection) => ModelContext;
|
|
27
|
+
/** The connection of a direct-connection cube's model; undefined for any other model */
|
|
28
|
+
export declare const getCubeDirectConnection: (model: ModelContext) => CubeDirectConnection | undefined;
|
|
29
|
+
/**
|
|
30
|
+
* The coordinates of a table read from the connection's database, every name
|
|
31
|
+
* quoted as the built Database stores it
|
|
32
|
+
*/
|
|
33
|
+
export declare const getCubeDirectTableCoordinates: (schema: string, table: CubeExploredTable) => {
|
|
34
|
+
database: string;
|
|
35
|
+
schema: string;
|
|
36
|
+
table: string;
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=CubeDirectConnection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CubeDirectConnection.d.ts","sourceRoot":"","sources":["../../src/graph-manager/CubeDirectConnection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EACV,oBAAoB,EACpB,iBAAiB,EAClB,MAAM,6BAA6B,CAAC;AAQrC,2FAA2F;AAC3F,eAAO,MAAM,sBAAsB,yBAAyB,CAAC;AAE7D,sEAAsE;AACtE,eAAO,MAAM,yBAAyB,2BAA2B,CAAC;AAClE,eAAO,MAAM,2BAA2B,6BAA6B,CAAC;AACtE,qDAAqD;AACrD,eAAO,MAAM,wBAAwB,0BAA0B,CAAC;AAEhE,4CAA4C;AAC5C,eAAO,MAAM,qBAAqB,GAChC,YAAY,oBAAoB,KAC/B,YAEyE,CAAC;AAE7E,wFAAwF;AACxF,eAAO,MAAM,uBAAuB,GAClC,OAAO,YAAY,KAClB,oBAAoB,GAAG,SAMX,CAAC;AAEhB;;;GAGG;AACH,eAAO,MAAM,6BAA6B,GACxC,QAAQ,MAAM,EACd,OAAO,iBAAiB,KACvB;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAIlD,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
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 direct-connection cube (PLAN §6.8) saves its connection once, as its
|
|
17
|
+
// model, and its tables stay ordinary relational sources of one generated
|
|
18
|
+
// Database. The engine's implementation builds that Database, its connection
|
|
19
|
+
// and its runtime for each call, from the tables the call needs; their paths
|
|
20
|
+
// are fixed, so saved tables and the saved runtime always name them
|
|
21
|
+
/** The kind of a direct-connection cube's model: Cube's own, never an engine model kind */
|
|
22
|
+
export const CUBE_DIRECT_MODEL_TYPE = 'cubeDirectConnection';
|
|
23
|
+
/** The Database every table of a direct-connection cube belongs to */
|
|
24
|
+
export const CUBE_DIRECT_DATABASE_PATH = 'cube::direct::Database';
|
|
25
|
+
export const CUBE_DIRECT_CONNECTION_PATH = 'cube::direct::Connection';
|
|
26
|
+
/** The runtime a direct-connection cube runs with */
|
|
27
|
+
export const CUBE_DIRECT_RUNTIME_PATH = 'cube::direct::Runtime';
|
|
28
|
+
/** The model of a direct-connection cube */
|
|
29
|
+
export const createCubeDirectModel = (connection) =>
|
|
30
|
+
// the connection is protocol JSON, so plain JSON
|
|
31
|
+
({ _type: CUBE_DIRECT_MODEL_TYPE, connection });
|
|
32
|
+
/** The connection of a direct-connection cube's model; undefined for any other model */
|
|
33
|
+
export const getCubeDirectConnection = (model) => model._type === CUBE_DIRECT_MODEL_TYPE &&
|
|
34
|
+
model.connection &&
|
|
35
|
+
typeof model.connection === 'object' &&
|
|
36
|
+
!Array.isArray(model.connection)
|
|
37
|
+
? model.connection
|
|
38
|
+
: undefined;
|
|
39
|
+
/**
|
|
40
|
+
* The coordinates of a table read from the connection's database, every name
|
|
41
|
+
* quoted as the built Database stores it
|
|
42
|
+
*/
|
|
43
|
+
export const getCubeDirectTableCoordinates = (schema, table) => ({
|
|
44
|
+
database: CUBE_DIRECT_DATABASE_PATH,
|
|
45
|
+
schema: `"${schema}"`,
|
|
46
|
+
table: table.storedName,
|
|
47
|
+
});
|
|
48
|
+
//# sourceMappingURL=CubeDirectConnection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CubeDirectConnection.js","sourceRoot":"","sources":["../../src/graph-manager/CubeDirectConnection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAQH,yEAAyE;AACzE,0EAA0E;AAC1E,6EAA6E;AAC7E,6EAA6E;AAC7E,oEAAoE;AAEpE,2FAA2F;AAC3F,MAAM,CAAC,MAAM,sBAAsB,GAAG,sBAAsB,CAAC;AAE7D,sEAAsE;AACtE,MAAM,CAAC,MAAM,yBAAyB,GAAG,wBAAwB,CAAC;AAClE,MAAM,CAAC,MAAM,2BAA2B,GAAG,0BAA0B,CAAC;AACtE,qDAAqD;AACrD,MAAM,CAAC,MAAM,wBAAwB,GAAG,uBAAuB,CAAC;AAEhE,4CAA4C;AAC5C,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,UAAgC,EAClB,EAAE;AAChB,iDAAiD;AACjD,CAAC,EAAE,KAAK,EAAE,sBAAsB,EAAE,UAAU,EAAE,CAA4B,CAAC;AAE7E,wFAAwF;AACxF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,KAAmB,EACe,EAAE,CACpC,KAAK,CAAC,KAAK,KAAK,sBAAsB;IACtC,KAAK,CAAC,UAAU;IAChB,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ;IACpC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC;IAC9B,CAAC,CAAE,KAAK,CAAC,UAAmC;IAC5C,CAAC,CAAC,SAAS,CAAC;AAEhB;;;GAGG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAC3C,MAAc,EACd,KAAwB,EAC6B,EAAE,CAAC,CAAC;IACzD,QAAQ,EAAE,yBAAyB;IACnC,MAAM,EAAE,IAAI,MAAM,GAAG;IACrB,KAAK,EAAE,KAAK,CAAC,UAAU;CACxB,CAAC,CAAC"}
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import type { IR, ModelContext, Schema } from '@finos/legend-cube';
|
|
16
|
+
import type { IR, JsonObject, ModelContext, Schema } from '@finos/legend-cube';
|
|
17
17
|
/** A query node's id */
|
|
18
18
|
export type NodeId = string;
|
|
19
19
|
/** A table's Database element path, schema name and table name, names as stored (quotes included) */
|
|
@@ -85,6 +85,28 @@ export declare enum CubeEngineErrorKind {
|
|
|
85
85
|
/** the engine couldn't be reached, or answered with no readable error */
|
|
86
86
|
NETWORK = "network"
|
|
87
87
|
}
|
|
88
|
+
/**
|
|
89
|
+
* Where in a text the engine places a problem: the source id the text was
|
|
90
|
+
* parsed under, and its 1-based first and last lines and columns, the last
|
|
91
|
+
* column included (an Extend column's expression, PLAN §11.7)
|
|
92
|
+
*/
|
|
93
|
+
export interface CubeSourceLocation {
|
|
94
|
+
readonly sourceId: string;
|
|
95
|
+
readonly startLine: number;
|
|
96
|
+
readonly startColumn: number;
|
|
97
|
+
readonly endLine: number;
|
|
98
|
+
readonly endColumn: number;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* An expression's text as the engine's JSON (PLAN §11.7), its number
|
|
102
|
+
* literals as their digit strings: as a column stores it, with no source
|
|
103
|
+
* information, and as the engine located it in the text, so a later error
|
|
104
|
+
* can point into the text
|
|
105
|
+
*/
|
|
106
|
+
export interface CubeParsedExpression {
|
|
107
|
+
readonly lambda: JsonObject;
|
|
108
|
+
readonly located: JsonObject;
|
|
109
|
+
}
|
|
88
110
|
/**
|
|
89
111
|
* An engine failure, placed on the node it concerns: the node a stamp in the
|
|
90
112
|
* error points to, else the source being typed or the node being run.
|
|
@@ -98,7 +120,9 @@ export declare class CubeEngineError extends Error {
|
|
|
98
120
|
readonly firstLine: string;
|
|
99
121
|
/** The engine's whole message, without its Java trace, shown in the panel */
|
|
100
122
|
readonly detail: string;
|
|
101
|
-
|
|
123
|
+
/** Where in a text the error is, when the text was parsed with its locations */
|
|
124
|
+
readonly location: CubeSourceLocation | undefined;
|
|
125
|
+
constructor(kind: CubeEngineErrorKind, detail: string, nodeId?: NodeId, role?: string, location?: CubeSourceLocation);
|
|
102
126
|
}
|
|
103
127
|
/** A value of a result cell: Integer and Decimal values as their exact text, Float values as numbers (PLAN §8.7) */
|
|
104
128
|
export type CubeResultValue = string | number | boolean | null;
|
|
@@ -124,5 +148,16 @@ export interface CubeEngine {
|
|
|
124
148
|
}): Promise<CubeResult>;
|
|
125
149
|
/** The Pure text of a lambda, for display only: never parsed back */
|
|
126
150
|
renderPure(lambda: IR): Promise<string>;
|
|
151
|
+
/**
|
|
152
|
+
* An Extend column's expression as the engine's JSON (PLAN §11.7), located
|
|
153
|
+
* under the source id; rejects with a `CubeEngineError` placed in the text
|
|
154
|
+
*/
|
|
155
|
+
parseExpression(code: string, sourceId: string): Promise<CubeParsedExpression>;
|
|
156
|
+
/**
|
|
157
|
+
* Plans an execution lambda for its runtime's database, as a run would,
|
|
158
|
+
* without running it: some expressions type, then fail when planned (PLAN
|
|
159
|
+
* §11.7). Rejects with a `CubeEngineError`
|
|
160
|
+
*/
|
|
161
|
+
planLambda(model: ModelContext, lambda: IR): Promise<void>;
|
|
127
162
|
}
|
|
128
163
|
//# sourceMappingURL=CubeEngine.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CubeEngine.d.ts","sourceRoot":"","sources":["../../src/graph-manager/CubeEngine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"CubeEngine.d.ts","sourceRoot":"","sources":["../../src/graph-manager/CubeEngine.ts"],"names":[],"mappings":"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"}
|
|
@@ -47,7 +47,9 @@ export class CubeEngineError extends Error {
|
|
|
47
47
|
firstLine;
|
|
48
48
|
/** The engine's whole message, without its Java trace, shown in the panel */
|
|
49
49
|
detail;
|
|
50
|
-
|
|
50
|
+
/** Where in a text the error is, when the text was parsed with its locations */
|
|
51
|
+
location;
|
|
52
|
+
constructor(kind, detail, nodeId, role, location) {
|
|
51
53
|
const firstLine = detail.split('\n', 1)[0]?.trim() ?? '';
|
|
52
54
|
super(firstLine);
|
|
53
55
|
this.name = 'CubeEngineError';
|
|
@@ -56,6 +58,7 @@ export class CubeEngineError extends Error {
|
|
|
56
58
|
this.firstLine = firstLine;
|
|
57
59
|
this.nodeId = nodeId;
|
|
58
60
|
this.role = role;
|
|
61
|
+
this.location = location;
|
|
59
62
|
}
|
|
60
63
|
}
|
|
61
64
|
//# sourceMappingURL=CubeEngine.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CubeEngine.js","sourceRoot":"","sources":["../../src/graph-manager/CubeEngine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAkBH,mFAAmF;AACnF,MAAM,CAAN,IAAY,aAOX;AAPD,WAAY,aAAa;IACvB,uDAAuD;IACvD,4CAA2B,CAAA;IAC3B,iDAAiD;IACjD,iDAAgC,CAAA;IAChC,uDAAuD;IACvD,6CAA4B,CAAA;AAC9B,CAAC,EAPW,aAAa,KAAb,aAAa,QAOxB;AAoDD,MAAM,CAAN,IAAY,mBASX;AATD,WAAY,mBAAmB;IAC7B,uEAAuE;IACvE,0CAAmB,CAAA;IACnB,kEAAkE;IAClE,8CAAuB,CAAA;IACvB,2DAA2D;IAC3D,6DAAsC,CAAA;IACtC,yEAAyE;IACzE,0CAAmB,CAAA;AACrB,CAAC,EATW,mBAAmB,KAAnB,mBAAmB,QAS9B;
|
|
1
|
+
{"version":3,"file":"CubeEngine.js","sourceRoot":"","sources":["../../src/graph-manager/CubeEngine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAkBH,mFAAmF;AACnF,MAAM,CAAN,IAAY,aAOX;AAPD,WAAY,aAAa;IACvB,uDAAuD;IACvD,4CAA2B,CAAA;IAC3B,iDAAiD;IACjD,iDAAgC,CAAA;IAChC,uDAAuD;IACvD,6CAA4B,CAAA;AAC9B,CAAC,EAPW,aAAa,KAAb,aAAa,QAOxB;AAoDD,MAAM,CAAN,IAAY,mBASX;AATD,WAAY,mBAAmB;IAC7B,uEAAuE;IACvE,0CAAmB,CAAA;IACnB,kEAAkE;IAClE,8CAAuB,CAAA;IACvB,2DAA2D;IAC3D,6DAAsC,CAAA;IACtC,yEAAyE;IACzE,0CAAmB,CAAA;AACrB,CAAC,EATW,mBAAmB,KAAnB,mBAAmB,QAS9B;AA0BD;;;GAGG;AACH,MAAM,OAAO,eAAgB,SAAQ,KAAK;IAC/B,IAAI,CAAsB;IAC1B,MAAM,CAAqB;IACpC,mFAAmF;IAC1E,IAAI,CAAqB;IAClC,gEAAgE;IACvD,SAAS,CAAS;IAC3B,6EAA6E;IACpE,MAAM,CAAS;IACxB,gFAAgF;IACvE,QAAQ,CAAiC;IAElD,YACE,IAAyB,EACzB,MAAc,EACd,MAAe,EACf,IAAa,EACb,QAA6B;QAE7B,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACzD,KAAK,CAAC,SAAS,CAAC,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;CACF"}
|
|
@@ -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 type { ModelContext } from '@finos/legend-cube';
|
|
17
|
+
import { CubeDataProductEnvironmentType } from './CubeDataProduct.js';
|
|
18
|
+
export declare const CUBE_INGEST_MODEL_TYPE = "cubeIngest";
|
|
19
|
+
export declare const CUBE_INGEST_RUNTIME_PATH = "cube::ingest::Runtime";
|
|
20
|
+
/** What an ingest cube runs on, as its model saves it */
|
|
21
|
+
export interface CubeIngestSettings {
|
|
22
|
+
readonly environmentType: CubeDataProductEnvironmentType;
|
|
23
|
+
/** The producer deployment whose definitions the cube reads, as text */
|
|
24
|
+
readonly producerDeploymentId: string;
|
|
25
|
+
/** The warehouse the cube runs on; none until one is picked */
|
|
26
|
+
readonly warehouse?: string | undefined;
|
|
27
|
+
}
|
|
28
|
+
export declare const createCubeIngestModel: (settings: CubeIngestSettings) => ModelContext;
|
|
29
|
+
export declare const isCubeIngestModel: (model: ModelContext) => boolean;
|
|
30
|
+
/** The same model, running on another warehouse */
|
|
31
|
+
export declare const withCubeIngestWarehouse: (model: ModelContext, warehouse: string) => ModelContext;
|
|
32
|
+
/** What's wrong with an ingest model, e.g. one saved by a later Cube: nothing for one Cube can use */
|
|
33
|
+
export declare const checkCubeIngestModel: (model: ModelContext) => readonly string[];
|
|
34
|
+
/** An ingest model's settings, when Cube can use it */
|
|
35
|
+
export declare const getCubeIngestSettings: (model: ModelContext) => CubeIngestSettings | undefined;
|
|
36
|
+
/** What an SDLC-deployed definition's URN names: its class, its project and its path */
|
|
37
|
+
export interface CubeIngestUrn {
|
|
38
|
+
readonly environmentType: CubeDataProductEnvironmentType;
|
|
39
|
+
readonly groupId: string;
|
|
40
|
+
readonly artifactId: string;
|
|
41
|
+
/** The IngestDefinition element's path */
|
|
42
|
+
readonly definition: string;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* A deployed definition's URN, when it was deployed from SDLC
|
|
46
|
+
* (`urn:lakehouse:<prod|prod-parallel>:ingest:definition:alloy-git:<group>~<artifact>~<path>`);
|
|
47
|
+
* nothing for an ad hoc one (`rest-api:`), another class, or text that isn't one
|
|
48
|
+
*/
|
|
49
|
+
export declare const parseCubeIngestUrn: (urn: string) => CubeIngestUrn | undefined;
|
|
50
|
+
//# sourceMappingURL=CubeIngest.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CubeIngest.d.ts","sourceRoot":"","sources":["../../src/graph-manager/CubeIngest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,8BAA8B,EAAE,MAAM,sBAAsB,CAAC;AAUtE,eAAO,MAAM,sBAAsB,eAAe,CAAC;AAEnD,eAAO,MAAM,wBAAwB,0BAA0B,CAAC;AAEhE,yDAAyD;AACzD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,eAAe,EAAE,8BAA8B,CAAC;IACzD,wEAAwE;IACxE,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,+DAA+D;IAC/D,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACzC;AASD,eAAO,MAAM,qBAAqB,GAChC,UAAU,kBAAkB,KAC3B,YAQiB,CAAC;AAErB,eAAO,MAAM,iBAAiB,GAAI,OAAO,YAAY,KAAG,OAChB,CAAC;AAEzC,mDAAmD;AACnD,eAAO,MAAM,uBAAuB,GAClC,OAAO,YAAY,EACnB,WAAW,MAAM,KAChB,YAAyC,CAAC;AAE7C,sGAAsG;AACtG,eAAO,MAAM,oBAAoB,GAC/B,OAAO,YAAY,KAClB,SAAS,MAAM,EAiBjB,CAAC;AAEF,uDAAuD;AACvD,eAAO,MAAM,qBAAqB,GAChC,OAAO,YAAY,KAClB,kBAAkB,GAAG,SAQT,CAAC;AAUhB,wFAAwF;AACxF,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,eAAe,EAAE,8BAA8B,CAAC;IACzD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,0CAA0C;IAC1C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAKD;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAAI,KAAK,MAAM,KAAG,aAAa,GAAG,SAehE,CAAC"}
|