@finos/legend-data-cube 0.0.36 → 0.0.38
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 +1 -1
- package/lib/__lib__/DataCubeDocumentation.d.ts +7 -7
- package/lib/__lib__/DataCubeDocumentation.d.ts.map +1 -1
- package/lib/__lib__/DataCubeDocumentation.js +9 -9
- package/lib/__lib__/DataCubeDocumentation.js.map +1 -1
- package/lib/__lib__/DataCubeEvent.d.ts +21 -0
- package/lib/__lib__/DataCubeEvent.d.ts.map +1 -0
- package/lib/__lib__/DataCubeEvent.js +22 -0
- package/lib/__lib__/DataCubeEvent.js.map +1 -0
- package/lib/__lib__/DataCubeSetting.d.ts +24 -0
- package/lib/__lib__/DataCubeSetting.d.ts.map +1 -0
- package/lib/__lib__/DataCubeSetting.js +25 -0
- package/lib/__lib__/DataCubeSetting.js.map +1 -0
- package/lib/components/DataCube.d.ts +3 -1
- package/lib/components/DataCube.d.ts.map +1 -1
- package/lib/components/DataCube.js +32 -39
- package/lib/components/DataCube.js.map +1 -1
- package/lib/components/DataCubePlaceholder.d.ts +40 -0
- package/lib/components/DataCubePlaceholder.d.ts.map +1 -0
- package/lib/components/DataCubePlaceholder.js +34 -0
- package/lib/components/DataCubePlaceholder.js.map +1 -0
- package/lib/components/DataCubeProvider.js +1 -1
- package/lib/components/DataCubeProvider.js.map +1 -1
- package/lib/components/DataCubeStatusBar.d.ts +24 -0
- package/lib/components/DataCubeStatusBar.d.ts.map +1 -0
- package/lib/components/DataCubeStatusBar.js +30 -0
- package/lib/components/DataCubeStatusBar.js.map +1 -0
- package/lib/components/DataCubeTitleBar.d.ts +24 -0
- package/lib/components/DataCubeTitleBar.d.ts.map +1 -0
- package/lib/components/DataCubeTitleBar.js +36 -0
- package/lib/components/DataCubeTitleBar.js.map +1 -0
- package/lib/components/DataCubeView.d.ts.map +1 -1
- package/lib/components/DataCubeView.js +10 -12
- package/lib/components/DataCubeView.js.map +1 -1
- package/lib/components/core/DataCubeAlert.d.ts +1 -21
- package/lib/components/core/DataCubeAlert.d.ts.map +1 -1
- package/lib/components/core/DataCubeAlert.js +4 -55
- package/lib/components/core/DataCubeAlert.js.map +1 -1
- package/lib/components/core/DataCubeDocumentationPanel.js +1 -1
- package/lib/components/core/DataCubeDocumentationPanel.js.map +1 -1
- package/lib/components/core/DataCubeFormUtils.d.ts +26 -0
- package/lib/components/core/DataCubeFormUtils.d.ts.map +1 -1
- package/lib/components/core/DataCubeFormUtils.js +135 -12
- package/lib/components/core/DataCubeFormUtils.js.map +1 -1
- package/lib/components/core/{DataCubeLayoutManager.d.ts → DataCubeLayout.d.ts} +5 -5
- package/lib/components/core/DataCubeLayout.d.ts.map +1 -0
- package/lib/components/core/{DataCubeLayoutManager.js → DataCubeLayout.js} +15 -6
- package/lib/components/core/DataCubeLayout.js.map +1 -0
- package/lib/components/core/DataCubePureCodeEditorUtils.d.ts +3 -2
- package/lib/components/core/DataCubePureCodeEditorUtils.d.ts.map +1 -1
- package/lib/components/core/DataCubePureCodeEditorUtils.js +2 -2
- package/lib/components/core/DataCubePureCodeEditorUtils.js.map +1 -1
- package/lib/components/core/DataCubeSettingsPanel.d.ts.map +1 -1
- package/lib/components/core/DataCubeSettingsPanel.js +53 -27
- package/lib/components/core/DataCubeSettingsPanel.js.map +1 -1
- package/lib/components/view/editor/DataCubeEditor.d.ts.map +1 -1
- package/lib/components/view/editor/DataCubeEditor.js +11 -8
- package/lib/components/view/editor/DataCubeEditor.js.map +1 -1
- package/lib/components/view/editor/DataCubeEditorColumnPropertiesPanel.d.ts.map +1 -1
- package/lib/components/view/editor/DataCubeEditorColumnPropertiesPanel.js +18 -17
- package/lib/components/view/editor/DataCubeEditorColumnPropertiesPanel.js.map +1 -1
- package/lib/components/view/editor/DataCubeEditorColumnsPanel.d.ts.map +1 -1
- package/lib/components/view/editor/DataCubeEditorColumnsPanel.js +6 -5
- package/lib/components/view/editor/DataCubeEditorColumnsPanel.js.map +1 -1
- package/lib/components/view/editor/DataCubeEditorGeneralPropertiesPanel.d.ts.map +1 -1
- package/lib/components/view/editor/DataCubeEditorGeneralPropertiesPanel.js +4 -4
- package/lib/components/view/editor/DataCubeEditorGeneralPropertiesPanel.js.map +1 -1
- package/lib/components/view/extend/DataCubeColumnEditor.d.ts.map +1 -1
- package/lib/components/view/extend/DataCubeColumnEditor.js +22 -20
- package/lib/components/view/extend/DataCubeColumnEditor.js.map +1 -1
- package/lib/components/view/filter/DataCubeFilterEditor.d.ts.map +1 -1
- package/lib/components/view/filter/DataCubeFilterEditor.js +8 -6
- package/lib/components/view/filter/DataCubeFilterEditor.js.map +1 -1
- package/lib/components/view/grid/DataCubeGrid.d.ts.map +1 -1
- package/lib/components/view/grid/DataCubeGrid.js +7 -7
- package/lib/components/view/grid/DataCubeGrid.js.map +1 -1
- package/lib/index.css +1 -1
- package/lib/index.d.ts +16 -8
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +16 -8
- package/lib/index.js.map +1 -1
- package/lib/package.json +2 -2
- package/lib/stores/DataCubeAPI.d.ts +36 -3
- package/lib/stores/DataCubeAPI.d.ts.map +1 -1
- package/lib/stores/DataCubeAPI.js +29 -1
- package/lib/stores/DataCubeAPI.js.map +1 -1
- package/lib/stores/DataCubeOptions.d.ts +84 -9
- package/lib/stores/DataCubeOptions.d.ts.map +1 -1
- package/lib/stores/DataCubeState.d.ts +29 -23
- package/lib/stores/DataCubeState.d.ts.map +1 -1
- package/lib/stores/DataCubeState.js +65 -87
- package/lib/stores/DataCubeState.js.map +1 -1
- package/lib/stores/core/DataCubeConfigurationBuilder.d.ts +2 -2
- package/lib/stores/core/DataCubeConfigurationBuilder.d.ts.map +1 -1
- package/lib/stores/core/DataCubeConfigurationBuilder.js +1 -1
- package/lib/stores/core/DataCubeConfigurationBuilder.js.map +1 -1
- package/lib/stores/core/DataCubeEngine.d.ts +23 -50
- package/lib/stores/core/DataCubeEngine.d.ts.map +1 -1
- package/lib/stores/core/DataCubeEngine.js +15 -98
- package/lib/stores/core/DataCubeEngine.js.map +1 -1
- package/lib/stores/core/DataCubeQueryBuilder.d.ts +3 -2
- package/lib/stores/core/DataCubeQueryBuilder.d.ts.map +1 -1
- package/lib/stores/core/DataCubeQueryBuilder.js +1 -1
- package/lib/stores/core/DataCubeQueryBuilder.js.map +1 -1
- package/lib/stores/core/DataCubeQueryBuilderUtils.d.ts +5 -2
- package/lib/stores/core/DataCubeQueryBuilderUtils.d.ts.map +1 -1
- package/lib/stores/core/DataCubeQueryBuilderUtils.js +14 -3
- package/lib/stores/core/DataCubeQueryBuilderUtils.js.map +1 -1
- package/lib/stores/core/DataCubeQueryEngine.d.ts +26 -26
- package/lib/stores/core/DataCubeQueryEngine.d.ts.map +1 -1
- package/lib/stores/core/DataCubeQuerySnapshot.d.ts +2 -2
- package/lib/stores/core/DataCubeQuerySnapshot.d.ts.map +1 -1
- package/lib/stores/core/DataCubeQuerySnapshotBuilder.d.ts +2 -2
- package/lib/stores/core/DataCubeQuerySnapshotBuilder.d.ts.map +1 -1
- package/lib/stores/core/DataCubeQuerySnapshotBuilder.js +57 -40
- package/lib/stores/core/DataCubeQuerySnapshotBuilder.js.map +1 -1
- package/lib/stores/core/DataCubeQuerySnapshotBuilderUtils.d.ts +1 -1
- package/lib/stores/core/DataCubeQuerySnapshotBuilderUtils.d.ts.map +1 -1
- package/lib/stores/core/DataCubeQuerySnapshotBuilderUtils.js +5 -5
- package/lib/stores/core/DataCubeQuerySnapshotBuilderUtils.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation.d.ts +2 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Average.d.ts +2 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Average.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Count.d.ts +2 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Count.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__First.d.ts +2 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__First.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__JoinStrings.d.ts +2 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__JoinStrings.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Last.d.ts +2 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Last.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Max.d.ts +2 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Max.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Min.d.ts +2 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Min.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevPopulation.d.ts +2 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevPopulation.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevSample.d.ts +2 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevSample.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Sum.d.ts +2 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Sum.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__UniqueValue.d.ts +2 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__UniqueValue.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VariancePopulation.d.ts +2 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VariancePopulation.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VarianceSample.d.ts +2 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VarianceSample.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterEditorState.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterEditorState.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Contain.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Contain.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWith.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWith.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Equal.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Equal.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNull.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNull.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThan.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThan.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotContain.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotContain.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWith.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWith.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.d.ts +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.d.ts.map +1 -1
- package/lib/stores/core/model/AdhocQueryDataCubeSource.d.ts +29 -0
- package/lib/stores/core/model/AdhocQueryDataCubeSource.d.ts.map +1 -0
- package/lib/stores/core/model/AdhocQueryDataCubeSource.js +35 -0
- package/lib/stores/core/model/AdhocQueryDataCubeSource.js.map +1 -0
- package/lib/stores/core/model/DataCubeColumn.d.ts.map +1 -0
- package/lib/stores/core/model/DataCubeColumn.js.map +1 -0
- package/lib/stores/core/model/DataCubeConfiguration.d.ts.map +1 -0
- package/lib/stores/core/model/DataCubeConfiguration.js.map +1 -0
- package/lib/stores/core/model/DataCubeQuery.d.ts.map +1 -0
- package/lib/stores/core/model/DataCubeQuery.js.map +1 -0
- package/lib/stores/core/{models → model}/DataCubeSource.d.ts +1 -1
- package/lib/stores/core/model/DataCubeSource.d.ts.map +1 -0
- package/lib/stores/core/{models → model}/DataCubeSource.js +1 -1
- package/lib/stores/core/model/DataCubeSource.js.map +1 -0
- package/lib/stores/services/DataCubeAlertService.d.ts +56 -0
- package/lib/stores/services/DataCubeAlertService.d.ts.map +1 -0
- package/lib/stores/services/DataCubeAlertService.js +89 -0
- package/lib/stores/services/DataCubeAlertService.js.map +1 -0
- package/lib/stores/services/DataCubeDocumentationService.d.ts +29 -0
- package/lib/stores/services/DataCubeDocumentationService.d.ts.map +1 -0
- package/lib/stores/services/DataCubeDocumentationService.js +41 -0
- package/lib/stores/services/DataCubeDocumentationService.js.map +1 -0
- package/lib/stores/{core/DataCubeLayoutManagerState.d.ts → services/DataCubeLayoutService.d.ts} +28 -7
- package/lib/stores/services/DataCubeLayoutService.d.ts.map +1 -0
- package/lib/stores/{core/DataCubeLayoutManagerState.js → services/DataCubeLayoutService.js} +58 -21
- package/lib/stores/services/DataCubeLayoutService.js.map +1 -0
- package/lib/stores/services/DataCubeLogService.d.ts +29 -0
- package/lib/stores/services/DataCubeLogService.d.ts.map +1 -0
- package/lib/stores/services/DataCubeLogService.js +43 -0
- package/lib/stores/services/DataCubeLogService.js.map +1 -0
- package/lib/stores/services/DataCubeNavigationService.d.ts +22 -0
- package/lib/stores/services/DataCubeNavigationService.d.ts.map +1 -0
- package/lib/stores/services/DataCubeNavigationService.js +25 -0
- package/lib/stores/services/DataCubeNavigationService.js.map +1 -0
- package/lib/stores/{view/DataCubeQuerySnapshotManager.d.ts → services/DataCubeQuerySnapshotService.d.ts} +18 -13
- package/lib/stores/services/DataCubeQuerySnapshotService.d.ts.map +1 -0
- package/lib/stores/{view/DataCubeQuerySnapshotManager.js → services/DataCubeQuerySnapshotService.js} +42 -29
- package/lib/stores/services/DataCubeQuerySnapshotService.js.map +1 -0
- package/lib/stores/services/DataCubeSettingService.d.ts +75 -0
- package/lib/stores/services/DataCubeSettingService.d.ts.map +1 -0
- package/lib/stores/services/DataCubeSettingService.js +312 -0
- package/lib/stores/services/DataCubeSettingService.js.map +1 -0
- package/lib/stores/services/DataCubeTaskService.d.ts +41 -0
- package/lib/stores/services/DataCubeTaskService.d.ts.map +1 -0
- package/lib/stores/services/DataCubeTaskService.js +84 -0
- package/lib/stores/services/DataCubeTaskService.js.map +1 -0
- package/lib/stores/services/DataCubeTelemetryService.d.ts +23 -0
- package/lib/stores/services/DataCubeTelemetryService.d.ts.map +1 -0
- package/lib/stores/services/DataCubeTelemetryService.js +25 -0
- package/lib/stores/services/DataCubeTelemetryService.js.map +1 -0
- package/lib/stores/view/DataCubeInfoState.d.ts +2 -1
- package/lib/stores/view/DataCubeInfoState.d.ts.map +1 -1
- package/lib/stores/view/DataCubeInfoState.js +10 -4
- package/lib/stores/view/DataCubeInfoState.js.map +1 -1
- package/lib/stores/view/DataCubeViewState.d.ts +20 -19
- package/lib/stores/view/DataCubeViewState.d.ts.map +1 -1
- package/lib/stores/view/DataCubeViewState.js +47 -57
- package/lib/stores/view/DataCubeViewState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.d.ts +2 -4
- package/lib/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.js +3 -5
- package/lib/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnSelectorState.d.ts +1 -3
- package/lib/stores/view/editor/DataCubeEditorColumnSelectorState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnSelectorState.js +3 -5
- package/lib/stores/view/editor/DataCubeEditorColumnSelectorState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnsPanelState.d.ts +2 -4
- package/lib/stores/view/editor/DataCubeEditorColumnsPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnsPanelState.js +15 -17
- package/lib/stores/view/editor/DataCubeEditorColumnsPanelState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorGeneralPropertiesPanelState.d.ts +1 -4
- package/lib/stores/view/editor/DataCubeEditorGeneralPropertiesPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorGeneralPropertiesPanelState.js +0 -4
- package/lib/stores/view/editor/DataCubeEditorGeneralPropertiesPanelState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.d.ts +3 -5
- package/lib/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.js +7 -9
- package/lib/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorMutableConfiguration.d.ts +1 -1
- package/lib/stores/view/editor/DataCubeEditorMutableConfiguration.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorMutableConfiguration.js +1 -1
- package/lib/stores/view/editor/DataCubeEditorMutableConfiguration.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorPanelState.d.ts +1 -1
- package/lib/stores/view/editor/DataCubeEditorPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorPivotLayoutPanelState.d.ts +2 -4
- package/lib/stores/view/editor/DataCubeEditorPivotLayoutPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorPivotLayoutPanelState.js +3 -5
- package/lib/stores/view/editor/DataCubeEditorPivotLayoutPanelState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorSortsPanelState.d.ts +1 -4
- package/lib/stores/view/editor/DataCubeEditorSortsPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorSortsPanelState.js +10 -14
- package/lib/stores/view/editor/DataCubeEditorSortsPanelState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorState.d.ts +4 -3
- package/lib/stores/view/editor/DataCubeEditorState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorState.js +11 -9
- package/lib/stores/view/editor/DataCubeEditorState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.d.ts +1 -4
- package/lib/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.js +4 -8
- package/lib/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.js.map +1 -1
- package/lib/stores/view/extend/DataCubeColumnEditorState.d.ts +4 -4
- package/lib/stores/view/extend/DataCubeColumnEditorState.d.ts.map +1 -1
- package/lib/stores/view/extend/DataCubeColumnEditorState.js +22 -22
- package/lib/stores/view/extend/DataCubeColumnEditorState.js.map +1 -1
- package/lib/stores/view/extend/DataCubeExtendManagerState.d.ts +7 -6
- package/lib/stores/view/extend/DataCubeExtendManagerState.d.ts.map +1 -1
- package/lib/stores/view/extend/DataCubeExtendManagerState.js +18 -20
- package/lib/stores/view/extend/DataCubeExtendManagerState.js.map +1 -1
- package/lib/stores/view/filter/DataCubeFilterEditorState.d.ts +4 -3
- package/lib/stores/view/filter/DataCubeFilterEditorState.d.ts.map +1 -1
- package/lib/stores/view/filter/DataCubeFilterEditorState.js +8 -6
- package/lib/stores/view/filter/DataCubeFilterEditorState.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridClientEngine.d.ts +6 -4
- package/lib/stores/view/grid/DataCubeGridClientEngine.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridClientEngine.js +46 -35
- package/lib/stores/view/grid/DataCubeGridClientEngine.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridClientExportEngine.d.ts +1 -3
- package/lib/stores/view/grid/DataCubeGridClientExportEngine.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridClientExportEngine.js +7 -9
- package/lib/stores/view/grid/DataCubeGridClientExportEngine.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.d.ts +2 -2
- package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.js +5 -5
- package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridControllerState.d.ts +8 -6
- package/lib/stores/view/grid/DataCubeGridControllerState.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridControllerState.js +8 -3
- package/lib/stores/view/grid/DataCubeGridControllerState.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridMenuBuilder.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridMenuBuilder.js +7 -7
- package/lib/stores/view/grid/DataCubeGridMenuBuilder.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridQueryBuilder.d.ts +1 -1
- package/lib/stores/view/grid/DataCubeGridQueryBuilder.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridQueryBuilder.js +3 -3
- package/lib/stores/view/grid/DataCubeGridQueryBuilder.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridQuerySnapshotBuilder.d.ts +2 -2
- package/lib/stores/view/grid/DataCubeGridQuerySnapshotBuilder.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridQuerySnapshotBuilder.js +2 -2
- package/lib/stores/view/grid/DataCubeGridQuerySnapshotBuilder.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridState.d.ts +4 -2
- package/lib/stores/view/grid/DataCubeGridState.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridState.js +18 -11
- package/lib/stores/view/grid/DataCubeGridState.js.map +1 -1
- package/package.json +6 -6
- package/src/__lib__/DataCubeDocumentation.ts +7 -7
- package/src/__lib__/DataCubeEvent.ts +21 -0
- package/src/__lib__/DataCubeSetting.ts +24 -0
- package/src/components/DataCube.tsx +61 -85
- package/src/components/DataCubePlaceholder.tsx +97 -0
- package/src/components/DataCubeProvider.tsx +1 -1
- package/src/components/DataCubeStatusBar.tsx +71 -0
- package/src/components/DataCubeTitleBar.tsx +81 -0
- package/src/components/DataCubeView.tsx +20 -44
- package/src/components/core/DataCubeAlert.tsx +15 -104
- package/src/components/core/DataCubeDocumentationPanel.tsx +1 -1
- package/src/components/core/DataCubeFormUtils.tsx +256 -24
- package/src/components/core/{DataCubeLayoutManager.tsx → DataCubeLayout.tsx} +33 -22
- package/src/components/core/DataCubePureCodeEditorUtils.tsx +9 -5
- package/src/components/core/DataCubeSettingsPanel.tsx +166 -134
- package/src/components/view/editor/DataCubeEditor.tsx +18 -19
- package/src/components/view/editor/DataCubeEditorColumnPropertiesPanel.tsx +24 -22
- package/src/components/view/editor/DataCubeEditorColumnsPanel.tsx +14 -18
- package/src/components/view/editor/DataCubeEditorGeneralPropertiesPanel.tsx +6 -5
- package/src/components/view/extend/DataCubeColumnEditor.tsx +43 -38
- package/src/components/view/filter/DataCubeFilterEditor.tsx +14 -20
- package/src/components/view/grid/DataCubeGrid.tsx +9 -8
- package/src/index.tsx +30 -8
- package/src/stores/DataCubeAPI.ts +58 -3
- package/src/stores/DataCubeOptions.ts +108 -15
- package/src/stores/DataCubeState.tsx +93 -123
- package/src/stores/core/DataCubeConfigurationBuilder.ts +2 -2
- package/src/stores/core/DataCubeEngine.tsx +51 -234
- package/src/stores/core/DataCubeQueryBuilder.ts +3 -2
- package/src/stores/core/DataCubeQueryBuilderUtils.ts +19 -2
- package/src/stores/core/DataCubeQueryEngine.ts +27 -27
- package/src/stores/core/DataCubeQuerySnapshot.ts +2 -2
- package/src/stores/core/DataCubeQuerySnapshotBuilder.ts +77 -42
- package/src/stores/core/DataCubeQuerySnapshotBuilderUtils.ts +5 -5
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation.ts +2 -2
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Average.tsx +2 -2
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Count.tsx +2 -2
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__First.tsx +2 -2
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__JoinStrings.tsx +2 -2
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Last.tsx +2 -2
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Max.tsx +2 -2
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Min.tsx +2 -2
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevPopulation.tsx +2 -2
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevSample.tsx +2 -2
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Sum.tsx +2 -2
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__UniqueValue.tsx +2 -2
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__VariancePopulation.tsx +2 -2
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__VarianceSample.tsx +2 -2
- package/src/stores/core/filter/DataCubeQueryFilterEditorState.ts +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation.ts +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__Contain.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__EndWith.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__Equal.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__IsNull.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThan.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotContain.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__StartWith.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.tsx +1 -1
- package/src/stores/core/model/AdhocQueryDataCubeSource.ts +45 -0
- package/src/stores/core/{models → model}/DataCubeSource.ts +1 -1
- package/src/stores/services/DataCubeAlertService.tsx +169 -0
- package/src/stores/services/DataCubeDocumentationService.tsx +74 -0
- package/src/stores/{core/DataCubeLayoutManagerState.ts → services/DataCubeLayoutService.tsx} +96 -23
- package/src/stores/services/DataCubeLogService.ts +54 -0
- package/src/stores/services/DataCubeNavigationService.ts +29 -0
- package/src/stores/{view/DataCubeQuerySnapshotManager.ts → services/DataCubeQuerySnapshotService.ts} +62 -40
- package/src/stores/services/DataCubeSettingService.tsx +489 -0
- package/src/stores/services/DataCubeTaskService.ts +102 -0
- package/src/stores/services/DataCubeTelemetryService.ts +30 -0
- package/src/stores/view/DataCubeInfoState.ts +12 -4
- package/src/stores/view/DataCubeViewState.ts +60 -68
- package/src/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.ts +4 -6
- package/src/stores/view/editor/DataCubeEditorColumnSelectorState.ts +3 -6
- package/src/stores/view/editor/DataCubeEditorColumnsPanelState.ts +16 -18
- package/src/stores/view/editor/DataCubeEditorGeneralPropertiesPanelState.ts +1 -8
- package/src/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.ts +9 -11
- package/src/stores/view/editor/DataCubeEditorMutableConfiguration.ts +1 -1
- package/src/stores/view/editor/DataCubeEditorPanelState.ts +1 -1
- package/src/stores/view/editor/DataCubeEditorPivotLayoutPanelState.ts +4 -7
- package/src/stores/view/editor/DataCubeEditorSortsPanelState.ts +11 -16
- package/src/stores/view/editor/DataCubeEditorState.tsx +23 -15
- package/src/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.ts +5 -10
- package/src/stores/view/extend/DataCubeColumnEditorState.tsx +30 -28
- package/src/stores/view/extend/DataCubeExtendManagerState.tsx +39 -30
- package/src/stores/view/filter/DataCubeFilterEditorState.tsx +11 -8
- package/src/stores/view/grid/DataCubeGridClientEngine.ts +69 -50
- package/src/stores/view/grid/DataCubeGridClientExportEngine.ts +7 -10
- package/src/stores/view/grid/DataCubeGridConfigurationBuilder.tsx +3 -6
- package/src/stores/view/grid/DataCubeGridControllerState.ts +11 -3
- package/src/stores/view/grid/DataCubeGridMenuBuilder.tsx +20 -8
- package/src/stores/view/grid/DataCubeGridQueryBuilder.ts +9 -3
- package/src/stores/view/grid/DataCubeGridQuerySnapshotBuilder.ts +2 -2
- package/src/stores/view/grid/DataCubeGridState.ts +37 -14
- package/tsconfig.json +20 -8
- package/lib/components/core/DataCubeLayoutManager.d.ts.map +0 -1
- package/lib/components/core/DataCubeLayoutManager.js.map +0 -1
- package/lib/stores/DataCubeSettings.d.ts +0 -42
- package/lib/stores/DataCubeSettings.d.ts.map +0 -1
- package/lib/stores/DataCubeSettings.js +0 -76
- package/lib/stores/DataCubeSettings.js.map +0 -1
- package/lib/stores/core/DataCubeLayoutManagerState.d.ts.map +0 -1
- package/lib/stores/core/DataCubeLayoutManagerState.js.map +0 -1
- package/lib/stores/core/models/DataCubeColumn.d.ts.map +0 -1
- package/lib/stores/core/models/DataCubeColumn.js.map +0 -1
- package/lib/stores/core/models/DataCubeConfiguration.d.ts.map +0 -1
- package/lib/stores/core/models/DataCubeConfiguration.js.map +0 -1
- package/lib/stores/core/models/DataCubeQuery.d.ts.map +0 -1
- package/lib/stores/core/models/DataCubeQuery.js.map +0 -1
- package/lib/stores/core/models/DataCubeSource.d.ts.map +0 -1
- package/lib/stores/core/models/DataCubeSource.js.map +0 -1
- package/lib/stores/view/DataCubeQuerySnapshotManager.d.ts.map +0 -1
- package/lib/stores/view/DataCubeQuerySnapshotManager.js.map +0 -1
- package/src/stores/DataCubeSettings.ts +0 -107
- /package/lib/stores/core/{models → model}/DataCubeColumn.d.ts +0 -0
- /package/lib/stores/core/{models → model}/DataCubeColumn.js +0 -0
- /package/lib/stores/core/{models → model}/DataCubeConfiguration.d.ts +0 -0
- /package/lib/stores/core/{models → model}/DataCubeConfiguration.js +0 -0
- /package/lib/stores/core/{models → model}/DataCubeQuery.d.ts +0 -0
- /package/lib/stores/core/{models → model}/DataCubeQuery.js +0 -0
- /package/src/stores/core/{models → model}/DataCubeColumn.ts +0 -0
- /package/src/stores/core/{models → model}/DataCubeConfiguration.ts +0 -0
- /package/src/stores/core/{models → model}/DataCubeQuery.ts +0 -0
package/src/stores/{core/DataCubeLayoutManagerState.ts → services/DataCubeLayoutService.tsx}
RENAMED
|
@@ -23,6 +23,13 @@ import {
|
|
|
23
23
|
runInAction,
|
|
24
24
|
} from 'mobx';
|
|
25
25
|
|
|
26
|
+
export type WindowSpecification = {
|
|
27
|
+
x: number;
|
|
28
|
+
y: number;
|
|
29
|
+
width: number;
|
|
30
|
+
height: number;
|
|
31
|
+
};
|
|
32
|
+
|
|
26
33
|
export type WindowConfiguration = {
|
|
27
34
|
x?: number | undefined;
|
|
28
35
|
y?: number | undefined;
|
|
@@ -51,13 +58,21 @@ export class WindowState {
|
|
|
51
58
|
readonly uuid = uuid();
|
|
52
59
|
readonly configuration: LayoutConfiguration;
|
|
53
60
|
readonly onClose?: (() => void) | undefined;
|
|
61
|
+
ownerId?: string | undefined;
|
|
62
|
+
specification?: WindowSpecification | undefined;
|
|
54
63
|
|
|
55
64
|
constructor(
|
|
56
65
|
configuration: LayoutConfiguration,
|
|
57
66
|
onClose?: (() => void) | undefined,
|
|
67
|
+
ownerId?: string | undefined,
|
|
58
68
|
) {
|
|
59
69
|
this.configuration = configuration;
|
|
60
70
|
this.onClose = onClose;
|
|
71
|
+
this.ownerId = ownerId;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
setSpecification(val: WindowSpecification) {
|
|
75
|
+
this.specification = val;
|
|
61
76
|
}
|
|
62
77
|
}
|
|
63
78
|
|
|
@@ -75,7 +90,7 @@ export const DEFAULT_TOOL_PANEL_WINDOW_CONFIG: WindowConfiguration = {
|
|
|
75
90
|
center: true,
|
|
76
91
|
};
|
|
77
92
|
|
|
78
|
-
export const
|
|
93
|
+
export const DEFAULT_ALERT_WINDOW_CONFIG: WindowConfiguration = {
|
|
79
94
|
width: 500,
|
|
80
95
|
height: 200,
|
|
81
96
|
minWidth: 200,
|
|
@@ -83,23 +98,17 @@ export const DEFAULT_SMALL_ALERT_WINDOW_CONFIG: WindowConfiguration = {
|
|
|
83
98
|
center: true,
|
|
84
99
|
};
|
|
85
100
|
|
|
86
|
-
export const DEFAULT_LARGE_ALERT_WINDOW_CONFIG: WindowConfiguration = {
|
|
87
|
-
width: 600,
|
|
88
|
-
height: 200,
|
|
89
|
-
minWidth: 300,
|
|
90
|
-
minHeight: 150,
|
|
91
|
-
center: true,
|
|
92
|
-
};
|
|
93
|
-
|
|
94
101
|
export class DisplayState {
|
|
95
|
-
private readonly
|
|
102
|
+
private readonly layout: LayoutManager;
|
|
96
103
|
readonly configuration: LayoutConfiguration;
|
|
104
|
+
readonly ownerId?: string | undefined;
|
|
97
105
|
window?: WindowState | undefined;
|
|
98
106
|
|
|
99
107
|
constructor(
|
|
100
|
-
|
|
108
|
+
layout: LayoutManager,
|
|
101
109
|
title: string,
|
|
102
110
|
contentRenderer: (config: LayoutConfiguration) => React.ReactNode,
|
|
111
|
+
ownerId?: string | undefined,
|
|
103
112
|
) {
|
|
104
113
|
makeObservable(this, {
|
|
105
114
|
window: observable,
|
|
@@ -108,9 +117,10 @@ export class DisplayState {
|
|
|
108
117
|
close: action,
|
|
109
118
|
});
|
|
110
119
|
|
|
111
|
-
this.
|
|
120
|
+
this.layout = layout;
|
|
112
121
|
this.configuration = new LayoutConfiguration(title, contentRenderer);
|
|
113
122
|
this.configuration.window = DEFAULT_TOOL_PANEL_WINDOW_CONFIG;
|
|
123
|
+
this.ownerId = ownerId;
|
|
114
124
|
}
|
|
115
125
|
|
|
116
126
|
get isOpen() {
|
|
@@ -119,26 +129,30 @@ export class DisplayState {
|
|
|
119
129
|
|
|
120
130
|
open() {
|
|
121
131
|
if (this.window) {
|
|
122
|
-
this.
|
|
132
|
+
this.layout.bringWindowFront(this.window);
|
|
123
133
|
} else {
|
|
124
|
-
this.window = new WindowState(
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
134
|
+
this.window = new WindowState(
|
|
135
|
+
this.configuration,
|
|
136
|
+
() =>
|
|
137
|
+
runInAction(() => {
|
|
138
|
+
this.window = undefined;
|
|
139
|
+
}),
|
|
140
|
+
this.ownerId,
|
|
128
141
|
);
|
|
129
|
-
this.
|
|
142
|
+
this.layout.newWindow(this.window, this.ownerId);
|
|
130
143
|
}
|
|
131
144
|
}
|
|
132
145
|
|
|
133
146
|
close() {
|
|
134
147
|
if (this.window) {
|
|
135
|
-
this.
|
|
148
|
+
this.layout.closeWindow(this.window);
|
|
136
149
|
this.window = undefined;
|
|
137
150
|
}
|
|
138
151
|
}
|
|
139
152
|
}
|
|
140
153
|
|
|
141
|
-
export class
|
|
154
|
+
export class LayoutManager {
|
|
155
|
+
// TODO?: keep a hashmap, in parallel, for faster lookup
|
|
142
156
|
windows: WindowState[] = [];
|
|
143
157
|
|
|
144
158
|
constructor() {
|
|
@@ -147,6 +161,7 @@ export class LayoutManagerState {
|
|
|
147
161
|
newWindow: action,
|
|
148
162
|
bringWindowFront: action,
|
|
149
163
|
closeWindow: action,
|
|
164
|
+
closeWindows: action,
|
|
150
165
|
});
|
|
151
166
|
}
|
|
152
167
|
|
|
@@ -154,15 +169,17 @@ export class LayoutManagerState {
|
|
|
154
169
|
title: string,
|
|
155
170
|
contentRenderer: (config: LayoutConfiguration) => React.ReactNode,
|
|
156
171
|
windowConfiguration?: WindowConfiguration | undefined,
|
|
157
|
-
|
|
158
|
-
|
|
172
|
+
ownerId?: string | undefined,
|
|
173
|
+
) {
|
|
174
|
+
const display = new DisplayState(this, title, contentRenderer, ownerId);
|
|
159
175
|
if (windowConfiguration) {
|
|
160
176
|
display.configuration.window = windowConfiguration;
|
|
161
177
|
}
|
|
162
178
|
return display;
|
|
163
179
|
}
|
|
164
180
|
|
|
165
|
-
newWindow(window: WindowState) {
|
|
181
|
+
newWindow(window: WindowState, ownerId?: string | undefined) {
|
|
182
|
+
window.ownerId = window.ownerId ?? ownerId;
|
|
166
183
|
this.windows.push(window);
|
|
167
184
|
}
|
|
168
185
|
|
|
@@ -181,4 +198,60 @@ export class LayoutManagerState {
|
|
|
181
198
|
window.onClose?.();
|
|
182
199
|
}
|
|
183
200
|
}
|
|
201
|
+
|
|
202
|
+
closeWindows(windows: WindowState[]) {
|
|
203
|
+
this.windows = this.windows.filter(
|
|
204
|
+
(window) => !windows.find((w) => w.uuid === window.uuid),
|
|
205
|
+
);
|
|
206
|
+
windows.forEach((window) => window.onClose?.());
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
export class DataCubeLayoutService {
|
|
211
|
+
readonly uuid = uuid();
|
|
212
|
+
readonly manager: LayoutManager;
|
|
213
|
+
|
|
214
|
+
constructor(manager?: LayoutManager | undefined) {
|
|
215
|
+
makeObservable(this, {
|
|
216
|
+
windows: computed,
|
|
217
|
+
});
|
|
218
|
+
|
|
219
|
+
this.manager = manager ?? new LayoutManager();
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
get windows() {
|
|
223
|
+
return this.manager.windows.filter(
|
|
224
|
+
(window) => window.ownerId === this.uuid,
|
|
225
|
+
);
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
newDisplay(
|
|
229
|
+
title: string,
|
|
230
|
+
contentRenderer: (config: LayoutConfiguration) => React.ReactNode,
|
|
231
|
+
windowConfiguration?: WindowConfiguration | undefined,
|
|
232
|
+
) {
|
|
233
|
+
return this.manager.newDisplay(
|
|
234
|
+
title,
|
|
235
|
+
contentRenderer,
|
|
236
|
+
windowConfiguration,
|
|
237
|
+
this.uuid,
|
|
238
|
+
);
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
newWindow(window: WindowState) {
|
|
242
|
+
this.manager.newWindow(window, this.uuid);
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
bringWindowFront(window: WindowState) {
|
|
246
|
+
this.manager.bringWindowFront(window);
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
closeWindow(window: WindowState) {
|
|
250
|
+
this.manager.closeWindow(window);
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
dispose() {
|
|
254
|
+
// close all windows owned by this service
|
|
255
|
+
this.manager.closeWindows(this.windows);
|
|
256
|
+
}
|
|
184
257
|
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2020-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
|
+
|
|
17
|
+
import type { LogEvent } from '@finos/legend-shared';
|
|
18
|
+
import type { DataCubeEngine } from '../core/DataCubeEngine.js';
|
|
19
|
+
|
|
20
|
+
export class DataCubeLogService {
|
|
21
|
+
private readonly _engine: DataCubeEngine;
|
|
22
|
+
|
|
23
|
+
constructor(engine: DataCubeEngine) {
|
|
24
|
+
this._engine = engine;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
logDebug(message: string, ...data: unknown[]) {
|
|
28
|
+
this._engine.logDebug(message, ...data);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
debugProcess(processName: string, ...data: [string, unknown][]) {
|
|
32
|
+
this._engine.debugProcess(processName, ...data);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
logInfo(event: LogEvent, ...data: unknown[]) {
|
|
36
|
+
this._engine.logInfo(event, ...data);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
logWarning(event: LogEvent, ...data: unknown[]) {
|
|
40
|
+
this._engine.logWarning(event, ...data);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
logError(event: LogEvent, ...data: unknown[]) {
|
|
44
|
+
this._engine.logError(event, ...data);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
logUnhandledError(error: Error) {
|
|
48
|
+
this._engine.logUnhandledError(error);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
logIllegalStateError(message: string, error?: Error) {
|
|
52
|
+
this._engine.logIllegalStateError(message, error);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2020-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
|
+
|
|
17
|
+
import type { DataCubeEngine } from '../core/DataCubeEngine.js';
|
|
18
|
+
|
|
19
|
+
export class DataCubeNavigationService {
|
|
20
|
+
private readonly _engine: DataCubeEngine;
|
|
21
|
+
|
|
22
|
+
constructor(engine: DataCubeEngine) {
|
|
23
|
+
this._engine = engine;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
openLink(url: string) {
|
|
27
|
+
this._engine.openLink(url);
|
|
28
|
+
}
|
|
29
|
+
}
|
package/src/stores/{view/DataCubeQuerySnapshotManager.ts → services/DataCubeQuerySnapshotService.ts}
RENAMED
|
@@ -14,7 +14,6 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
|
-
import type { DataCubeViewState } from './DataCubeViewState.js';
|
|
18
17
|
import type { DataCubeQuerySnapshot } from '../core/DataCubeQuerySnapshot.js';
|
|
19
18
|
import {
|
|
20
19
|
IllegalStateError,
|
|
@@ -22,7 +21,11 @@ import {
|
|
|
22
21
|
deepDiff,
|
|
23
22
|
guaranteeNonNullable,
|
|
24
23
|
} from '@finos/legend-shared';
|
|
25
|
-
import type { DataCubeQuery } from '../core/
|
|
24
|
+
import type { DataCubeQuery } from '../core/model/DataCubeQuery.js';
|
|
25
|
+
import { DataCubeSettingKey } from '../../__lib__/DataCubeSetting.js';
|
|
26
|
+
import type { DataCubeEngine } from '../core/DataCubeEngine.js';
|
|
27
|
+
import type { DataCubeSettingService } from './DataCubeSettingService.js';
|
|
28
|
+
import type { DataCubeLogService } from './DataCubeLogService.js';
|
|
26
29
|
|
|
27
30
|
// TODO: set a stack depth when we implement undo/redo
|
|
28
31
|
// const DATA_CUBE_MAX_SNAPSHOT_COUNT = 100;
|
|
@@ -36,36 +39,52 @@ interface DataCubeQuerySnapshotSubscriber {
|
|
|
36
39
|
export abstract class DataCubeQuerySnapshotController
|
|
37
40
|
implements DataCubeQuerySnapshotSubscriber
|
|
38
41
|
{
|
|
39
|
-
readonly
|
|
42
|
+
protected readonly _engine: DataCubeEngine;
|
|
43
|
+
protected readonly _settingService: DataCubeSettingService;
|
|
44
|
+
protected readonly _snapshotService: DataCubeQuerySnapshotService;
|
|
40
45
|
|
|
41
|
-
private
|
|
46
|
+
private _latestSnapshot: DataCubeQuerySnapshot | undefined;
|
|
42
47
|
|
|
43
|
-
constructor(
|
|
44
|
-
|
|
48
|
+
constructor(
|
|
49
|
+
engine: DataCubeEngine,
|
|
50
|
+
settingService: DataCubeSettingService,
|
|
51
|
+
snapshotService: DataCubeQuerySnapshotService,
|
|
52
|
+
) {
|
|
53
|
+
this._engine = engine;
|
|
54
|
+
this._settingService = settingService;
|
|
55
|
+
this._snapshotService = snapshotService;
|
|
45
56
|
}
|
|
46
57
|
|
|
47
58
|
abstract getSnapshotSubscriberName(): string;
|
|
48
59
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
): Promise<void>;
|
|
60
|
+
getLatestSnapshot() {
|
|
61
|
+
return this._latestSnapshot;
|
|
62
|
+
}
|
|
53
63
|
|
|
54
64
|
async receiveSnapshot(snapshot: DataCubeQuerySnapshot) {
|
|
55
|
-
const previousSnapshot = this.
|
|
56
|
-
this.
|
|
65
|
+
const previousSnapshot = this._latestSnapshot;
|
|
66
|
+
this._latestSnapshot = snapshot;
|
|
57
67
|
|
|
58
68
|
// NOTE: fully clone the snapshot before applying it to avoid any potential
|
|
59
69
|
// mutation of the snapshot by the subscriber
|
|
60
70
|
await this.applySnapshot(snapshot.INTERNAL__fullClone(), previousSnapshot);
|
|
61
71
|
}
|
|
62
72
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
73
|
+
abstract applySnapshot(
|
|
74
|
+
snapshot: DataCubeQuerySnapshot,
|
|
75
|
+
previousSnapshot: DataCubeQuerySnapshot | undefined,
|
|
76
|
+
): Promise<void>;
|
|
66
77
|
|
|
67
|
-
|
|
68
|
-
|
|
78
|
+
publishSnapshot(snapshot: DataCubeQuerySnapshot) {
|
|
79
|
+
const previousSnapshot = this._latestSnapshot;
|
|
80
|
+
this._latestSnapshot = snapshot;
|
|
81
|
+
|
|
82
|
+
if (
|
|
83
|
+
this._settingService.getBooleanValue(
|
|
84
|
+
DataCubeSettingKey.DEBUGGER__ENABLE_DEBUG_MODE,
|
|
85
|
+
)
|
|
86
|
+
) {
|
|
87
|
+
this._engine.debugProcess(
|
|
69
88
|
`New Snapshot`,
|
|
70
89
|
['Publisher', this.getSnapshotSubscriberName()],
|
|
71
90
|
['Snapshot', snapshot],
|
|
@@ -74,42 +93,47 @@ export abstract class DataCubeQuerySnapshotController
|
|
|
74
93
|
);
|
|
75
94
|
}
|
|
76
95
|
|
|
77
|
-
this.
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
getLatestSnapshot() {
|
|
81
|
-
return this.latestSnapshot;
|
|
96
|
+
this._snapshotService.broadcastSnapshot(snapshot);
|
|
82
97
|
}
|
|
83
98
|
}
|
|
84
99
|
|
|
85
|
-
export class
|
|
86
|
-
private readonly
|
|
87
|
-
private readonly
|
|
88
|
-
private readonly snapshots: DataCubeQuerySnapshot[] = [];
|
|
100
|
+
export class DataCubeQuerySnapshotService {
|
|
101
|
+
private readonly _engine: DataCubeEngine;
|
|
102
|
+
private readonly _logService: DataCubeLogService;
|
|
89
103
|
|
|
104
|
+
private readonly _subscribers: DataCubeQuerySnapshotSubscriber[] = [];
|
|
105
|
+
private readonly _snapshots: DataCubeQuerySnapshot[] = []; // stack
|
|
90
106
|
private _initialSnapshot: DataCubeQuerySnapshot | undefined;
|
|
91
107
|
private _initialQuery: DataCubeQuery | undefined;
|
|
92
108
|
|
|
93
|
-
constructor(
|
|
94
|
-
this.
|
|
109
|
+
constructor(engine: DataCubeEngine, logService: DataCubeLogService) {
|
|
110
|
+
this._engine = engine;
|
|
111
|
+
this._logService = logService;
|
|
95
112
|
}
|
|
96
113
|
|
|
97
114
|
get currentSnapshot() {
|
|
98
|
-
return guaranteeNonNullable(this.
|
|
115
|
+
return guaranteeNonNullable(this._snapshots[this._snapshots.length - 1]);
|
|
99
116
|
}
|
|
100
117
|
|
|
101
118
|
registerSubscriber(subscriber: DataCubeQuerySnapshotSubscriber) {
|
|
102
|
-
const existingSubscriber = this.
|
|
119
|
+
const existingSubscriber = this._subscribers.find(
|
|
103
120
|
(sub) =>
|
|
104
121
|
sub.getSnapshotSubscriberName() ===
|
|
105
122
|
subscriber.getSnapshotSubscriberName(),
|
|
106
123
|
);
|
|
107
124
|
if (existingSubscriber) {
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
125
|
+
// eslint-disable-next-line no-process-env
|
|
126
|
+
if (process.env.NODE_ENV === 'development') {
|
|
127
|
+
this._logService.logDebug(
|
|
128
|
+
`Subscriber with name '${subscriber.getSnapshotSubscriberName()}' already exists`,
|
|
129
|
+
);
|
|
130
|
+
} else {
|
|
131
|
+
throw new IllegalStateError(
|
|
132
|
+
`Subscriber with name '${subscriber.getSnapshotSubscriberName()}' already exists`,
|
|
133
|
+
);
|
|
134
|
+
}
|
|
111
135
|
}
|
|
112
|
-
this.
|
|
136
|
+
this._subscribers.push(subscriber);
|
|
113
137
|
}
|
|
114
138
|
|
|
115
139
|
initialize(
|
|
@@ -141,18 +165,18 @@ export class DataCubeQuerySnapshotManager {
|
|
|
141
165
|
|
|
142
166
|
broadcastSnapshot(snapshot: DataCubeQuerySnapshot) {
|
|
143
167
|
if (!snapshot.isFinalized()) {
|
|
144
|
-
this.
|
|
168
|
+
this._logService.logIllegalStateError(
|
|
145
169
|
`Snapshot must be finalized before broadcasting`,
|
|
146
170
|
);
|
|
147
171
|
return;
|
|
148
172
|
}
|
|
149
|
-
this.
|
|
150
|
-
this.
|
|
173
|
+
this._snapshots.push(snapshot);
|
|
174
|
+
this._subscribers.forEach((subscriber) => {
|
|
151
175
|
const currentSnapshot = subscriber.getLatestSnapshot();
|
|
152
176
|
if (currentSnapshot?.uuid !== snapshot.uuid) {
|
|
153
177
|
subscriber.receiveSnapshot(snapshot).catch((error: unknown) => {
|
|
154
178
|
assertErrorThrown(error);
|
|
155
|
-
this.
|
|
179
|
+
this._logService.logIllegalStateError(
|
|
156
180
|
`Error occured while subscribers receiving and applying new snapshot should be handled gracefully`,
|
|
157
181
|
error,
|
|
158
182
|
);
|
|
@@ -160,6 +184,4 @@ export class DataCubeQuerySnapshotManager {
|
|
|
160
184
|
}
|
|
161
185
|
});
|
|
162
186
|
}
|
|
163
|
-
|
|
164
|
-
// TODO: replace snapshot (for minor modifications such as adjusting the cast columns)
|
|
165
187
|
}
|