@finos/legend-data-cube 0.1.4 → 0.1.6
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/__lib__/DataCubeSetting.d.ts +2 -0
- package/lib/__lib__/DataCubeSetting.d.ts.map +1 -1
- package/lib/__lib__/DataCubeSetting.js +2 -0
- package/lib/__lib__/DataCubeSetting.js.map +1 -1
- package/lib/components/DataCube.d.ts +2 -2
- package/lib/components/DataCube.d.ts.map +1 -1
- package/lib/components/DataCube.js +12 -11
- package/lib/components/DataCube.js.map +1 -1
- package/lib/components/DataCubePlaceholder.d.ts +2 -2
- package/lib/components/DataCubePlaceholder.d.ts.map +1 -1
- package/lib/components/DataCubePlaceholder.js.map +1 -1
- package/lib/components/DataCubeTitleBar.d.ts +3 -2
- package/lib/components/DataCubeTitleBar.d.ts.map +1 -1
- package/lib/components/DataCubeTitleBar.js +29 -9
- package/lib/components/DataCubeTitleBar.js.map +1 -1
- package/lib/index.css +1 -1
- package/lib/index.d.ts +3 -3
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +2 -2
- package/lib/index.js.map +1 -1
- package/lib/package.json +6 -6
- package/lib/stores/DataCubeAPI.d.ts +17 -4
- package/lib/stores/DataCubeAPI.d.ts.map +1 -1
- package/lib/stores/DataCubeAPI.js +9 -3
- package/lib/stores/DataCubeAPI.js.map +1 -1
- package/lib/stores/DataCubeOptions.d.ts +11 -8
- package/lib/stores/DataCubeOptions.d.ts.map +1 -1
- package/lib/stores/DataCubeOptions.js +4 -1
- package/lib/stores/DataCubeOptions.js.map +1 -1
- package/lib/stores/DataCubeState.d.ts +3 -3
- package/lib/stores/DataCubeState.d.ts.map +1 -1
- package/lib/stores/DataCubeState.js +3 -3
- package/lib/stores/DataCubeState.js.map +1 -1
- package/lib/stores/core/DataCubeConfigurationBuilder.d.ts +3 -3
- package/lib/stores/core/DataCubeConfigurationBuilder.d.ts.map +1 -1
- package/lib/stores/core/DataCubeConfigurationBuilder.js.map +1 -1
- package/lib/stores/core/DataCubeEngine.d.ts +5 -5
- package/lib/stores/core/DataCubeEngine.d.ts.map +1 -1
- package/lib/stores/core/DataCubeEngine.js +6 -6
- package/lib/stores/core/DataCubeEngine.js.map +1 -1
- package/lib/stores/core/DataCubeQueryBuilder.d.ts +4 -4
- package/lib/stores/core/DataCubeQueryBuilder.d.ts.map +1 -1
- package/lib/stores/core/DataCubeQueryBuilder.js +2 -2
- package/lib/stores/core/DataCubeQueryBuilder.js.map +1 -1
- package/lib/stores/core/DataCubeQueryBuilderUtils.d.ts +5 -5
- package/lib/stores/core/DataCubeQueryBuilderUtils.d.ts.map +1 -1
- package/lib/stores/core/DataCubeQueryBuilderUtils.js +2 -2
- package/lib/stores/core/DataCubeQueryBuilderUtils.js.map +1 -1
- package/lib/stores/core/{DataCubeQuerySnapshot.d.ts → DataCubeSnapshot.d.ts} +28 -28
- package/lib/stores/core/DataCubeSnapshot.d.ts.map +1 -0
- package/lib/stores/core/{DataCubeQuerySnapshot.js → DataCubeSnapshot.js} +5 -5
- package/lib/stores/core/DataCubeSnapshot.js.map +1 -0
- package/lib/stores/core/{DataCubeQuerySnapshotBuilder.d.ts → DataCubeSnapshotBuilder.d.ts} +8 -8
- package/lib/stores/core/DataCubeSnapshotBuilder.d.ts.map +1 -0
- package/lib/stores/core/{DataCubeQuerySnapshotBuilder.js → DataCubeSnapshotBuilder.js} +12 -12
- package/lib/stores/core/DataCubeSnapshotBuilder.js.map +1 -0
- package/lib/stores/core/{DataCubeQuerySnapshotBuilderUtils.d.ts → DataCubeSnapshotBuilderUtils.d.ts} +6 -6
- package/lib/stores/core/DataCubeSnapshotBuilderUtils.d.ts.map +1 -0
- package/lib/stores/core/{DataCubeQuerySnapshotBuilderUtils.js → DataCubeSnapshotBuilderUtils.js} +16 -10
- package/lib/stores/core/DataCubeSnapshotBuilderUtils.js.map +1 -0
- 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 +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Average.js +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Average.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Count.d.ts +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Count.js +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Count.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__First.d.ts +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__First.js +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__First.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__JoinStrings.d.ts +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__JoinStrings.js +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__JoinStrings.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Last.d.ts +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Last.js +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Last.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Max.d.ts +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Max.js +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Max.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Min.d.ts +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Min.js +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Min.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevPopulation.d.ts +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevPopulation.js +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevPopulation.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevSample.d.ts +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevSample.js +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevSample.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Sum.d.ts +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Sum.js +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Sum.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__UniqueValue.d.ts +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__UniqueValue.js +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__UniqueValue.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VariancePopulation.d.ts +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VariancePopulation.js +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VariancePopulation.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VarianceSample.d.ts +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VarianceSample.js +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VarianceSample.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterEditorState.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterEditorState.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterEditorState.js +2 -2
- package/lib/stores/core/filter/DataCubeQueryFilterEditorState.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation.d.ts +4 -4
- package/lib/stores/core/filter/DataCubeQueryFilterOperation.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Contain.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Contain.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Contain.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Contain.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWith.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWith.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWith.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWith.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Equal.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Equal.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Equal.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Equal.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNull.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNull.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNull.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNull.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThan.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThan.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThan.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThan.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotContain.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotContain.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotContain.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotContain.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWith.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWith.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWith.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWith.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.d.ts +3 -3
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.js +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.js.map +1 -1
- package/lib/stores/core/model/DataCubeConfiguration.d.ts +1 -1
- package/lib/stores/core/model/DataCubeConfiguration.js +1 -1
- package/lib/stores/core/model/{DataCubeQuery.d.ts → DataCubeSpecification.d.ts} +8 -3
- package/lib/stores/core/model/DataCubeSpecification.d.ts.map +1 -0
- package/lib/stores/core/model/{DataCubeQuery.js → DataCubeSpecification.js} +12 -4
- package/lib/stores/core/model/DataCubeSpecification.js.map +1 -0
- package/lib/stores/services/DataCubeSettingService.d.ts +1 -0
- package/lib/stores/services/DataCubeSettingService.d.ts.map +1 -1
- package/lib/stores/services/DataCubeSettingService.js +22 -0
- package/lib/stores/services/DataCubeSettingService.js.map +1 -1
- package/lib/stores/services/DataCubeSnapshotService.d.ts +59 -0
- package/lib/stores/services/DataCubeSnapshotService.d.ts.map +1 -0
- package/lib/stores/services/{DataCubeQuerySnapshotService.js → DataCubeSnapshotService.js} +77 -31
- package/lib/stores/services/DataCubeSnapshotService.js.map +1 -0
- package/lib/stores/view/DataCubeInfoState.d.ts +4 -4
- package/lib/stores/view/DataCubeInfoState.d.ts.map +1 -1
- package/lib/stores/view/DataCubeInfoState.js +2 -2
- package/lib/stores/view/DataCubeInfoState.js.map +1 -1
- package/lib/stores/view/DataCubeViewState.d.ts +12 -9
- package/lib/stores/view/DataCubeViewState.d.ts.map +1 -1
- package/lib/stores/view/DataCubeViewState.js +107 -19
- package/lib/stores/view/DataCubeViewState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.d.ts +3 -3
- package/lib/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.js +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnsPanelState.d.ts +3 -3
- package/lib/stores/view/editor/DataCubeEditorColumnsPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnsPanelState.js +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnsPanelState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorGeneralPropertiesPanelState.d.ts +3 -3
- package/lib/stores/view/editor/DataCubeEditorGeneralPropertiesPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorGeneralPropertiesPanelState.js +1 -1
- package/lib/stores/view/editor/DataCubeEditorGeneralPropertiesPanelState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.d.ts +3 -3
- package/lib/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.js +1 -1
- package/lib/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorMutableConfiguration.d.ts +2 -2
- 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 +3 -3
- package/lib/stores/view/editor/DataCubeEditorPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorPivotLayoutPanelState.d.ts +3 -3
- package/lib/stores/view/editor/DataCubeEditorPivotLayoutPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorPivotLayoutPanelState.js +2 -2
- package/lib/stores/view/editor/DataCubeEditorPivotLayoutPanelState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorSortsPanelState.d.ts +3 -3
- package/lib/stores/view/editor/DataCubeEditorSortsPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorSortsPanelState.js +1 -1
- package/lib/stores/view/editor/DataCubeEditorSortsPanelState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorState.d.ts +6 -6
- package/lib/stores/view/editor/DataCubeEditorState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorState.js +3 -3
- package/lib/stores/view/editor/DataCubeEditorState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.d.ts +3 -3
- package/lib/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.js +1 -1
- package/lib/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.js.map +1 -1
- package/lib/stores/view/extend/DataCubeColumnEditorState.d.ts +2 -2
- package/lib/stores/view/extend/DataCubeColumnEditorState.d.ts.map +1 -1
- package/lib/stores/view/extend/DataCubeColumnEditorState.js.map +1 -1
- package/lib/stores/view/extend/DataCubeExtendManagerState.d.ts +8 -8
- package/lib/stores/view/extend/DataCubeExtendManagerState.d.ts.map +1 -1
- package/lib/stores/view/extend/DataCubeExtendManagerState.js +3 -3
- package/lib/stores/view/extend/DataCubeExtendManagerState.js.map +1 -1
- package/lib/stores/view/filter/DataCubeFilterEditorState.d.ts +4 -4
- package/lib/stores/view/filter/DataCubeFilterEditorState.d.ts.map +1 -1
- package/lib/stores/view/filter/DataCubeFilterEditorState.js +4 -4
- package/lib/stores/view/filter/DataCubeFilterEditorState.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridClientEngine.d.ts +2 -2
- package/lib/stores/view/grid/DataCubeGridClientEngine.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridClientEngine.js +3 -3
- package/lib/stores/view/grid/DataCubeGridClientEngine.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.d.ts +6 -4
- package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.js +3 -3
- package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridControllerState.d.ts +5 -5
- package/lib/stores/view/grid/DataCubeGridControllerState.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridControllerState.js +6 -6
- package/lib/stores/view/grid/DataCubeGridControllerState.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridQueryBuilder.d.ts +2 -2
- package/lib/stores/view/grid/DataCubeGridQueryBuilder.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridQueryBuilder.js +2 -2
- package/lib/stores/view/grid/DataCubeGridQueryBuilder.js.map +1 -1
- package/lib/stores/view/grid/{DataCubeGridQuerySnapshotBuilder.d.ts → DataCubeGridSnapshotBuilder.d.ts} +5 -5
- package/lib/stores/view/grid/DataCubeGridSnapshotBuilder.d.ts.map +1 -0
- package/lib/stores/view/grid/{DataCubeGridQuerySnapshotBuilder.js → DataCubeGridSnapshotBuilder.js} +6 -6
- package/lib/stores/view/grid/DataCubeGridSnapshotBuilder.js.map +1 -0
- package/lib/stores/view/grid/DataCubeGridState.d.ts +7 -5
- package/lib/stores/view/grid/DataCubeGridState.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridState.js +7 -6
- package/lib/stores/view/grid/DataCubeGridState.js.map +1 -1
- package/package.json +11 -11
- package/src/__lib__/DataCubeSetting.ts +2 -0
- package/src/components/DataCube.tsx +14 -12
- package/src/components/DataCubePlaceholder.tsx +5 -2
- package/src/components/DataCubeTitleBar.tsx +49 -19
- package/src/index.tsx +3 -2
- package/src/stores/DataCubeAPI.ts +25 -6
- package/src/stores/DataCubeOptions.ts +13 -11
- package/src/stores/DataCubeState.tsx +4 -4
- package/src/stores/core/DataCubeConfigurationBuilder.ts +3 -3
- package/src/stores/core/DataCubeEngine.tsx +8 -8
- package/src/stores/core/DataCubeQueryBuilder.ts +4 -4
- package/src/stores/core/DataCubeQueryBuilderUtils.ts +8 -8
- package/src/stores/core/{DataCubeQuerySnapshot.ts → DataCubeSnapshot.ts} +31 -34
- package/src/stores/core/{DataCubeQuerySnapshotBuilder.ts → DataCubeSnapshotBuilder.ts} +22 -22
- package/src/stores/core/{DataCubeQuerySnapshotBuilderUtils.ts → DataCubeSnapshotBuilderUtils.ts} +39 -25
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation.ts +3 -3
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Average.tsx +1 -1
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Count.tsx +1 -1
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__First.tsx +1 -1
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__JoinStrings.tsx +1 -1
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Last.tsx +1 -1
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Max.tsx +1 -1
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Min.tsx +1 -1
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevPopulation.tsx +1 -1
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevSample.tsx +1 -1
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Sum.tsx +1 -1
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__UniqueValue.tsx +1 -1
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__VariancePopulation.tsx +1 -1
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__VarianceSample.tsx +1 -1
- package/src/stores/core/filter/DataCubeQueryFilterEditorState.ts +8 -8
- package/src/stores/core/filter/DataCubeQueryFilterOperation.ts +4 -4
- package/src/stores/core/filter/DataCubeQueryFilterOperation__Contain.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__EndWith.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__Equal.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__IsNull.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThan.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotContain.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__StartWith.tsx +3 -3
- package/src/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.tsx +3 -3
- package/src/stores/core/model/DataCubeConfiguration.ts +1 -1
- package/src/stores/core/model/{DataCubeQuery.ts → DataCubeSpecification.ts} +17 -3
- package/src/stores/services/DataCubeSettingService.tsx +23 -0
- package/src/stores/services/{DataCubeQuerySnapshotService.ts → DataCubeSnapshotService.ts} +116 -65
- package/src/stores/view/DataCubeInfoState.ts +5 -5
- package/src/stores/view/DataCubeViewState.ts +143 -23
- package/src/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.ts +3 -6
- package/src/stores/view/editor/DataCubeEditorColumnsPanelState.ts +3 -6
- package/src/stores/view/editor/DataCubeEditorGeneralPropertiesPanelState.ts +3 -6
- package/src/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.ts +3 -6
- package/src/stores/view/editor/DataCubeEditorMutableConfiguration.ts +2 -2
- package/src/stores/view/editor/DataCubeEditorPanelState.ts +4 -4
- package/src/stores/view/editor/DataCubeEditorPivotLayoutPanelState.ts +4 -7
- package/src/stores/view/editor/DataCubeEditorSortsPanelState.ts +3 -6
- package/src/stores/view/editor/DataCubeEditorState.tsx +9 -9
- package/src/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.ts +3 -6
- package/src/stores/view/extend/DataCubeColumnEditorState.tsx +2 -2
- package/src/stores/view/extend/DataCubeExtendManagerState.tsx +11 -11
- package/src/stores/view/filter/DataCubeFilterEditorState.tsx +7 -7
- package/src/stores/view/grid/DataCubeGridClientEngine.ts +6 -6
- package/src/stores/view/grid/DataCubeGridConfigurationBuilder.tsx +12 -12
- package/src/stores/view/grid/DataCubeGridControllerState.ts +12 -12
- package/src/stores/view/grid/DataCubeGridQueryBuilder.ts +4 -4
- package/src/stores/view/grid/{DataCubeGridQuerySnapshotBuilder.ts → DataCubeGridSnapshotBuilder.ts} +6 -6
- package/src/stores/view/grid/DataCubeGridState.ts +15 -9
- package/tsconfig.json +6 -6
- package/lib/stores/core/DataCubeQuerySnapshot.d.ts.map +0 -1
- package/lib/stores/core/DataCubeQuerySnapshot.js.map +0 -1
- package/lib/stores/core/DataCubeQuerySnapshotBuilder.d.ts.map +0 -1
- package/lib/stores/core/DataCubeQuerySnapshotBuilder.js.map +0 -1
- package/lib/stores/core/DataCubeQuerySnapshotBuilderUtils.d.ts.map +0 -1
- package/lib/stores/core/DataCubeQuerySnapshotBuilderUtils.js.map +0 -1
- package/lib/stores/core/model/DataCubeQuery.d.ts.map +0 -1
- package/lib/stores/core/model/DataCubeQuery.js.map +0 -1
- package/lib/stores/services/DataCubeQuerySnapshotService.d.ts +0 -54
- package/lib/stores/services/DataCubeQuerySnapshotService.d.ts.map +0 -1
- package/lib/stores/services/DataCubeQuerySnapshotService.js.map +0 -1
- package/lib/stores/view/grid/DataCubeGridQuerySnapshotBuilder.d.ts.map +0 -1
- package/lib/stores/view/grid/DataCubeGridQuerySnapshotBuilder.js.map +0 -1
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
import { DataCubeQueryFilterOperation } from './DataCubeQueryFilterOperation.js';
|
|
17
|
-
import type {
|
|
17
|
+
import type { DataCubeSnapshotFilterCondition } from '../DataCubeSnapshot.js';
|
|
18
18
|
import type { DataCubeColumn } from '../model/DataCubeColumn.js';
|
|
19
19
|
import {
|
|
20
20
|
DataCubeColumnDataType,
|
|
@@ -36,7 +36,7 @@ import { type V1_AppliedFunction } from '@finos/legend-graph';
|
|
|
36
36
|
import {
|
|
37
37
|
_filterCondition_base,
|
|
38
38
|
_unwrapNotFilterCondition,
|
|
39
|
-
} from '../
|
|
39
|
+
} from '../DataCubeSnapshotBuilderUtils.js';
|
|
40
40
|
|
|
41
41
|
export class DataCubeQueryFilterOperation__NotEqualColumn extends DataCubeQueryFilterOperation {
|
|
42
42
|
override get label() {
|
|
@@ -92,7 +92,7 @@ export class DataCubeQueryFilterOperation__NotEqualColumn extends DataCubeQueryF
|
|
|
92
92
|
);
|
|
93
93
|
}
|
|
94
94
|
|
|
95
|
-
buildConditionExpression(condition:
|
|
95
|
+
buildConditionExpression(condition: DataCubeSnapshotFilterCondition) {
|
|
96
96
|
return _not(
|
|
97
97
|
_function(_functionName(DataCubeFunction.EQUAL), [
|
|
98
98
|
_property(condition.name),
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
import { DataCubeQueryFilterOperation } from './DataCubeQueryFilterOperation.js';
|
|
17
|
-
import type {
|
|
17
|
+
import type { DataCubeSnapshotFilterCondition } from '../DataCubeSnapshot.js';
|
|
18
18
|
import type { DataCubeColumn } from '../model/DataCubeColumn.js';
|
|
19
19
|
import {
|
|
20
20
|
DataCubeColumnDataType,
|
|
@@ -37,7 +37,7 @@ import { type V1_AppliedFunction } from '@finos/legend-graph';
|
|
|
37
37
|
import {
|
|
38
38
|
_unwrapNotFilterCondition,
|
|
39
39
|
_filterCondition_base,
|
|
40
|
-
} from '../
|
|
40
|
+
} from '../DataCubeSnapshotBuilderUtils.js';
|
|
41
41
|
|
|
42
42
|
export class DataCubeQueryFilterOperation__NotStartWith extends DataCubeQueryFilterOperation {
|
|
43
43
|
override get label() {
|
|
@@ -90,7 +90,7 @@ export class DataCubeQueryFilterOperation__NotStartWith extends DataCubeQueryFil
|
|
|
90
90
|
);
|
|
91
91
|
}
|
|
92
92
|
|
|
93
|
-
buildConditionExpression(condition:
|
|
93
|
+
buildConditionExpression(condition: DataCubeSnapshotFilterCondition) {
|
|
94
94
|
return _not(
|
|
95
95
|
_function(_functionName(DataCubeFunction.STARTS_WITH), [
|
|
96
96
|
_property(condition.name),
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
import { DataCubeQueryFilterOperation } from './DataCubeQueryFilterOperation.js';
|
|
17
|
-
import type {
|
|
17
|
+
import type { DataCubeSnapshotFilterCondition } from '../DataCubeSnapshot.js';
|
|
18
18
|
import type { DataCubeColumn } from '../model/DataCubeColumn.js';
|
|
19
19
|
import {
|
|
20
20
|
DataCubeColumnDataType,
|
|
@@ -32,7 +32,7 @@ import {
|
|
|
32
32
|
_value,
|
|
33
33
|
} from '../DataCubeQueryBuilderUtils.js';
|
|
34
34
|
import { type V1_AppliedFunction } from '@finos/legend-graph';
|
|
35
|
-
import { _filterCondition_base } from '../
|
|
35
|
+
import { _filterCondition_base } from '../DataCubeSnapshotBuilderUtils.js';
|
|
36
36
|
import { isString } from '@finos/legend-shared';
|
|
37
37
|
|
|
38
38
|
export class DataCubeQueryFilterOperation__StartWith extends DataCubeQueryFilterOperation {
|
|
@@ -86,7 +86,7 @@ export class DataCubeQueryFilterOperation__StartWith extends DataCubeQueryFilter
|
|
|
86
86
|
);
|
|
87
87
|
}
|
|
88
88
|
|
|
89
|
-
buildConditionExpression(condition:
|
|
89
|
+
buildConditionExpression(condition: DataCubeSnapshotFilterCondition) {
|
|
90
90
|
return _function(_functionName(DataCubeFunction.STARTS_WITH), [
|
|
91
91
|
_property(condition.name),
|
|
92
92
|
_value(condition.value),
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
import { DataCubeQueryFilterOperation } from './DataCubeQueryFilterOperation.js';
|
|
17
|
-
import type {
|
|
17
|
+
import type { DataCubeSnapshotFilterCondition } from '../DataCubeSnapshot.js';
|
|
18
18
|
import type { DataCubeColumn } from '../model/DataCubeColumn.js';
|
|
19
19
|
import {
|
|
20
20
|
DataCubeColumnDataType,
|
|
@@ -32,7 +32,7 @@ import {
|
|
|
32
32
|
_value,
|
|
33
33
|
} from '../DataCubeQueryBuilderUtils.js';
|
|
34
34
|
import { type V1_AppliedFunction } from '@finos/legend-graph';
|
|
35
|
-
import { _filterCondition_caseSensitive } from '../
|
|
35
|
+
import { _filterCondition_caseSensitive } from '../DataCubeSnapshotBuilderUtils.js';
|
|
36
36
|
import { isString } from '@finos/legend-shared';
|
|
37
37
|
|
|
38
38
|
export class DataCubeQueryFilterOperation__StartWithCaseInsensitive extends DataCubeQueryFilterOperation {
|
|
@@ -86,7 +86,7 @@ export class DataCubeQueryFilterOperation__StartWithCaseInsensitive extends Data
|
|
|
86
86
|
);
|
|
87
87
|
}
|
|
88
88
|
|
|
89
|
-
buildConditionExpression(condition:
|
|
89
|
+
buildConditionExpression(condition: DataCubeSnapshotFilterCondition) {
|
|
90
90
|
return _function(_functionName(DataCubeFunction.STARTS_WITH), [
|
|
91
91
|
_function(_functionName(DataCubeFunction.TO_LOWERCASE), [
|
|
92
92
|
_property(condition.name),
|
|
@@ -98,7 +98,7 @@ export class DataCubeColumnConfiguration {
|
|
|
98
98
|
/**
|
|
99
99
|
* Unlike `isSelected`, this is used to indicate if the column is to be displayed
|
|
100
100
|
* in the grid or not, this would not influence data-fetching, i.e. the column
|
|
101
|
-
* is still fetched and used in various part of the
|
|
101
|
+
* is still fetched and used in various part of the query, but the column associated
|
|
102
102
|
* will not be displayed in the result grid.
|
|
103
103
|
*/
|
|
104
104
|
hideFromView = false;
|
|
@@ -19,19 +19,33 @@ import {
|
|
|
19
19
|
usingModelSchema,
|
|
20
20
|
type PlainObject,
|
|
21
21
|
} from '@finos/legend-shared';
|
|
22
|
-
import { createModelSchema, primitive, raw } from 'serializr';
|
|
22
|
+
import { createModelSchema, optional, primitive, raw } from 'serializr';
|
|
23
23
|
import { DataCubeConfiguration } from './DataCubeConfiguration.js';
|
|
24
24
|
|
|
25
|
-
export class
|
|
25
|
+
export class DataCubeSpecificationOptions {
|
|
26
|
+
autoEnableCache?: boolean | undefined;
|
|
27
|
+
|
|
28
|
+
static readonly serialization = new SerializationFactory(
|
|
29
|
+
createModelSchema(DataCubeSpecificationOptions, {
|
|
30
|
+
autoEnableCache: optional(primitive()),
|
|
31
|
+
}),
|
|
32
|
+
);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export class DataCubeSpecification {
|
|
26
36
|
query!: string;
|
|
27
37
|
configuration?: DataCubeConfiguration | undefined;
|
|
28
38
|
source!: PlainObject;
|
|
39
|
+
options?: DataCubeSpecificationOptions | undefined;
|
|
29
40
|
|
|
30
41
|
static readonly serialization = new SerializationFactory(
|
|
31
|
-
createModelSchema(
|
|
42
|
+
createModelSchema(DataCubeSpecification, {
|
|
32
43
|
configuration: usingModelSchema(
|
|
33
44
|
DataCubeConfiguration.serialization.schema,
|
|
34
45
|
),
|
|
46
|
+
options: optional(
|
|
47
|
+
usingModelSchema(DataCubeSpecificationOptions.serialization.schema),
|
|
48
|
+
),
|
|
35
49
|
query: primitive(),
|
|
36
50
|
source: raw(),
|
|
37
51
|
}),
|
|
@@ -55,6 +55,7 @@ export type DataCubeSettingValues = {
|
|
|
55
55
|
|
|
56
56
|
export enum DataCubeSettingGroup {
|
|
57
57
|
DEBUG = 'Debug',
|
|
58
|
+
EDITOR = 'Editor',
|
|
58
59
|
GRID = 'Grid',
|
|
59
60
|
}
|
|
60
61
|
|
|
@@ -169,6 +170,28 @@ export class DataCubeSettingService {
|
|
|
169
170
|
type: DataCubeSettingType.BOOLEAN,
|
|
170
171
|
defaultValue: true,
|
|
171
172
|
} satisfies DataCubeSetting<boolean>,
|
|
173
|
+
{
|
|
174
|
+
key: DataCubeSettingKey.GRID_CLIENT__SHOW_AUTO_ENABLE_CACHE_PERFORMANCE_WARNING,
|
|
175
|
+
title: `Caching (Auto-Enabled) Performance Warning: Enabled`,
|
|
176
|
+
description: `Alerts user that caching is auto-enabled for the DataCube and of potential performance and resource-related issues that caching can cause when enabled.`,
|
|
177
|
+
group: DataCubeSettingGroup.GRID,
|
|
178
|
+
type: DataCubeSettingType.BOOLEAN,
|
|
179
|
+
defaultValue: true,
|
|
180
|
+
} satisfies DataCubeSetting<boolean>,
|
|
181
|
+
{
|
|
182
|
+
key: DataCubeSettingKey.EDITOR__MAX_HISTORY_STACK_SIZE,
|
|
183
|
+
title: `Max History Stack Size`,
|
|
184
|
+
description: `Sets the number of maximum snapshots to store in edit history.`,
|
|
185
|
+
group: DataCubeSettingGroup.EDITOR,
|
|
186
|
+
type: DataCubeSettingType.NUMERIC,
|
|
187
|
+
defaultValue: 100,
|
|
188
|
+
numericValueMin: 10,
|
|
189
|
+
numericValueStep: 10,
|
|
190
|
+
action: (api, newValue) =>
|
|
191
|
+
(api as INTERNAL__DataCubeAPI)._runTaskForEachView((view) => {
|
|
192
|
+
view.snapshotService.adjustHistorySize(newValue);
|
|
193
|
+
}),
|
|
194
|
+
} satisfies DataCubeSetting<number>,
|
|
172
195
|
{
|
|
173
196
|
key: DataCubeSettingKey.GRID_CLIENT__SUPPRESS_LARGE_DATASET_WARNING,
|
|
174
197
|
title: `Large Dataset Warning: Disabled`,
|
|
@@ -14,42 +14,38 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
|
-
import type {
|
|
17
|
+
import type { DataCubeSnapshot } from '../core/DataCubeSnapshot.js';
|
|
18
18
|
import {
|
|
19
19
|
IllegalStateError,
|
|
20
20
|
assertErrorThrown,
|
|
21
21
|
at,
|
|
22
22
|
deepDiff,
|
|
23
|
-
guaranteeNonNullable,
|
|
24
23
|
} from '@finos/legend-shared';
|
|
25
|
-
import type { DataCubeQuery } from '../core/model/DataCubeQuery.js';
|
|
26
24
|
import { DataCubeSettingKey } from '../../__lib__/DataCubeSetting.js';
|
|
27
25
|
import type { DataCubeEngine } from '../core/DataCubeEngine.js';
|
|
28
26
|
import type { DataCubeSettingService } from './DataCubeSettingService.js';
|
|
29
27
|
import type { DataCubeLogService } from './DataCubeLogService.js';
|
|
28
|
+
import { action, computed, makeObservable, observable } from 'mobx';
|
|
30
29
|
|
|
31
|
-
|
|
32
|
-
// const DATA_CUBE_MAX_SNAPSHOT_COUNT = 100;
|
|
33
|
-
|
|
34
|
-
interface DataCubeQuerySnapshotSubscriber {
|
|
30
|
+
interface DataCubeSnapshotSubscriber {
|
|
35
31
|
getSnapshotSubscriberName(): string;
|
|
36
|
-
getLatestSnapshot():
|
|
37
|
-
receiveSnapshot(snapshot:
|
|
32
|
+
getLatestSnapshot(): DataCubeSnapshot | undefined;
|
|
33
|
+
receiveSnapshot(snapshot: DataCubeSnapshot): Promise<void>;
|
|
38
34
|
}
|
|
39
35
|
|
|
40
|
-
export abstract class
|
|
41
|
-
implements
|
|
36
|
+
export abstract class DataCubeSnapshotController
|
|
37
|
+
implements DataCubeSnapshotSubscriber
|
|
42
38
|
{
|
|
43
39
|
protected readonly _engine: DataCubeEngine;
|
|
44
40
|
protected readonly _settingService: DataCubeSettingService;
|
|
45
|
-
protected readonly _snapshotService:
|
|
41
|
+
protected readonly _snapshotService: DataCubeSnapshotService;
|
|
46
42
|
|
|
47
|
-
private _latestSnapshot:
|
|
43
|
+
private _latestSnapshot: DataCubeSnapshot | undefined;
|
|
48
44
|
|
|
49
45
|
constructor(
|
|
50
46
|
engine: DataCubeEngine,
|
|
51
47
|
settingService: DataCubeSettingService,
|
|
52
|
-
snapshotService:
|
|
48
|
+
snapshotService: DataCubeSnapshotService,
|
|
53
49
|
) {
|
|
54
50
|
this._engine = engine;
|
|
55
51
|
this._settingService = settingService;
|
|
@@ -62,7 +58,7 @@ export abstract class DataCubeQuerySnapshotController
|
|
|
62
58
|
return this._latestSnapshot;
|
|
63
59
|
}
|
|
64
60
|
|
|
65
|
-
async receiveSnapshot(snapshot:
|
|
61
|
+
async receiveSnapshot(snapshot: DataCubeSnapshot) {
|
|
66
62
|
const previousSnapshot = this._latestSnapshot;
|
|
67
63
|
this._latestSnapshot = snapshot;
|
|
68
64
|
|
|
@@ -72,11 +68,11 @@ export abstract class DataCubeQuerySnapshotController
|
|
|
72
68
|
}
|
|
73
69
|
|
|
74
70
|
abstract applySnapshot(
|
|
75
|
-
snapshot:
|
|
76
|
-
previousSnapshot:
|
|
71
|
+
snapshot: DataCubeSnapshot,
|
|
72
|
+
previousSnapshot: DataCubeSnapshot | undefined,
|
|
77
73
|
): Promise<void>;
|
|
78
74
|
|
|
79
|
-
publishSnapshot(snapshot:
|
|
75
|
+
publishSnapshot(snapshot: DataCubeSnapshot) {
|
|
80
76
|
const previousSnapshot = this._latestSnapshot;
|
|
81
77
|
this._latestSnapshot = snapshot;
|
|
82
78
|
|
|
@@ -98,25 +94,44 @@ export abstract class DataCubeQuerySnapshotController
|
|
|
98
94
|
}
|
|
99
95
|
}
|
|
100
96
|
|
|
101
|
-
|
|
102
|
-
|
|
97
|
+
const MINIMUM_HISTORY_SIZE = 10;
|
|
98
|
+
|
|
99
|
+
export class DataCubeSnapshotService {
|
|
103
100
|
private readonly _logService: DataCubeLogService;
|
|
101
|
+
private readonly _settingService: DataCubeSettingService;
|
|
104
102
|
|
|
105
|
-
private readonly _subscribers:
|
|
106
|
-
private readonly _snapshots: DataCubeQuerySnapshot[] = []; // stack
|
|
107
|
-
private _initialSnapshot: DataCubeQuerySnapshot | undefined;
|
|
108
|
-
private _initialQuery: DataCubeQuery | undefined;
|
|
103
|
+
private readonly _subscribers: DataCubeSnapshotSubscriber[] = [];
|
|
109
104
|
|
|
110
|
-
|
|
111
|
-
|
|
105
|
+
private _snapshots: DataCubeSnapshot[] = []; // stack
|
|
106
|
+
private _pointer = -1;
|
|
107
|
+
private _historySize;
|
|
108
|
+
|
|
109
|
+
constructor(
|
|
110
|
+
logService: DataCubeLogService,
|
|
111
|
+
settingService: DataCubeSettingService,
|
|
112
|
+
) {
|
|
113
|
+
makeObservable<DataCubeSnapshotService, '_snapshots' | '_pointer'>(this, {
|
|
114
|
+
_snapshots: observable.struct,
|
|
115
|
+
_pointer: observable,
|
|
116
|
+
canUndo: computed,
|
|
117
|
+
canRedo: computed,
|
|
118
|
+
undo: action,
|
|
119
|
+
redo: action,
|
|
120
|
+
adjustHistorySize: action,
|
|
121
|
+
broadcastSnapshot: action,
|
|
122
|
+
});
|
|
112
123
|
this._logService = logService;
|
|
113
|
-
|
|
124
|
+
this._settingService = settingService;
|
|
114
125
|
|
|
115
|
-
|
|
116
|
-
|
|
126
|
+
this._historySize = Math.max(
|
|
127
|
+
this._settingService.getNumericValue(
|
|
128
|
+
DataCubeSettingKey.EDITOR__MAX_HISTORY_STACK_SIZE,
|
|
129
|
+
),
|
|
130
|
+
MINIMUM_HISTORY_SIZE,
|
|
131
|
+
);
|
|
117
132
|
}
|
|
118
133
|
|
|
119
|
-
registerSubscriber(subscriber:
|
|
134
|
+
registerSubscriber(subscriber: DataCubeSnapshotSubscriber) {
|
|
120
135
|
const existingSubscriber = this._subscribers.find(
|
|
121
136
|
(sub) =>
|
|
122
137
|
sub.getSnapshotSubscriberName() ===
|
|
@@ -137,41 +152,7 @@ export class DataCubeQuerySnapshotService {
|
|
|
137
152
|
this._subscribers.push(subscriber);
|
|
138
153
|
}
|
|
139
154
|
|
|
140
|
-
|
|
141
|
-
initialSnapshot: DataCubeQuerySnapshot,
|
|
142
|
-
initialQuery: DataCubeQuery,
|
|
143
|
-
) {
|
|
144
|
-
if (this._initialSnapshot || this._initialQuery) {
|
|
145
|
-
throw new IllegalStateError(
|
|
146
|
-
`Snapshot manager has already been initialized`,
|
|
147
|
-
);
|
|
148
|
-
}
|
|
149
|
-
this._initialSnapshot = initialSnapshot;
|
|
150
|
-
this._initialQuery = initialQuery;
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
get initialSnapshot() {
|
|
154
|
-
return guaranteeNonNullable(
|
|
155
|
-
this._initialSnapshot,
|
|
156
|
-
`Snapshot manager has not been initialized`,
|
|
157
|
-
);
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
get initialQuery() {
|
|
161
|
-
return guaranteeNonNullable(
|
|
162
|
-
this._initialQuery,
|
|
163
|
-
`Snapshot manager has not been initialized`,
|
|
164
|
-
);
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
broadcastSnapshot(snapshot: DataCubeQuerySnapshot) {
|
|
168
|
-
if (!snapshot.isFinalized()) {
|
|
169
|
-
this._logService.logIllegalStateError(
|
|
170
|
-
`Snapshot must be finalized before broadcasting`,
|
|
171
|
-
);
|
|
172
|
-
return;
|
|
173
|
-
}
|
|
174
|
-
this._snapshots.push(snapshot);
|
|
155
|
+
private propagateSnapshot(snapshot: DataCubeSnapshot): void {
|
|
175
156
|
this._subscribers.forEach((subscriber) => {
|
|
176
157
|
const currentSnapshot = subscriber.getLatestSnapshot();
|
|
177
158
|
if (currentSnapshot?.uuid !== snapshot.uuid) {
|
|
@@ -185,4 +166,74 @@ export class DataCubeQuerySnapshotService {
|
|
|
185
166
|
}
|
|
186
167
|
});
|
|
187
168
|
}
|
|
169
|
+
|
|
170
|
+
getCurrentSnapshot() {
|
|
171
|
+
return at(this._snapshots, this._pointer);
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
getHistory(options?: { full?: boolean }) {
|
|
175
|
+
return options?.full
|
|
176
|
+
? [...this._snapshots]
|
|
177
|
+
: this._snapshots.slice(0, this._pointer + 1);
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
get canUndo() {
|
|
181
|
+
return this._pointer > 0;
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
get canRedo() {
|
|
185
|
+
return this._pointer < this._snapshots.length - 1;
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
undo() {
|
|
189
|
+
// Always leave one snapshot in the stack
|
|
190
|
+
this._pointer = Math.max(this._pointer - 1, 0);
|
|
191
|
+
this.propagateSnapshot(this.getCurrentSnapshot());
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
redo() {
|
|
195
|
+
this._pointer = Math.min(this._pointer + 1, this._snapshots.length - 1);
|
|
196
|
+
this.propagateSnapshot(this.getCurrentSnapshot());
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
adjustHistorySize(size: number): void {
|
|
200
|
+
let newSize = size;
|
|
201
|
+
if (size <= MINIMUM_HISTORY_SIZE) {
|
|
202
|
+
this._logService.logIllegalStateError(
|
|
203
|
+
`Can't adjust history size to ${size}: value must be greator than ${MINIMUM_HISTORY_SIZE}`,
|
|
204
|
+
);
|
|
205
|
+
newSize = Math.max(size, MINIMUM_HISTORY_SIZE);
|
|
206
|
+
}
|
|
207
|
+
const snapshots = this.getHistory();
|
|
208
|
+
if (snapshots.length > newSize) {
|
|
209
|
+
this._snapshots = snapshots.slice(-newSize);
|
|
210
|
+
this._pointer = Math.min(
|
|
211
|
+
Math.max(this._pointer - (snapshots.length - newSize), 0),
|
|
212
|
+
snapshots.length - 1,
|
|
213
|
+
);
|
|
214
|
+
} else {
|
|
215
|
+
this._snapshots = snapshots;
|
|
216
|
+
this._pointer = snapshots.length - 1;
|
|
217
|
+
}
|
|
218
|
+
this._historySize = newSize;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
broadcastSnapshot(snapshot: DataCubeSnapshot) {
|
|
222
|
+
if (!snapshot.isFinalized()) {
|
|
223
|
+
this._logService.logIllegalStateError(
|
|
224
|
+
`Snapshot must be finalized before broadcasting`,
|
|
225
|
+
);
|
|
226
|
+
return;
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
this._snapshots = [
|
|
230
|
+
...this._snapshots.slice(0, this._pointer + 1),
|
|
231
|
+
snapshot,
|
|
232
|
+
];
|
|
233
|
+
this._pointer += 1;
|
|
234
|
+
// always adjust to history size after adding a new snapshot
|
|
235
|
+
this.adjustHistorySize(this._historySize);
|
|
236
|
+
|
|
237
|
+
this.propagateSnapshot(snapshot);
|
|
238
|
+
}
|
|
188
239
|
}
|
|
@@ -16,8 +16,8 @@
|
|
|
16
16
|
|
|
17
17
|
import { action, makeObservable, observable } from 'mobx';
|
|
18
18
|
import type { DataCubeViewState } from './DataCubeViewState.js';
|
|
19
|
-
import {
|
|
20
|
-
import type {
|
|
19
|
+
import { DataCubeSnapshotController } from '../services/DataCubeSnapshotService.js';
|
|
20
|
+
import type { DataCubeSnapshot } from '../core/DataCubeSnapshot.js';
|
|
21
21
|
import { DataCubeConfiguration } from '../core/model/DataCubeConfiguration.js';
|
|
22
22
|
|
|
23
23
|
/**
|
|
@@ -25,7 +25,7 @@ import { DataCubeConfiguration } from '../core/model/DataCubeConfiguration.js';
|
|
|
25
25
|
* modification to the query, it simplies subscribe to extract information
|
|
26
26
|
* from the latest snapshot to help display latest static info about the query.
|
|
27
27
|
*/
|
|
28
|
-
export class DataCubeInfoState extends
|
|
28
|
+
export class DataCubeInfoState extends DataCubeSnapshotController {
|
|
29
29
|
private readonly _view: DataCubeViewState;
|
|
30
30
|
|
|
31
31
|
name = '';
|
|
@@ -48,8 +48,8 @@ export class DataCubeInfoState extends DataCubeQuerySnapshotController {
|
|
|
48
48
|
}
|
|
49
49
|
|
|
50
50
|
override async applySnapshot(
|
|
51
|
-
snapshot:
|
|
52
|
-
previousSnapshot:
|
|
51
|
+
snapshot: DataCubeSnapshot,
|
|
52
|
+
previousSnapshot: DataCubeSnapshot | undefined,
|
|
53
53
|
) {
|
|
54
54
|
const data = snapshot.data;
|
|
55
55
|
const configuration = DataCubeConfiguration.serialization.fromJson(
|