@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,140 @@
|
|
|
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 { OpaqueType, PRIMITIVE_TYPE_PATH, PrimitiveType, resolveCubeType, Schema, SchemaColumn, } from '@finos/legend-cube';
|
|
17
|
+
import { V1_CInteger, V1_PackageableType, V1_WriteModeType, V1_deserializeIngestDefinitionContent, } from '@finos/legend-graph';
|
|
18
|
+
import { CubeIngestDataSet } from '../../../CubeIngestCatalog.js';
|
|
19
|
+
// A deployed ingest definition's data sets, typed from what the definition
|
|
20
|
+
// declares, with no engine call: each data set's columns, with their type
|
|
21
|
+
// parameters, then the columns its write mode adds, as legend-graph types
|
|
22
|
+
// them (#5598). A data set Cube can't read is listed with the reason, and
|
|
23
|
+
// can't be picked
|
|
24
|
+
/** A data set whose rows come from a query over other data sets */
|
|
25
|
+
const MATERIALIZED_VIEW_SOURCE = 'FunctionSource';
|
|
26
|
+
/** Why a data set can't be picked */
|
|
27
|
+
export const V1_CUBE_INGEST_DATA_SET_REASON = {
|
|
28
|
+
MATERIALIZED_VIEW: 'It is a materialized view, which Cube does not support yet',
|
|
29
|
+
NO_COLUMNS: 'It declares no columns',
|
|
30
|
+
BAD_MULTIPLICITY: (column) => `Column "${column}" holds more than one value, which Cube can't show`,
|
|
31
|
+
UNKNOWN_TYPE: (column, type) => `Column "${column}" has a type Cube doesn't know: ${type}`,
|
|
32
|
+
};
|
|
33
|
+
/** The columns a batch-milestoned data set adds after its own, by write mode */
|
|
34
|
+
const milestoningColumns = (writeMode) => {
|
|
35
|
+
const type = writeMode?._type;
|
|
36
|
+
if (type !== V1_WriteModeType.BATCH_MILESTONED &&
|
|
37
|
+
type !== V1_WriteModeType.BATCH_MILESTONED_BUSINESS_TEMPORAL) {
|
|
38
|
+
return [];
|
|
39
|
+
}
|
|
40
|
+
const integer = PrimitiveType.get(PRIMITIVE_TYPE_PATH.INTEGER);
|
|
41
|
+
const columns = [
|
|
42
|
+
new SchemaColumn('LAKE_IN_ID', integer, false),
|
|
43
|
+
new SchemaColumn('LAKE_OUT_ID', integer, false),
|
|
44
|
+
new SchemaColumn('LAKE_DIGEST', PrimitiveType.get(PRIMITIVE_TYPE_PATH.STRING), false),
|
|
45
|
+
];
|
|
46
|
+
if (type === V1_WriteModeType.BATCH_MILESTONED_BUSINESS_TEMPORAL) {
|
|
47
|
+
const timestamp = PrimitiveType.get(PRIMITIVE_TYPE_PATH.TIMESTAMP);
|
|
48
|
+
columns.push(new SchemaColumn('LAKE_FROM', timestamp, false), new SchemaColumn('LAKE_THRU', timestamp, false));
|
|
49
|
+
}
|
|
50
|
+
return columns;
|
|
51
|
+
};
|
|
52
|
+
/**
|
|
53
|
+
* A declared column's type, by its full path or, for a primitive whose path
|
|
54
|
+
* has a package (e.g. `meta::pure::metamodel::type::Integer`), its name;
|
|
55
|
+
* parameters kept. Any other type, such as an enumeration, gives the reason
|
|
56
|
+
* the data set can't be picked.
|
|
57
|
+
*/
|
|
58
|
+
const readColumnType = (column) => {
|
|
59
|
+
const { rawType, typeVariableValues } = column.genericType;
|
|
60
|
+
if (!(rawType instanceof V1_PackageableType)) {
|
|
61
|
+
return {
|
|
62
|
+
reason: V1_CUBE_INGEST_DATA_SET_REASON.UNKNOWN_TYPE(column.name, 'not a named type'),
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
const params = [];
|
|
66
|
+
for (const value of typeVariableValues) {
|
|
67
|
+
if (!(value instanceof V1_CInteger)) {
|
|
68
|
+
return {
|
|
69
|
+
reason: V1_CUBE_INGEST_DATA_SET_REASON.UNKNOWN_TYPE(column.name, rawType.fullPath),
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
params.push(value.value);
|
|
73
|
+
}
|
|
74
|
+
const name = rawType.fullPath.slice(rawType.fullPath.lastIndexOf(':') + 1);
|
|
75
|
+
const type = [rawType.fullPath, name]
|
|
76
|
+
.map((path) => resolveCubeType(path, params))
|
|
77
|
+
.find((candidate) => !(candidate instanceof OpaqueType));
|
|
78
|
+
return type
|
|
79
|
+
? { type }
|
|
80
|
+
: {
|
|
81
|
+
reason: V1_CUBE_INGEST_DATA_SET_REASON.UNKNOWN_TYPE(column.name, params.length
|
|
82
|
+
? `${rawType.fullPath}(${params.join(', ')})`
|
|
83
|
+
: rawType.fullPath),
|
|
84
|
+
};
|
|
85
|
+
};
|
|
86
|
+
/** A data set's schema, or why it can't be picked */
|
|
87
|
+
const readSchema = (dataset, definitionWriteMode) => {
|
|
88
|
+
// the protocol types both as always there, but saved content may lack them
|
|
89
|
+
const source = dataset.source;
|
|
90
|
+
if (source?._type === MATERIALIZED_VIEW_SOURCE) {
|
|
91
|
+
return { reason: V1_CUBE_INGEST_DATA_SET_REASON.MATERIALIZED_VIEW };
|
|
92
|
+
}
|
|
93
|
+
const schema = source?.schema;
|
|
94
|
+
const declared = schema?.columns ?? [];
|
|
95
|
+
if (!declared.length) {
|
|
96
|
+
return { reason: V1_CUBE_INGEST_DATA_SET_REASON.NO_COLUMNS };
|
|
97
|
+
}
|
|
98
|
+
const columns = [];
|
|
99
|
+
for (const column of declared) {
|
|
100
|
+
if (column.multiplicity.upperBound !== 1) {
|
|
101
|
+
return {
|
|
102
|
+
reason: V1_CUBE_INGEST_DATA_SET_REASON.BAD_MULTIPLICITY(column.name),
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
const read = readColumnType(column);
|
|
106
|
+
if ('reason' in read) {
|
|
107
|
+
return read;
|
|
108
|
+
}
|
|
109
|
+
columns.push(new SchemaColumn(column.name, read.type, column.multiplicity.lowerBound === 0));
|
|
110
|
+
}
|
|
111
|
+
try {
|
|
112
|
+
return {
|
|
113
|
+
schema: new Schema([
|
|
114
|
+
...columns,
|
|
115
|
+
...milestoningColumns(dataset.writeMode ?? definitionWriteMode),
|
|
116
|
+
]),
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
catch (error) {
|
|
120
|
+
return { reason: error instanceof Error ? error.message : String(error) };
|
|
121
|
+
}
|
|
122
|
+
};
|
|
123
|
+
/**
|
|
124
|
+
* The data sets of an ingest definition's content (its protocol JSON), in
|
|
125
|
+
* order. Throws when the content can't be read at all.
|
|
126
|
+
*/
|
|
127
|
+
export const V1_readCubeIngestDataSets = (content) => {
|
|
128
|
+
const definition = V1_deserializeIngestDefinitionContent(content);
|
|
129
|
+
return (definition.datasets ?? []).map((dataset) => {
|
|
130
|
+
const read = readSchema(dataset, definition.writeMode);
|
|
131
|
+
return new CubeIngestDataSet({
|
|
132
|
+
name: dataset.name,
|
|
133
|
+
primaryKey: dataset.primaryKey,
|
|
134
|
+
...('schema' in read
|
|
135
|
+
? { schema: read.schema }
|
|
136
|
+
: { disabledReason: read.reason }),
|
|
137
|
+
});
|
|
138
|
+
});
|
|
139
|
+
};
|
|
140
|
+
//# sourceMappingURL=V1_CubeIngestDefinition.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"V1_CubeIngestDefinition.js","sourceRoot":"","sources":["../../../../../src/graph-manager/protocol/pure/v1/V1_CubeIngestDefinition.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,62 @@
|
|
|
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 { IR } from '@finos/legend-cube';
|
|
17
|
+
import type { PlainObject } from '@finos/legend-shared';
|
|
18
|
+
import type { CubeDataProductEnvironmentType } from '../../../CubeDataProduct.js';
|
|
19
|
+
import { type CubeIngestSettings } from '../../../CubeIngest.js';
|
|
20
|
+
/**
|
|
21
|
+
* The deployed definitions an ingest cube reads, from the host's ingest
|
|
22
|
+
* servers: what the engine needs to type and run them
|
|
23
|
+
*/
|
|
24
|
+
export interface V1_CubeIngestDefinitionSource {
|
|
25
|
+
/** A definition's element, as protocol JSON, by its URN, for the cube's class */
|
|
26
|
+
getDefinitionElement(urn: string, environmentType: CubeDataProductEnvironmentType): Promise<PlainObject>;
|
|
27
|
+
/** The environment a run's lakehouse runtime names, for the cube's class */
|
|
28
|
+
getRuntimeEnvironment(environmentType: CubeDataProductEnvironmentType): Promise<string>;
|
|
29
|
+
}
|
|
30
|
+
/** An ingest data set a lambda reads */
|
|
31
|
+
export interface V1_CubeIngestAccessor {
|
|
32
|
+
readonly definition: string;
|
|
33
|
+
readonly dataSet: string;
|
|
34
|
+
readonly urn: string | undefined;
|
|
35
|
+
}
|
|
36
|
+
/** Why a lambda's ingest data sets can't be read on the cube */
|
|
37
|
+
export declare const V1_CUBE_INGEST_MESSAGE: {
|
|
38
|
+
readonly NO_URN: (definition: string) => string;
|
|
39
|
+
readonly NOT_SDLC: (definition: string) => string;
|
|
40
|
+
readonly OTHER_CLASS: (definition: string) => string;
|
|
41
|
+
readonly OTHER_PATH: (definition: string) => string;
|
|
42
|
+
};
|
|
43
|
+
/** The ingest data sets a lambda reads, in tree order */
|
|
44
|
+
export declare const V1_collectCubeIngestAccessors: (ir: IR) => V1_CubeIngestAccessor[];
|
|
45
|
+
/** Whether a lambda reads an ingest data set, anywhere in it */
|
|
46
|
+
export declare const V1_hasCubeIngestAccessor: (ir: IR) => boolean;
|
|
47
|
+
/**
|
|
48
|
+
* Why a lambda's ingest data sets can't be read on the cube, if they can't:
|
|
49
|
+
* each must say which SDLC-deployed definition it reads, deployed to the
|
|
50
|
+
* cube's class, under the path the query reads
|
|
51
|
+
*/
|
|
52
|
+
export declare const V1_checkCubeIngestAccessors: (accessors: readonly V1_CubeIngestAccessor[], settings: CubeIngestSettings) => string | undefined;
|
|
53
|
+
/** The URNs of the definitions lambdas read, each once */
|
|
54
|
+
export declare const V1_getCubeIngestUrns: (accessors: readonly V1_CubeIngestAccessor[]) => string[];
|
|
55
|
+
/** The model typing runs on: the definitions alone, with no runtime */
|
|
56
|
+
export declare const V1_buildCubeIngestTypingContext: (definitions: readonly PlainObject[]) => PlainObject;
|
|
57
|
+
/**
|
|
58
|
+
* The model a run runs on: the definitions, then the lakehouse runtime at
|
|
59
|
+
* Cube's fixed path, with the environment and the warehouse, always given
|
|
60
|
+
*/
|
|
61
|
+
export declare const V1_buildCubeIngestExecutionContext: (definitions: readonly PlainObject[], environment: string, warehouse: string) => PlainObject;
|
|
62
|
+
//# sourceMappingURL=V1_CubeIngestModel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"V1_CubeIngestModel.d.ts","sourceRoot":"","sources":["../../../../../src/graph-manager/protocol/pure/v1/V1_CubeIngestModel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,6BAA6B,CAAC;AAClF,OAAO,EAEL,KAAK,kBAAkB,EAExB,MAAM,wBAAwB,CAAC;AAOhC;;;GAGG;AACH,MAAM,WAAW,6BAA6B;IAC5C,iFAAiF;IACjF,oBAAoB,CAClB,GAAG,EAAE,MAAM,EACX,eAAe,EAAE,8BAA8B,GAC9C,OAAO,CAAC,WAAW,CAAC,CAAC;IACxB,4EAA4E;IAC5E,qBAAqB,CACnB,eAAe,EAAE,8BAA8B,GAC9C,OAAO,CAAC,MAAM,CAAC,CAAC;CACpB;AAED,wCAAwC;AACxC,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;CAClC;AAED,gEAAgE;AAChE,eAAO,MAAM,sBAAsB;kCACZ,MAAM,KAAG,MAAM;oCAEb,MAAM,KAAG,MAAM;uCAEZ,MAAM,KAAG,MAAM;sCAEhB,MAAM,KAAG,MAAM;CAEhC,CAAC;AAEX,yDAAyD;AACzD,eAAO,MAAM,6BAA6B,GACxC,IAAI,EAAE,KACL,qBAAqB,EA0BvB,CAAC;AAEF,gEAAgE;AAChE,eAAO,MAAM,wBAAwB,GAAI,IAAI,EAAE,KAAG,OACJ,CAAC;AAE/C;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,GACtC,WAAW,SAAS,qBAAqB,EAAE,EAC3C,UAAU,kBAAkB,KAC3B,MAAM,GAAG,SAiBX,CAAC;AAEF,0DAA0D;AAC1D,eAAO,MAAM,oBAAoB,GAC/B,WAAW,SAAS,qBAAqB,EAAE,KAC1C,MAAM,EAMR,CAAC;AAaF,uEAAuE;AACvE,eAAO,MAAM,+BAA+B,GAC1C,aAAa,SAAS,WAAW,EAAE,KAClC,WAGD,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,kCAAkC,GAC7C,aAAa,SAAS,WAAW,EAAE,EACnC,aAAa,MAAM,EACnB,WAAW,MAAM,KAChB,WAiBD,CAAC"}
|
|
@@ -0,0 +1,119 @@
|
|
|
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 { CUBE_INGEST_RUNTIME_PATH, parseCubeIngestUrn, } from '../../../CubeIngest.js';
|
|
17
|
+
/** Why a lambda's ingest data sets can't be read on the cube */
|
|
18
|
+
export const V1_CUBE_INGEST_MESSAGE = {
|
|
19
|
+
NO_URN: (definition) => `The ingest data set of ${definition} doesn't say which deployed definition it reads`,
|
|
20
|
+
NOT_SDLC: (definition) => `Ingest definition ${definition} wasn't deployed from a project, which Cube doesn't read`,
|
|
21
|
+
OTHER_CLASS: (definition) => `Ingest definition ${definition} is deployed to another environment than the cube's`,
|
|
22
|
+
OTHER_PATH: (definition) => `The URN of ingest definition ${definition} names another definition`,
|
|
23
|
+
};
|
|
24
|
+
/** The ingest data sets a lambda reads, in tree order */
|
|
25
|
+
export const V1_collectCubeIngestAccessors = (ir) => {
|
|
26
|
+
const found = [];
|
|
27
|
+
const visit = (value) => {
|
|
28
|
+
if (Array.isArray(value)) {
|
|
29
|
+
value.forEach(visit);
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
if (!value || typeof value !== 'object') {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
const node = value;
|
|
36
|
+
if (node.k === 'ingestAccessor') {
|
|
37
|
+
const [definition, dataSet] = node.path;
|
|
38
|
+
found.push({
|
|
39
|
+
definition,
|
|
40
|
+
dataSet,
|
|
41
|
+
urn: typeof node.urn === 'string' ? node.urn : undefined,
|
|
42
|
+
});
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
if (node.k !== 'raw') {
|
|
46
|
+
Object.values(node).forEach(visit);
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
visit(ir);
|
|
50
|
+
return found;
|
|
51
|
+
};
|
|
52
|
+
/** Whether a lambda reads an ingest data set, anywhere in it */
|
|
53
|
+
export const V1_hasCubeIngestAccessor = (ir) => V1_collectCubeIngestAccessors(ir).length > 0;
|
|
54
|
+
/**
|
|
55
|
+
* Why a lambda's ingest data sets can't be read on the cube, if they can't:
|
|
56
|
+
* each must say which SDLC-deployed definition it reads, deployed to the
|
|
57
|
+
* cube's class, under the path the query reads
|
|
58
|
+
*/
|
|
59
|
+
export const V1_checkCubeIngestAccessors = (accessors, settings) => {
|
|
60
|
+
for (const accessor of accessors) {
|
|
61
|
+
if (accessor.urn === undefined) {
|
|
62
|
+
return V1_CUBE_INGEST_MESSAGE.NO_URN(accessor.definition);
|
|
63
|
+
}
|
|
64
|
+
const urn = parseCubeIngestUrn(accessor.urn);
|
|
65
|
+
if (!urn) {
|
|
66
|
+
return V1_CUBE_INGEST_MESSAGE.NOT_SDLC(accessor.definition);
|
|
67
|
+
}
|
|
68
|
+
if (urn.environmentType !== settings.environmentType) {
|
|
69
|
+
return V1_CUBE_INGEST_MESSAGE.OTHER_CLASS(accessor.definition);
|
|
70
|
+
}
|
|
71
|
+
if (urn.definition !== accessor.definition) {
|
|
72
|
+
return V1_CUBE_INGEST_MESSAGE.OTHER_PATH(accessor.definition);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
return undefined;
|
|
76
|
+
};
|
|
77
|
+
/** The URNs of the definitions lambdas read, each once */
|
|
78
|
+
export const V1_getCubeIngestUrns = (accessors) => [
|
|
79
|
+
...new Set(accessors
|
|
80
|
+
.map((accessor) => accessor.urn)
|
|
81
|
+
.filter((urn) => urn !== undefined)),
|
|
82
|
+
];
|
|
83
|
+
/** A definition as the model holds it: its test suites, which reference test data the model lacks, left out */
|
|
84
|
+
const toModelElement = (element) => {
|
|
85
|
+
const { testSuites, ...rest } = element;
|
|
86
|
+
return rest;
|
|
87
|
+
};
|
|
88
|
+
const splitPath = (path) => {
|
|
89
|
+
const index = path.lastIndexOf('::');
|
|
90
|
+
return { package: path.slice(0, index), name: path.slice(index + 2) };
|
|
91
|
+
};
|
|
92
|
+
/** The model typing runs on: the definitions alone, with no runtime */
|
|
93
|
+
export const V1_buildCubeIngestTypingContext = (definitions) => ({
|
|
94
|
+
_type: 'data',
|
|
95
|
+
elements: definitions.map(toModelElement),
|
|
96
|
+
});
|
|
97
|
+
/**
|
|
98
|
+
* The model a run runs on: the definitions, then the lakehouse runtime at
|
|
99
|
+
* Cube's fixed path, with the environment and the warehouse, always given
|
|
100
|
+
*/
|
|
101
|
+
export const V1_buildCubeIngestExecutionContext = (definitions, environment, warehouse) => ({
|
|
102
|
+
_type: 'data',
|
|
103
|
+
elements: [
|
|
104
|
+
...definitions.map(toModelElement),
|
|
105
|
+
{
|
|
106
|
+
_type: 'runtime',
|
|
107
|
+
...splitPath(CUBE_INGEST_RUNTIME_PATH),
|
|
108
|
+
runtimeValue: {
|
|
109
|
+
_type: 'LakehouseRuntime',
|
|
110
|
+
connectionStores: [],
|
|
111
|
+
connections: [],
|
|
112
|
+
mappings: [],
|
|
113
|
+
environment,
|
|
114
|
+
warehouse,
|
|
115
|
+
},
|
|
116
|
+
},
|
|
117
|
+
],
|
|
118
|
+
});
|
|
119
|
+
//# sourceMappingURL=V1_CubeIngestModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"V1_CubeIngestModel.js","sourceRoot":"","sources":["../../../../../src/graph-manager/protocol/pure/v1/V1_CubeIngestModel.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
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 LakehouseContractServerClient } from '@finos/legend-server-lakehouse';
|
|
17
|
+
import { type CubeDataProductProject } from '../../../CubeDataProduct.js';
|
|
18
|
+
import type { CubeLakehouseEnvironment } from '../../../CubeLakehouseEnvironment.js';
|
|
19
|
+
export declare const V1_CUBE_NO_LAKEHOUSE_ENVIRONMENT = "Unable to resolve lakehouse user environment. Please ensure your lakehouse entitlements are configured.";
|
|
20
|
+
export declare class V1_CubeLakehouseEnvironmentResolver implements CubeLakehouseEnvironment {
|
|
21
|
+
private readonly contractServerClient;
|
|
22
|
+
private readonly getAccessToken;
|
|
23
|
+
private readonly getCurrentUser;
|
|
24
|
+
private readonly getPreferredEnvironment;
|
|
25
|
+
/** The viewer's environment, read on the first run of the page visit */
|
|
26
|
+
private userEnvironment;
|
|
27
|
+
constructor(contractServerClient: LakehouseContractServerClient, getAccessToken: () => string | undefined, getCurrentUser: () => string, getPreferredEnvironment?: () => string | undefined);
|
|
28
|
+
private readUserEnvironment;
|
|
29
|
+
/** The viewer's environment with no realm: what ingest environments are named by */
|
|
30
|
+
resolveBaseEnvironment(): Promise<string>;
|
|
31
|
+
resolveEnvironment(project: CubeDataProductProject): Promise<string>;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=V1_CubeLakehouseEnvironmentResolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"V1_CubeLakehouseEnvironmentResolver.d.ts","sourceRoot":"","sources":["../../../../../src/graph-manager/protocol/pure/v1/V1_CubeLakehouseEnvironmentResolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAMH,OAAO,EAGL,KAAK,6BAA6B,EAEnC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,KAAK,sBAAsB,EAG5B,MAAM,6BAA6B,CAAC;AAErC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAYrF,eAAO,MAAM,gCAAgC,4GAC8D,CAAC;AAqB5G,qBAAa,mCACX,YAAW,wBAAwB;IAEnC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAgC;IACrE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA2B;IAC1D,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAe;IAC9C,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAA2B;IACnE,wEAAwE;IACxE,OAAO,CAAC,eAAe,CAA8B;gBAGnD,oBAAoB,EAAE,6BAA6B,EACnD,cAAc,EAAE,MAAM,MAAM,GAAG,SAAS,EACxC,cAAc,EAAE,MAAM,MAAM,EAC5B,uBAAuB,GAAE,MAAM,MAAM,GAAG,SAA2B;IAQrE,OAAO,CAAC,mBAAmB;IAoC3B,oFAAoF;IAC9E,sBAAsB,IAAI,OAAO,CAAC,MAAM,CAAC;IAIzC,kBAAkB,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC;CAW3E"}
|
|
@@ -0,0 +1,94 @@
|
|
|
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 { V1_EntitlementsLakehouseEnvironmentType, } from '@finos/legend-graph';
|
|
17
|
+
import { decorateEnvWithRealm, getEntitlementsLakehouseEnvironmentTypeCompatibleWithEnvName, LakehouseEnvironmentType, } from '@finos/legend-server-lakehouse';
|
|
18
|
+
import { CubeDataProductEnvironmentType, isCubeSnapshotVersion, } from '../../../CubeDataProduct.js';
|
|
19
|
+
import { CubeEngineError, CubeEngineErrorKind } from '../../../CubeEngine.js';
|
|
20
|
+
// The viewer's lakehouse environment, as Legend Query resolves it
|
|
21
|
+
// (QueryEditorStore.resolveLakehouseEnvAndWarehouse): the environment the
|
|
22
|
+
// host remembers for the viewer, else the first one the viewer's
|
|
23
|
+
// entitlements name, read once per page visit. Query adds the
|
|
24
|
+
// production-parallel realm for a snapshot version; Cube adds it for a
|
|
25
|
+
// production-parallel deployment too, as Data Cube does. Query may
|
|
26
|
+
// remember an environment with a realm already on it (its runtime dialog
|
|
27
|
+
// saves the runtime's environment as it is), so Cube drops that realm first:
|
|
28
|
+
// a production deployment never runs in the production-parallel realm
|
|
29
|
+
export const V1_CUBE_NO_LAKEHOUSE_ENVIRONMENT = 'Unable to resolve lakehouse user environment. Please ensure your lakehouse entitlements are configured.';
|
|
30
|
+
/** The environment without a realm, which `decorateEnvWithRealm` would add */
|
|
31
|
+
const withoutRealm = (environment) => {
|
|
32
|
+
switch (getEntitlementsLakehouseEnvironmentTypeCompatibleWithEnvName(environment)) {
|
|
33
|
+
case V1_EntitlementsLakehouseEnvironmentType.DEVELOPMENT:
|
|
34
|
+
return environment.slice(`${LakehouseEnvironmentType.DEVELOPMENT}-`.length);
|
|
35
|
+
case V1_EntitlementsLakehouseEnvironmentType.PRODUCTION_PARALLEL:
|
|
36
|
+
return environment.slice(0, -`-${LakehouseEnvironmentType.PRODUCTION_PARALLEL}`.length);
|
|
37
|
+
default:
|
|
38
|
+
return environment;
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
export class V1_CubeLakehouseEnvironmentResolver {
|
|
42
|
+
contractServerClient;
|
|
43
|
+
getAccessToken;
|
|
44
|
+
getCurrentUser;
|
|
45
|
+
getPreferredEnvironment;
|
|
46
|
+
/** The viewer's environment, read on the first run of the page visit */
|
|
47
|
+
userEnvironment;
|
|
48
|
+
constructor(contractServerClient, getAccessToken, getCurrentUser, getPreferredEnvironment = () => undefined) {
|
|
49
|
+
this.contractServerClient = contractServerClient;
|
|
50
|
+
this.getAccessToken = getAccessToken;
|
|
51
|
+
this.getCurrentUser = getCurrentUser;
|
|
52
|
+
this.getPreferredEnvironment = getPreferredEnvironment;
|
|
53
|
+
}
|
|
54
|
+
readUserEnvironment() {
|
|
55
|
+
const preferred = this.getPreferredEnvironment();
|
|
56
|
+
if (preferred) {
|
|
57
|
+
return Promise.resolve(preferred);
|
|
58
|
+
}
|
|
59
|
+
this.userEnvironment ??= (async () => {
|
|
60
|
+
let response;
|
|
61
|
+
try {
|
|
62
|
+
response = await this.contractServerClient.getUserEntitlementEnvs(this.getCurrentUser(), this.getAccessToken());
|
|
63
|
+
}
|
|
64
|
+
catch (error) {
|
|
65
|
+
throw new CubeEngineError(CubeEngineErrorKind.NETWORK, `${V1_CUBE_NO_LAKEHOUSE_ENVIRONMENT}\n${error instanceof Error ? error.message : String(error)}`);
|
|
66
|
+
}
|
|
67
|
+
const environment = response.users
|
|
68
|
+
.map((user) => user.lakehouseEnvironment)
|
|
69
|
+
.find((name) => typeof name === 'string' && name.length > 0);
|
|
70
|
+
if (!environment) {
|
|
71
|
+
throw new CubeEngineError(CubeEngineErrorKind.EXECUTION, V1_CUBE_NO_LAKEHOUSE_ENVIRONMENT);
|
|
72
|
+
}
|
|
73
|
+
return environment;
|
|
74
|
+
})().catch((error) => {
|
|
75
|
+
// read again on the next run
|
|
76
|
+
this.userEnvironment = undefined;
|
|
77
|
+
throw error;
|
|
78
|
+
});
|
|
79
|
+
return this.userEnvironment;
|
|
80
|
+
}
|
|
81
|
+
/** The viewer's environment with no realm: what ingest environments are named by */
|
|
82
|
+
async resolveBaseEnvironment() {
|
|
83
|
+
return withoutRealm(await this.readUserEnvironment());
|
|
84
|
+
}
|
|
85
|
+
async resolveEnvironment(project) {
|
|
86
|
+
const environment = await this.resolveBaseEnvironment();
|
|
87
|
+
return project.environmentType ===
|
|
88
|
+
CubeDataProductEnvironmentType.PRODUCTION_PARALLEL ||
|
|
89
|
+
isCubeSnapshotVersion(project.versionId)
|
|
90
|
+
? decorateEnvWithRealm(environment, LakehouseEnvironmentType.PRODUCTION_PARALLEL)
|
|
91
|
+
: environment;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=V1_CubeLakehouseEnvironmentResolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"V1_CubeLakehouseEnvironmentResolver.js","sourceRoot":"","sources":["../../../../../src/graph-manager/protocol/pure/v1/V1_CubeLakehouseEnvironmentResolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"V1_CubeLambdaSerializer.d.ts","sourceRoot":"","sources":["../../../../../src/graph-manager/protocol/pure/v1/V1_CubeLambdaSerializer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,EAAE,EAAgB,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAO3E,uEAAuE;AACvE,eAAO,MAAM,wBAAwB,UAAU,CAAC;AAKhD,iCAAiC;AACjC,eAAO,MAAM,oBAAoB,GAAI,QAAQ,MAAM,KAAG,MACQ,CAAC;AAE/D;;;GAGG;AACH,eAAO,MAAM,oBAAoB,GAC/B,UAAU,MAAM,GAAG,SAAS,KAC3B,MAAM,GAAG,SAUX,CAAC;
|
|
1
|
+
{"version":3,"file":"V1_CubeLambdaSerializer.d.ts","sourceRoot":"","sources":["../../../../../src/graph-manager/protocol/pure/v1/V1_CubeLambdaSerializer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,EAAE,EAAgB,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAO3E,uEAAuE;AACvE,eAAO,MAAM,wBAAwB,UAAU,CAAC;AAKhD,iCAAiC;AACjC,eAAO,MAAM,oBAAoB,GAAI,QAAQ,MAAM,KAAG,MACQ,CAAC;AAE/D;;;GAGG;AACH,eAAO,MAAM,oBAAoB,GAC/B,UAAU,MAAM,GAAG,SAAS,KAC3B,MAAM,GAAG,SAUX,CAAC;AAqRF;;;GAGG;AACH,eAAO,MAAM,sBAAsB,GAAI,IAAI,EAAE,KAAG,WAK/C,CAAC"}
|
|
@@ -52,6 +52,35 @@ const numberToken = (text) => {
|
|
|
52
52
|
}
|
|
53
53
|
return parseLosslessJSON(text);
|
|
54
54
|
};
|
|
55
|
+
/** The literal types whose value is a number, which Cube keeps as its digit string in an expression's JSON */
|
|
56
|
+
const NUMBER_LITERAL_TYPES = [
|
|
57
|
+
'integer',
|
|
58
|
+
'float',
|
|
59
|
+
'decimal',
|
|
60
|
+
];
|
|
61
|
+
/**
|
|
62
|
+
* An expression's lambda as the engine reads it (PLAN §11.7): each number
|
|
63
|
+
* literal written digit for digit from the string Cube keeps, and with an
|
|
64
|
+
* origin, any source information replaced by it on every value
|
|
65
|
+
* specification; with none, the JSON's own source information kept, so a
|
|
66
|
+
* lambda parsed with its locations is typed with them (the editor's Validate)
|
|
67
|
+
*/
|
|
68
|
+
const serializeLambdaJson = (json, origin) => {
|
|
69
|
+
if (Array.isArray(json)) {
|
|
70
|
+
return json.map((item) => serializeLambdaJson(item, origin));
|
|
71
|
+
}
|
|
72
|
+
if (typeof json !== 'object' || json === null) {
|
|
73
|
+
return json;
|
|
74
|
+
}
|
|
75
|
+
const object = Object.fromEntries(Object.entries(json)
|
|
76
|
+
.filter(([key]) => !origin || key !== 'sourceInformation')
|
|
77
|
+
.map(([key, value]) => [key, serializeLambdaJson(value, origin)]));
|
|
78
|
+
if (NUMBER_LITERAL_TYPES.includes(object._type) &&
|
|
79
|
+
typeof object.value === 'string') {
|
|
80
|
+
object.value = numberToken(object.value);
|
|
81
|
+
}
|
|
82
|
+
return typeof object._type === 'string' ? stamped(object, origin) : object;
|
|
83
|
+
};
|
|
55
84
|
const serializeLiteral = (value) => {
|
|
56
85
|
switch (value.kind) {
|
|
57
86
|
case 'string':
|
|
@@ -148,6 +177,24 @@ const serialize = (ir, inherited) => {
|
|
|
148
177
|
value: stamped({ path: [...ir.path] }, origin),
|
|
149
178
|
}, origin);
|
|
150
179
|
}
|
|
180
|
+
case 'dataProductAccessor':
|
|
181
|
+
// stamped on the outer instance only: the value is sent as legend-graph
|
|
182
|
+
// sends it, which Query and Data Cube already send to the engine
|
|
183
|
+
return stamped({
|
|
184
|
+
_type: 'classInstance',
|
|
185
|
+
type: 'P',
|
|
186
|
+
multiplicity: { lowerBound: 1, upperBound: 1 },
|
|
187
|
+
value: { path: [...ir.path], parameters: [] },
|
|
188
|
+
}, ir.origin ?? inherited);
|
|
189
|
+
case 'ingestAccessor':
|
|
190
|
+
// as legend-graph sends it, and Legend Query's ingest queries with it:
|
|
191
|
+
// the data set's rows, never its metadata
|
|
192
|
+
return stamped({
|
|
193
|
+
_type: 'classInstance',
|
|
194
|
+
type: 'I',
|
|
195
|
+
multiplicity: { lowerBound: 1, upperBound: 1 },
|
|
196
|
+
value: { path: [...ir.path], metadata: false },
|
|
197
|
+
}, ir.origin ?? inherited);
|
|
151
198
|
case 'elementPtr':
|
|
152
199
|
return stamped({ _type: 'packageableElementPtr', fullPath: ir.path }, inherited);
|
|
153
200
|
case 'genericType':
|
|
@@ -170,12 +217,24 @@ const serialize = (ir, inherited) => {
|
|
|
170
217
|
],
|
|
171
218
|
}, origin);
|
|
172
219
|
}
|
|
173
|
-
case 'let':
|
|
174
|
-
|
|
175
|
-
//
|
|
176
|
-
|
|
220
|
+
case 'let': {
|
|
221
|
+
// `let n = v` is the engine's `letFunction('n', v)`; the name is
|
|
222
|
+
// stamped too, so an error the engine reports on it lands on the node
|
|
223
|
+
// the let binds (PLAN §8.6)
|
|
224
|
+
const origin = ir.origin ?? inherited;
|
|
225
|
+
return stamped({
|
|
226
|
+
_type: 'func',
|
|
227
|
+
function: 'letFunction',
|
|
228
|
+
parameters: [
|
|
229
|
+
stamped({ _type: 'string', value: ir.name }, origin),
|
|
230
|
+
serialize(ir.value, origin),
|
|
231
|
+
],
|
|
232
|
+
}, origin);
|
|
233
|
+
}
|
|
177
234
|
case 'raw':
|
|
178
235
|
return ir.json;
|
|
236
|
+
case 'lambdaJson':
|
|
237
|
+
return serializeLambdaJson(ir.json, ir.origin ?? inherited);
|
|
179
238
|
default: {
|
|
180
239
|
const unknown = ir;
|
|
181
240
|
throw new Error(`Unknown IR ${JSON.stringify(unknown)}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"V1_CubeLambdaSerializer.js","sourceRoot":"","sources":["../../../../../src/graph-manager/protocol/pure/v1/V1_CubeLambdaSerializer.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"V1_CubeLambdaSerializer.js","sourceRoot":"","sources":["../../../../../src/graph-manager/protocol/pure/v1/V1_CubeLambdaSerializer.ts"],"names":[],"mappings":"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"}
|