@finos/legend-data-cube 0.0.43 → 0.0.45
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
|
@@ -13,29 +13,45 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { PRIMITIVE_TYPE, V1_AppliedFunction, V1_AppliedProperty, V1_CBoolean, V1_CDateTime, V1_CDecimal, V1_CFloat, V1_CInteger, V1_CStrictDate, V1_CStrictTime, V1_CString, V1_ClassInstance, V1_ColSpec, V1_ColSpecArray, V1_GenericTypeInstance, V1_PrimitiveValueSpecification, extractElementNameFromPath as _name, matchFunctionName, V1_RelationType, V1_PackageableType, } from '@finos/legend-graph';
|
|
17
|
-
import {} from './model/DataCubeColumn.js';
|
|
18
|
-
import { assertTrue, assertType, at, guaranteeNonNullable, guaranteeType,
|
|
19
|
-
import { DataCubeFunction, DataCubeOperationAdvancedValueType, DataCubeQueryFilterGroupOperator, getDataType, TREE_COLUMN_VALUE_SEPARATOR, } from './DataCubeQueryEngine.js';
|
|
20
|
-
import { _serializeValueSpecification } from './DataCubeQueryBuilderUtils.js';
|
|
16
|
+
import { PRIMITIVE_TYPE, V1_AppliedFunction, V1_AppliedProperty, V1_CBoolean, V1_CDateTime, V1_CDecimal, V1_CFloat, V1_CInteger, V1_CStrictDate, V1_CStrictTime, V1_CString, V1_ClassInstance, V1_ColSpec, V1_ColSpecArray, V1_GenericTypeInstance, V1_Variable, V1_PrimitiveValueSpecification, extractElementNameFromPath as _name, matchFunctionName, V1_RelationType, V1_PackageableType, V1_Collection, } from '@finos/legend-graph';
|
|
17
|
+
import { _findCol } from './model/DataCubeColumn.js';
|
|
18
|
+
import { assertErrorThrown, assertTrue, assertType, at, deepEqual, guaranteeNonNullable, guaranteeType, uniq, UnsupportedOperationError, } from '@finos/legend-shared';
|
|
19
|
+
import { DataCubeFunction, DataCubeOperationAdvancedValueType, DataCubeQueryFilterGroupOperator, DataCubeQuerySortDirection, DEFAULT_LAMBDA_VARIABLE_NAME, getDataType, getPivotResultColumnBaseColumnName, isPivotResultColumnName, TREE_COLUMN_VALUE_SEPARATOR, } from './DataCubeQueryEngine.js';
|
|
20
|
+
import { _cols, _colSpec, _function, _lambda, _serializeValueSpecification, _synthesizeMinimalSourceQuery, } from './DataCubeQueryBuilderUtils.js';
|
|
21
|
+
import { INTERNAL__DataCubeSource } from './model/DataCubeSource.js';
|
|
21
22
|
// --------------------------------- UTILITIES ---------------------------------
|
|
23
|
+
export function _var(variable) {
|
|
24
|
+
assertTrue(variable.name === DEFAULT_LAMBDA_VARIABLE_NAME, `Can't process variable '${variable.name}': expected variable name to be '${DEFAULT_LAMBDA_VARIABLE_NAME}'`);
|
|
25
|
+
}
|
|
26
|
+
export function _propertyCol(property, columnGetter) {
|
|
27
|
+
assertTrue(property.parameters.length === 1, `Can't process property '${property.property}': expected exactly 1 parameter`);
|
|
28
|
+
const variable = guaranteeType(at(property.parameters, 0), V1_Variable, `Can't process property '${property.property}': failed to extract variable`);
|
|
29
|
+
_var(variable);
|
|
30
|
+
return columnGetter(property.property);
|
|
31
|
+
}
|
|
22
32
|
export function _param(func, paramIdx, clazz, message) {
|
|
23
|
-
assertTrue(func.parameters.length >= paramIdx + 1, `Can't process ${_name(func.function)}() expression:
|
|
33
|
+
assertTrue(func.parameters.length >= paramIdx + 1, `Can't process ${_name(func.function)}() expression: expected at least ${paramIdx + 1} parameter(s)`);
|
|
24
34
|
return guaranteeType(func.parameters[paramIdx], clazz, message ??
|
|
25
|
-
`Can't process ${_name(func.function)}() expression:
|
|
35
|
+
`Can't process ${_name(func.function)}() expression: found unexpected type for parameter at index ${paramIdx}`);
|
|
26
36
|
}
|
|
27
37
|
export function _colSpecParam(func, paramIdx) {
|
|
28
|
-
return guaranteeType(_param(func, paramIdx, V1_ClassInstance).value, V1_ColSpec, `Can't process ${_name(func.function)}() expression:
|
|
38
|
+
return guaranteeType(_param(func, paramIdx, V1_ClassInstance).value, V1_ColSpec, `Can't process ${_name(func.function)}() expression: expected parameter at index ${paramIdx} to be a column specification`);
|
|
29
39
|
}
|
|
30
40
|
export function _colSpecArrayParam(func, paramIdx) {
|
|
31
|
-
return guaranteeType(_param(func, paramIdx, V1_ClassInstance).value, V1_ColSpecArray, `Can't process ${_name(func.function)}() expression:
|
|
41
|
+
return guaranteeType(_param(func, paramIdx, V1_ClassInstance).value, V1_ColSpecArray, `Can't process ${_name(func.function)}() expression: expected parameter at index ${paramIdx} to be a column specification list`);
|
|
32
42
|
}
|
|
33
43
|
export function _genericTypeParam(func, paramIdx) {
|
|
34
|
-
return _param(func, paramIdx, V1_GenericTypeInstance, `Can't process ${_name(func.function)}:
|
|
44
|
+
return _param(func, paramIdx, V1_GenericTypeInstance, `Can't process ${_name(func.function)}: expected parameter at index ${paramIdx} to be a generic type instance`);
|
|
45
|
+
}
|
|
46
|
+
export function _unwrapLambda(lambda, message) {
|
|
47
|
+
assertTrue(lambda.body.length === 1, `${message ?? `Can't process lambda`}: expected lambda body to have exactly 1 expression`);
|
|
48
|
+
assertTrue(lambda.parameters.length === 1, `${message ?? `Can't process lambda`}: expected lambda to have exactly 1 parameter`);
|
|
49
|
+
_var(at(lambda.parameters, 0));
|
|
50
|
+
return at(lambda.body, 0);
|
|
35
51
|
}
|
|
36
52
|
export function _funcMatch(value, functionNames) {
|
|
37
|
-
assertType(value, V1_AppliedFunction, `Can't process function:
|
|
38
|
-
assertTrue(matchFunctionName(value.function, Array.isArray(functionNames) ? functionNames : [functionNames]), `Can't process function:
|
|
53
|
+
assertType(value, V1_AppliedFunction, `Can't process function: found unexpected value specification type`);
|
|
54
|
+
assertTrue(matchFunctionName(value.function, Array.isArray(functionNames) ? functionNames : [functionNames]), `Can't process function: expected function to be one of [${uniq((Array.isArray(functionNames) ? functionNames : [functionNames]).map(_name)).join(', ')}]`);
|
|
39
55
|
return value;
|
|
40
56
|
}
|
|
41
57
|
export function _relationType(genericType) {
|
|
@@ -69,7 +85,38 @@ export function _operationPrimitiveValue(value) {
|
|
|
69
85
|
else if (value instanceof V1_CStrictTime) {
|
|
70
86
|
return { value: value.value, type: PRIMITIVE_TYPE.STRICTTIME };
|
|
71
87
|
}
|
|
72
|
-
throw new UnsupportedOperationError(`Can't process primitive value`);
|
|
88
|
+
throw new UnsupportedOperationError(`Can't process unsupported operation primitive value`);
|
|
89
|
+
}
|
|
90
|
+
export function _operationValue(value, columnGetter, columnChecker) {
|
|
91
|
+
if (value instanceof V1_PrimitiveValueSpecification) {
|
|
92
|
+
return _operationPrimitiveValue(value);
|
|
93
|
+
}
|
|
94
|
+
else if (value instanceof V1_AppliedProperty) {
|
|
95
|
+
const column = _propertyCol(value, columnGetter);
|
|
96
|
+
columnChecker?.(column);
|
|
97
|
+
return {
|
|
98
|
+
value: column.name,
|
|
99
|
+
type: DataCubeOperationAdvancedValueType.COLUMN,
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
else if (value === undefined) {
|
|
103
|
+
return {
|
|
104
|
+
type: DataCubeOperationAdvancedValueType.VOID,
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
throw new UnsupportedOperationError(`Can't process unsupported operation value`);
|
|
108
|
+
}
|
|
109
|
+
export function _checkDuplicateColumns(columns, message) {
|
|
110
|
+
const cols = new Set();
|
|
111
|
+
columns.forEach((col) => {
|
|
112
|
+
if (cols.has(col.name)) {
|
|
113
|
+
throw new Error(message?.(col.name) ??
|
|
114
|
+
`Can't process expression: found duplicate columns '${col.name}'`);
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
cols.add(col.name);
|
|
118
|
+
}
|
|
119
|
+
});
|
|
73
120
|
}
|
|
74
121
|
// --------------------------------- BUILDING BLOCKS ---------------------------------
|
|
75
122
|
/**
|
|
@@ -84,10 +131,8 @@ export function _pruneExpandedPaths(prevGroupByCols, currentGroupByCols, expande
|
|
|
84
131
|
}
|
|
85
132
|
let lastCommonIndex = -1;
|
|
86
133
|
for (let i = 0; i < length; i++) {
|
|
87
|
-
if (
|
|
88
|
-
|
|
89
|
-
guaranteeNonNullable(prevGroupByCols[i]).type !==
|
|
90
|
-
guaranteeNonNullable(currentGroupByCols[i]).type) {
|
|
134
|
+
if (at(prevGroupByCols, i).name !== at(currentGroupByCols, i).name ||
|
|
135
|
+
at(prevGroupByCols, i).type !== at(currentGroupByCols, i).type) {
|
|
91
136
|
break;
|
|
92
137
|
}
|
|
93
138
|
lastCommonIndex = i;
|
|
@@ -96,49 +141,44 @@ export function _pruneExpandedPaths(prevGroupByCols, currentGroupByCols, expande
|
|
|
96
141
|
.filter((path) => path.split(TREE_COLUMN_VALUE_SEPARATOR).length <= lastCommonIndex + 1)
|
|
97
142
|
.sort();
|
|
98
143
|
}
|
|
99
|
-
export function _extractExtendedColumns(
|
|
100
|
-
const
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
if (!matchFunctionName(currentFunc.function, DataCubeFunction.EXTEND)) {
|
|
106
|
-
break;
|
|
107
|
-
}
|
|
108
|
-
if (currentFunc.parameters.length === 2) {
|
|
109
|
-
const valueSpecification = currentFunc.parameters[0];
|
|
110
|
-
if (!(valueSpecification instanceof V1_AppliedFunction)) {
|
|
111
|
-
throw new IllegalStateError(`Can't process extend() expression: Expected a chain of function calls (e.g. x()->y()->z())`);
|
|
112
|
-
}
|
|
113
|
-
else {
|
|
114
|
-
currentFunc.parameters = currentFunc.parameters.slice(1);
|
|
115
|
-
extendFuncs.unshift(currentFunc);
|
|
116
|
-
currentFunc = valueSpecification;
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
else {
|
|
120
|
-
assertTrue(currentFunc.parameters.length === 1, `Can't process extend() expression: Expected 1 parameter, got ${currentFunc.parameters.length}`);
|
|
121
|
-
extendFuncs.unshift(currentFunc);
|
|
122
|
-
break;
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
return extendFuncs.map((extendFunc) => {
|
|
126
|
-
const colSpecs = _colSpecArrayParam(extendFunc, 0).colSpecs;
|
|
127
|
-
assertTrue(colSpecs.length === 1, `Can't process extend() expression: Expected 1 column specification, got ${colSpecs.length}`);
|
|
128
|
-
const colSpec = at(colSpecs, 0);
|
|
129
|
-
return {
|
|
130
|
-
name: colSpec.name,
|
|
131
|
-
type: '', // NOTE: we don't have type information for extended columns at this point
|
|
132
|
-
mapFn: _serializeValueSpecification(guaranteeNonNullable(colSpec.function1, `Can't process extend() expression: Expected a transformation function expression`)),
|
|
133
|
-
reduceFn: colSpec.function2
|
|
134
|
-
? _serializeValueSpecification(colSpec.function2)
|
|
135
|
-
: undefined,
|
|
136
|
-
};
|
|
144
|
+
export async function _extractExtendedColumns(funcs, currentColumns, engine) {
|
|
145
|
+
const colSpecs = funcs.map((extendFunc) => {
|
|
146
|
+
// TODO: support extend() with window (OLAP), this assertion will no longer work
|
|
147
|
+
const _colSpecs = _colSpecArrayParam(extendFunc, 0).colSpecs;
|
|
148
|
+
assertTrue(_colSpecs.length === 1, `Can't process extend() expression: expected 1 column specification, got ${_colSpecs.length}`);
|
|
149
|
+
return at(_colSpecs, 0);
|
|
137
150
|
});
|
|
151
|
+
// get the types
|
|
152
|
+
const sourceQuery = _synthesizeMinimalSourceQuery(currentColumns);
|
|
153
|
+
const sequence = colSpecs.map((colSpec) => _function(DataCubeFunction.EXTEND, [
|
|
154
|
+
_cols([
|
|
155
|
+
_colSpec(colSpec.name, guaranteeNonNullable(colSpec.function1, `Can't process extend() expression: expected a transformation function expression for column '${colSpec.name}'`), colSpec.function2),
|
|
156
|
+
]),
|
|
157
|
+
]));
|
|
158
|
+
for (let i = 0; i < sequence.length; i++) {
|
|
159
|
+
at(sequence, i).parameters.unshift(i === 0 ? sourceQuery : at(sequence, i - 1));
|
|
160
|
+
}
|
|
161
|
+
const query = at(sequence, sequence.length - 1);
|
|
162
|
+
let columns = [];
|
|
163
|
+
try {
|
|
164
|
+
columns = (await engine.getQueryRelationReturnType(_lambda([], [query]), new INTERNAL__DataCubeSource())).columns;
|
|
165
|
+
}
|
|
166
|
+
catch (error) {
|
|
167
|
+
assertErrorThrown(error);
|
|
168
|
+
throw new Error(`Can't process extend() expression: failed to retrieve type information for columns. Error: ${error.message}`);
|
|
169
|
+
}
|
|
170
|
+
return colSpecs.map((colSpec) => ({
|
|
171
|
+
name: colSpec.name,
|
|
172
|
+
type: guaranteeNonNullable(_findCol(columns, colSpec.name), `Can't process extend() expression: failed to retrieve type information for column '${colSpec.name}'`).type,
|
|
173
|
+
mapFn: _serializeValueSpecification(guaranteeNonNullable(colSpec.function1, `Can't process extend() expression: expected a transformation function expression for column '${colSpec.name}'`)),
|
|
174
|
+
reduceFn: colSpec.function2
|
|
175
|
+
? _serializeValueSpecification(colSpec.function2)
|
|
176
|
+
: undefined,
|
|
177
|
+
}));
|
|
138
178
|
}
|
|
139
179
|
export function _filter(value, columnGetter, filterOperations) {
|
|
140
180
|
if (!(value instanceof V1_AppliedFunction)) {
|
|
141
|
-
throw new Error(`Can't process filter() expression:
|
|
181
|
+
throw new Error(`Can't process filter() expression: expected a function expression`);
|
|
142
182
|
}
|
|
143
183
|
const group = {
|
|
144
184
|
// default to AND group for case where there is only one condition
|
|
@@ -164,12 +204,12 @@ export function _filter(value, columnGetter, filterOperations) {
|
|
|
164
204
|
}
|
|
165
205
|
export function _unwrapNotFilterCondition(func) {
|
|
166
206
|
assertTrue(matchFunctionName(func.function, DataCubeFunction.NOT), `Can't process filter condition expression: failed to unwrap not() function`);
|
|
167
|
-
assertTrue(func.parameters.length === 1, `Can't process not() function:
|
|
207
|
+
assertTrue(func.parameters.length === 1, `Can't process not() function: expected 1 parameter`);
|
|
168
208
|
return _param(func, 0, V1_AppliedFunction);
|
|
169
209
|
}
|
|
170
210
|
function _filterCondition(value, columnGetter, filterOperations) {
|
|
171
211
|
if (!(value instanceof V1_AppliedFunction)) {
|
|
172
|
-
throw new UnsupportedOperationError(`Can't process filter condition expression:
|
|
212
|
+
throw new UnsupportedOperationError(`Can't process filter condition expression: expected a function expression`);
|
|
173
213
|
}
|
|
174
214
|
// handle group condition
|
|
175
215
|
if (matchFunctionName(value.function, [
|
|
@@ -212,27 +252,6 @@ function _filterCondition(value, columnGetter, filterOperations) {
|
|
|
212
252
|
// if no match found, throw error, we encountered a filter condition form that we don't support
|
|
213
253
|
throw new Error(`Can't process filter condition: no matching operator found`);
|
|
214
254
|
}
|
|
215
|
-
function _filterConditionValue(value, column, columnGetter) {
|
|
216
|
-
if (value instanceof V1_PrimitiveValueSpecification) {
|
|
217
|
-
return _operationPrimitiveValue(value);
|
|
218
|
-
}
|
|
219
|
-
else if (value instanceof V1_AppliedProperty) {
|
|
220
|
-
const column2 = columnGetter(value.property);
|
|
221
|
-
if (getDataType(column.type) !== getDataType(column2.type)) {
|
|
222
|
-
return undefined;
|
|
223
|
-
}
|
|
224
|
-
return {
|
|
225
|
-
value: column2.name,
|
|
226
|
-
type: DataCubeOperationAdvancedValueType.COLUMN,
|
|
227
|
-
};
|
|
228
|
-
}
|
|
229
|
-
else if (value === undefined) {
|
|
230
|
-
return {
|
|
231
|
-
type: DataCubeOperationAdvancedValueType.VOID,
|
|
232
|
-
};
|
|
233
|
-
}
|
|
234
|
-
return undefined;
|
|
235
|
-
}
|
|
236
255
|
/**
|
|
237
256
|
* Processes filter conditions of form: column | operator | value, e.g.
|
|
238
257
|
* $x.Age > 5
|
|
@@ -241,26 +260,36 @@ function _filterConditionValue(value, column, columnGetter) {
|
|
|
241
260
|
* $x.Age > $x.Age2
|
|
242
261
|
* $x.Name == $x.Name2
|
|
243
262
|
*/
|
|
244
|
-
export function
|
|
245
|
-
if (
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
263
|
+
export function _filterCondition_base(expression, func, columnGetter) {
|
|
264
|
+
if (!expression) {
|
|
265
|
+
return undefined;
|
|
266
|
+
}
|
|
267
|
+
try {
|
|
268
|
+
if (matchFunctionName(expression.function, func)) {
|
|
269
|
+
if (expression.parameters.length !== 2 &&
|
|
270
|
+
expression.parameters.length !== 1) {
|
|
271
|
+
return undefined;
|
|
272
|
+
}
|
|
273
|
+
let column;
|
|
274
|
+
if (expression.parameters[0] instanceof V1_AppliedProperty) {
|
|
275
|
+
column = _propertyCol(expression.parameters[0], columnGetter);
|
|
276
|
+
}
|
|
277
|
+
if (!column) {
|
|
278
|
+
return undefined;
|
|
279
|
+
}
|
|
280
|
+
const value = _operationValue(expression.parameters[1], columnGetter, (_column) => {
|
|
281
|
+
if (getDataType(column.type) !== getDataType(_column.type)) {
|
|
282
|
+
throw new Error(`Can't process filter condition: found incompatible columns`);
|
|
283
|
+
}
|
|
284
|
+
});
|
|
285
|
+
return {
|
|
286
|
+
column,
|
|
287
|
+
value,
|
|
288
|
+
};
|
|
259
289
|
}
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
};
|
|
290
|
+
}
|
|
291
|
+
catch {
|
|
292
|
+
return undefined;
|
|
264
293
|
}
|
|
265
294
|
return undefined;
|
|
266
295
|
}
|
|
@@ -269,42 +298,246 @@ export function _baseFilterCondition(expression, columnGetter, func) {
|
|
|
269
298
|
* $x.Name->toLower() == 'abc'->toLower()
|
|
270
299
|
* $x.Name->toLower() == $x.Name2->toLower()
|
|
271
300
|
*/
|
|
272
|
-
export function
|
|
273
|
-
if (
|
|
274
|
-
|
|
275
|
-
|
|
301
|
+
export function _filterCondition_caseSensitive(expression, func, columnGetter) {
|
|
302
|
+
if (!expression) {
|
|
303
|
+
return undefined;
|
|
304
|
+
}
|
|
305
|
+
try {
|
|
306
|
+
if (matchFunctionName(expression.function, func)) {
|
|
307
|
+
if (expression.parameters.length !== 2) {
|
|
308
|
+
return undefined;
|
|
309
|
+
}
|
|
310
|
+
const param1 = expression.parameters[0];
|
|
311
|
+
if (!(param1 instanceof V1_AppliedFunction) ||
|
|
312
|
+
!matchFunctionName(param1.function, DataCubeFunction.TO_LOWERCASE)) {
|
|
313
|
+
return undefined;
|
|
314
|
+
}
|
|
315
|
+
if (param1.parameters.length !== 1) {
|
|
316
|
+
return undefined;
|
|
317
|
+
}
|
|
318
|
+
let column;
|
|
319
|
+
if (param1.parameters[0] instanceof V1_AppliedProperty) {
|
|
320
|
+
column = _propertyCol(param1.parameters[0], columnGetter);
|
|
321
|
+
}
|
|
322
|
+
if (!column) {
|
|
323
|
+
return undefined;
|
|
324
|
+
}
|
|
325
|
+
const param2 = expression.parameters[1];
|
|
326
|
+
if (!(param2 instanceof V1_AppliedFunction) ||
|
|
327
|
+
!matchFunctionName(param2.function, DataCubeFunction.TO_LOWERCASE)) {
|
|
328
|
+
return undefined;
|
|
329
|
+
}
|
|
330
|
+
if (param2.parameters.length !== 1) {
|
|
331
|
+
return undefined;
|
|
332
|
+
}
|
|
333
|
+
const value = _operationValue(param2.parameters[0], columnGetter, (_column) => {
|
|
334
|
+
if (getDataType(column.type) !== getDataType(_column.type)) {
|
|
335
|
+
throw new Error(`Can't process filter condition: found incompatible columns`);
|
|
336
|
+
}
|
|
337
|
+
});
|
|
338
|
+
return {
|
|
339
|
+
column,
|
|
340
|
+
value,
|
|
341
|
+
};
|
|
342
|
+
}
|
|
343
|
+
}
|
|
344
|
+
catch {
|
|
345
|
+
return undefined;
|
|
346
|
+
}
|
|
347
|
+
return undefined;
|
|
348
|
+
}
|
|
349
|
+
export function _aggCol(colSpec, columnGetter, aggregateOperations) {
|
|
350
|
+
for (const operation of aggregateOperations) {
|
|
351
|
+
const col = operation.buildAggregateColumnSnapshot(colSpec, columnGetter);
|
|
352
|
+
if (col) {
|
|
353
|
+
return col;
|
|
354
|
+
}
|
|
355
|
+
}
|
|
356
|
+
throw new Error(`Can't process aggregate column '${colSpec.name}': no matching operator found`);
|
|
357
|
+
}
|
|
358
|
+
export function _agg_base(colSpec, func, columnGetter) {
|
|
359
|
+
try {
|
|
360
|
+
if (colSpec.function1 && colSpec.function2) {
|
|
361
|
+
const mapper = _unwrapLambda(colSpec.function1);
|
|
362
|
+
const reducer = _unwrapLambda(colSpec.function2);
|
|
363
|
+
if (mapper instanceof V1_AppliedProperty &&
|
|
364
|
+
reducer instanceof V1_AppliedFunction &&
|
|
365
|
+
reducer.parameters.length >= 1 &&
|
|
366
|
+
matchFunctionName(reducer.function, func)) {
|
|
367
|
+
const column = _propertyCol(mapper, columnGetter);
|
|
368
|
+
assertTrue(column.name === colSpec.name, `Can't process aggregate column: column name must match mapper column name`);
|
|
369
|
+
const variable = _param(reducer, 0, V1_Variable);
|
|
370
|
+
_var(variable);
|
|
371
|
+
return {
|
|
372
|
+
column,
|
|
373
|
+
paramterValues: reducer.parameters
|
|
374
|
+
.slice(1)
|
|
375
|
+
.map((value) => _operationValue(value, columnGetter)),
|
|
376
|
+
};
|
|
377
|
+
}
|
|
378
|
+
}
|
|
379
|
+
}
|
|
380
|
+
catch {
|
|
381
|
+
return undefined;
|
|
382
|
+
}
|
|
383
|
+
return undefined;
|
|
384
|
+
}
|
|
385
|
+
export function _pivotSort(func, pivotColumns, columnGetter) {
|
|
386
|
+
const sortColumns = _sort(func, columnGetter);
|
|
387
|
+
const groupColumns = new Set(pivotColumns.map((col) => col.name));
|
|
388
|
+
const columnsToSort = new Set(pivotColumns.map((col) => col.name));
|
|
389
|
+
sortColumns.forEach((col) => {
|
|
390
|
+
if (groupColumns.has(col.name)) {
|
|
391
|
+
columnsToSort.delete(col.name);
|
|
392
|
+
}
|
|
393
|
+
else {
|
|
394
|
+
throw new Error(`Can't process pivot() expression: sort column '${col.name}' must be a pivot column`);
|
|
395
|
+
}
|
|
396
|
+
});
|
|
397
|
+
if (columnsToSort.size !== 0) {
|
|
398
|
+
throw new Error(`Can't process pivot() expression: found unsorted pivot column(s) (${Array.from(columnsToSort.values())
|
|
399
|
+
.sort()
|
|
400
|
+
.map((col) => `'${col}'`)
|
|
401
|
+
.join(', ')})`);
|
|
402
|
+
}
|
|
403
|
+
_checkDuplicateColumns(sortColumns, (colName) => `Can't process pivot() expression: found duplicate sort columns '${colName}'`);
|
|
404
|
+
return sortColumns;
|
|
405
|
+
}
|
|
406
|
+
export function _validatePivot(pivot, pivotAggColumns, availableColumns) {
|
|
407
|
+
// check for duplicate columns
|
|
408
|
+
const pivotColumns = pivot.columns;
|
|
409
|
+
const castColumns = pivot.castColumns;
|
|
410
|
+
_checkDuplicateColumns(pivotColumns, (colName) => `Can't process pivot() expression: found duplicate pivot columns '${colName}'`);
|
|
411
|
+
_checkDuplicateColumns(pivotAggColumns, (colName) => `Can't process pivot() expression: found duplicate aggregate columns '${colName}'`);
|
|
412
|
+
_checkDuplicateColumns(castColumns, (colName) => `Can't process pivot() expression: found duplicate cast columns '${colName}'`);
|
|
413
|
+
// check pivot columns are not aggregated on
|
|
414
|
+
pivotAggColumns.forEach((col) => {
|
|
415
|
+
if (_findCol(pivotColumns, col.name)) {
|
|
416
|
+
throw new Error(`Can't process pivot() expression: pivot column '${col.name}' must not be aggregated on`);
|
|
276
417
|
}
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
418
|
+
});
|
|
419
|
+
// check cast columns
|
|
420
|
+
// NOTE: we cannot and should not do strict checks here as cast columns are dependent on the data
|
|
421
|
+
// check that the columns used by pivot() as group columns are present in cast columns
|
|
422
|
+
const pivotGroupColumns = availableColumns.filter((col) => !(_findCol(pivotColumns, col.name) ?? _findCol(pivotAggColumns, col.name)));
|
|
423
|
+
pivotGroupColumns.forEach((col) => {
|
|
424
|
+
if (!_findCol(castColumns, col.name)) {
|
|
425
|
+
throw new Error(`Can't process pivot() expression: expected pivot group column '${col.name}' in cast columns`);
|
|
281
426
|
}
|
|
282
|
-
|
|
283
|
-
|
|
427
|
+
});
|
|
428
|
+
// check that columns used in pivot() should not show up in cast columns
|
|
429
|
+
pivotColumns.forEach((col) => {
|
|
430
|
+
if (_findCol(castColumns, col.name)) {
|
|
431
|
+
throw new Error(`Can't process pivot() expression: expected pivot column '${col.name}' to not present in cast columns`);
|
|
284
432
|
}
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
return undefined;
|
|
433
|
+
});
|
|
434
|
+
pivotAggColumns.forEach((col) => {
|
|
435
|
+
if (_findCol(castColumns, col.name)) {
|
|
436
|
+
throw new Error(`Can't process pivot() expression: expected pivot aggregate column '${col.name}' to not present in cast columns`);
|
|
290
437
|
}
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
438
|
+
});
|
|
439
|
+
// check that cast column resulted from an aggregation (usually has name of form VAL1__|__COL1)
|
|
440
|
+
// has a matching aggregate column (i.e. COL1)
|
|
441
|
+
castColumns
|
|
442
|
+
.filter((col) => isPivotResultColumnName(col.name))
|
|
443
|
+
.forEach((col) => {
|
|
444
|
+
const aggColName = getPivotResultColumnBaseColumnName(col.name);
|
|
445
|
+
if (!_findCol(pivotAggColumns, aggColName)) {
|
|
446
|
+
throw new Error(`Can't process pivot() expression: fail to match cast column '${col.name}' to a specified aggregate column`);
|
|
295
447
|
}
|
|
296
|
-
|
|
297
|
-
|
|
448
|
+
});
|
|
449
|
+
}
|
|
450
|
+
export function _groupBySort(func, groupByColumns, columnGetter) {
|
|
451
|
+
const sortColumns = _sort(func, columnGetter);
|
|
452
|
+
const groupColumns = new Set(groupByColumns.map((col) => col.name));
|
|
453
|
+
const columnsToSort = new Set(groupByColumns.map((col) => col.name));
|
|
454
|
+
let sortDirection = undefined;
|
|
455
|
+
sortColumns.forEach((col) => {
|
|
456
|
+
if (groupColumns.has(col.name)) {
|
|
457
|
+
columnsToSort.delete(col.name);
|
|
298
458
|
}
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
459
|
+
else {
|
|
460
|
+
throw new Error(`Can't process groupBy() expression: sort column '${col.name}' must be a group column`);
|
|
461
|
+
}
|
|
462
|
+
if (!sortDirection) {
|
|
463
|
+
sortDirection = col.direction;
|
|
464
|
+
}
|
|
465
|
+
else if (col.direction !== sortDirection) {
|
|
466
|
+
throw new Error(`Can't process groupBy() expression: all group columns must be sorted in the same direction`);
|
|
467
|
+
}
|
|
468
|
+
});
|
|
469
|
+
if (columnsToSort.size !== 0) {
|
|
470
|
+
throw new Error(`Can't process groupBy() expression: found unsorted group column(s) (${Array.from(columnsToSort.values())
|
|
471
|
+
.sort()
|
|
472
|
+
.map((col) => `'${col}'`)
|
|
473
|
+
.join(', ')})`);
|
|
474
|
+
}
|
|
475
|
+
_checkDuplicateColumns(sortColumns, (colName) => `Can't process groupBy() expression: found duplicate sort columns '${colName}'`);
|
|
476
|
+
return sortColumns;
|
|
477
|
+
}
|
|
478
|
+
export function _validateGroupBy(groupBy, groupByAggColumns, pivot, pivotAggColumns, availableColumns) {
|
|
479
|
+
// check for duplicate columns
|
|
480
|
+
const groupByColumns = groupBy.columns;
|
|
481
|
+
_checkDuplicateColumns(groupByColumns, (colName) => `Can't process groupBy() expression: found duplicate group columns '${colName}'`);
|
|
482
|
+
_checkDuplicateColumns(groupByAggColumns, (colName) => `Can't process groupBy() expression: found duplicate aggregate columns '${colName}'`);
|
|
483
|
+
// check group columns are not aggregated on
|
|
484
|
+
groupByAggColumns.forEach((col) => {
|
|
485
|
+
if (_findCol(groupByColumns, col.name)) {
|
|
486
|
+
throw new Error(`Can't process groupBy() expression: group column '${col.name}' must not be aggregated on`);
|
|
302
487
|
}
|
|
488
|
+
});
|
|
489
|
+
// check all available columns are either grouped on or aggregatd on
|
|
490
|
+
availableColumns.forEach((col) => {
|
|
491
|
+
if (!(_findCol(groupByColumns, col.name) ??
|
|
492
|
+
_findCol(groupByAggColumns, col.name))) {
|
|
493
|
+
throw new Error(`Can't process groupBy() expression: column '${col.name}' is neither grouped nor aggregated on`);
|
|
494
|
+
}
|
|
495
|
+
});
|
|
496
|
+
// check against pivot if present
|
|
497
|
+
if (pivot) {
|
|
498
|
+
const aggCols = new Map();
|
|
499
|
+
// check if aggregation specification is consistent (i.e. same type, operator, parameterValues)
|
|
500
|
+
// between groupBy aggregate columns
|
|
501
|
+
groupByAggColumns
|
|
502
|
+
.filter((col) => isPivotResultColumnName(col.name))
|
|
503
|
+
.forEach((col) => {
|
|
504
|
+
const aggColName = getPivotResultColumnBaseColumnName(col.name);
|
|
505
|
+
const aggCol = {
|
|
506
|
+
...col,
|
|
507
|
+
name: aggColName,
|
|
508
|
+
};
|
|
509
|
+
const existingAggCol = aggCols.get(aggColName);
|
|
510
|
+
if (!existingAggCol) {
|
|
511
|
+
aggCols.set(aggColName, aggCol);
|
|
512
|
+
}
|
|
513
|
+
else if (!deepEqual(existingAggCol, aggCol)) {
|
|
514
|
+
throw new Error(`Can't process groupBy() expression: found conflicting aggregation specification for column '${aggColName}'`);
|
|
515
|
+
}
|
|
516
|
+
});
|
|
517
|
+
// check if pivot() aggregate columns are consistent with groupBy() aggregate columns
|
|
518
|
+
pivotAggColumns.forEach((col) => {
|
|
519
|
+
const existingAggCol = aggCols.get(col.name);
|
|
520
|
+
if (!existingAggCol) {
|
|
521
|
+
throw new Error(`Can't process groupBy() expression: column '${col.name}' is aggregated in pivot() expression but not in groupBy() expression`);
|
|
522
|
+
}
|
|
523
|
+
if (!deepEqual(existingAggCol, col)) {
|
|
524
|
+
throw new Error(`Can't process groupBy() expression: found conflicting aggregation specification for column '${col.name}'`);
|
|
525
|
+
}
|
|
526
|
+
});
|
|
527
|
+
}
|
|
528
|
+
}
|
|
529
|
+
export function _sort(func, columnGetter) {
|
|
530
|
+
return _param(func, 0, V1_Collection, `Can't process sort() expression: expected parameter at index 0 to be a collection`).values.map((value) => {
|
|
531
|
+
const sortColFunc = _funcMatch(value, [
|
|
532
|
+
DataCubeFunction.ASCENDING,
|
|
533
|
+
DataCubeFunction.DESCENDING,
|
|
534
|
+
]);
|
|
303
535
|
return {
|
|
304
|
-
|
|
305
|
-
|
|
536
|
+
...columnGetter(_colSpecParam(sortColFunc, 0).name),
|
|
537
|
+
direction: matchFunctionName(sortColFunc.function, DataCubeFunction.ASCENDING)
|
|
538
|
+
? DataCubeQuerySortDirection.ASCENDING
|
|
539
|
+
: DataCubeQuerySortDirection.DESCENDING,
|
|
306
540
|
};
|
|
307
|
-
}
|
|
308
|
-
return undefined;
|
|
541
|
+
});
|
|
309
542
|
}
|
|
310
543
|
//# sourceMappingURL=DataCubeQuerySnapshotBuilderUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataCubeQuerySnapshotBuilderUtils.js","sourceRoot":"","sources":["../../../src/stores/core/DataCubeQuerySnapshotBuilderUtils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DataCubeQuerySnapshotBuilderUtils.js","sourceRoot":"","sources":["../../../src/stores/core/DataCubeQuerySnapshotBuilderUtils.ts"],"names":[],"mappings":"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"}
|