@finos/legend-data-cube 0.0.9 → 0.0.11
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/lib/components/DataCube.d.ts +6 -1
- package/lib/components/DataCube.d.ts.map +1 -1
- package/lib/components/DataCube.js +35 -28
- package/lib/components/DataCube.js.map +1 -1
- package/lib/components/DataCubeProvider.d.ts +2 -10
- package/lib/components/DataCubeProvider.d.ts.map +1 -1
- package/lib/components/DataCubeProvider.js +3 -15
- package/lib/components/DataCubeProvider.js.map +1 -1
- package/lib/components/DataCubeView.d.ts +22 -0
- package/lib/components/DataCubeView.d.ts.map +1 -0
- package/lib/components/DataCubeView.js +34 -0
- package/lib/components/DataCubeView.js.map +1 -0
- package/lib/components/core/DataCubeAlert.d.ts.map +1 -1
- package/lib/components/core/DataCubeAlert.js +2 -4
- package/lib/components/core/DataCubeAlert.js.map +1 -1
- package/lib/components/core/DataCubeDocumentationPanel.d.ts.map +1 -1
- package/lib/components/core/DataCubeDocumentationPanel.js +1 -2
- package/lib/components/core/DataCubeDocumentationPanel.js.map +1 -1
- package/lib/components/core/DataCubeFormUtils.d.ts.map +1 -1
- package/lib/components/core/DataCubeFormUtils.js +7 -7
- package/lib/components/core/DataCubeFormUtils.js.map +1 -1
- package/lib/components/core/DataCubePureCodeEditorUtils.d.ts +3 -3
- 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 +16 -16
- package/lib/components/core/DataCubeSettingsPanel.js.map +1 -1
- package/lib/components/view/editor/DataCubeEditor.js +3 -3
- package/lib/components/view/editor/DataCubeEditor.js.map +1 -1
- package/lib/components/view/editor/DataCubeEditorColumnPropertiesPanel.js +1 -1
- package/lib/components/view/editor/DataCubeEditorGeneralPropertiesPanel.js +2 -2
- package/lib/components/view/editor/DataCubeEditorGeneralPropertiesPanel.js.map +1 -1
- package/lib/components/view/extend/DataCubeColumnEditor.js +7 -7
- package/lib/components/view/extend/DataCubeColumnEditor.js.map +1 -1
- package/lib/components/view/grid/DataCubeGrid.d.ts.map +1 -1
- package/lib/components/view/grid/DataCubeGrid.js +12 -6
- package/lib/components/view/grid/DataCubeGrid.js.map +1 -1
- package/lib/index.css +1 -1
- package/lib/index.d.ts +6 -3
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +6 -3
- package/lib/index.js.map +1 -1
- package/lib/package.json +1 -1
- package/lib/stores/DataCubeAPI.d.ts +21 -0
- package/lib/stores/DataCubeAPI.d.ts.map +1 -0
- package/lib/stores/DataCubeAPI.js +17 -0
- package/lib/stores/DataCubeAPI.js.map +1 -0
- package/lib/stores/DataCubeOptions.d.ts +27 -0
- package/lib/stores/DataCubeOptions.d.ts.map +1 -0
- package/lib/stores/DataCubeOptions.js +17 -0
- package/lib/stores/DataCubeOptions.js.map +1 -0
- package/lib/stores/DataCubeSettings.d.ts +42 -0
- package/lib/stores/DataCubeSettings.d.ts.map +1 -0
- package/lib/stores/DataCubeSettings.js +76 -0
- package/lib/stores/DataCubeSettings.js.map +1 -0
- package/lib/stores/DataCubeState.d.ts +20 -6
- package/lib/stores/DataCubeState.d.ts.map +1 -1
- package/lib/stores/DataCubeState.js +61 -16
- package/lib/stores/DataCubeState.js.map +1 -1
- package/lib/stores/core/DataCubeConfigurationBuilder.d.ts +4 -9
- 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 +109 -88
- package/lib/stores/core/DataCubeEngine.d.ts.map +1 -1
- package/lib/stores/core/DataCubeEngine.js +166 -123
- package/lib/stores/core/DataCubeEngine.js.map +1 -1
- package/lib/stores/core/DataCubeQueryBuilder.d.ts +5 -5
- package/lib/stores/core/DataCubeQueryBuilder.d.ts.map +1 -1
- package/lib/stores/core/DataCubeQueryBuilder.js +13 -18
- package/lib/stores/core/DataCubeQueryBuilder.js.map +1 -1
- package/lib/stores/core/DataCubeQueryBuilderUtils.d.ts +7 -6
- package/lib/stores/core/DataCubeQueryBuilderUtils.d.ts.map +1 -1
- package/lib/stores/core/DataCubeQueryBuilderUtils.js +2 -1
- package/lib/stores/core/DataCubeQueryBuilderUtils.js.map +1 -1
- package/lib/stores/core/DataCubeQuerySnapshot.d.ts +12 -36
- package/lib/stores/core/DataCubeQuerySnapshot.d.ts.map +1 -1
- package/lib/stores/core/DataCubeQuerySnapshot.js +5 -26
- package/lib/stores/core/DataCubeQuerySnapshot.js.map +1 -1
- package/lib/stores/core/DataCubeQuerySnapshotBuilder.d.ts +4 -3
- package/lib/stores/core/DataCubeQuerySnapshotBuilder.d.ts.map +1 -1
- package/lib/stores/core/DataCubeQuerySnapshotBuilder.js +9 -8
- package/lib/stores/core/DataCubeQuerySnapshotBuilder.js.map +1 -1
- package/lib/stores/core/DataCubeQuerySnapshotBuilderUtils.d.ts +2 -2
- package/lib/stores/core/DataCubeQuerySnapshotBuilderUtils.d.ts.map +1 -1
- package/lib/stores/core/DataCubeQuerySnapshotBuilderUtils.js +1 -1
- package/lib/stores/core/DataCubeQuerySnapshotBuilderUtils.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation.d.ts +3 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Average.d.ts +3 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Average.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Average.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Count.d.ts +3 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Count.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Count.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__First.d.ts +3 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__First.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__First.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__JoinStrings.d.ts +3 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__JoinStrings.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__JoinStrings.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Last.d.ts +3 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Last.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Last.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Max.d.ts +3 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Max.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Max.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Min.d.ts +3 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Min.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Min.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevPopulation.d.ts +3 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevPopulation.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevPopulation.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevSample.d.ts +3 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevSample.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevSample.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Sum.d.ts +3 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Sum.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Sum.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__UniqueValue.d.ts +3 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__UniqueValue.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__UniqueValue.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VariancePopulation.d.ts +3 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VariancePopulation.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VariancePopulation.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VarianceSample.d.ts +3 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VarianceSample.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VarianceSample.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterEditorState.d.ts +5 -4
- package/lib/stores/core/filter/DataCubeQueryFilterEditorState.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterEditorState.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Contain.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Contain.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Contain.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWith.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWith.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWith.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Equal.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Equal.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Equal.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNull.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNull.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNull.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThan.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThan.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThan.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotContain.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotContain.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotContain.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWith.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWith.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWith.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.d.ts +4 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.js.map +1 -1
- package/lib/stores/core/models/DataCubeColumn.d.ts +30 -0
- package/lib/stores/core/models/DataCubeColumn.d.ts.map +1 -0
- package/lib/stores/core/models/DataCubeColumn.js +23 -0
- package/lib/stores/core/models/DataCubeColumn.js.map +1 -0
- package/lib/stores/core/{DataCubeConfiguration.d.ts → models/DataCubeConfiguration.d.ts} +3 -2
- package/lib/stores/core/models/DataCubeConfiguration.d.ts.map +1 -0
- package/lib/stores/core/{DataCubeConfiguration.js → models/DataCubeConfiguration.js} +3 -1
- package/lib/stores/core/models/DataCubeConfiguration.js.map +1 -0
- package/lib/stores/core/{DataCubeQuery.d.ts → models/DataCubeQuery.d.ts} +1 -18
- package/lib/stores/core/models/DataCubeQuery.d.ts.map +1 -0
- package/lib/stores/core/models/DataCubeQuery.js +30 -0
- package/lib/stores/core/models/DataCubeQuery.js.map +1 -0
- package/lib/stores/core/models/DataCubeSource.d.ts +24 -0
- package/lib/stores/core/models/DataCubeSource.d.ts.map +1 -0
- package/lib/stores/core/models/DataCubeSource.js +22 -0
- package/lib/stores/core/models/DataCubeSource.js.map +1 -0
- package/lib/stores/view/DataCubeInfoState.d.ts +0 -4
- package/lib/stores/view/DataCubeInfoState.d.ts.map +1 -1
- package/lib/stores/view/DataCubeInfoState.js +10 -13
- package/lib/stores/view/DataCubeInfoState.js.map +1 -1
- package/lib/stores/view/DataCubeQuerySnapshotManager.d.ts +1 -1
- package/lib/stores/view/DataCubeQuerySnapshotManager.d.ts.map +1 -1
- package/lib/stores/view/DataCubeQuerySnapshotManager.js +4 -4
- package/lib/stores/view/DataCubeQuerySnapshotManager.js.map +1 -1
- package/lib/stores/view/DataCubeViewState.d.ts +5 -4
- package/lib/stores/view/DataCubeViewState.d.ts.map +1 -1
- package/lib/stores/view/DataCubeViewState.js +25 -10
- package/lib/stores/view/DataCubeViewState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.d.ts +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnSelectorState.js +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnsPanelState.d.ts +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnsPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnsPanelState.js +3 -2
- package/lib/stores/view/editor/DataCubeEditorColumnsPanelState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorGeneralPropertiesPanelState.d.ts +1 -3
- package/lib/stores/view/editor/DataCubeEditorGeneralPropertiesPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorGeneralPropertiesPanelState.js +0 -8
- package/lib/stores/view/editor/DataCubeEditorGeneralPropertiesPanelState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.d.ts +6 -5
- package/lib/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.js +2 -1
- package/lib/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorMutableConfiguration.d.ts +2 -1
- package/lib/stores/view/editor/DataCubeEditorMutableConfiguration.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorMutableConfiguration.js +6 -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 +1 -1
- package/lib/stores/view/editor/DataCubeEditorPivotLayoutPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorSortsPanelState.d.ts +1 -1
- package/lib/stores/view/editor/DataCubeEditorSortsPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorSortsPanelState.js +2 -1
- 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 +9 -8
- package/lib/stores/view/editor/DataCubeEditorState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.d.ts +1 -1
- package/lib/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.js +2 -1
- package/lib/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.js.map +1 -1
- package/lib/stores/view/extend/DataCubeColumnEditorState.d.ts +3 -3
- package/lib/stores/view/extend/DataCubeColumnEditorState.d.ts.map +1 -1
- package/lib/stores/view/extend/DataCubeColumnEditorState.js +17 -15
- package/lib/stores/view/extend/DataCubeColumnEditorState.js.map +1 -1
- package/lib/stores/view/extend/DataCubeExtendManagerState.d.ts +6 -5
- package/lib/stores/view/extend/DataCubeExtendManagerState.d.ts.map +1 -1
- package/lib/stores/view/extend/DataCubeExtendManagerState.js +10 -9
- package/lib/stores/view/extend/DataCubeExtendManagerState.js.map +1 -1
- package/lib/stores/view/filter/DataCubeFilterEditorState.d.ts +1 -1
- package/lib/stores/view/filter/DataCubeFilterEditorState.d.ts.map +1 -1
- package/lib/stores/view/filter/DataCubeFilterEditorState.js +2 -2
- package/lib/stores/view/filter/DataCubeFilterEditorState.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridClientEngine.d.ts +1 -1
- package/lib/stores/view/grid/DataCubeGridClientEngine.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridClientEngine.js +24 -23
- package/lib/stores/view/grid/DataCubeGridClientEngine.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridClientExportEngine.js +1 -1
- package/lib/stores/view/grid/DataCubeGridClientExportEngine.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.d.ts +1 -1
- package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.js +2 -1
- package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridControllerState.d.ts +13 -12
- package/lib/stores/view/grid/DataCubeGridControllerState.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridControllerState.js +3 -2
- package/lib/stores/view/grid/DataCubeGridControllerState.js.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/DataCubeGridQuerySnapshotBuilder.d.ts +2 -2
- package/lib/stores/view/grid/DataCubeGridQuerySnapshotBuilder.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridQuerySnapshotBuilder.js +3 -2
- package/lib/stores/view/grid/DataCubeGridQuerySnapshotBuilder.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridState.d.ts +1 -1
- package/lib/stores/view/grid/DataCubeGridState.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridState.js +4 -4
- package/lib/stores/view/grid/DataCubeGridState.js.map +1 -1
- package/package.json +4 -4
- package/src/components/DataCube.tsx +48 -65
- package/src/components/DataCubeProvider.tsx +3 -31
- package/src/components/DataCubeView.tsx +74 -0
- package/src/components/core/DataCubeAlert.tsx +2 -4
- package/src/components/core/DataCubeDocumentationPanel.tsx +1 -2
- package/src/components/core/DataCubeFormUtils.tsx +7 -8
- package/src/components/core/DataCubePureCodeEditorUtils.tsx +7 -8
- package/src/components/core/DataCubeSettingsPanel.tsx +30 -22
- package/src/components/view/editor/DataCubeEditor.tsx +3 -3
- package/src/components/view/editor/DataCubeEditorColumnPropertiesPanel.tsx +1 -1
- package/src/components/view/editor/DataCubeEditorGeneralPropertiesPanel.tsx +2 -2
- package/src/components/view/extend/DataCubeColumnEditor.tsx +7 -7
- package/src/components/view/grid/DataCubeGrid.tsx +13 -7
- package/src/index.tsx +8 -4
- package/src/stores/DataCubeAPI.ts +22 -0
- package/src/stores/DataCubeOptions.ts +34 -0
- package/src/stores/DataCubeSettings.ts +107 -0
- package/src/stores/DataCubeState.tsx +92 -21
- package/src/stores/core/DataCubeConfigurationBuilder.ts +6 -6
- package/src/stores/core/DataCubeEngine.tsx +459 -0
- package/src/stores/core/DataCubeQueryBuilder.ts +17 -31
- package/src/stores/core/DataCubeQueryBuilderUtils.ts +6 -9
- package/src/stores/core/DataCubeQuerySnapshot.ts +23 -87
- package/src/stores/core/DataCubeQuerySnapshotBuilder.ts +11 -20
- package/src/stores/core/DataCubeQuerySnapshotBuilderUtils.ts +3 -3
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation.ts +3 -3
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Average.tsx +3 -3
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Count.tsx +3 -3
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__First.tsx +3 -3
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__JoinStrings.tsx +3 -3
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Last.tsx +3 -3
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Max.tsx +3 -3
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Min.tsx +3 -3
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevPopulation.tsx +3 -3
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevSample.tsx +3 -3
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Sum.tsx +3 -3
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__UniqueValue.tsx +3 -3
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__VariancePopulation.tsx +3 -3
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__VarianceSample.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterEditorState.ts +4 -4
- package/src/stores/core/filter/DataCubeQueryFilterOperation.ts +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__Contain.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__EndWith.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__Equal.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__IsNull.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThan.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotContain.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__StartWith.tsx +4 -6
- package/src/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.tsx +4 -6
- package/src/stores/core/models/DataCubeColumn.ts +34 -0
- package/src/stores/core/{DataCubeConfiguration.ts → models/DataCubeConfiguration.ts} +4 -1
- package/src/stores/core/models/DataCubeQuery.ts +41 -0
- package/src/stores/core/models/DataCubeSource.ts +25 -0
- package/src/stores/view/DataCubeInfoState.ts +16 -18
- package/src/stores/view/DataCubeQuerySnapshotManager.ts +5 -5
- package/src/stores/view/DataCubeViewState.ts +40 -13
- package/src/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.ts +1 -1
- package/src/stores/view/editor/DataCubeEditorColumnSelectorState.ts +1 -1
- package/src/stores/view/editor/DataCubeEditorColumnsPanelState.ts +3 -5
- package/src/stores/view/editor/DataCubeEditorGeneralPropertiesPanelState.ts +1 -11
- package/src/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.ts +7 -7
- package/src/stores/view/editor/DataCubeEditorMutableConfiguration.ts +8 -1
- package/src/stores/view/editor/DataCubeEditorPanelState.ts +1 -1
- package/src/stores/view/editor/DataCubeEditorPivotLayoutPanelState.ts +1 -1
- package/src/stores/view/editor/DataCubeEditorSortsPanelState.ts +3 -5
- package/src/stores/view/editor/DataCubeEditorState.tsx +13 -10
- package/src/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.ts +3 -5
- package/src/stores/view/extend/DataCubeColumnEditorState.tsx +27 -19
- package/src/stores/view/extend/DataCubeExtendManagerState.tsx +17 -13
- package/src/stores/view/filter/DataCubeFilterEditorState.tsx +2 -2
- package/src/stores/view/grid/DataCubeGridClientEngine.ts +47 -42
- package/src/stores/view/grid/DataCubeGridClientExportEngine.ts +1 -1
- package/src/stores/view/grid/DataCubeGridConfigurationBuilder.tsx +6 -6
- package/src/stores/view/grid/DataCubeGridControllerState.ts +11 -9
- package/src/stores/view/grid/DataCubeGridMenuBuilder.tsx +8 -8
- package/src/stores/view/grid/DataCubeGridQueryBuilder.ts +1 -1
- package/src/stores/view/grid/DataCubeGridQuerySnapshotBuilder.ts +3 -5
- package/src/stores/view/grid/DataCubeGridState.ts +4 -4
- package/tsconfig.json +9 -5
- package/lib/stores/core/DataCubeApplicationEngine.d.ts +0 -63
- package/lib/stores/core/DataCubeApplicationEngine.d.ts.map +0 -1
- package/lib/stores/core/DataCubeApplicationEngine.js +0 -94
- package/lib/stores/core/DataCubeApplicationEngine.js.map +0 -1
- package/lib/stores/core/DataCubeConfiguration.d.ts.map +0 -1
- package/lib/stores/core/DataCubeConfiguration.js.map +0 -1
- package/lib/stores/core/DataCubeEngineUtils.d.ts +0 -2
- package/lib/stores/core/DataCubeEngineUtils.d.ts.map +0 -1
- package/lib/stores/core/DataCubeEngineUtils.js +0 -2
- package/lib/stores/core/DataCubeEngineUtils.js.map +0 -1
- package/lib/stores/core/DataCubeQuery.d.ts.map +0 -1
- package/lib/stores/core/DataCubeQuery.js +0 -79
- package/lib/stores/core/DataCubeQuery.js.map +0 -1
- package/src/stores/core/DataCubeApplicationEngine.tsx +0 -200
- package/src/stores/core/DataCubeEngine.ts +0 -327
- package/src/stores/core/DataCubeEngineUtils.ts +0 -0
- package/src/stores/core/DataCubeQuery.ts +0 -130
|
@@ -13,10 +13,11 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import {
|
|
16
|
+
import {} from '../../core/DataCubeQuerySnapshot.js';
|
|
17
|
+
import { _toCol } from '../../core/models/DataCubeColumn.js';
|
|
17
18
|
import { GridClientSortDirection, INTERNAL__GRID_CLIENT_TREE_COLUMN_ID, } from './DataCubeGridClientEngine.js';
|
|
18
19
|
import { DataCubeQuerySortDirection, getPivotResultColumnBaseColumnName, isPivotResultColumnName, } from '../../core/DataCubeQueryEngine.js';
|
|
19
|
-
import { DataCubeConfiguration } from '../../core/DataCubeConfiguration.js';
|
|
20
|
+
import { DataCubeConfiguration } from '../../core/models/DataCubeConfiguration.js';
|
|
20
21
|
import { guaranteeNonNullable, uniqBy } from '@finos/legend-shared';
|
|
21
22
|
import { _pruneExpandedPaths } from '../../core/DataCubeQuerySnapshotBuilderUtils.js';
|
|
22
23
|
export function getColumnConfiguration(colName, configuration) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataCubeGridQuerySnapshotBuilder.js","sourceRoot":"","sources":["../../../../src/stores/view/grid/DataCubeGridQuerySnapshotBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAUH,OAAO,
|
|
1
|
+
{"version":3,"file":"DataCubeGridQuerySnapshotBuilder.js","sourceRoot":"","sources":["../../../../src/stores/view/grid/DataCubeGridQuerySnapshotBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,7 +18,7 @@ import type { DataCubeViewState } from '../DataCubeViewState.js';
|
|
|
18
18
|
import { DataCubeGridClientServerSideDataSource } from './DataCubeGridClientEngine.js';
|
|
19
19
|
import { DataCubeQuerySnapshotController } from '../DataCubeQuerySnapshotManager.js';
|
|
20
20
|
import type { DataCubeQuerySnapshot } from '../../core/DataCubeQuerySnapshot.js';
|
|
21
|
-
import { DataCubeConfiguration } from '../../core/DataCubeConfiguration.js';
|
|
21
|
+
import { DataCubeConfiguration } from '../../core/models/DataCubeConfiguration.js';
|
|
22
22
|
import { DataCubeGridControllerState } from './DataCubeGridControllerState.js';
|
|
23
23
|
import { DataCubeGridClientExportEngine } from './DataCubeGridClientExportEngine.js';
|
|
24
24
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataCubeGridState.d.ts","sourceRoot":"","sources":["../../../../src/stores/view/grid/DataCubeGridState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EACL,sCAAsC,EAMvC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,+BAA+B,EAAE,MAAM,oCAAoC,CAAC;AACrF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAEjF,OAAO,EAAE,qBAAqB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"DataCubeGridState.d.ts","sourceRoot":"","sources":["../../../../src/stores/view/grid/DataCubeGridState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EACL,sCAAsC,EAMvC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,+BAA+B,EAAE,MAAM,oCAAoC,CAAC;AACrF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAEjF,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAC;AAErF;;;;;;;;;;;;;;GAcG;AACH,qBAAa,iBAAkB,SAAQ,+BAA+B;IACpE,QAAQ,CAAC,UAAU,EAAG,2BAA2B,CAAC;IAClD,QAAQ,CAAC,YAAY,EAAG,8BAA8B,CAAC;IACvD,OAAO,CAAC,OAAO,CAAC,CAAsB;IAEtC,gBAAgB,EAAE,sCAAsC,CAAC;IAEzD,kBAAkB,EAAE,qBAAqB,CAAC;IAC1C,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,mBAAmB,UAAmD;IACtE,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;gBAExB,IAAI,EAAE,iBAAiB;IAyBnC,oBAAoB,CAAC,GAAG,EAAE,OAAO;IAiBjC,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS;IAIzC,IAAI,MAAM,iBAET;IAED,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,SAAS;IAI/B,yBAAyB;IAInB,aAAa,CAC1B,QAAQ,EAAE,qBAAqB,EAC/B,gBAAgB,EAAE,qBAAqB,GAAG,SAAS;CA2CtD"}
|
|
@@ -18,7 +18,7 @@ import { action, makeObservable, observable } from 'mobx';
|
|
|
18
18
|
import { DataCubeGridClientServerSideDataSource, INTERNAL__GRID_CLIENT_DEFAULT_CACHE_BLOCK_SIZE, INTERNAL__GRID_CLIENT_DATA_FETCH_MANUAL_TRIGGER_COLUMN_ID, INTERNAL__GRID_CLIENT_MAX_CACHE_BLOCK_SIZE, INTERNAL__GRID_CLIENT_DEFAULT_ENABLE_PAGINATION, computeHashCodeForDataFetchManualTrigger, } from './DataCubeGridClientEngine.js';
|
|
19
19
|
import { DataCubeQuerySnapshotController } from '../DataCubeQuerySnapshotManager.js';
|
|
20
20
|
import { generateGridOptionsFromSnapshot } from './DataCubeGridConfigurationBuilder.js';
|
|
21
|
-
import { DataCubeConfiguration } from '../../core/DataCubeConfiguration.js';
|
|
21
|
+
import { DataCubeConfiguration } from '../../core/models/DataCubeConfiguration.js';
|
|
22
22
|
import { DataCubeGridControllerState } from './DataCubeGridControllerState.js';
|
|
23
23
|
import { DataCubeGridClientExportEngine } from './DataCubeGridClientExportEngine.js';
|
|
24
24
|
/**
|
|
@@ -94,15 +94,15 @@ export class DataCubeGridState extends DataCubeQuerySnapshotController {
|
|
|
94
94
|
this.queryConfiguration = configuration;
|
|
95
95
|
this.rowLimit = snapshot.data.limit;
|
|
96
96
|
const gridOptions = generateGridOptionsFromSnapshot(snapshot, configuration, this.view);
|
|
97
|
-
if (this.view.
|
|
98
|
-
this.view.
|
|
97
|
+
if (this.view.dataCube.settings.enableDebugMode) {
|
|
98
|
+
this.view.engine.debugProcess(`New Grid Options`, [
|
|
99
99
|
'Grid Options',
|
|
100
100
|
gridOptions,
|
|
101
101
|
]);
|
|
102
102
|
}
|
|
103
103
|
this.client.updateGridOptions({
|
|
104
104
|
...gridOptions,
|
|
105
|
-
rowBuffer: this.view.
|
|
105
|
+
rowBuffer: this.view.dataCube.settings.gridClientRowBuffer,
|
|
106
106
|
// NOTE: ag-grid uses the cache block size as page size, so it's important to set this
|
|
107
107
|
// in corresponding to the pagination setting, else it would cause unexpected scrolling behavior
|
|
108
108
|
cacheBlockSize: this.isPaginationEnabled
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataCubeGridState.js","sourceRoot":"","sources":["../../../../src/stores/view/grid/DataCubeGridState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAG1D,OAAO,EACL,sCAAsC,EACtC,8CAA8C,EAC9C,yDAAyD,EACzD,0CAA0C,EAC1C,+CAA+C,EAC/C,wCAAwC,GACzC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,+BAA+B,EAAE,MAAM,oCAAoC,CAAC;AAErF,OAAO,EAAE,+BAA+B,EAAE,MAAM,uCAAuC,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"DataCubeGridState.js","sourceRoot":"","sources":["../../../../src/stores/view/grid/DataCubeGridState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAG1D,OAAO,EACL,sCAAsC,EACtC,8CAA8C,EAC9C,yDAAyD,EACzD,0CAA0C,EAC1C,+CAA+C,EAC/C,wCAAwC,GACzC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,+BAA+B,EAAE,MAAM,oCAAoC,CAAC;AAErF,OAAO,EAAE,+BAA+B,EAAE,MAAM,uCAAuC,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAC;AAErF;;;;;;;;;;;;;;GAcG;AACH,MAAM,OAAO,iBAAkB,SAAQ,+BAA+B;IAC3D,UAAU,CAA+B;IACzC,YAAY,CAAkC;IAC/C,OAAO,CAAuB;IAEtC,gBAAgB,CAAyC;IAEzD,kBAAkB,CAAwB;IAC1C,QAAQ,CAAsB;IAC9B,mBAAmB,GAAG,+CAA+C,CAAC;IACtE,cAAc,CAAsB;IAEpC,YAAY,IAAuB;QACjC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEZ,cAAc,CAAC,IAAI,EAAE;YACnB,gBAAgB,EAAE,UAAU;YAE5B,kBAAkB,EAAE,UAAU,CAAC,GAAG;YAElC,QAAQ,EAAE,UAAU;YAEpB,mBAAmB,EAAE,UAAU;YAC/B,oBAAoB,EAAE,MAAM;YAE5B,cAAc,EAAE,UAAU;YAC1B,iBAAiB,EAAE,MAAM;YAEzB,aAAa,EAAE,MAAM;SACtB,CAAC,CAAC;QAEH,IAAI,CAAC,UAAU,GAAG,IAAI,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7D,IAAI,CAAC,YAAY,GAAG,IAAI,8BAA8B,CAAC,IAAI,CAAC,CAAC;QAC7D,IAAI,CAAC,kBAAkB,GAAG,IAAI,qBAAqB,EAAE,CAAC;QACtD,IAAI,CAAC,gBAAgB,GAAG,IAAI,sCAAsC,CAAC,IAAI,CAAC,CAAC;IAC3E,CAAC;IAED,oBAAoB,CAAC,GAAY;QAC/B,IAAI,CAAC,mBAAmB,GAAG,GAAG,CAAC;QAE/B,oEAAoE;QACpE,sFAAsF;QACtF,0EAA0E;QAC1E,gEAAgE;QAChE,IAAI,CAAC,gBAAgB,GAAG,IAAI,sCAAsC,CAAC,IAAI,CAAC,CAAC;QACzE,sFAAsF;QACtF,gGAAgG;QAChG,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC;YAC5B,cAAc,EAAE,GAAG;gBACjB,CAAC,CAAC,8CAA8C;gBAChD,CAAC,CAAC,0CAA0C;SAC/C,CAAC,CAAC;IACL,CAAC;IAED,iBAAiB,CAAC,GAAuB;QACvC,IAAI,CAAC,cAAc,GAAG,GAAG,CAAC;IAC5B,CAAC;IAED,IAAI,MAAM;QACR,OAAO,oBAAoB,CAAC,IAAI,CAAC,OAAO,EAAE,+BAA+B,CAAC,CAAC;IAC7E,CAAC;IAED,eAAe,CAAC,GAAwB;QACtC,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC;IACrB,CAAC;IAEQ,yBAAyB;QAChC,OAAO,MAAM,CAAC;IAChB,CAAC;IAEQ,KAAK,CAAC,aAAa,CAC1B,QAA+B,EAC/B,gBAAmD;QAEnD,MAAM,aAAa,GAAG,qBAAqB,CAAC,aAAa,CAAC,QAAQ,CAChE,QAAQ,CAAC,IAAI,CAAC,aAAa,CAC5B,CAAC;QACF,IAAI,CAAC,kBAAkB,GAAG,aAAa,CAAC;QACxC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;QAEpC,MAAM,WAAW,GAAG,+BAA+B,CACjD,QAAQ,EACR,aAAa,EACb,IAAI,CAAC,IAAI,CACV,CAAC;QACF,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;YAChD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,kBAAkB,EAAE;gBAChD,cAAc;gBACd,WAAW;aACZ,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC;YAC5B,GAAG,WAAW;YACd,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,mBAAmB;YAC1D,sFAAsF;YACtF,gGAAgG;YAChG,cAAc,EAAE,IAAI,CAAC,mBAAmB;gBACtC,CAAC,CAAC,8CAA8C;gBAChD,CAAC,CAAC,0CAA0C;SAC/C,CAAC,CAAC;QAEH,+FAA+F;QAC/F,6FAA6F;QAC7F,gGAAgG;QAChG,sGAAsG;QACtG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;YACzB,CAAC,yDAAyD,CAAC,EAAE;gBAC3D,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,wCAAwC,CAC9C,QAAQ,EACR,aAAa,CACd;aACF;SACF,CAAC,CAAC;IACL,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@finos/legend-data-cube",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.11",
|
|
4
4
|
"description": "Legend Data Cube",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"legend",
|
|
@@ -56,9 +56,9 @@
|
|
|
56
56
|
"@ag-grid-enterprise/row-grouping": "32.2.2",
|
|
57
57
|
"@ag-grid-enterprise/server-side-row-model": "32.2.2",
|
|
58
58
|
"@ag-grid-enterprise/side-bar": "32.2.2",
|
|
59
|
-
"@finos/legend-art": "7.1.
|
|
60
|
-
"@finos/legend-code-editor": "2.0.
|
|
61
|
-
"@finos/legend-graph": "31.10.
|
|
59
|
+
"@finos/legend-art": "7.1.63",
|
|
60
|
+
"@finos/legend-code-editor": "2.0.6",
|
|
61
|
+
"@finos/legend-graph": "31.10.40",
|
|
62
62
|
"@finos/legend-shared": "10.0.57",
|
|
63
63
|
"@types/react": "18.3.11",
|
|
64
64
|
"mathjs": "13.2.0",
|
|
@@ -14,70 +14,27 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
|
-
import { observer } from 'mobx-react-lite';
|
|
18
|
-
import { useEffect } from 'react';
|
|
19
|
-
import { DataCubeGrid } from './view/grid/DataCubeGrid.js';
|
|
17
|
+
import { observer, useLocalObservable } from 'mobx-react-lite';
|
|
20
18
|
import {
|
|
21
19
|
DataCubeIcon,
|
|
22
20
|
DropdownMenu,
|
|
23
21
|
DropdownMenuItem,
|
|
24
|
-
ProgressBar,
|
|
25
22
|
useDropdownMenu,
|
|
26
23
|
} from '@finos/legend-art';
|
|
27
24
|
import { DataCubeLayoutManager } from './core/DataCubeLayoutManager.js';
|
|
28
|
-
import type { DataCubeViewState } from '../stores/view/DataCubeViewState.js';
|
|
29
25
|
import { INTERNAL__MonacoEditorWidgetsRoot } from './core/DataCubePureCodeEditorUtils.js';
|
|
30
|
-
import { useDataCube } from './DataCubeProvider.js';
|
|
31
26
|
import { DataCubeBlockingActionAlert } from './core/DataCubeAlert.js';
|
|
27
|
+
import { DataCubeView } from './DataCubeView.js';
|
|
28
|
+
import { useEffect } from 'react';
|
|
29
|
+
import type { DataCubeEngine } from '../stores/core/DataCubeEngine.js';
|
|
30
|
+
import { DataCubeState } from '../stores/DataCubeState.js';
|
|
31
|
+
import { type DataCubeOptions } from '../stores/DataCubeOptions.js';
|
|
32
|
+
import { DataCubeContextProvider, useDataCube } from './DataCubeProvider.js';
|
|
32
33
|
|
|
33
|
-
const
|
|
34
|
-
const
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
<div className="flex h-5 w-full justify-between bg-neutral-100">
|
|
38
|
-
<div className="flex">
|
|
39
|
-
<button
|
|
40
|
-
className="flex items-center px-2 text-sky-600 hover:text-sky-700"
|
|
41
|
-
onClick={() => view.editor.display.open()}
|
|
42
|
-
>
|
|
43
|
-
<DataCubeIcon.Settings className="text-xl" />
|
|
44
|
-
<div className="pl-0.5 underline">Properties</div>
|
|
45
|
-
</button>
|
|
46
|
-
<div className="flex">
|
|
47
|
-
<button
|
|
48
|
-
className="flex items-center text-sky-600 hover:text-sky-700"
|
|
49
|
-
onClick={() => {
|
|
50
|
-
view.filter.display.open();
|
|
51
|
-
}}
|
|
52
|
-
>
|
|
53
|
-
<DataCubeIcon.TableFilter className="text-lg" />
|
|
54
|
-
<div className="pl-0.5 underline">Filter</div>
|
|
55
|
-
</button>
|
|
56
|
-
</div>
|
|
57
|
-
</div>
|
|
58
|
-
<div className="flex items-center px-2">
|
|
59
|
-
<div className="flex h-3.5 w-48 border-[0.5px] border-neutral-300">
|
|
60
|
-
{view.runningTasks.size > 0 && (
|
|
61
|
-
<ProgressBar
|
|
62
|
-
classes={{
|
|
63
|
-
root: 'h-3.5 w-full bg-transparent',
|
|
64
|
-
bar1Indeterminate: 'bg-green-500',
|
|
65
|
-
bar2Indeterminate: 'bg-green-500',
|
|
66
|
-
}}
|
|
67
|
-
variant="indeterminate"
|
|
68
|
-
/>
|
|
69
|
-
)}
|
|
70
|
-
</div>
|
|
71
|
-
</div>
|
|
72
|
-
</div>
|
|
73
|
-
);
|
|
74
|
-
});
|
|
75
|
-
|
|
76
|
-
// TODO?: we might need to move this up a level to accomondate for multi-view use case
|
|
77
|
-
// as only the top-level view should have their own title bar
|
|
78
|
-
const DataCubeTitleBar = observer((props: { view: DataCubeViewState }) => {
|
|
79
|
-
const { view } = props;
|
|
80
|
-
const application = view.application;
|
|
34
|
+
const DataCubeTitleBar = observer(() => {
|
|
35
|
+
const dataCube = useDataCube();
|
|
36
|
+
const engine = dataCube.engine;
|
|
37
|
+
const view = dataCube.view;
|
|
81
38
|
const [openMenuDropdown, closeMenuDropdown, menuDropdownProps] =
|
|
82
39
|
useDropdownMenu();
|
|
83
40
|
|
|
@@ -108,8 +65,9 @@ const DataCubeTitleBar = observer((props: { view: DataCubeViewState }) => {
|
|
|
108
65
|
<DropdownMenuItem
|
|
109
66
|
className="flex h-[22px] w-full items-center px-2.5 text-base hover:bg-neutral-100 focus:bg-neutral-100"
|
|
110
67
|
onClick={() => {
|
|
111
|
-
|
|
112
|
-
|
|
68
|
+
const url = engine.getDocumentationURL();
|
|
69
|
+
if (url) {
|
|
70
|
+
engine.openLink(url);
|
|
113
71
|
}
|
|
114
72
|
closeMenuDropdown();
|
|
115
73
|
}}
|
|
@@ -133,26 +91,51 @@ const DataCubeTitleBar = observer((props: { view: DataCubeViewState }) => {
|
|
|
133
91
|
);
|
|
134
92
|
});
|
|
135
93
|
|
|
136
|
-
|
|
94
|
+
const DataCubeRoot = observer(() => {
|
|
137
95
|
const dataCube = useDataCube();
|
|
138
|
-
const
|
|
96
|
+
const engine = dataCube.engine;
|
|
139
97
|
const view = dataCube.view;
|
|
140
98
|
|
|
141
99
|
useEffect(() => {
|
|
142
|
-
view
|
|
143
|
-
|
|
100
|
+
dataCube.view
|
|
101
|
+
.initialize()
|
|
102
|
+
.catch((error) => dataCube.engine.logUnhandledError(error));
|
|
103
|
+
}, [dataCube]);
|
|
144
104
|
|
|
145
105
|
return (
|
|
146
106
|
<div className="data-cube relative flex h-full w-full flex-col bg-white">
|
|
147
|
-
<DataCubeTitleBar
|
|
107
|
+
<DataCubeTitleBar />
|
|
148
108
|
|
|
149
|
-
<
|
|
150
|
-
<DataCubeStatusBar view={view} />
|
|
109
|
+
<DataCubeView view={view} />
|
|
151
110
|
|
|
152
|
-
{
|
|
153
|
-
<DataCubeLayoutManager layout={application.layout} />
|
|
111
|
+
<DataCubeLayoutManager layout={engine.layout} />
|
|
154
112
|
<DataCubeBlockingActionAlert />
|
|
155
113
|
<INTERNAL__MonacoEditorWidgetsRoot />
|
|
156
114
|
</div>
|
|
157
115
|
);
|
|
158
116
|
});
|
|
117
|
+
|
|
118
|
+
export const DataCube = observer(
|
|
119
|
+
(props: {
|
|
120
|
+
engine: DataCubeEngine;
|
|
121
|
+
options?: DataCubeOptions | undefined;
|
|
122
|
+
}): React.ReactElement => {
|
|
123
|
+
const { engine, options } = props;
|
|
124
|
+
const state = useLocalObservable(() => new DataCubeState(engine, options));
|
|
125
|
+
|
|
126
|
+
useEffect(() => {
|
|
127
|
+
state
|
|
128
|
+
.initialize()
|
|
129
|
+
.catch((error) => state.engine.logUnhandledError(error));
|
|
130
|
+
}, [state]);
|
|
131
|
+
|
|
132
|
+
if (!state.initState.hasSucceeded) {
|
|
133
|
+
return <></>;
|
|
134
|
+
}
|
|
135
|
+
return (
|
|
136
|
+
<DataCubeContextProvider value={state}>
|
|
137
|
+
<DataCubeRoot />
|
|
138
|
+
</DataCubeContextProvider>
|
|
139
|
+
);
|
|
140
|
+
},
|
|
141
|
+
);
|
|
@@ -14,43 +14,15 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
|
-
import { createContext, useContext
|
|
18
|
-
import { observer, useLocalObservable } from 'mobx-react-lite';
|
|
17
|
+
import { createContext, useContext } from 'react';
|
|
19
18
|
import { guaranteeNonNullable } from '@finos/legend-shared';
|
|
20
|
-
import { DataCubeState } from '../stores/DataCubeState.js';
|
|
21
|
-
import type { DataCubeApplicationEngine } from '../stores/core/DataCubeApplicationEngine.js';
|
|
22
|
-
import type { DataCubeEngine } from '../stores/core/DataCubeEngine.js';
|
|
19
|
+
import { type DataCubeState } from '../stores/DataCubeState.js';
|
|
23
20
|
|
|
24
21
|
const DataCubeStateContext = createContext<DataCubeState | undefined>(
|
|
25
22
|
undefined,
|
|
26
23
|
);
|
|
27
24
|
|
|
28
|
-
export const
|
|
29
|
-
(props: {
|
|
30
|
-
children: React.ReactNode;
|
|
31
|
-
application: DataCubeApplicationEngine;
|
|
32
|
-
engine: DataCubeEngine;
|
|
33
|
-
}): React.ReactElement => {
|
|
34
|
-
const { children, application, engine } = props;
|
|
35
|
-
const store = useLocalObservable(
|
|
36
|
-
() => new DataCubeState(application, engine),
|
|
37
|
-
);
|
|
38
|
-
|
|
39
|
-
useEffect(() => {
|
|
40
|
-
store.initialize().catch((error) => application.logUnhandledError(error));
|
|
41
|
-
}, [store, application]);
|
|
42
|
-
|
|
43
|
-
if (!store.initState.hasSucceeded) {
|
|
44
|
-
return <></>;
|
|
45
|
-
}
|
|
46
|
-
return (
|
|
47
|
-
<DataCubeStateContext.Provider value={store}>
|
|
48
|
-
{children}
|
|
49
|
-
</DataCubeStateContext.Provider>
|
|
50
|
-
);
|
|
51
|
-
},
|
|
52
|
-
);
|
|
53
|
-
|
|
25
|
+
export const DataCubeContextProvider = DataCubeStateContext.Provider;
|
|
54
26
|
export const useDataCube = () =>
|
|
55
27
|
guaranteeNonNullable(
|
|
56
28
|
useContext(DataCubeStateContext),
|
|
@@ -0,0 +1,74 @@
|
|
|
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 { DataCubeIcon, ProgressBar } from '@finos/legend-art';
|
|
18
|
+
import { observer } from 'mobx-react-lite';
|
|
19
|
+
import type { DataCubeViewState } from '../stores/view/DataCubeViewState.js';
|
|
20
|
+
import { DataCubeGrid } from './view/grid/DataCubeGrid.js';
|
|
21
|
+
|
|
22
|
+
const DataCubeStatusBar = observer((props: { view: DataCubeViewState }) => {
|
|
23
|
+
const { view } = props;
|
|
24
|
+
|
|
25
|
+
return (
|
|
26
|
+
<div className="flex h-5 w-full justify-between bg-neutral-100">
|
|
27
|
+
<div className="flex">
|
|
28
|
+
<button
|
|
29
|
+
className="flex items-center px-2 text-sky-600 hover:text-sky-700"
|
|
30
|
+
onClick={() => view.editor.display.open()}
|
|
31
|
+
>
|
|
32
|
+
<DataCubeIcon.Settings className="text-xl" />
|
|
33
|
+
<div className="pl-0.5 underline">Properties</div>
|
|
34
|
+
</button>
|
|
35
|
+
<div className="flex">
|
|
36
|
+
<button
|
|
37
|
+
className="flex items-center text-sky-600 hover:text-sky-700"
|
|
38
|
+
onClick={() => {
|
|
39
|
+
view.filter.display.open();
|
|
40
|
+
}}
|
|
41
|
+
>
|
|
42
|
+
<DataCubeIcon.TableFilter className="text-lg" />
|
|
43
|
+
<div className="pl-0.5 underline">Filter</div>
|
|
44
|
+
</button>
|
|
45
|
+
</div>
|
|
46
|
+
</div>
|
|
47
|
+
<div className="flex items-center px-2">
|
|
48
|
+
<div className="flex h-3.5 w-48 border-[0.5px] border-neutral-300">
|
|
49
|
+
{view.runningTasks.size > 0 && (
|
|
50
|
+
<ProgressBar
|
|
51
|
+
classes={{
|
|
52
|
+
root: 'h-3.5 w-full bg-transparent',
|
|
53
|
+
bar1Indeterminate: 'bg-green-500',
|
|
54
|
+
bar2Indeterminate: 'bg-green-500',
|
|
55
|
+
}}
|
|
56
|
+
variant="indeterminate"
|
|
57
|
+
/>
|
|
58
|
+
)}
|
|
59
|
+
</div>
|
|
60
|
+
</div>
|
|
61
|
+
</div>
|
|
62
|
+
);
|
|
63
|
+
});
|
|
64
|
+
|
|
65
|
+
export const DataCubeView = observer((props: { view: DataCubeViewState }) => {
|
|
66
|
+
const { view } = props;
|
|
67
|
+
|
|
68
|
+
return (
|
|
69
|
+
<>
|
|
70
|
+
<DataCubeGrid view={view} />
|
|
71
|
+
<DataCubeStatusBar view={view} />
|
|
72
|
+
</>
|
|
73
|
+
);
|
|
74
|
+
});
|
|
@@ -100,7 +100,6 @@ const BlockingActionAlertContent = observer((props: { alert: ActionAlert }) => {
|
|
|
100
100
|
const { title, message, prompt, type, onClose, actions } = alert;
|
|
101
101
|
const ref = useRef<HTMLDivElement>(null);
|
|
102
102
|
const dataCube = useDataCube();
|
|
103
|
-
const application = dataCube.application;
|
|
104
103
|
|
|
105
104
|
// set the width and height of the dialog to make sure content overflow works properly
|
|
106
105
|
const handleEnter = () => {
|
|
@@ -151,7 +150,7 @@ const BlockingActionAlertContent = observer((props: { alert: ActionAlert }) => {
|
|
|
151
150
|
handler: () => {
|
|
152
151
|
action.handler();
|
|
153
152
|
onClose?.();
|
|
154
|
-
|
|
153
|
+
dataCube.alertAction(undefined);
|
|
155
154
|
},
|
|
156
155
|
}))}
|
|
157
156
|
/>
|
|
@@ -163,8 +162,7 @@ const BlockingActionAlertContent = observer((props: { alert: ActionAlert }) => {
|
|
|
163
162
|
|
|
164
163
|
export const DataCubeBlockingActionAlert = observer(() => {
|
|
165
164
|
const dataCube = useDataCube();
|
|
166
|
-
const
|
|
167
|
-
const actionAlert = application.currentActionAlert;
|
|
165
|
+
const actionAlert = dataCube.currentActionAlert;
|
|
168
166
|
|
|
169
167
|
if (!actionAlert) {
|
|
170
168
|
return null;
|
|
@@ -21,8 +21,7 @@ import { useDataCube } from '../DataCubeProvider.js';
|
|
|
21
21
|
|
|
22
22
|
export const DocumentationPanel = observer(() => {
|
|
23
23
|
const dataCube = useDataCube();
|
|
24
|
-
const
|
|
25
|
-
const entry = application.currentDocumentationEntry;
|
|
24
|
+
const entry = dataCube.currentDocumentationEntry;
|
|
26
25
|
|
|
27
26
|
if (!entry) {
|
|
28
27
|
return null;
|
|
@@ -538,19 +538,18 @@ export const FormDocumentation: React.FC<{
|
|
|
538
538
|
className?: string | undefined;
|
|
539
539
|
}> = ({ documentationKey, title, className }) => {
|
|
540
540
|
const dataCube = useDataCube();
|
|
541
|
-
const
|
|
542
|
-
const documentationEntry =
|
|
543
|
-
application.getDocumentationEntry(documentationKey);
|
|
541
|
+
const engine = dataCube.engine;
|
|
542
|
+
const documentationEntry = engine.getDocumentationEntry(documentationKey);
|
|
544
543
|
const openDocLink: React.MouseEventHandler<HTMLDivElement> = (event) => {
|
|
545
544
|
event.preventDefault();
|
|
546
545
|
event.stopPropagation();
|
|
547
|
-
const entry =
|
|
546
|
+
const entry = engine.getDocumentationEntry(documentationKey);
|
|
548
547
|
if (entry) {
|
|
549
|
-
if (
|
|
550
|
-
|
|
548
|
+
if (engine.shouldDisplayDocumentationEntry(entry)) {
|
|
549
|
+
dataCube.openDocumentationEntry(entry);
|
|
551
550
|
dataCube.documentationDisplay.open();
|
|
552
551
|
} else if (entry.url) {
|
|
553
|
-
|
|
552
|
+
engine.openLink(entry.url);
|
|
554
553
|
}
|
|
555
554
|
}
|
|
556
555
|
};
|
|
@@ -558,7 +557,7 @@ export const FormDocumentation: React.FC<{
|
|
|
558
557
|
if (
|
|
559
558
|
!documentationEntry ||
|
|
560
559
|
(!documentationEntry.url &&
|
|
561
|
-
!
|
|
560
|
+
!engine.shouldDisplayDocumentationEntry(documentationEntry))
|
|
562
561
|
) {
|
|
563
562
|
return null;
|
|
564
563
|
}
|
|
@@ -19,11 +19,9 @@ import {
|
|
|
19
19
|
languages as monacoLanguagesAPI,
|
|
20
20
|
type IPosition,
|
|
21
21
|
} from 'monaco-editor';
|
|
22
|
-
import type {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
} from '../../stores/core/DataCubeEngine.js';
|
|
26
|
-
import type { V1_ValueSpecification } from '@finos/legend-graph';
|
|
22
|
+
import type { CompletionItem } from '../../stores/core/DataCubeEngine.js';
|
|
23
|
+
import type { V1_Lambda } from '@finos/legend-graph';
|
|
24
|
+
import type { DataCubeViewState } from '../../stores/view/DataCubeViewState.js';
|
|
27
25
|
|
|
28
26
|
// Since we render the editor in a window which has been CSS transformed, and monaco-editor renders
|
|
29
27
|
// the widgets with position=fixed, the position of the widgets will be off, we need to move the root
|
|
@@ -45,8 +43,8 @@ export async function getCodeSuggestions(
|
|
|
45
43
|
position: IPosition,
|
|
46
44
|
model: monacoEditorAPI.ITextModel,
|
|
47
45
|
prefix: string | undefined,
|
|
48
|
-
|
|
49
|
-
baseQueryBuilder: () =>
|
|
46
|
+
view: DataCubeViewState,
|
|
47
|
+
baseQueryBuilder: () => V1_Lambda,
|
|
50
48
|
) {
|
|
51
49
|
const textUntilPosition = model.getValueInRange({
|
|
52
50
|
startLineNumber: 1,
|
|
@@ -59,9 +57,10 @@ export async function getCodeSuggestions(
|
|
|
59
57
|
let suggestions: CompletionItem[] = [];
|
|
60
58
|
|
|
61
59
|
try {
|
|
62
|
-
suggestions = await engine.getQueryTypeahead(
|
|
60
|
+
suggestions = await view.engine.getQueryTypeahead(
|
|
63
61
|
(prefix ?? '') + textUntilPosition,
|
|
64
62
|
baseQueryBuilder(),
|
|
63
|
+
view.source,
|
|
65
64
|
);
|
|
66
65
|
} catch {
|
|
67
66
|
// do nothing: provide no suggestions when error ocurred
|
|
@@ -17,51 +17,54 @@
|
|
|
17
17
|
import { observer } from 'mobx-react-lite';
|
|
18
18
|
import { DataCubeIcon } from '@finos/legend-art';
|
|
19
19
|
import { FormCheckbox, FormNumberInput } from './DataCubeFormUtils.js';
|
|
20
|
-
import {
|
|
21
|
-
DEFAULT_ENABLE_DEBUG_MODE,
|
|
22
|
-
DEFAULT_GRID_CLIENT_PURGE_CLOSED_ROW_NODES,
|
|
23
|
-
DEFAULT_GRID_CLIENT_ROW_BUFFER,
|
|
24
|
-
DEFAULT_GRID_CLIENT_SUPPRESS_LARGE_DATASET_WARNING,
|
|
25
|
-
} from '../../stores/core/DataCubeEngine.js';
|
|
26
20
|
import { useState } from 'react';
|
|
27
21
|
import { useDataCube } from '../DataCubeProvider.js';
|
|
22
|
+
import {
|
|
23
|
+
DataCubeSettingKey,
|
|
24
|
+
DEFAULT_SETTINGS,
|
|
25
|
+
} from '../../stores/DataCubeSettings.js';
|
|
28
26
|
|
|
29
27
|
export const DataCubeSettingsPanel = observer(() => {
|
|
30
28
|
const dataCube = useDataCube();
|
|
31
|
-
const engine = dataCube.engine;
|
|
32
29
|
|
|
33
30
|
// NOTE: this makes sure the changes are not applied until saved, but it generates
|
|
34
31
|
// a lot of boilerplate code, consider using a more ergonomic approach when we need
|
|
35
32
|
// to scale this to more settings.
|
|
36
33
|
const [enableDebugMode, setEnableDebugMode] = useState(
|
|
37
|
-
|
|
34
|
+
dataCube.settings.enableDebugMode,
|
|
38
35
|
);
|
|
39
36
|
const [gridClientRowBuffer, setGridClientRowBuffer] = useState(
|
|
40
|
-
|
|
37
|
+
dataCube.settings.gridClientRowBuffer,
|
|
41
38
|
);
|
|
42
39
|
const [gridClientPurgeClosedRowNodes, setGridClientPurgeClosedRowNodes] =
|
|
43
|
-
useState(
|
|
40
|
+
useState(dataCube.settings.gridClientPurgeClosedRowNodes);
|
|
44
41
|
const [
|
|
45
42
|
gridClientSuppressLargeDatasetWarning,
|
|
46
43
|
setGridClientSuppressLargeDatasetWarning,
|
|
47
|
-
] = useState(
|
|
44
|
+
] = useState(dataCube.settings.gridClientSuppressLargeDatasetWarning);
|
|
48
45
|
|
|
49
46
|
const save = () => {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
47
|
+
dataCube.settings.setEnableDebugMode(enableDebugMode);
|
|
48
|
+
dataCube.settings.setGridClientRowBuffer(gridClientRowBuffer);
|
|
49
|
+
dataCube.settings.setGridClientPurgeClosedRowNodes(
|
|
50
|
+
gridClientPurgeClosedRowNodes,
|
|
51
|
+
);
|
|
52
|
+
dataCube.settings.setGridClientSuppressLargeDatasetWarning(
|
|
54
53
|
gridClientSuppressLargeDatasetWarning,
|
|
55
54
|
);
|
|
56
55
|
};
|
|
57
56
|
const restoreDefaults = () => {
|
|
58
|
-
|
|
57
|
+
setEnableDebugMode(DEFAULT_SETTINGS[DataCubeSettingKey.ENABLE_DEBUG_MODE]);
|
|
58
|
+
setGridClientRowBuffer(
|
|
59
|
+
DEFAULT_SETTINGS[DataCubeSettingKey.GRID_CLIENT_ROW_BUFFER],
|
|
60
|
+
);
|
|
59
61
|
setGridClientPurgeClosedRowNodes(
|
|
60
|
-
|
|
62
|
+
DEFAULT_SETTINGS[DataCubeSettingKey.GRID_CLIENT_PURGE_CLOSED_ROW_NODES],
|
|
61
63
|
);
|
|
62
|
-
setEnableDebugMode(DEFAULT_ENABLE_DEBUG_MODE);
|
|
63
64
|
setGridClientSuppressLargeDatasetWarning(
|
|
64
|
-
|
|
65
|
+
DEFAULT_SETTINGS[
|
|
66
|
+
DataCubeSettingKey.GRID_CLIENT_SUPPRESS_LARGE_DATASET_WARNING
|
|
67
|
+
],
|
|
65
68
|
);
|
|
66
69
|
save();
|
|
67
70
|
};
|
|
@@ -102,7 +105,7 @@ export const DataCubeSettingsPanel = observer(() => {
|
|
|
102
105
|
<div className="flex pr-2">
|
|
103
106
|
<button
|
|
104
107
|
className="ml-2 h-5 min-w-16 border border-neutral-400 bg-neutral-300 px-2 text-sm first-of-type:ml-0 hover:brightness-95"
|
|
105
|
-
onClick={() =>
|
|
108
|
+
onClick={() => dataCube.refreshFailedDataFetches()}
|
|
106
109
|
>
|
|
107
110
|
Run Action
|
|
108
111
|
</button>
|
|
@@ -132,11 +135,16 @@ export const DataCubeSettingsPanel = observer(() => {
|
|
|
132
135
|
className="w-16 text-sm"
|
|
133
136
|
min={10}
|
|
134
137
|
step={10}
|
|
135
|
-
defaultValue={
|
|
138
|
+
defaultValue={
|
|
139
|
+
DEFAULT_SETTINGS[DataCubeSettingKey.GRID_CLIENT_ROW_BUFFER]
|
|
140
|
+
}
|
|
136
141
|
value={gridClientRowBuffer}
|
|
137
142
|
setValue={(value) => {
|
|
138
143
|
setGridClientRowBuffer(
|
|
139
|
-
value ??
|
|
144
|
+
value ??
|
|
145
|
+
DEFAULT_SETTINGS[
|
|
146
|
+
DataCubeSettingKey.GRID_CLIENT_ROW_BUFFER
|
|
147
|
+
],
|
|
140
148
|
);
|
|
141
149
|
}}
|
|
142
150
|
/>
|
|
@@ -28,7 +28,7 @@ import type { DataCubeViewState } from '../../../stores/view/DataCubeViewState.j
|
|
|
28
28
|
export const DataCubeEditor = observer((props: { view: DataCubeViewState }) => {
|
|
29
29
|
const { view } = props;
|
|
30
30
|
const editor = view.editor;
|
|
31
|
-
const
|
|
31
|
+
const engine = view.engine;
|
|
32
32
|
const selectedTab = editor.currentTab;
|
|
33
33
|
const tabs = [
|
|
34
34
|
DataCubeEditorTab.COLUMNS,
|
|
@@ -86,7 +86,7 @@ export const DataCubeEditor = observer((props: { view: DataCubeViewState }) => {
|
|
|
86
86
|
onClick={() => {
|
|
87
87
|
editor
|
|
88
88
|
.applyChanges({ closeAfterApply: true })
|
|
89
|
-
.catch((error) =>
|
|
89
|
+
.catch((error) => engine.alertUnhandledError(error));
|
|
90
90
|
}}
|
|
91
91
|
>
|
|
92
92
|
OK
|
|
@@ -103,7 +103,7 @@ export const DataCubeEditor = observer((props: { view: DataCubeViewState }) => {
|
|
|
103
103
|
onClick={() => {
|
|
104
104
|
editor
|
|
105
105
|
.applyChanges()
|
|
106
|
-
.catch((error) =>
|
|
106
|
+
.catch((error) => engine.alertUnhandledError(error));
|
|
107
107
|
}}
|
|
108
108
|
>
|
|
109
109
|
Apply
|
|
@@ -45,7 +45,7 @@ import {
|
|
|
45
45
|
} from '../../../stores/core/DataCubeQueryEngine.js';
|
|
46
46
|
import { DocumentationKey } from '../../../__lib__/DataCubeDocumentation.js';
|
|
47
47
|
import type { DataCubeViewState } from '../../../stores/view/DataCubeViewState.js';
|
|
48
|
-
import { _sortByColName } from '../../../stores/core/
|
|
48
|
+
import { _sortByColName } from '../../../stores/core/models/DataCubeColumn.js';
|
|
49
49
|
|
|
50
50
|
export const DataCubeEditorColumnPropertiesPanel = observer(
|
|
51
51
|
(props: { view: DataCubeViewState }) => {
|