@finos/legend-data-cube 0.0.43 → 0.0.44
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/docs/column-configuration.kind.md +2 -0
- package/lib/__lib__/DataCubeSetting.d.ts +1 -0
- package/lib/__lib__/DataCubeSetting.d.ts.map +1 -1
- package/lib/__lib__/DataCubeSetting.js +1 -0
- package/lib/__lib__/DataCubeSetting.js.map +1 -1
- package/lib/components/view/editor/DataCubeEditorColumnPropertiesPanel.d.ts.map +1 -1
- package/lib/components/view/editor/DataCubeEditorColumnPropertiesPanel.js +12 -6
- package/lib/components/view/editor/DataCubeEditorColumnPropertiesPanel.js.map +1 -1
- package/lib/components/view/editor/DataCubeEditorColumnSelector.d.ts +7 -1
- package/lib/components/view/editor/DataCubeEditorColumnSelector.d.ts.map +1 -1
- package/lib/components/view/editor/DataCubeEditorColumnSelector.js +23 -1
- package/lib/components/view/editor/DataCubeEditorColumnSelector.js.map +1 -1
- package/lib/components/view/editor/DataCubeEditorColumnsPanel.d.ts.map +1 -1
- package/lib/components/view/editor/DataCubeEditorColumnsPanel.js +2 -1
- package/lib/components/view/editor/DataCubeEditorColumnsPanel.js.map +1 -1
- package/lib/components/view/editor/DataCubeEditorHorizontalPivotsPanel.d.ts.map +1 -1
- package/lib/components/view/editor/DataCubeEditorHorizontalPivotsPanel.js +2 -4
- package/lib/components/view/editor/DataCubeEditorHorizontalPivotsPanel.js.map +1 -1
- package/lib/components/view/editor/DataCubeEditorSortsPanel.d.ts.map +1 -1
- package/lib/components/view/editor/DataCubeEditorSortsPanel.js +4 -25
- package/lib/components/view/editor/DataCubeEditorSortsPanel.js.map +1 -1
- package/lib/components/view/filter/DataCubeFilterEditor.d.ts.map +1 -1
- package/lib/components/view/filter/DataCubeFilterEditor.js +2 -1
- package/lib/components/view/filter/DataCubeFilterEditor.js.map +1 -1
- package/lib/index.css +2 -2
- package/lib/index.css.map +1 -1
- package/lib/package.json +5 -5
- package/lib/stores/core/DataCubeConfigurationBuilder.d.ts +4 -3
- package/lib/stores/core/DataCubeConfigurationBuilder.d.ts.map +1 -1
- package/lib/stores/core/DataCubeConfigurationBuilder.js +59 -3
- package/lib/stores/core/DataCubeConfigurationBuilder.js.map +1 -1
- package/lib/stores/core/DataCubeEngine.d.ts +2 -0
- package/lib/stores/core/DataCubeEngine.d.ts.map +1 -1
- package/lib/stores/core/DataCubeEngine.js +1 -2
- package/lib/stores/core/DataCubeEngine.js.map +1 -1
- package/lib/stores/core/DataCubeQueryBuilder.d.ts.map +1 -1
- package/lib/stores/core/DataCubeQueryBuilder.js +12 -22
- package/lib/stores/core/DataCubeQueryBuilder.js.map +1 -1
- package/lib/stores/core/DataCubeQueryBuilderUtils.d.ts +6 -5
- package/lib/stores/core/DataCubeQueryBuilderUtils.d.ts.map +1 -1
- package/lib/stores/core/DataCubeQueryBuilderUtils.js +59 -30
- package/lib/stores/core/DataCubeQueryBuilderUtils.js.map +1 -1
- package/lib/stores/core/DataCubeQueryEngine.d.ts +14 -7
- package/lib/stores/core/DataCubeQueryEngine.d.ts.map +1 -1
- package/lib/stores/core/DataCubeQueryEngine.js +76 -45
- package/lib/stores/core/DataCubeQueryEngine.js.map +1 -1
- package/lib/stores/core/DataCubeQuerySnapshot.d.ts +11 -0
- package/lib/stores/core/DataCubeQuerySnapshot.d.ts.map +1 -1
- package/lib/stores/core/DataCubeQuerySnapshot.js.map +1 -1
- package/lib/stores/core/DataCubeQuerySnapshotBuilder.d.ts +2 -3
- package/lib/stores/core/DataCubeQuerySnapshotBuilder.d.ts.map +1 -1
- package/lib/stores/core/DataCubeQuerySnapshotBuilder.js +226 -128
- package/lib/stores/core/DataCubeQuerySnapshotBuilder.js.map +1 -1
- package/lib/stores/core/DataCubeQuerySnapshotBuilderUtils.d.ts +36 -7
- package/lib/stores/core/DataCubeQuerySnapshotBuilderUtils.d.ts.map +1 -1
- package/lib/stores/core/DataCubeQuerySnapshotBuilderUtils.js +359 -126
- package/lib/stores/core/DataCubeQuerySnapshotBuilderUtils.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation.d.ts +10 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation.js +15 -6
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Average.d.ts +6 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Average.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Average.js +13 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Average.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Count.d.ts +6 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Count.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Count.js +13 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Count.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__First.d.ts +6 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__First.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__First.js +13 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__First.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__JoinStrings.d.ts +6 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__JoinStrings.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__JoinStrings.js +23 -10
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__JoinStrings.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Last.d.ts +6 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Last.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Last.js +13 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Last.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Max.d.ts +6 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Max.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Max.js +13 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Max.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Min.d.ts +6 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Min.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Min.js +13 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Min.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevPopulation.d.ts +6 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevPopulation.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevPopulation.js +13 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevPopulation.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevSample.d.ts +6 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevSample.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevSample.js +13 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevSample.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Sum.d.ts +6 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Sum.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Sum.js +14 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__Sum.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__UniqueValue.d.ts +6 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__UniqueValue.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__UniqueValue.js +13 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__UniqueValue.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VariancePopulation.d.ts +6 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VariancePopulation.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VariancePopulation.js +13 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VariancePopulation.js.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VarianceSample.d.ts +6 -2
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VarianceSample.d.ts.map +1 -1
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VarianceSample.js +13 -3
- package/lib/stores/core/aggregation/DataCubeQueryAggregateOperation__VarianceSample.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation.d.ts +0 -2
- package/lib/stores/core/filter/DataCubeQueryFilterOperation.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation.js +1 -30
- package/lib/stores/core/filter/DataCubeQueryFilterOperation.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Contain.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Contain.js +8 -7
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Contain.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.js +10 -10
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWith.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWith.js +8 -7
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWith.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.js +10 -10
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Equal.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Equal.js +5 -6
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__Equal.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.js +10 -10
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.js +6 -7
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.js +6 -7
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.js +5 -6
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.js +6 -7
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.js +5 -6
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.js +6 -7
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.js +2 -6
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNull.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNull.js +2 -2
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__IsNull.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThan.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThan.js +5 -6
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThan.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.js +6 -7
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.js +5 -6
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.js +6 -7
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotContain.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotContain.js +8 -11
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotContain.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.js +8 -11
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.js +6 -10
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.js +10 -14
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.js +6 -11
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.js +6 -11
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.js +8 -11
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWith.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWith.js +8 -7
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWith.js.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.d.ts.map +1 -1
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.js +10 -10
- package/lib/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.js.map +1 -1
- package/lib/stores/core/model/DataCubeColumn.d.ts +1 -1
- package/lib/stores/core/model/DataCubeColumn.d.ts.map +1 -1
- package/lib/stores/core/model/DataCubeColumn.js.map +1 -1
- package/lib/stores/core/model/DataCubeConfiguration.d.ts +4 -3
- package/lib/stores/core/model/DataCubeConfiguration.d.ts.map +1 -1
- package/lib/stores/core/model/DataCubeConfiguration.js +4 -0
- package/lib/stores/core/model/DataCubeConfiguration.js.map +1 -1
- package/lib/stores/services/DataCubeQuerySnapshotService.d.ts.map +1 -1
- package/lib/stores/services/DataCubeQuerySnapshotService.js +2 -2
- package/lib/stores/services/DataCubeQuerySnapshotService.js.map +1 -1
- package/lib/stores/services/DataCubeSettingService.d.ts.map +1 -1
- package/lib/stores/services/DataCubeSettingService.js +8 -0
- package/lib/stores/services/DataCubeSettingService.js.map +1 -1
- package/lib/stores/view/DataCubeViewState.d.ts.map +1 -1
- package/lib/stores/view/DataCubeViewState.js +1 -1
- package/lib/stores/view/DataCubeViewState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.js +3 -2
- package/lib/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnSelectorState.d.ts +7 -0
- package/lib/stores/view/editor/DataCubeEditorColumnSelectorState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnSelectorState.js +20 -3
- package/lib/stores/view/editor/DataCubeEditorColumnSelectorState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnsPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorColumnsPanelState.js +2 -2
- package/lib/stores/view/editor/DataCubeEditorColumnsPanelState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.d.ts +4 -4
- package/lib/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.js +14 -8
- package/lib/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorMutableConfiguration.d.ts +1 -5
- package/lib/stores/view/editor/DataCubeEditorMutableConfiguration.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorMutableConfiguration.js +2 -6
- package/lib/stores/view/editor/DataCubeEditorMutableConfiguration.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorSortsPanelState.d.ts +1 -7
- package/lib/stores/view/editor/DataCubeEditorSortsPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorSortsPanelState.js +4 -19
- package/lib/stores/view/editor/DataCubeEditorSortsPanelState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorState.js +2 -2
- package/lib/stores/view/editor/DataCubeEditorState.js.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.d.ts.map +1 -1
- package/lib/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.js +4 -4
- package/lib/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.js.map +1 -1
- package/lib/stores/view/extend/DataCubeColumnEditorState.d.ts.map +1 -1
- package/lib/stores/view/extend/DataCubeColumnEditorState.js +2 -1
- package/lib/stores/view/extend/DataCubeColumnEditorState.js.map +1 -1
- package/lib/stores/view/extend/DataCubeExtendManagerState.d.ts.map +1 -1
- package/lib/stores/view/extend/DataCubeExtendManagerState.js +12 -12
- package/lib/stores/view/extend/DataCubeExtendManagerState.js.map +1 -1
- package/lib/stores/view/filter/DataCubeFilterEditorState.d.ts.map +1 -1
- package/lib/stores/view/filter/DataCubeFilterEditorState.js +2 -1
- package/lib/stores/view/filter/DataCubeFilterEditorState.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridClientEngine.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridClientEngine.js +11 -14
- package/lib/stores/view/grid/DataCubeGridClientEngine.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.js +48 -12
- package/lib/stores/view/grid/DataCubeGridConfigurationBuilder.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridControllerState.d.ts +1 -1
- package/lib/stores/view/grid/DataCubeGridControllerState.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridControllerState.js +20 -20
- package/lib/stores/view/grid/DataCubeGridControllerState.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridMenuBuilder.d.ts.map +1 -1
- package/lib/stores/view/grid/DataCubeGridMenuBuilder.js +8 -12
- package/lib/stores/view/grid/DataCubeGridMenuBuilder.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridQueryBuilder.js +1 -1
- package/lib/stores/view/grid/DataCubeGridQueryBuilder.js.map +1 -1
- package/lib/stores/view/grid/DataCubeGridQuerySnapshotBuilder.js +1 -1
- package/lib/stores/view/grid/DataCubeGridQuerySnapshotBuilder.js.map +1 -1
- package/package.json +8 -8
- package/src/__lib__/DataCubeSetting.ts +1 -0
- package/src/components/view/editor/DataCubeEditorColumnPropertiesPanel.tsx +40 -17
- package/src/components/view/editor/DataCubeEditorColumnSelector.tsx +75 -1
- package/src/components/view/editor/DataCubeEditorColumnsPanel.tsx +3 -6
- package/src/components/view/editor/DataCubeEditorHorizontalPivotsPanel.tsx +5 -12
- package/src/components/view/editor/DataCubeEditorSortsPanel.tsx +12 -80
- package/src/components/view/filter/DataCubeFilterEditor.tsx +2 -3
- package/src/stores/core/DataCubeConfigurationBuilder.ts +80 -5
- package/src/stores/core/DataCubeEngine.tsx +10 -2
- package/src/stores/core/DataCubeQueryBuilder.ts +36 -37
- package/src/stores/core/DataCubeQueryBuilderUtils.ts +74 -41
- package/src/stores/core/DataCubeQueryEngine.ts +120 -60
- package/src/stores/core/DataCubeQuerySnapshot.ts +13 -0
- package/src/stores/core/DataCubeQuerySnapshotBuilder.ts +379 -157
- package/src/stores/core/DataCubeQuerySnapshotBuilderUtils.ts +597 -157
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation.ts +39 -16
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Average.tsx +26 -4
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Count.tsx +26 -4
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__First.tsx +26 -4
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__JoinStrings.tsx +41 -26
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Last.tsx +26 -4
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Max.tsx +26 -4
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Min.tsx +26 -4
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevPopulation.tsx +29 -6
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__StdDevSample.tsx +30 -4
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__Sum.tsx +26 -4
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__UniqueValue.tsx +26 -4
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__VariancePopulation.tsx +26 -4
- package/src/stores/core/aggregation/DataCubeQueryAggregateOperation__VarianceSample.tsx +26 -4
- package/src/stores/core/filter/DataCubeQueryFilterOperation.ts +1 -52
- package/src/stores/core/filter/DataCubeQueryFilterOperation__Contain.tsx +12 -9
- package/src/stores/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.tsx +10 -13
- package/src/stores/core/filter/DataCubeQueryFilterOperation__EndWith.tsx +9 -10
- package/src/stores/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.tsx +10 -13
- package/src/stores/core/filter/DataCubeQueryFilterOperation__Equal.tsx +5 -8
- package/src/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.tsx +10 -13
- package/src/stores/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.tsx +6 -8
- package/src/stores/core/filter/DataCubeQueryFilterOperation__EqualColumn.tsx +5 -7
- package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThan.tsx +6 -9
- package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.tsx +6 -8
- package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.tsx +6 -9
- package/src/stores/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.tsx +6 -8
- package/src/stores/core/filter/DataCubeQueryFilterOperation__IsNotNull.tsx +6 -8
- package/src/stores/core/filter/DataCubeQueryFilterOperation__IsNull.tsx +6 -2
- package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThan.tsx +6 -9
- package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThanColumn.tsx +6 -8
- package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.tsx +6 -9
- package/src/stores/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.tsx +6 -8
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotContain.tsx +12 -15
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEndWith.tsx +12 -15
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqual.tsx +10 -14
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.tsx +11 -20
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.tsx +7 -19
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.tsx +9 -17
- package/src/stores/core/filter/DataCubeQueryFilterOperation__NotStartWith.tsx +10 -17
- package/src/stores/core/filter/DataCubeQueryFilterOperation__StartWith.tsx +9 -10
- package/src/stores/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.tsx +10 -13
- package/src/stores/core/model/DataCubeColumn.ts +1 -1
- package/src/stores/core/model/DataCubeConfiguration.ts +7 -1
- package/src/stores/services/DataCubeQuerySnapshotService.ts +2 -1
- package/src/stores/services/DataCubeSettingService.tsx +8 -0
- package/src/stores/view/DataCubeViewState.ts +2 -3
- package/src/stores/view/editor/DataCubeEditorColumnPropertiesPanelState.ts +3 -2
- package/src/stores/view/editor/DataCubeEditorColumnSelectorState.ts +31 -6
- package/src/stores/view/editor/DataCubeEditorColumnsPanelState.ts +2 -7
- package/src/stores/view/editor/DataCubeEditorHorizontalPivotsPanelState.ts +33 -10
- package/src/stores/view/editor/DataCubeEditorMutableConfiguration.ts +4 -20
- package/src/stores/view/editor/DataCubeEditorSortsPanelState.ts +6 -29
- package/src/stores/view/editor/DataCubeEditorState.tsx +2 -3
- package/src/stores/view/editor/DataCubeEditorVerticalPivotsPanelState.ts +6 -7
- package/src/stores/view/extend/DataCubeColumnEditorState.tsx +2 -3
- package/src/stores/view/extend/DataCubeExtendManagerState.tsx +14 -13
- package/src/stores/view/filter/DataCubeFilterEditorState.tsx +2 -4
- package/src/stores/view/grid/DataCubeGridClientEngine.ts +21 -20
- package/src/stores/view/grid/DataCubeGridConfigurationBuilder.tsx +64 -15
- package/src/stores/view/grid/DataCubeGridControllerState.ts +35 -34
- package/src/stores/view/grid/DataCubeGridMenuBuilder.tsx +17 -23
- package/src/stores/view/grid/DataCubeGridQueryBuilder.ts +1 -1
- package/src/stores/view/grid/DataCubeGridQuerySnapshotBuilder.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataCubeGridQueryBuilder.js","sourceRoot":"","sources":["../../../../src/stores/view/grid/DataCubeGridQueryBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,cAAc,EACd,sBAAsB,EAGtB,cAAc,EACd,eAAe,EACf,yBAAyB,GAC1B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAA8B,MAAM,qCAAqC,CAAC;AACjF,OAAO,EACL,gCAAgC,EAChC,2BAA2B,EAC3B,gBAAgB,EAEhB,uBAAuB,EACvB,iCAAiC,EACjC,0BAA0B,EAC1B,kCAAkC,GACnC,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,UAAU,EACV,IAAI,GACL,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,eAAe,EACf,QAAQ,EACR,KAAK,EACL,OAAO,EACP,SAAS,EACT,OAAO,EACP,IAAI,EACJ,+BAA+B,EAC/B,SAAS,EACT,WAAW,EACX,IAAI,GACL,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACL,mCAAmC,EACnC,gDAAgD,EAChD,sDAAsD,GAEvD,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,qBAAqB,EAAE,MAAM,2CAA2C,CAAC;AAGlF,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AACrF,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAG1E;;;;;;;+EAO+E;AAE/E,sFAAsF;AAEtF,MAAM,UAAU,YAAY;IAC1B,MAAM,QAAQ,GAAG,IAAI,EAAE,CAAC;IACxB,OAAO,QAAQ,CACb,sDAAsD,EACtD,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,EAC/B,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CACrE,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAe;IACvC,MAAM,QAAQ,GAAG,IAAI,EAAE,CAAC;IACxB,OAAO,QAAQ,CACb,OAAO,EACP,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,SAAS,CAAC,OAAO,
|
|
1
|
+
{"version":3,"file":"DataCubeGridQueryBuilder.js","sourceRoot":"","sources":["../../../../src/stores/view/grid/DataCubeGridQueryBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,7 +27,7 @@ import { DataCubeConfiguration } from '../../core/model/DataCubeConfiguration.js
|
|
|
27
27
|
import { guaranteeNonNullable, uniqBy } from '@finos/legend-shared';
|
|
28
28
|
import { _pruneExpandedPaths } from '../../core/DataCubeQuerySnapshotBuilderUtils.js';
|
|
29
29
|
export function getColumnConfiguration(colName, configuration) {
|
|
30
|
-
return guaranteeNonNullable(configuration.
|
|
30
|
+
return guaranteeNonNullable(configuration.getColumn(colName), `Can't find configuration for column '${colName}'`);
|
|
31
31
|
}
|
|
32
32
|
// --------------------------------- MAIN ---------------------------------
|
|
33
33
|
export function buildQuerySnapshot(request, baseSnapshot) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataCubeGridQuerySnapshotBuilder.js","sourceRoot":"","sources":["../../../../src/stores/view/grid/DataCubeGridQuerySnapshotBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;;yFAKyF;AAEzF,OAAO,EAA8B,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EACL,+BAA+B,EAC/B,gDAAgD,EAChD,oCAAoC,GAErC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,0BAA0B,EAC1B,kCAAkC,EAClC,uBAAuB,GACxB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,2CAA2C,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAEtF,MAAM,UAAU,sBAAsB,CACpC,OAAe,EACf,aAAoC;IAEpC,OAAO,oBAAoB,CACzB,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"DataCubeGridQuerySnapshotBuilder.js","sourceRoot":"","sources":["../../../../src/stores/view/grid/DataCubeGridQuerySnapshotBuilder.ts"],"names":[],"mappings":"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"}
|
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.44",
|
|
4
4
|
"description": "Legend DataCube",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"legend",
|
|
@@ -42,14 +42,14 @@
|
|
|
42
42
|
"test:watch": "jest --watch"
|
|
43
43
|
},
|
|
44
44
|
"dependencies": {
|
|
45
|
-
"@finos/legend-art": "7.1.
|
|
46
|
-
"@finos/legend-code-editor": "2.0.
|
|
47
|
-
"@finos/legend-graph": "32.0.
|
|
45
|
+
"@finos/legend-art": "7.1.78",
|
|
46
|
+
"@finos/legend-code-editor": "2.0.37",
|
|
47
|
+
"@finos/legend-graph": "32.0.5",
|
|
48
48
|
"@finos/legend-shared": "11.0.0",
|
|
49
|
-
"@types/react": "19.0.
|
|
50
|
-
"ag-grid-community": "33.0.
|
|
51
|
-
"ag-grid-enterprise": "33.0.
|
|
52
|
-
"ag-grid-react": "33.0.
|
|
49
|
+
"@types/react": "19.0.8",
|
|
50
|
+
"ag-grid-community": "33.0.4",
|
|
51
|
+
"ag-grid-enterprise": "33.0.4",
|
|
52
|
+
"ag-grid-react": "33.0.4",
|
|
53
53
|
"mathjs": "14.0.1",
|
|
54
54
|
"mobx": "6.13.5",
|
|
55
55
|
"mobx-react-lite": "4.1.0",
|
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
|
|
17
17
|
export enum DataCubeSettingKey {
|
|
18
18
|
DEBUGGER__ENABLE_DEBUG_MODE = 'dataCube.debugger.enableDebugMode',
|
|
19
|
+
DEBUGGER__USE_DEV_CLIENT_PROTOCOL_VERSION = 'dataCube.debugger.useDevClientProtocolVersion',
|
|
19
20
|
DEBUGGER__ACTION__RELOAD = 'dataCube.debugger.action.reload',
|
|
20
21
|
GRID_CLIENT__ROW_BUFFER = 'dataCube.grid.rowBuffer',
|
|
21
22
|
GRID_CLIENT__PURGE_CLOSED_ROW_NODES = 'dataCube.grid.purgeClosedRowNodes',
|
|
@@ -47,7 +47,10 @@ import {
|
|
|
47
47
|
} from '../../../stores/core/DataCubeQueryEngine.js';
|
|
48
48
|
import { DataCubeDocumentationKey } from '../../../__lib__/DataCubeDocumentation.js';
|
|
49
49
|
import type { DataCubeViewState } from '../../../stores/view/DataCubeViewState.js';
|
|
50
|
-
import {
|
|
50
|
+
import {
|
|
51
|
+
_findCol,
|
|
52
|
+
_sortByColName,
|
|
53
|
+
} from '../../../stores/core/model/DataCubeColumn.js';
|
|
51
54
|
|
|
52
55
|
export const DataCubeEditorColumnPropertiesPanel = observer(
|
|
53
56
|
(props: { view: DataCubeViewState }) => {
|
|
@@ -150,17 +153,16 @@ export const DataCubeEditorColumnPropertiesPanel = observer(
|
|
|
150
153
|
{selectedColumn.dataType}
|
|
151
154
|
</div>
|
|
152
155
|
{Boolean(
|
|
153
|
-
editor.leafExtendColumns.
|
|
154
|
-
(col) => col.name === selectedColumn.name,
|
|
155
|
-
),
|
|
156
|
+
_findCol(editor.leafExtendColumns, selectedColumn.name),
|
|
156
157
|
) && (
|
|
157
158
|
<div className="mr-0.5 flex h-3.5 flex-shrink-0 items-center rounded-sm border border-neutral-300 bg-neutral-100 px-1 text-xs font-medium uppercase text-neutral-600">
|
|
158
159
|
{`Extended (Leaf Level)`}
|
|
159
160
|
</div>
|
|
160
161
|
)}
|
|
161
162
|
{Boolean(
|
|
162
|
-
|
|
163
|
-
|
|
163
|
+
_findCol(
|
|
164
|
+
editor.groupExtendColumns,
|
|
165
|
+
selectedColumn.name,
|
|
164
166
|
),
|
|
165
167
|
) && (
|
|
166
168
|
<div className="mr-0.5 flex h-3.5 flex-shrink-0 items-center rounded-sm border border-neutral-300 bg-neutral-100 px-1 text-xs font-medium uppercase text-neutral-600">
|
|
@@ -188,18 +190,14 @@ export const DataCubeEditorColumnPropertiesPanel = observer(
|
|
|
188
190
|
{column.dataType}
|
|
189
191
|
</div>
|
|
190
192
|
{Boolean(
|
|
191
|
-
editor.leafExtendColumns.
|
|
192
|
-
(col) => col.name === column.name,
|
|
193
|
-
),
|
|
193
|
+
_findCol(editor.leafExtendColumns, column.name),
|
|
194
194
|
) && (
|
|
195
195
|
<div className="mr-0.5 flex h-3.5 flex-shrink-0 items-center rounded-sm border border-neutral-300 bg-neutral-100 px-1 text-xs font-medium uppercase text-neutral-600">
|
|
196
196
|
{`Extended (Leaf Level)`}
|
|
197
197
|
</div>
|
|
198
198
|
)}
|
|
199
199
|
{Boolean(
|
|
200
|
-
editor.groupExtendColumns.
|
|
201
|
-
(col) => col.name === column.name,
|
|
202
|
-
),
|
|
200
|
+
_findCol(editor.groupExtendColumns, column.name),
|
|
203
201
|
) && (
|
|
204
202
|
<div className="mr-0.5 flex h-3.5 flex-shrink-0 items-center rounded-sm border border-neutral-300 bg-neutral-100 px-1 text-xs font-medium uppercase text-neutral-600">
|
|
205
203
|
{`Extended (Group Level)`}
|
|
@@ -227,13 +225,29 @@ export const DataCubeEditorColumnPropertiesPanel = observer(
|
|
|
227
225
|
open={kindDropdownPropsOpen}
|
|
228
226
|
// disallow changing the column kind if the column is being used as pivot column
|
|
229
227
|
disabled={Boolean(
|
|
230
|
-
|
|
231
|
-
|
|
228
|
+
_findCol(
|
|
229
|
+
editor.verticalPivots.selector.selectedColumns,
|
|
230
|
+
selectedColumn.name,
|
|
232
231
|
) ??
|
|
233
|
-
|
|
234
|
-
|
|
232
|
+
_findCol(
|
|
233
|
+
editor.horizontalPivots.selector.selectedColumns,
|
|
234
|
+
selectedColumn.name,
|
|
235
235
|
),
|
|
236
236
|
)}
|
|
237
|
+
title={
|
|
238
|
+
Boolean(
|
|
239
|
+
_findCol(
|
|
240
|
+
editor.verticalPivots.selector.selectedColumns,
|
|
241
|
+
selectedColumn.name,
|
|
242
|
+
) ??
|
|
243
|
+
_findCol(
|
|
244
|
+
editor.horizontalPivots.selector.selectedColumns,
|
|
245
|
+
selectedColumn.name,
|
|
246
|
+
),
|
|
247
|
+
)
|
|
248
|
+
? 'Column kind cannot be changed while the column is used in pivot'
|
|
249
|
+
: undefined
|
|
250
|
+
}
|
|
237
251
|
>
|
|
238
252
|
{selectedColumn.kind}
|
|
239
253
|
</FormDropdownMenuTrigger>
|
|
@@ -314,7 +328,14 @@ export const DataCubeEditorColumnPropertiesPanel = observer(
|
|
|
314
328
|
<FormDropdownMenuItem
|
|
315
329
|
key={op.operator}
|
|
316
330
|
onClick={() => {
|
|
317
|
-
selectedColumn.
|
|
331
|
+
if (op !== selectedColumn.aggregateOperation) {
|
|
332
|
+
selectedColumn.setAggregateOperation(op);
|
|
333
|
+
selectedColumn.setAggregationParameters(
|
|
334
|
+
op.generateDefaultParameterValues(
|
|
335
|
+
selectedColumn,
|
|
336
|
+
),
|
|
337
|
+
);
|
|
338
|
+
}
|
|
318
339
|
closeAggregationOperationDropdown();
|
|
319
340
|
}}
|
|
320
341
|
autoFocus={op === selectedColumn.aggregateOperation}
|
|
@@ -324,6 +345,8 @@ export const DataCubeEditorColumnPropertiesPanel = observer(
|
|
|
324
345
|
))}
|
|
325
346
|
</FormDropdownMenu>
|
|
326
347
|
|
|
348
|
+
{/* TODO: Support editing aggregation parameter values */}
|
|
349
|
+
|
|
327
350
|
<FormCheckbox
|
|
328
351
|
className="ml-3"
|
|
329
352
|
label="Exclude from horizontal pivot"
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
17
|
import { observer } from 'mobx-react-lite';
|
|
18
|
-
import { DataCubeIcon } from '@finos/legend-art';
|
|
18
|
+
import { DataCubeIcon, useDropdownMenu } from '@finos/legend-art';
|
|
19
19
|
import {
|
|
20
20
|
type ColDef,
|
|
21
21
|
type ColDefField,
|
|
@@ -33,6 +33,7 @@ import {
|
|
|
33
33
|
type CustomNoRowsOverlayProps,
|
|
34
34
|
} from 'ag-grid-react';
|
|
35
35
|
import {
|
|
36
|
+
type DataCubeEditorSortColumnState,
|
|
36
37
|
type DataCubeEditorColumnSelectorColumnState,
|
|
37
38
|
type DataCubeEditorColumnSelectorState,
|
|
38
39
|
} from '../../../stores/view/editor/DataCubeEditorColumnSelectorState.js';
|
|
@@ -41,6 +42,11 @@ import {
|
|
|
41
42
|
getDataForAllFilteredNodes,
|
|
42
43
|
getDataForAllNodes,
|
|
43
44
|
} from '../../../stores/view/grid/DataCubeGridClientEngine.js';
|
|
45
|
+
import {
|
|
46
|
+
FormDropdownMenu,
|
|
47
|
+
FormDropdownMenuItem,
|
|
48
|
+
} from '../../core/DataCubeFormUtils.js';
|
|
49
|
+
import { DataCubeQuerySortDirection } from '../../../stores/core/DataCubeQueryEngine.js';
|
|
44
50
|
|
|
45
51
|
function getBaseGridProps<
|
|
46
52
|
T extends DataCubeEditorColumnSelectorColumnState,
|
|
@@ -604,3 +610,71 @@ export const DataCubeEditorColumnSelector = observer(
|
|
|
604
610
|
);
|
|
605
611
|
},
|
|
606
612
|
);
|
|
613
|
+
|
|
614
|
+
export const DataCubeColumnSelectorSortDirectionDropdown = observer(
|
|
615
|
+
(props: {
|
|
616
|
+
selector: DataCubeEditorColumnSelectorState<DataCubeEditorSortColumnState>;
|
|
617
|
+
column: DataCubeEditorSortColumnState;
|
|
618
|
+
}) => {
|
|
619
|
+
const { column } = props;
|
|
620
|
+
const [
|
|
621
|
+
openDirectionDropdown,
|
|
622
|
+
closeDirectionDropdown,
|
|
623
|
+
directionDropdownProps,
|
|
624
|
+
directionDropdownPropsOpen,
|
|
625
|
+
] = useDropdownMenu();
|
|
626
|
+
|
|
627
|
+
return (
|
|
628
|
+
<div className="group relative flex h-full items-center">
|
|
629
|
+
{!directionDropdownPropsOpen && (
|
|
630
|
+
<div className="flex h-[18px] w-32 items-center border border-transparent px-2 text-sm text-neutral-400 group-hover:invisible">
|
|
631
|
+
{column.direction}
|
|
632
|
+
</div>
|
|
633
|
+
)}
|
|
634
|
+
{directionDropdownPropsOpen && (
|
|
635
|
+
<div className="flex h-[18px] w-32 items-center justify-between border border-sky-600 bg-sky-50 pl-2 pr-0.5 text-sm">
|
|
636
|
+
<div>{column.direction}</div>
|
|
637
|
+
<div>
|
|
638
|
+
<DataCubeIcon.CaretDown />
|
|
639
|
+
</div>
|
|
640
|
+
</div>
|
|
641
|
+
)}
|
|
642
|
+
<button
|
|
643
|
+
className="invisible absolute right-0 z-10 flex h-[18px] w-32 items-center justify-between border border-neutral-400 pl-2 pr-0.5 text-sm text-neutral-700 group-hover:visible"
|
|
644
|
+
/**
|
|
645
|
+
* ag-grid row select event listener is at a deeper layer than this dropdown trigger
|
|
646
|
+
* so in order to prevent selecting the row while opening the dropdown, we need to stop
|
|
647
|
+
* the propagation as event capturing is happening, not when it's bubbling.
|
|
648
|
+
*/
|
|
649
|
+
onClickCapture={(event) => {
|
|
650
|
+
event.stopPropagation();
|
|
651
|
+
openDirectionDropdown(event);
|
|
652
|
+
}}
|
|
653
|
+
onClick={(event) => event.stopPropagation()}
|
|
654
|
+
>
|
|
655
|
+
<div>{column.direction}</div>
|
|
656
|
+
<div>
|
|
657
|
+
<DataCubeIcon.CaretDown />
|
|
658
|
+
</div>
|
|
659
|
+
</button>
|
|
660
|
+
<FormDropdownMenu className="w-32" {...directionDropdownProps}>
|
|
661
|
+
{[
|
|
662
|
+
DataCubeQuerySortDirection.ASCENDING,
|
|
663
|
+
DataCubeQuerySortDirection.DESCENDING,
|
|
664
|
+
].map((direction) => (
|
|
665
|
+
<FormDropdownMenuItem
|
|
666
|
+
key={direction}
|
|
667
|
+
onClick={() => {
|
|
668
|
+
column.setDirection(direction);
|
|
669
|
+
closeDirectionDropdown();
|
|
670
|
+
}}
|
|
671
|
+
autoFocus={column.direction === direction}
|
|
672
|
+
>
|
|
673
|
+
{direction}
|
|
674
|
+
</FormDropdownMenuItem>
|
|
675
|
+
))}
|
|
676
|
+
</FormDropdownMenu>
|
|
677
|
+
</div>
|
|
678
|
+
);
|
|
679
|
+
},
|
|
680
|
+
);
|
|
@@ -22,6 +22,7 @@ import type { DataCubeViewState } from '../../../stores/view/DataCubeViewState.j
|
|
|
22
22
|
import { FormCheckbox } from '../../core/DataCubeFormUtils.js';
|
|
23
23
|
import type { DataCubeEditorColumnSelectorColumnState } from '../../../stores/view/editor/DataCubeEditorColumnSelectorState.js';
|
|
24
24
|
import type { DataCubeEditorState } from '../../../stores/view/editor/DataCubeEditorState.js';
|
|
25
|
+
import { _findCol } from '../../../stores/core/model/DataCubeColumn.js';
|
|
25
26
|
|
|
26
27
|
const ColumnSelectorLabel = observer(
|
|
27
28
|
(props: {
|
|
@@ -45,16 +46,12 @@ const ColumnSelectorLabel = observer(
|
|
|
45
46
|
>
|
|
46
47
|
{column.name}
|
|
47
48
|
</div>
|
|
48
|
-
{Boolean(
|
|
49
|
-
editor.leafExtendColumns.find((col) => col.name === column.name),
|
|
50
|
-
) && (
|
|
49
|
+
{Boolean(_findCol(editor.leafExtendColumns, column.name)) && (
|
|
51
50
|
<div className="ml-1.5 mr-0.5 flex h-3.5 flex-shrink-0 items-center rounded-sm border border-neutral-300 bg-neutral-100 px-1 text-xs font-medium uppercase text-neutral-600">
|
|
52
51
|
{`Extended (Leaf Level)`}
|
|
53
52
|
</div>
|
|
54
53
|
)}
|
|
55
|
-
{Boolean(
|
|
56
|
-
editor.groupExtendColumns.find((col) => col.name === column.name),
|
|
57
|
-
) && (
|
|
54
|
+
{Boolean(_findCol(editor.groupExtendColumns, column.name)) && (
|
|
58
55
|
<div className="ml-1.5 mr-0.5 flex h-3.5 flex-shrink-0 items-center rounded-sm border border-neutral-300 bg-neutral-100 px-1 text-xs font-medium uppercase text-neutral-600">
|
|
59
56
|
{`Extended (Group Level)`}
|
|
60
57
|
</div>
|
|
@@ -17,18 +17,11 @@
|
|
|
17
17
|
import { DataCubeIcon } from '@finos/legend-art';
|
|
18
18
|
import { observer } from 'mobx-react-lite';
|
|
19
19
|
import type { DataCubeViewState } from '../../../stores/view/DataCubeViewState.js';
|
|
20
|
-
import {
|
|
20
|
+
import {
|
|
21
|
+
DataCubeColumnSelectorSortDirectionDropdown,
|
|
22
|
+
DataCubeEditorColumnSelector,
|
|
23
|
+
} from './DataCubeEditorColumnSelector.js';
|
|
21
24
|
import { useEffect } from 'react';
|
|
22
|
-
import { FormBadge_WIP } from '../../core/DataCubeFormUtils.js';
|
|
23
|
-
|
|
24
|
-
const PivotColumnSortDirectionDropdown = observer((props) => (
|
|
25
|
-
<div className="relative flex h-full items-center">
|
|
26
|
-
<div className="flex h-[18px] w-32 items-center border border-transparent px-2 text-sm text-neutral-400">
|
|
27
|
-
Ascending
|
|
28
|
-
<FormBadge_WIP />
|
|
29
|
-
</div>
|
|
30
|
-
</div>
|
|
31
|
-
));
|
|
32
25
|
|
|
33
26
|
export const DataCubeEditorHorizontalPivotsPanel = observer(
|
|
34
27
|
(props: { view: DataCubeViewState }) => {
|
|
@@ -51,7 +44,7 @@ export const DataCubeEditorHorizontalPivotsPanel = observer(
|
|
|
51
44
|
<DataCubeEditorColumnSelector
|
|
52
45
|
selector={panel.selector}
|
|
53
46
|
columnActionRenderer={(p) => (
|
|
54
|
-
<
|
|
47
|
+
<DataCubeColumnSelectorSortDirectionDropdown {...p} />
|
|
55
48
|
)}
|
|
56
49
|
/>
|
|
57
50
|
</div>
|
|
@@ -15,88 +15,18 @@
|
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
17
|
import { observer } from 'mobx-react-lite';
|
|
18
|
-
import { DataCubeIcon
|
|
19
|
-
import { DataCubeEditorColumnSelector } from './DataCubeEditorColumnSelector.js';
|
|
20
|
-
import type { DataCubeEditorColumnSelectorState } from '../../../stores/view/editor/DataCubeEditorColumnSelectorState.js';
|
|
21
|
-
import type { DataCubeEditorSortColumnState } from '../../../stores/view/editor/DataCubeEditorSortsPanelState.js';
|
|
18
|
+
import { DataCubeIcon } from '@finos/legend-art';
|
|
22
19
|
import {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
} from '
|
|
26
|
-
import {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
} from '
|
|
20
|
+
DataCubeColumnSelectorSortDirectionDropdown,
|
|
21
|
+
DataCubeEditorColumnSelector,
|
|
22
|
+
} from './DataCubeEditorColumnSelector.js';
|
|
23
|
+
import type {
|
|
24
|
+
DataCubeEditorColumnSelectorState,
|
|
25
|
+
DataCubeEditorSortColumnState,
|
|
26
|
+
} from '../../../stores/view/editor/DataCubeEditorColumnSelectorState.js';
|
|
27
|
+
import { PIVOT_COLUMN_NAME_VALUE_SEPARATOR } from '../../../stores/core/DataCubeQueryEngine.js';
|
|
30
28
|
import type { DataCubeViewState } from '../../../stores/view/DataCubeViewState.js';
|
|
31
29
|
|
|
32
|
-
const SortDirectionDropdown = observer(
|
|
33
|
-
(props: {
|
|
34
|
-
selector: DataCubeEditorColumnSelectorState<DataCubeEditorSortColumnState>;
|
|
35
|
-
column: DataCubeEditorSortColumnState;
|
|
36
|
-
}) => {
|
|
37
|
-
const { column } = props;
|
|
38
|
-
const [
|
|
39
|
-
openDirectionDropdown,
|
|
40
|
-
closeDirectionDropdown,
|
|
41
|
-
directionDropdownProps,
|
|
42
|
-
directionDropdownPropsOpen,
|
|
43
|
-
] = useDropdownMenu();
|
|
44
|
-
|
|
45
|
-
return (
|
|
46
|
-
<div className="group relative flex h-full items-center">
|
|
47
|
-
{!directionDropdownPropsOpen && (
|
|
48
|
-
<div className="flex h-[18px] w-32 items-center border border-transparent px-2 text-sm text-neutral-400 group-hover:invisible">
|
|
49
|
-
{column.direction}
|
|
50
|
-
</div>
|
|
51
|
-
)}
|
|
52
|
-
{directionDropdownPropsOpen && (
|
|
53
|
-
<div className="flex h-[18px] w-32 items-center justify-between border border-sky-600 bg-sky-50 pl-2 pr-0.5 text-sm">
|
|
54
|
-
<div>{column.direction}</div>
|
|
55
|
-
<div>
|
|
56
|
-
<DataCubeIcon.CaretDown />
|
|
57
|
-
</div>
|
|
58
|
-
</div>
|
|
59
|
-
)}
|
|
60
|
-
<button
|
|
61
|
-
className="invisible absolute right-0 z-10 flex h-[18px] w-32 items-center justify-between border border-neutral-400 pl-2 pr-0.5 text-sm text-neutral-700 group-hover:visible"
|
|
62
|
-
/**
|
|
63
|
-
* ag-grid row select event listener is at a deeper layer than this dropdown trigger
|
|
64
|
-
* so in order to prevent selecting the row while opening the dropdown, we need to stop
|
|
65
|
-
* the propagation as event capturing is happening, not when it's bubbling.
|
|
66
|
-
*/
|
|
67
|
-
onClickCapture={(event) => {
|
|
68
|
-
event.stopPropagation();
|
|
69
|
-
openDirectionDropdown(event);
|
|
70
|
-
}}
|
|
71
|
-
onClick={(event) => event.stopPropagation()}
|
|
72
|
-
>
|
|
73
|
-
<div>{column.direction}</div>
|
|
74
|
-
<div>
|
|
75
|
-
<DataCubeIcon.CaretDown />
|
|
76
|
-
</div>
|
|
77
|
-
</button>
|
|
78
|
-
<FormDropdownMenu className="w-32" {...directionDropdownProps}>
|
|
79
|
-
{[
|
|
80
|
-
DataCubeQuerySortDirection.ASCENDING,
|
|
81
|
-
DataCubeQuerySortDirection.DESCENDING,
|
|
82
|
-
].map((direction) => (
|
|
83
|
-
<FormDropdownMenuItem
|
|
84
|
-
key={direction}
|
|
85
|
-
onClick={() => {
|
|
86
|
-
column.setDirection(direction);
|
|
87
|
-
closeDirectionDropdown();
|
|
88
|
-
}}
|
|
89
|
-
autoFocus={column.direction === direction}
|
|
90
|
-
>
|
|
91
|
-
{direction}
|
|
92
|
-
</FormDropdownMenuItem>
|
|
93
|
-
))}
|
|
94
|
-
</FormDropdownMenu>
|
|
95
|
-
</div>
|
|
96
|
-
);
|
|
97
|
-
},
|
|
98
|
-
);
|
|
99
|
-
|
|
100
30
|
const SortColumnLabel = observer(
|
|
101
31
|
(props: {
|
|
102
32
|
selector: DataCubeEditorColumnSelectorState<DataCubeEditorSortColumnState>;
|
|
@@ -131,7 +61,9 @@ export const DataCubeEditorSortsPanel = observer(
|
|
|
131
61
|
<DataCubeEditorColumnSelector
|
|
132
62
|
selector={panel.selector}
|
|
133
63
|
columnLabelRenderer={(p) => <SortColumnLabel {...p} />}
|
|
134
|
-
columnActionRenderer={(p) =>
|
|
64
|
+
columnActionRenderer={(p) => (
|
|
65
|
+
<DataCubeColumnSelectorSortDirectionDropdown {...p} />
|
|
66
|
+
)}
|
|
135
67
|
/>
|
|
136
68
|
</div>
|
|
137
69
|
</div>
|
|
@@ -48,6 +48,7 @@ import { DATE_FORMAT, PRIMITIVE_TYPE } from '@finos/legend-graph';
|
|
|
48
48
|
import { formatDate, guaranteeIsNumber, parseISO } from '@finos/legend-shared';
|
|
49
49
|
import { evaluate } from 'mathjs';
|
|
50
50
|
import { useDataCube } from '../../DataCubeProvider.js';
|
|
51
|
+
import { _findCol } from '../../../stores/core/model/DataCubeColumn.js';
|
|
51
52
|
|
|
52
53
|
const FILTER_TREE_OFFSET = 10;
|
|
53
54
|
const FILTER_TREE_INDENTATION_SPACE = 36;
|
|
@@ -286,9 +287,7 @@ const DataCubeEditorFilterConditionNodeColumnSelector = observer(
|
|
|
286
287
|
>(function DataCubeEditorFilterConditionNodeColumnSelector(props, ref) {
|
|
287
288
|
const { value, updateValue, view } = props;
|
|
288
289
|
const editor = view.filter;
|
|
289
|
-
const matchingColumn = editor.columns
|
|
290
|
-
(column) => column.name === value,
|
|
291
|
-
);
|
|
290
|
+
const matchingColumn = _findCol(editor.columns, value);
|
|
292
291
|
const [
|
|
293
292
|
openColumnDropdown,
|
|
294
293
|
closeColumnDropdown,
|
|
@@ -24,13 +24,17 @@ import {
|
|
|
24
24
|
DataCubeColumnKind,
|
|
25
25
|
DataCubeFontTextAlignment,
|
|
26
26
|
} from './DataCubeQueryEngine.js';
|
|
27
|
-
import type
|
|
27
|
+
import { _findCol, type DataCubeColumn } from './model/DataCubeColumn.js';
|
|
28
|
+
import type { DataCubeQuerySnapshotProcessingContext } from './DataCubeQuerySnapshot.js';
|
|
29
|
+
import { at } from '@finos/legend-shared';
|
|
28
30
|
|
|
29
|
-
export function
|
|
31
|
+
export function newColumnConfiguration(
|
|
30
32
|
column: DataCubeColumn,
|
|
33
|
+
context?: DataCubeQuerySnapshotProcessingContext | undefined,
|
|
31
34
|
): DataCubeColumnConfiguration {
|
|
32
35
|
const { name, type } = column;
|
|
33
36
|
const config = new DataCubeColumnConfiguration(name, type);
|
|
37
|
+
|
|
34
38
|
switch (type) {
|
|
35
39
|
case PRIMITIVE_TYPE.NUMBER:
|
|
36
40
|
case PRIMITIVE_TYPE.INTEGER:
|
|
@@ -53,15 +57,86 @@ export function buildDefaultColumnConfiguration(
|
|
|
53
57
|
break;
|
|
54
58
|
}
|
|
55
59
|
}
|
|
60
|
+
|
|
61
|
+
if (context) {
|
|
62
|
+
const { snapshot, groupByAggColumns, pivotAggColumns, pivotSortColumns } =
|
|
63
|
+
context;
|
|
64
|
+
const data = snapshot.data;
|
|
65
|
+
|
|
66
|
+
// process column selection
|
|
67
|
+
config.isSelected = Boolean(
|
|
68
|
+
_findCol(data.groupExtendedColumns, name) ??
|
|
69
|
+
_findCol(data.selectColumns, name),
|
|
70
|
+
);
|
|
71
|
+
|
|
72
|
+
if (data.groupBy ?? data.pivot) {
|
|
73
|
+
const groupByAggCol = _findCol(groupByAggColumns, name);
|
|
74
|
+
const pivotAggCol = _findCol(pivotAggColumns, name);
|
|
75
|
+
const aggCol = groupByAggCol ?? pivotAggCol;
|
|
76
|
+
|
|
77
|
+
// process column kind
|
|
78
|
+
if (aggCol) {
|
|
79
|
+
config.kind = DataCubeColumnKind.MEASURE;
|
|
80
|
+
} else if (
|
|
81
|
+
_findCol(data.pivot?.columns ?? [], name) ??
|
|
82
|
+
_findCol(data.groupBy?.columns ?? [], name)
|
|
83
|
+
) {
|
|
84
|
+
config.kind = DataCubeColumnKind.DIMENSION;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
// aggregation
|
|
88
|
+
if (aggCol) {
|
|
89
|
+
config.aggregateOperator = aggCol.operator;
|
|
90
|
+
config.aggregationParameters = aggCol.parameterValues;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
// exclude from pivot
|
|
94
|
+
if (data.pivot) {
|
|
95
|
+
config.excludedFromPivot = !pivotAggCol;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
// process pivot sort direction
|
|
99
|
+
if (data.pivot) {
|
|
100
|
+
const pivotSortCol = _findCol(pivotSortColumns, name);
|
|
101
|
+
if (pivotSortCol) {
|
|
102
|
+
config.pivotSortDirection = pivotSortCol.direction;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
|
|
56
108
|
return config;
|
|
57
109
|
}
|
|
58
110
|
|
|
59
|
-
export function
|
|
60
|
-
|
|
111
|
+
export function newConfiguration(
|
|
112
|
+
context: DataCubeQuerySnapshotProcessingContext,
|
|
61
113
|
): DataCubeConfiguration {
|
|
114
|
+
const { snapshot, groupBySortColumns } = context;
|
|
115
|
+
const data = snapshot.data;
|
|
62
116
|
const configuration = new DataCubeConfiguration();
|
|
117
|
+
|
|
118
|
+
// NOTE: the order of the column configurations is determined by
|
|
119
|
+
// the order of columns specified in the select() expression.
|
|
120
|
+
// Unselected columns will follow the order they are defined (i.e. source
|
|
121
|
+
// columns followed by leaf-level extended columns)
|
|
122
|
+
const columns = [
|
|
123
|
+
...data.selectColumns,
|
|
124
|
+
...data.groupExtendedColumns,
|
|
125
|
+
...[...data.sourceColumns, ...data.leafExtendedColumns].filter(
|
|
126
|
+
(col) => !_findCol(data.selectColumns, col.name),
|
|
127
|
+
),
|
|
128
|
+
];
|
|
63
129
|
configuration.columns = columns.map((column) =>
|
|
64
|
-
|
|
130
|
+
newColumnConfiguration(column, context),
|
|
65
131
|
);
|
|
132
|
+
|
|
133
|
+
// process tree column sort direction
|
|
134
|
+
//
|
|
135
|
+
// since we have made sure all groupBy sort columns must be of the same direction
|
|
136
|
+
// we simply retrieve the direction from the one of the column provided
|
|
137
|
+
if (groupBySortColumns.length) {
|
|
138
|
+
configuration.treeColumnSortDirection = at(groupBySortColumns, 0).direction;
|
|
139
|
+
}
|
|
140
|
+
|
|
66
141
|
return configuration;
|
|
67
142
|
}
|
|
@@ -21,8 +21,10 @@ import {
|
|
|
21
21
|
type V1_AppliedFunction,
|
|
22
22
|
PRIMITIVE_TYPE,
|
|
23
23
|
} from '@finos/legend-graph';
|
|
24
|
-
import {
|
|
25
|
-
|
|
24
|
+
import {
|
|
25
|
+
getFilterOperation,
|
|
26
|
+
getAggregateOperation,
|
|
27
|
+
} from './DataCubeQueryEngine.js';
|
|
26
28
|
import { DataCubeQueryAggregateOperation__Sum } from './aggregation/DataCubeQueryAggregateOperation__Sum.js';
|
|
27
29
|
import { DataCubeQueryAggregateOperation__Average } from './aggregation/DataCubeQueryAggregateOperation__Average.js';
|
|
28
30
|
import { DataCubeQueryAggregateOperation__Count } from './aggregation/DataCubeQueryAggregateOperation__Count.js';
|
|
@@ -88,6 +90,7 @@ export type DataCubeRelationType = {
|
|
|
88
90
|
|
|
89
91
|
export type DataCubeExecutionOptions = {
|
|
90
92
|
debug?: boolean | undefined;
|
|
93
|
+
clientVersion?: string | undefined;
|
|
91
94
|
};
|
|
92
95
|
|
|
93
96
|
export type DataCubeExecutionResult = {
|
|
@@ -211,6 +214,11 @@ export abstract class DataCubeEngine {
|
|
|
211
214
|
source: DataCubeSource,
|
|
212
215
|
): Promise<CompletionItem[]>;
|
|
213
216
|
|
|
217
|
+
abstract getQueryRelationReturnType(
|
|
218
|
+
query: V1_Lambda,
|
|
219
|
+
source: DataCubeSource,
|
|
220
|
+
): Promise<DataCubeRelationType>;
|
|
221
|
+
|
|
214
222
|
abstract getQueryCodeRelationReturnType(
|
|
215
223
|
code: string,
|
|
216
224
|
baseQuery: V1_ValueSpecification,
|