@finos/legend-application-repl 0.0.47 → 0.0.49
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/components/dataCube/DataCube.d.ts.map +1 -1
- package/lib/components/dataCube/DataCube.js +14 -11
- package/lib/components/dataCube/DataCube.js.map +1 -1
- package/lib/components/dataCube/editor/DataCubeEditor.d.ts +4 -1
- package/lib/components/dataCube/editor/DataCubeEditor.d.ts.map +1 -1
- package/lib/components/dataCube/editor/DataCubeEditor.js +6 -7
- package/lib/components/dataCube/editor/DataCubeEditor.js.map +1 -1
- package/lib/components/dataCube/editor/DataCubeEditorCodePanel.d.ts +4 -1
- package/lib/components/dataCube/editor/DataCubeEditorCodePanel.d.ts.map +1 -1
- package/lib/components/dataCube/editor/DataCubeEditorCodePanel.js +2 -12
- package/lib/components/dataCube/editor/DataCubeEditorCodePanel.js.map +1 -1
- package/lib/components/dataCube/editor/DataCubeEditorColumnPropertiesPanel.d.ts +4 -1
- package/lib/components/dataCube/editor/DataCubeEditorColumnPropertiesPanel.d.ts.map +1 -1
- package/lib/components/dataCube/editor/DataCubeEditorColumnPropertiesPanel.js +57 -51
- package/lib/components/dataCube/editor/DataCubeEditorColumnPropertiesPanel.js.map +1 -1
- package/lib/components/dataCube/editor/DataCubeEditorColumnsPanel.d.ts +4 -1
- package/lib/components/dataCube/editor/DataCubeEditorColumnsPanel.d.ts.map +1 -1
- package/lib/components/dataCube/editor/DataCubeEditorColumnsPanel.js +3 -4
- package/lib/components/dataCube/editor/DataCubeEditorColumnsPanel.js.map +1 -1
- package/lib/components/dataCube/editor/DataCubeEditorColumnsSelector.js +1 -1
- package/lib/components/dataCube/editor/DataCubeEditorExtendedColumnsPanel.d.ts +4 -1
- package/lib/components/dataCube/editor/DataCubeEditorExtendedColumnsPanel.d.ts.map +1 -1
- package/lib/components/dataCube/editor/DataCubeEditorExtendedColumnsPanel.js +3 -4
- package/lib/components/dataCube/editor/DataCubeEditorExtendedColumnsPanel.js.map +1 -1
- package/lib/components/dataCube/editor/DataCubeEditorFilterPanel.d.ts +4 -1
- package/lib/components/dataCube/editor/DataCubeEditorFilterPanel.d.ts.map +1 -1
- package/lib/components/dataCube/editor/DataCubeEditorFilterPanel.js +289 -10
- package/lib/components/dataCube/editor/DataCubeEditorFilterPanel.js.map +1 -1
- package/lib/components/dataCube/editor/DataCubeEditorGeneralPropertiesPanel.d.ts +4 -1
- package/lib/components/dataCube/editor/DataCubeEditorGeneralPropertiesPanel.d.ts.map +1 -1
- package/lib/components/dataCube/editor/DataCubeEditorGeneralPropertiesPanel.js +30 -30
- package/lib/components/dataCube/editor/DataCubeEditorGeneralPropertiesPanel.js.map +1 -1
- package/lib/components/dataCube/editor/DataCubeEditorHorizontalPivotsPanel.d.ts +4 -1
- package/lib/components/dataCube/editor/DataCubeEditorHorizontalPivotsPanel.d.ts.map +1 -1
- package/lib/components/dataCube/editor/DataCubeEditorHorizontalPivotsPanel.js +3 -4
- package/lib/components/dataCube/editor/DataCubeEditorHorizontalPivotsPanel.js.map +1 -1
- package/lib/components/dataCube/editor/DataCubeEditorSortsPanel.d.ts +4 -1
- package/lib/components/dataCube/editor/DataCubeEditorSortsPanel.d.ts.map +1 -1
- package/lib/components/dataCube/editor/DataCubeEditorSortsPanel.js +19 -20
- package/lib/components/dataCube/editor/DataCubeEditorSortsPanel.js.map +1 -1
- package/lib/components/dataCube/editor/DataCubeEditorVerticalPivotsPanel.d.ts +4 -1
- package/lib/components/dataCube/editor/DataCubeEditorVerticalPivotsPanel.d.ts.map +1 -1
- package/lib/components/dataCube/editor/DataCubeEditorVerticalPivotsPanel.js +3 -4
- package/lib/components/dataCube/editor/DataCubeEditorVerticalPivotsPanel.js.map +1 -1
- package/lib/components/dataCube/grid/DataCubeGrid.d.ts +7 -2
- package/lib/components/dataCube/grid/DataCubeGrid.d.ts.map +1 -1
- package/lib/components/dataCube/grid/DataCubeGrid.js +53 -54
- package/lib/components/dataCube/grid/DataCubeGrid.js.map +1 -1
- package/lib/components/repl/Form.d.ts +4 -2
- package/lib/components/repl/Form.d.ts.map +1 -1
- package/lib/components/repl/Form.js +55 -19
- package/lib/components/repl/Form.js.map +1 -1
- package/lib/index.css +2 -2
- package/lib/index.css.map +1 -1
- package/lib/package.json +4 -3
- package/lib/stores/dataCube/DataCubeEngine.d.ts +30 -0
- package/lib/stores/dataCube/DataCubeEngine.d.ts.map +1 -1
- package/lib/stores/dataCube/DataCubeEngine.js +60 -1
- package/lib/stores/dataCube/DataCubeEngine.js.map +1 -1
- package/lib/stores/dataCube/DataCubeState.d.ts +2 -2
- package/lib/stores/dataCube/DataCubeState.d.ts.map +1 -1
- package/lib/stores/dataCube/DataCubeState.js +11 -5
- package/lib/stores/dataCube/DataCubeState.js.map +1 -1
- package/lib/stores/dataCube/core/DataCubeConfiguration.d.ts +0 -1
- package/lib/stores/dataCube/core/DataCubeConfiguration.d.ts.map +1 -1
- package/lib/stores/dataCube/core/DataCubeConfiguration.js +0 -2
- package/lib/stores/dataCube/core/DataCubeConfiguration.js.map +1 -1
- package/lib/stores/dataCube/core/DataCubeQueryBuilder.d.ts +8 -17
- package/lib/stores/dataCube/core/DataCubeQueryBuilder.d.ts.map +1 -1
- package/lib/stores/dataCube/core/DataCubeQueryBuilder.js +16 -230
- package/lib/stores/dataCube/core/DataCubeQueryBuilder.js.map +1 -1
- package/lib/stores/dataCube/core/DataCubeQueryBuilderUtils.d.ts +44 -0
- package/lib/stores/dataCube/core/DataCubeQueryBuilderUtils.d.ts.map +1 -0
- package/lib/stores/dataCube/core/DataCubeQueryBuilderUtils.js +220 -0
- package/lib/stores/dataCube/core/DataCubeQueryBuilderUtils.js.map +1 -0
- package/lib/stores/dataCube/core/DataCubeQueryEngine.d.ts +41 -20
- package/lib/stores/dataCube/core/DataCubeQueryEngine.d.ts.map +1 -1
- package/lib/stores/dataCube/core/DataCubeQueryEngine.js +70 -46
- package/lib/stores/dataCube/core/DataCubeQueryEngine.js.map +1 -1
- package/lib/stores/dataCube/core/DataCubeQuerySnapshot.d.ts +7 -5
- package/lib/stores/dataCube/core/DataCubeQuerySnapshot.d.ts.map +1 -1
- package/lib/stores/dataCube/core/DataCubeQuerySnapshot.js +1 -1
- package/lib/stores/dataCube/core/DataCubeQuerySnapshot.js.map +1 -1
- package/lib/stores/dataCube/core/DataCubeQuerySnapshotBuilder.d.ts +4 -4
- package/lib/stores/dataCube/core/DataCubeQuerySnapshotBuilder.d.ts.map +1 -1
- package/lib/stores/dataCube/core/DataCubeQuerySnapshotBuilder.js +18 -135
- package/lib/stores/dataCube/core/DataCubeQuerySnapshotBuilder.js.map +1 -1
- package/lib/stores/dataCube/core/DataCubeQuerySnapshotBuilderUtils.d.ts +31 -0
- package/lib/stores/dataCube/core/DataCubeQuerySnapshotBuilderUtils.d.ts.map +1 -0
- package/lib/stores/dataCube/core/DataCubeQuerySnapshotBuilderUtils.js +142 -0
- package/lib/stores/dataCube/core/DataCubeQuerySnapshotBuilderUtils.js.map +1 -0
- package/lib/stores/dataCube/core/DataCubeQuerySnapshotManager.d.ts +16 -1
- package/lib/stores/dataCube/core/DataCubeQuerySnapshotManager.d.ts.map +1 -1
- package/lib/stores/dataCube/core/DataCubeQuerySnapshotManager.js +25 -3
- package/lib/stores/dataCube/core/DataCubeQuerySnapshotManager.js.map +1 -1
- package/lib/stores/dataCube/core/{DataCubeCoreState.d.ts → DataCubeStaticContentDisplayState.d.ts} +3 -4
- package/lib/stores/dataCube/core/DataCubeStaticContentDisplayState.d.ts.map +1 -0
- package/lib/stores/dataCube/core/{DataCubeCoreState.js → DataCubeStaticContentDisplayState.js} +3 -6
- package/lib/stores/dataCube/core/DataCubeStaticContentDisplayState.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterEditorState.d.ts +36 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterEditorState.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterEditorState.js +151 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterEditorState.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation.d.ts +32 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation.js +64 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__Contain.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__Contain.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__Contain.js +59 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__Contain.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.js +64 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EndWith.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EndWith.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EndWith.js +59 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EndWith.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.js +64 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__Equal.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__Equal.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__Equal.js +126 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__Equal.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.js +64 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.js +64 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EqualColumn.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EqualColumn.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EqualColumn.js +60 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EqualColumn.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__GreaterThan.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__GreaterThan.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__GreaterThan.js +59 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__GreaterThan.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.js +60 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.js +59 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.js +60 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__IsNotNull.d.ts +31 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__IsNotNull.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__IsNotNull.js +54 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__IsNotNull.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__IsNull.d.ts +31 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__IsNull.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__IsNull.js +54 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__IsNull.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__LessThan.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__LessThan.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__LessThan.js +59 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__LessThan.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__LessThanColumn.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__LessThanColumn.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__LessThanColumn.js +60 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__LessThanColumn.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.js +59 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.js +60 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotContain.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotContain.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotContain.js +59 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotContain.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEndWith.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEndWith.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEndWith.js +59 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEndWith.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEqual.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEqual.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEqual.js +59 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEqual.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.js +64 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.js +64 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.js +60 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotStartWith.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotStartWith.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotStartWith.js +59 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotStartWith.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__StartWith.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__StartWith.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__StartWith.js +59 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__StartWith.js.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.d.ts +34 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.d.ts.map +1 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.js +64 -0
- package/lib/stores/dataCube/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.js.map +1 -0
- package/lib/stores/dataCube/editor/DataCubeEditorColumnPropertiesPanelState.js +2 -2
- package/lib/stores/dataCube/editor/DataCubeEditorColumnPropertiesPanelState.js.map +1 -1
- package/lib/stores/dataCube/editor/DataCubeEditorFilterPanelState.d.ts +58 -0
- package/lib/stores/dataCube/editor/DataCubeEditorFilterPanelState.d.ts.map +1 -0
- package/lib/stores/dataCube/editor/DataCubeEditorFilterPanelState.js +205 -0
- package/lib/stores/dataCube/editor/DataCubeEditorFilterPanelState.js.map +1 -0
- package/lib/stores/dataCube/editor/DataCubeEditorSortsPanelState.d.ts +4 -4
- package/lib/stores/dataCube/editor/DataCubeEditorSortsPanelState.d.ts.map +1 -1
- package/lib/stores/dataCube/editor/DataCubeEditorSortsPanelState.js +2 -2
- package/lib/stores/dataCube/editor/DataCubeEditorSortsPanelState.js.map +1 -1
- package/lib/stores/dataCube/editor/DataCubeEditorState.d.ts +5 -4
- package/lib/stores/dataCube/editor/DataCubeEditorState.d.ts.map +1 -1
- package/lib/stores/dataCube/editor/DataCubeEditorState.js +9 -7
- package/lib/stores/dataCube/editor/DataCubeEditorState.js.map +1 -1
- package/lib/stores/dataCube/editor/DataCubeMutableConfiguration.d.ts +5 -4
- package/lib/stores/dataCube/editor/DataCubeMutableConfiguration.d.ts.map +1 -1
- package/lib/stores/dataCube/editor/DataCubeMutableConfiguration.js +6 -5
- package/lib/stores/dataCube/editor/DataCubeMutableConfiguration.js.map +1 -1
- package/lib/stores/dataCube/grid/DataCubeGridClientEngine.d.ts +2 -8
- package/lib/stores/dataCube/grid/DataCubeGridClientEngine.d.ts.map +1 -1
- package/lib/stores/dataCube/grid/DataCubeGridClientEngine.js +3 -10
- package/lib/stores/dataCube/grid/DataCubeGridClientEngine.js.map +1 -1
- package/lib/stores/dataCube/grid/DataCubeGridClientExportEngine.js +1 -1
- package/lib/stores/dataCube/grid/DataCubeGridClientExportEngine.js.map +1 -1
- package/lib/stores/dataCube/grid/DataCubeGridConfigurationBuilder.d.ts.map +1 -1
- package/lib/stores/dataCube/grid/DataCubeGridConfigurationBuilder.js +16 -40
- package/lib/stores/dataCube/grid/DataCubeGridConfigurationBuilder.js.map +1 -1
- package/lib/stores/dataCube/grid/DataCubeGridControllerState.d.ts +17 -7
- package/lib/stores/dataCube/grid/DataCubeGridControllerState.d.ts.map +1 -1
- package/lib/stores/dataCube/grid/DataCubeGridControllerState.js +59 -6
- package/lib/stores/dataCube/grid/DataCubeGridControllerState.js.map +1 -1
- package/lib/stores/dataCube/grid/DataCubeGridMenuBuilder.d.ts.map +1 -1
- package/lib/stores/dataCube/grid/DataCubeGridMenuBuilder.js +157 -53
- package/lib/stores/dataCube/grid/DataCubeGridMenuBuilder.js.map +1 -1
- package/lib/stores/dataCube/grid/DataCubeGridQueryBuilder.d.ts +2 -1
- package/lib/stores/dataCube/grid/DataCubeGridQueryBuilder.d.ts.map +1 -1
- package/lib/stores/dataCube/grid/DataCubeGridQueryBuilder.js +7 -7
- package/lib/stores/dataCube/grid/DataCubeGridQueryBuilder.js.map +1 -1
- package/lib/stores/dataCube/grid/DataCubeGridQuerySnapshotBuilder.js +4 -4
- package/lib/stores/dataCube/grid/DataCubeGridQuerySnapshotBuilder.js.map +1 -1
- package/lib/stores/dataCube/grid/DataCubeGridState.d.ts +2 -3
- package/lib/stores/dataCube/grid/DataCubeGridState.d.ts.map +1 -1
- package/lib/stores/dataCube/grid/DataCubeGridState.js +10 -6
- package/lib/stores/dataCube/grid/DataCubeGridState.js.map +1 -1
- package/package.json +10 -9
- package/src/components/dataCube/DataCube.tsx +20 -13
- package/src/components/dataCube/editor/DataCubeEditor.tsx +15 -15
- package/src/components/dataCube/editor/DataCubeEditorCodePanel.tsx +72 -80
- package/src/components/dataCube/editor/DataCubeEditorColumnPropertiesPanel.tsx +1020 -950
- package/src/components/dataCube/editor/DataCubeEditorColumnsPanel.tsx +46 -44
- package/src/components/dataCube/editor/DataCubeEditorColumnsSelector.tsx +1 -1
- package/src/components/dataCube/editor/DataCubeEditorExtendedColumnsPanel.tsx +20 -18
- package/src/components/dataCube/editor/DataCubeEditorFilterPanel.tsx +862 -19
- package/src/components/dataCube/editor/DataCubeEditorGeneralPropertiesPanel.tsx +687 -667
- package/src/components/dataCube/editor/DataCubeEditorHorizontalPivotsPanel.tsx +20 -18
- package/src/components/dataCube/editor/DataCubeEditorSortsPanel.tsx +71 -62
- package/src/components/dataCube/editor/DataCubeEditorVerticalPivotsPanel.tsx +19 -17
- package/src/components/dataCube/grid/DataCubeGrid.tsx +144 -140
- package/src/components/repl/Form.tsx +145 -98
- package/src/stores/dataCube/DataCubeEngine.ts +69 -1
- package/src/stores/dataCube/DataCubeState.ts +13 -9
- package/src/stores/dataCube/core/DataCubeConfiguration.ts +1 -3
- package/src/stores/dataCube/core/DataCubeQueryBuilder.ts +43 -355
- package/src/stores/dataCube/core/DataCubeQueryBuilderUtils.ts +353 -0
- package/src/stores/dataCube/core/DataCubeQueryEngine.ts +46 -21
- package/src/stores/dataCube/core/DataCubeQuerySnapshot.ts +8 -12
- package/src/stores/dataCube/core/DataCubeQuerySnapshotBuilder.ts +25 -194
- package/src/stores/dataCube/core/DataCubeQuerySnapshotBuilderUtils.ts +211 -0
- package/src/stores/dataCube/core/DataCubeQuerySnapshotManager.ts +50 -1
- package/src/stores/dataCube/core/{DataCubeCoreState.ts → DataCubeStaticContentDisplayState.ts} +2 -6
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterEditorState.ts +227 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation.ts +105 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__Contain.tsx +87 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__ContainCaseInsensitive.tsx +93 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EndWith.tsx +87 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EndWithCaseInsensitive.tsx +93 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__Equal.tsx +159 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitive.tsx +93 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EqualCaseInsensitiveColumn.tsx +93 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__EqualColumn.tsx +89 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__GreaterThan.tsx +87 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__GreaterThanColumn.tsx +89 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqual.tsx +87 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__GreaterThanOrEqualColumn.tsx +89 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__IsNotNull.tsx +83 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__IsNull.tsx +80 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__LessThan.tsx +87 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__LessThanColumn.tsx +89 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__LessThanOrEqual.tsx +87 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__LessThanOrEqualColumn.tsx +89 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotContain.tsx +90 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEndWith.tsx +90 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEqual.tsx +90 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitive.tsx +96 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEqualCaseInsensitiveColumn.tsx +96 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotEqualColumn.tsx +92 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__NotStartWith.tsx +90 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__StartWith.tsx +87 -0
- package/src/stores/dataCube/core/filter/DataCubeQueryFilterOperation__StartWithCaseInsensitive.tsx +93 -0
- package/src/stores/dataCube/editor/DataCubeEditorColumnPropertiesPanelState.ts +2 -2
- package/src/stores/dataCube/editor/DataCubeEditorFilterPanelState.ts +295 -0
- package/src/stores/dataCube/editor/DataCubeEditorSortsPanelState.ts +5 -9
- package/src/stores/dataCube/editor/DataCubeEditorState.tsx +9 -8
- package/src/stores/dataCube/editor/DataCubeMutableConfiguration.ts +10 -10
- package/src/stores/dataCube/grid/DataCubeGridClientEngine.ts +22 -23
- package/src/stores/dataCube/grid/DataCubeGridClientExportEngine.ts +1 -1
- package/src/stores/dataCube/grid/DataCubeGridConfigurationBuilder.tsx +16 -43
- package/src/stores/dataCube/grid/DataCubeGridControllerState.ts +91 -10
- package/src/stores/dataCube/grid/DataCubeGridMenuBuilder.tsx +218 -53
- package/src/stores/dataCube/grid/DataCubeGridQueryBuilder.ts +66 -61
- package/src/stores/dataCube/grid/DataCubeGridQuerySnapshotBuilder.ts +4 -4
- package/src/stores/dataCube/grid/DataCubeGridState.ts +10 -6
- package/tsconfig.json +33 -2
- package/lib/stores/dataCube/core/DataCubeCoreState.d.ts.map +0 -1
- package/lib/stores/dataCube/core/DataCubeCoreState.js.map +0 -1
- package/lib/stores/dataCube/core/DataCubeQuerySnapshotSubscriber.d.ts +0 -30
- package/lib/stores/dataCube/core/DataCubeQuerySnapshotSubscriber.d.ts.map +0 -1
- package/lib/stores/dataCube/core/DataCubeQuerySnapshotSubscriber.js +0 -41
- package/lib/stores/dataCube/core/DataCubeQuerySnapshotSubscriber.js.map +0 -1
- package/src/stores/dataCube/core/DataCubeQuerySnapshotSubscriber.ts +0 -62
|
@@ -16,230 +16,16 @@
|
|
|
16
16
|
/***************************************************************************************
|
|
17
17
|
* [CORE]
|
|
18
18
|
*
|
|
19
|
-
*
|
|
20
|
-
* The executable query is then used to fetch data.
|
|
19
|
+
* This and its corresponding utilitites are used to build the executable query from
|
|
20
|
+
* the query snapshot. The executable query is then used to fetch data.
|
|
21
21
|
***************************************************************************************/
|
|
22
|
-
import { PRIMITIVE_TYPE,
|
|
23
|
-
import {
|
|
24
|
-
import { guaranteeNonNullable
|
|
25
|
-
import { DataCubeFunction,
|
|
22
|
+
import { PRIMITIVE_TYPE, V1_deserializeValueSpecification, extractElementNameFromPath as _name, } from '@finos/legend-graph';
|
|
23
|
+
import {} from './DataCubeQuerySnapshot.js';
|
|
24
|
+
import { guaranteeNonNullable } from '@finos/legend-shared';
|
|
25
|
+
import { DataCubeFunction, DataCubeQuerySortOperator, } from './DataCubeQueryEngine.js';
|
|
26
26
|
import { DataCubeConfiguration } from './DataCubeConfiguration.js';
|
|
27
|
-
|
|
28
|
-
function
|
|
29
|
-
return guaranteeType(V1_deserializeValueSpecification(json, []), V1_Lambda);
|
|
30
|
-
}
|
|
31
|
-
export function _var(name) {
|
|
32
|
-
const variable = new V1_Variable();
|
|
33
|
-
variable.name = name ?? DEFAULT_LAMBDA_VARIABLE_NAME;
|
|
34
|
-
return variable;
|
|
35
|
-
}
|
|
36
|
-
export function _property(name, variable) {
|
|
37
|
-
const property = new V1_AppliedProperty();
|
|
38
|
-
property.property = name;
|
|
39
|
-
property.parameters.push(variable ?? _var());
|
|
40
|
-
return property;
|
|
41
|
-
}
|
|
42
|
-
export function _lambda(parameters, body) {
|
|
43
|
-
const lambda = new V1_Lambda();
|
|
44
|
-
lambda.parameters = parameters;
|
|
45
|
-
lambda.body = body;
|
|
46
|
-
return lambda;
|
|
47
|
-
}
|
|
48
|
-
export function _function(functionName, parameters) {
|
|
49
|
-
const func = new V1_AppliedFunction();
|
|
50
|
-
func.function = functionName;
|
|
51
|
-
func.parameters = parameters;
|
|
52
|
-
return func;
|
|
53
|
-
}
|
|
54
|
-
function _collection(values) {
|
|
55
|
-
const collection = new V1_Collection();
|
|
56
|
-
collection.multiplicity = new V1_Multiplicity(values.length, values.length);
|
|
57
|
-
collection.values = values;
|
|
58
|
-
return collection;
|
|
59
|
-
}
|
|
60
|
-
function _primitiveValue(type, value) {
|
|
61
|
-
const _val = (primitiveValue, val) => {
|
|
62
|
-
primitiveValue.value = val;
|
|
63
|
-
return primitiveValue;
|
|
64
|
-
};
|
|
65
|
-
switch (type) {
|
|
66
|
-
case PRIMITIVE_TYPE.STRING:
|
|
67
|
-
return _val(new V1_CString(), guaranteeIsString(value));
|
|
68
|
-
case PRIMITIVE_TYPE.BOOLEAN:
|
|
69
|
-
return _val(new V1_CBoolean(), guaranteeIsBoolean(value));
|
|
70
|
-
case PRIMITIVE_TYPE.NUMBER:
|
|
71
|
-
case PRIMITIVE_TYPE.DECIMAL:
|
|
72
|
-
return _val(new V1_CDecimal(), guaranteeIsNumber(value));
|
|
73
|
-
case PRIMITIVE_TYPE.INTEGER:
|
|
74
|
-
return _val(new V1_CInteger(), guaranteeIsNumber(value));
|
|
75
|
-
case PRIMITIVE_TYPE.FLOAT:
|
|
76
|
-
return _val(new V1_CFloat(), guaranteeIsNumber(value));
|
|
77
|
-
case PRIMITIVE_TYPE.DATE:
|
|
78
|
-
case PRIMITIVE_TYPE.DATETIME:
|
|
79
|
-
return _val(new V1_CDateTime(), guaranteeIsString(value));
|
|
80
|
-
case PRIMITIVE_TYPE.STRICTDATE:
|
|
81
|
-
return _val(new V1_CStrictDate(), guaranteeIsString(value));
|
|
82
|
-
case PRIMITIVE_TYPE.STRICTTIME:
|
|
83
|
-
return _val(new V1_CStrictTime(), guaranteeIsString(value));
|
|
84
|
-
default:
|
|
85
|
-
throw new UnsupportedOperationError(`Unsupported value type '${type}'`);
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
function _elementPtr(fullPath) {
|
|
89
|
-
const ptr = new V1_PackageableElementPtr();
|
|
90
|
-
ptr.fullPath = fullPath;
|
|
91
|
-
return ptr;
|
|
92
|
-
}
|
|
93
|
-
function _classInstance(type, value) {
|
|
94
|
-
const instance = new V1_ClassInstance();
|
|
95
|
-
instance.type = type;
|
|
96
|
-
instance.value = value;
|
|
97
|
-
return instance;
|
|
98
|
-
}
|
|
99
|
-
export function _colSpec(name, function1, function2) {
|
|
100
|
-
const colSpec = new V1_ColSpec();
|
|
101
|
-
colSpec.name = name;
|
|
102
|
-
colSpec.function1 = function1;
|
|
103
|
-
colSpec.function2 = function2;
|
|
104
|
-
return colSpec;
|
|
105
|
-
}
|
|
106
|
-
function _parameterValue(value) {
|
|
107
|
-
switch (value.type) {
|
|
108
|
-
case PRIMITIVE_TYPE.STRING:
|
|
109
|
-
case PRIMITIVE_TYPE.BOOLEAN:
|
|
110
|
-
case PRIMITIVE_TYPE.NUMBER:
|
|
111
|
-
case PRIMITIVE_TYPE.DECIMAL:
|
|
112
|
-
case PRIMITIVE_TYPE.INTEGER:
|
|
113
|
-
case PRIMITIVE_TYPE.FLOAT:
|
|
114
|
-
case PRIMITIVE_TYPE.DATE:
|
|
115
|
-
case PRIMITIVE_TYPE.DATETIME:
|
|
116
|
-
case PRIMITIVE_TYPE.STRICTDATE:
|
|
117
|
-
case PRIMITIVE_TYPE.STRICTTIME: {
|
|
118
|
-
if (Array.isArray(value.value)) {
|
|
119
|
-
return _collection(value.value.map((val) => _primitiveValue(value.type, val)));
|
|
120
|
-
}
|
|
121
|
-
return _primitiveValue(value.type, value.value);
|
|
122
|
-
}
|
|
123
|
-
default:
|
|
124
|
-
throw new UnsupportedOperationError(`Unsupported value type '${value.type}'`);
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
function _aggFunctionName(operation) {
|
|
128
|
-
switch (operation) {
|
|
129
|
-
case DataCubeAggregateOperation.SUM:
|
|
130
|
-
return DataCubeFunction.SUM;
|
|
131
|
-
case DataCubeAggregateOperation.AVERAGE:
|
|
132
|
-
return DataCubeFunction.AVERAGE;
|
|
133
|
-
case DataCubeAggregateOperation.COUNT:
|
|
134
|
-
return DataCubeFunction.COUNT;
|
|
135
|
-
case DataCubeAggregateOperation.MIN:
|
|
136
|
-
return DataCubeFunction.MIN;
|
|
137
|
-
case DataCubeAggregateOperation.MAX:
|
|
138
|
-
return DataCubeFunction.MAX;
|
|
139
|
-
case DataCubeAggregateOperation.FIRST:
|
|
140
|
-
return DataCubeFunction.FIRST;
|
|
141
|
-
case DataCubeAggregateOperation.LAST:
|
|
142
|
-
return DataCubeFunction.LAST;
|
|
143
|
-
case DataCubeAggregateOperation.VAR_POP:
|
|
144
|
-
return DataCubeFunction.VAR_POP;
|
|
145
|
-
case DataCubeAggregateOperation.VAR_SAMP:
|
|
146
|
-
return DataCubeFunction.VAR_SAMP;
|
|
147
|
-
case DataCubeAggregateOperation.STDDEV_POP:
|
|
148
|
-
return DataCubeFunction.STDDEV_POP;
|
|
149
|
-
case DataCubeAggregateOperation.STDDEV_SAMP:
|
|
150
|
-
return DataCubeFunction.STDDEV_SAMP;
|
|
151
|
-
default:
|
|
152
|
-
throw new UnsupportedOperationError(`Unsupported aggregate operation '${operation}'`);
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
function _agg(agg, variable) {
|
|
156
|
-
const parameters = agg.parameters.map((param) => _parameterValue(param));
|
|
157
|
-
return _function(_aggFunctionName(agg.operation), [
|
|
158
|
-
variable ?? _var(),
|
|
159
|
-
...parameters,
|
|
160
|
-
]);
|
|
161
|
-
}
|
|
162
|
-
// --------------------------------- BUILDING BLOCKS ---------------------------------
|
|
163
|
-
export function _col(name, function1, function2) {
|
|
164
|
-
return _classInstance(V1_ClassInstanceType.COL_SPEC, _colSpec(name, function1, function2));
|
|
165
|
-
}
|
|
166
|
-
export function _cols(colSpecs) {
|
|
167
|
-
const colSpecArray = new V1_ColSpecArray();
|
|
168
|
-
colSpecArray.colSpecs = colSpecs;
|
|
169
|
-
return _classInstance(V1_ClassInstanceType.COL_SPEC_ARRAY, colSpecArray);
|
|
170
|
-
}
|
|
171
|
-
export function _groupByAggCols(columns) {
|
|
172
|
-
const variable = _var();
|
|
173
|
-
return columns.length
|
|
174
|
-
? columns.map((agg) => _colSpec(agg.name, _lambda([variable], [_property(agg.name, variable)]), _lambda([variable], [_agg(agg)])))
|
|
175
|
-
: // if no aggregates are specified, add a dummy count() aggregate to satisfy compiler
|
|
176
|
-
[
|
|
177
|
-
_colSpec(INTERNAL__FILLER_COUNT_AGG_COLUMN_NAME, _lambda([variable], [variable]), _lambda([variable], [_function(DataCubeFunction.COUNT, [variable])])),
|
|
178
|
-
];
|
|
179
|
-
}
|
|
180
|
-
export function _filter(filter) {
|
|
181
|
-
if ('groupOperation' in filter) {
|
|
182
|
-
const group = filter;
|
|
183
|
-
const groupOperation = group.groupOperation === DataCubeQueryFilterGroupOperation.AND
|
|
184
|
-
? DataCubeFunction.AND
|
|
185
|
-
: DataCubeFunction.OR;
|
|
186
|
-
let conditions = [];
|
|
187
|
-
group.conditions.forEach((condition) => {
|
|
188
|
-
conditions.push(_filter(condition));
|
|
189
|
-
// NOTE: a group operation (and/or) function can only have 2 parameters, so we
|
|
190
|
-
// have to breakdown the group operation into nested group functions
|
|
191
|
-
if (conditions.length === 2) {
|
|
192
|
-
conditions = [_function(groupOperation, conditions)];
|
|
193
|
-
}
|
|
194
|
-
});
|
|
195
|
-
return guaranteeNonNullable(conditions[0]);
|
|
196
|
-
}
|
|
197
|
-
else {
|
|
198
|
-
const condition = filter;
|
|
199
|
-
const property = _property(condition.name);
|
|
200
|
-
const _cond = (fn, ...p) => _function(_name(fn), [property, ...p]);
|
|
201
|
-
const _val = () => _parameterValue(guaranteeNonNullable(condition.value));
|
|
202
|
-
const _not = (fn) => _function(_name(DataCubeFunction.NOT), [fn]);
|
|
203
|
-
switch (condition.operation) {
|
|
204
|
-
case DataCubeQueryFilterOperation.EQUAL:
|
|
205
|
-
return _cond(DataCubeFunction.EQUAL, _val());
|
|
206
|
-
case DataCubeQueryFilterOperation.GREATER_THAN:
|
|
207
|
-
return _cond(DataCubeFunction.GREATER_THAN, _val());
|
|
208
|
-
case DataCubeQueryFilterOperation.GREATER_THAN_OR_EQUAL:
|
|
209
|
-
return _cond(DataCubeFunction.GREATER_THAN_EQUAL, _val());
|
|
210
|
-
case DataCubeQueryFilterOperation.LESS_THAN:
|
|
211
|
-
return _cond(DataCubeFunction.LESS_THAN, _val());
|
|
212
|
-
case DataCubeQueryFilterOperation.LESS_THAN_OR_EQUAL:
|
|
213
|
-
return _cond(DataCubeFunction.LESS_THAN_EQUAL, _val());
|
|
214
|
-
case DataCubeQueryFilterOperation.CONTAINS:
|
|
215
|
-
return _cond(DataCubeFunction.CONTAINS, _val());
|
|
216
|
-
case DataCubeQueryFilterOperation.ENDS_WITH:
|
|
217
|
-
return _cond(DataCubeFunction.ENDS_WITH, _val());
|
|
218
|
-
case DataCubeQueryFilterOperation.STARTS_WITH:
|
|
219
|
-
return _cond(DataCubeFunction.STARTS_WITH, _val());
|
|
220
|
-
case DataCubeQueryFilterOperation.BLANK:
|
|
221
|
-
return _cond(DataCubeFunction.IS_EMPTY);
|
|
222
|
-
case DataCubeQueryFilterOperation.NOT_EQUAL:
|
|
223
|
-
return _not(_cond(DataCubeFunction.EQUAL, _val()));
|
|
224
|
-
case DataCubeQueryFilterOperation.NOT_BLANK:
|
|
225
|
-
return _not(_cond(DataCubeFunction.IS_EMPTY));
|
|
226
|
-
case DataCubeQueryFilterOperation.NOT_CONTAINS:
|
|
227
|
-
return _not(_cond(DataCubeFunction.CONTAINS, _val()));
|
|
228
|
-
default:
|
|
229
|
-
throw new UnsupportedOperationError(`Unsupported filter operation '${condition.operation}'`);
|
|
230
|
-
}
|
|
231
|
-
}
|
|
232
|
-
}
|
|
233
|
-
export function _groupByExtend(columns, columnsUsedInGroupBy) {
|
|
234
|
-
const missingCols = columns.filter((col) => !_findCol(columnsUsedInGroupBy, col.name));
|
|
235
|
-
return missingCols.length
|
|
236
|
-
? _function(_name(DataCubeFunction.EXTEND), [
|
|
237
|
-
_cols(missingCols.map((col) => _colSpec(col.name, _lambda([_var()], [_primitiveValue(PRIMITIVE_TYPE.STRING, '')])))),
|
|
238
|
-
])
|
|
239
|
-
: undefined;
|
|
240
|
-
}
|
|
241
|
-
// --------------------------------- MAIN ---------------------------------
|
|
242
|
-
export function buildExecutableQuery(snapshot, options) {
|
|
27
|
+
import { _col, _collection, _cols, _colSpec, _deserializeToLambda, _elementPtr, _filter, _function, _groupByAggCols, _groupByExtend, _lambda, _primitiveValue, _var, } from './DataCubeQueryBuilderUtils.js';
|
|
28
|
+
export function buildExecutableQuery(snapshot, filterOperations, options) {
|
|
243
29
|
const data = snapshot.data;
|
|
244
30
|
const sourceQuery = V1_deserializeValueSpecification(data.sourceQuery, []);
|
|
245
31
|
const configuration = DataCubeConfiguration.serialization.fromJson(data.configuration);
|
|
@@ -249,18 +35,18 @@ export function buildExecutableQuery(snapshot, options) {
|
|
|
249
35
|
sequence.push(func);
|
|
250
36
|
funcMap[funcMapKey] = func;
|
|
251
37
|
};
|
|
252
|
-
// --------------------------------- FILTER ---------------------------------
|
|
253
|
-
if (data.filter) {
|
|
254
|
-
_process('filter', _function(_name(DataCubeFunction.FILTER), [
|
|
255
|
-
_lambda([_var()], [_filter(data.filter)]),
|
|
256
|
-
]));
|
|
257
|
-
}
|
|
258
38
|
// --------------------------------- LEAF EXTEND ---------------------------------
|
|
259
39
|
if (data.leafExtendedColumns.length) {
|
|
260
40
|
_process('leafExtend', _function(_name(DataCubeFunction.EXTEND), [
|
|
261
41
|
_cols(data.leafExtendedColumns.map((col) => _colSpec(col.name, _deserializeToLambda(col.lambda)))),
|
|
262
42
|
]));
|
|
263
43
|
}
|
|
44
|
+
// --------------------------------- FILTER ---------------------------------
|
|
45
|
+
if (data.filter) {
|
|
46
|
+
_process('filter', _function(_name(DataCubeFunction.FILTER), [
|
|
47
|
+
_lambda([_var()], [_filter(data.filter, filterOperations)]),
|
|
48
|
+
]));
|
|
49
|
+
}
|
|
264
50
|
// --------------------------------- SELECT ---------------------------------
|
|
265
51
|
if (data.selectColumns.length) {
|
|
266
52
|
_process('select', _function(_name(DataCubeFunction.SELECT), [
|
|
@@ -294,7 +80,7 @@ export function buildExecutableQuery(snapshot, options) {
|
|
|
294
80
|
// --------------------------------- SORT ---------------------------------
|
|
295
81
|
if (data.sortColumns.length) {
|
|
296
82
|
_process('sort', _function(_name(DataCubeFunction.SORT), [
|
|
297
|
-
_collection(data.sortColumns.map((col) => _function(_name(col.operation ===
|
|
83
|
+
_collection(data.sortColumns.map((col) => _function(_name(col.operation === DataCubeQuerySortOperator.ASCENDING
|
|
298
84
|
? DataCubeFunction.ASC
|
|
299
85
|
: DataCubeFunction.DESC), [_col(col.name)]))),
|
|
300
86
|
]));
|
|
@@ -315,7 +101,7 @@ export function buildExecutableQuery(snapshot, options) {
|
|
|
315
101
|
// --------------------------------- FROM ---------------------------------
|
|
316
102
|
sequence.push(_function(_name(DataCubeFunction.FROM), [_elementPtr(data.runtime)]));
|
|
317
103
|
// --------------------------------- FINALIZE ---------------------------------
|
|
318
|
-
options?.postProcessor?.(snapshot, sequence, funcMap, configuration);
|
|
104
|
+
options?.postProcessor?.(snapshot, sequence, funcMap, configuration, filterOperations);
|
|
319
105
|
if (!sequence.length) {
|
|
320
106
|
return sourceQuery;
|
|
321
107
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataCubeQueryBuilder.js","sourceRoot":"","sources":["../../../../src/stores/dataCube/core/DataCubeQueryBuilder.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DataCubeQueryBuilder.js","sourceRoot":"","sources":["../../../../src/stores/dataCube/core/DataCubeQueryBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2020-present, Goldman Sachs
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
/***************************************************************************************
|
|
17
|
+
* [CORE]
|
|
18
|
+
*
|
|
19
|
+
* These are utilities used to build the executable query from the query snapshot.
|
|
20
|
+
* The executable query is then used to fetch data.
|
|
21
|
+
***************************************************************************************/
|
|
22
|
+
import { 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_Collection, V1_Lambda, V1_PackageableElementPtr, V1_Variable, extractElementNameFromPath as _functionName, type V1_ValueSpecification } from '@finos/legend-graph';
|
|
23
|
+
import { type DataCubeQuerySnapshotFilterCondition, type DataCubeQuerySnapshotFilter, type DataCubeQuerySnapshotColumn, type DataCubeQuerySnapshotAggregateColumn } from './DataCubeQuerySnapshot.js';
|
|
24
|
+
import { type PlainObject } from '@finos/legend-shared';
|
|
25
|
+
import { type DataCubeOperationValue } from './DataCubeQueryEngine.js';
|
|
26
|
+
import type { DataCubeQueryFilterOperation } from './filter/DataCubeQueryFilterOperation.js';
|
|
27
|
+
export declare function _deserializeToLambda(json: PlainObject<V1_Lambda>): V1_Lambda;
|
|
28
|
+
export declare function _var(name?: string | undefined): V1_Variable;
|
|
29
|
+
export declare function _property(name: string, variable?: V1_Variable | undefined): V1_AppliedProperty;
|
|
30
|
+
export declare function _lambda(parameters: V1_Variable[], body: V1_ValueSpecification[]): V1_Lambda;
|
|
31
|
+
export { _functionName };
|
|
32
|
+
export declare function _function(functionName: string, parameters: V1_ValueSpecification[]): V1_AppliedFunction;
|
|
33
|
+
export declare function _collection(values: V1_ValueSpecification[]): V1_Collection;
|
|
34
|
+
export declare function _primitiveValue(type: string, value: unknown): V1_CInteger | V1_CDecimal | V1_CString | V1_CBoolean | V1_CFloat | V1_CDateTime | V1_CStrictDate | V1_CStrictTime;
|
|
35
|
+
export declare function _elementPtr(fullPath: string): V1_PackageableElementPtr;
|
|
36
|
+
export declare function _colSpec(name: string, function1?: V1_Lambda | undefined, function2?: V1_Lambda | undefined): V1_ColSpec;
|
|
37
|
+
export declare function _value(value: DataCubeOperationValue, variable?: V1_Variable | undefined): V1_AppliedProperty | V1_Collection | V1_CInteger | V1_CDecimal | V1_CString | V1_CBoolean | V1_CFloat | V1_CDateTime | V1_CStrictDate | V1_CStrictTime;
|
|
38
|
+
export declare function _not(fn: V1_AppliedFunction): V1_AppliedFunction;
|
|
39
|
+
export declare function _col(name: string, function1?: V1_Lambda | undefined, function2?: V1_Lambda | undefined): V1_ClassInstance;
|
|
40
|
+
export declare function _cols(colSpecs: V1_ColSpec[]): V1_ClassInstance;
|
|
41
|
+
export declare function _groupByAggCols(columns: DataCubeQuerySnapshotAggregateColumn[]): V1_ColSpec[];
|
|
42
|
+
export declare function _filter(filter: DataCubeQuerySnapshotFilter | DataCubeQuerySnapshotFilterCondition, filterOperations: DataCubeQueryFilterOperation[]): V1_ValueSpecification;
|
|
43
|
+
export declare function _groupByExtend(columns: DataCubeQuerySnapshotColumn[], columnsUsedInGroupBy: DataCubeQuerySnapshotColumn[]): V1_AppliedFunction | undefined;
|
|
44
|
+
//# sourceMappingURL=DataCubeQueryBuilderUtils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataCubeQueryBuilderUtils.d.ts","sourceRoot":"","sources":["../../../../src/stores/dataCube/core/DataCubeQueryBuilderUtils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;;yFAKyF;AAEzF,OAAO,EAEL,kBAAkB,EAClB,kBAAkB,EAClB,WAAW,EACX,YAAY,EACZ,WAAW,EACX,SAAS,EACT,WAAW,EACX,cAAc,EACd,cAAc,EACd,UAAU,EACV,gBAAgB,EAEhB,UAAU,EAEV,aAAa,EACb,SAAS,EAET,wBAAwB,EAExB,WAAW,EAEX,0BAA0B,IAAI,aAAa,EAC3C,KAAK,qBAAqB,EAC3B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,KAAK,oCAAoC,EACzC,KAAK,2BAA2B,EAEhC,KAAK,2BAA2B,EAChC,KAAK,oCAAoC,EAC1C,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAOL,KAAK,WAAW,EACjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAML,KAAK,sBAAsB,EAE5B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,0CAA0C,CAAC;AAI7F,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,WAAW,CAAC,SAAS,CAAC,aAEhE;AAED,wBAAgB,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,eAI7C;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,WAAW,GAAG,SAAS,sBAKzE;AAED,wBAAgB,OAAO,CACrB,UAAU,EAAE,WAAW,EAAE,EACzB,IAAI,EAAE,qBAAqB,EAAE,aAM9B;AAED,OAAO,EAAE,aAAa,EAAE,CAAC;AACzB,wBAAgB,SAAS,CACvB,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,qBAAqB,EAAE,sBAMpC;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,qBAAqB,EAAE,iBAK1D;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,qHA8B3D;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,4BAI3C;AASD,wBAAgB,QAAQ,CACtB,IAAI,EAAE,MAAM,EACZ,SAAS,CAAC,EAAE,SAAS,GAAG,SAAS,EACjC,SAAS,CAAC,EAAE,SAAS,GAAG,SAAS,cAOlC;AAED,wBAAgB,MAAM,CACpB,KAAK,EAAE,sBAAsB,EAC7B,QAAQ,CAAC,EAAE,WAAW,GAAG,SAAS,0JA2BnC;AA4CD,wBAAgB,IAAI,CAAC,EAAE,EAAE,kBAAkB,sBAE1C;AAID,wBAAgB,IAAI,CAClB,IAAI,EAAE,MAAM,EACZ,SAAS,CAAC,EAAE,SAAS,GAAG,SAAS,EACjC,SAAS,CAAC,EAAE,SAAS,GAAG,SAAS,oBAMlC;AAED,wBAAgB,KAAK,CAAC,QAAQ,EAAE,UAAU,EAAE,oBAI3C;AAED,wBAAgB,eAAe,CAC7B,OAAO,EAAE,oCAAoC,EAAE,gBAmBhD;AAED,wBAAgB,OAAO,CACrB,MAAM,EAAE,2BAA2B,GAAG,oCAAoC,EAC1E,gBAAgB,EAAE,4BAA4B,EAAE,yBA+BjD;AAED,wBAAgB,cAAc,CAC5B,OAAO,EAAE,2BAA2B,EAAE,EACtC,oBAAoB,EAAE,2BAA2B,EAAE,kCAiBpD"}
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2020-present, Goldman Sachs
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
/***************************************************************************************
|
|
17
|
+
* [CORE]
|
|
18
|
+
*
|
|
19
|
+
* These are utilities used to build the executable query from the query snapshot.
|
|
20
|
+
* The executable query is then used to fetch data.
|
|
21
|
+
***************************************************************************************/
|
|
22
|
+
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_ClassInstanceType, V1_ColSpec, V1_ColSpecArray, V1_Collection, V1_Lambda, V1_Multiplicity, V1_PackageableElementPtr, V1_Variable, V1_deserializeValueSpecification, extractElementNameFromPath as _functionName, } from '@finos/legend-graph';
|
|
23
|
+
import { _findCol, } from './DataCubeQuerySnapshot.js';
|
|
24
|
+
import { guaranteeNonNullable, guaranteeIsString, guaranteeIsBoolean, guaranteeIsNumber, UnsupportedOperationError, guaranteeType, } from '@finos/legend-shared';
|
|
25
|
+
import { DataCubeFunction, DEFAULT_LAMBDA_VARIABLE_NAME, INTERNAL__FILLER_COUNT_AGG_COLUMN_NAME, DataCubeQueryFilterGroupOperator, DataCubeAggregateOperator, DataCubeOperationAdvancedValueType, } from './DataCubeQueryEngine.js';
|
|
26
|
+
// --------------------------------- UTILITIES ---------------------------------
|
|
27
|
+
export function _deserializeToLambda(json) {
|
|
28
|
+
return guaranteeType(V1_deserializeValueSpecification(json, []), V1_Lambda);
|
|
29
|
+
}
|
|
30
|
+
export function _var(name) {
|
|
31
|
+
const variable = new V1_Variable();
|
|
32
|
+
variable.name = name ?? DEFAULT_LAMBDA_VARIABLE_NAME;
|
|
33
|
+
return variable;
|
|
34
|
+
}
|
|
35
|
+
export function _property(name, variable) {
|
|
36
|
+
const property = new V1_AppliedProperty();
|
|
37
|
+
property.property = name;
|
|
38
|
+
property.parameters.push(variable ?? _var());
|
|
39
|
+
return property;
|
|
40
|
+
}
|
|
41
|
+
export function _lambda(parameters, body) {
|
|
42
|
+
const lambda = new V1_Lambda();
|
|
43
|
+
lambda.parameters = parameters;
|
|
44
|
+
lambda.body = body;
|
|
45
|
+
return lambda;
|
|
46
|
+
}
|
|
47
|
+
export { _functionName };
|
|
48
|
+
export function _function(functionName, parameters) {
|
|
49
|
+
const func = new V1_AppliedFunction();
|
|
50
|
+
func.function = functionName;
|
|
51
|
+
func.parameters = parameters;
|
|
52
|
+
return func;
|
|
53
|
+
}
|
|
54
|
+
export function _collection(values) {
|
|
55
|
+
const collection = new V1_Collection();
|
|
56
|
+
collection.multiplicity = new V1_Multiplicity(values.length, values.length);
|
|
57
|
+
collection.values = values;
|
|
58
|
+
return collection;
|
|
59
|
+
}
|
|
60
|
+
export function _primitiveValue(type, value) {
|
|
61
|
+
const _val = (primitiveValue, val) => {
|
|
62
|
+
primitiveValue.value = val;
|
|
63
|
+
return primitiveValue;
|
|
64
|
+
};
|
|
65
|
+
switch (type) {
|
|
66
|
+
case PRIMITIVE_TYPE.STRING:
|
|
67
|
+
return _val(new V1_CString(), guaranteeIsString(value));
|
|
68
|
+
case PRIMITIVE_TYPE.BOOLEAN:
|
|
69
|
+
return _val(new V1_CBoolean(), guaranteeIsBoolean(value));
|
|
70
|
+
case PRIMITIVE_TYPE.NUMBER:
|
|
71
|
+
case PRIMITIVE_TYPE.DECIMAL:
|
|
72
|
+
return _val(new V1_CDecimal(), guaranteeIsNumber(value));
|
|
73
|
+
case PRIMITIVE_TYPE.INTEGER:
|
|
74
|
+
return _val(new V1_CInteger(), guaranteeIsNumber(value));
|
|
75
|
+
case PRIMITIVE_TYPE.FLOAT:
|
|
76
|
+
return _val(new V1_CFloat(), guaranteeIsNumber(value));
|
|
77
|
+
case PRIMITIVE_TYPE.DATE:
|
|
78
|
+
case PRIMITIVE_TYPE.STRICTDATE:
|
|
79
|
+
return _val(new V1_CStrictDate(), guaranteeIsString(value));
|
|
80
|
+
case PRIMITIVE_TYPE.DATETIME:
|
|
81
|
+
return _val(new V1_CDateTime(), guaranteeIsString(value));
|
|
82
|
+
case PRIMITIVE_TYPE.STRICTTIME:
|
|
83
|
+
return _val(new V1_CStrictTime(), guaranteeIsString(value));
|
|
84
|
+
default:
|
|
85
|
+
throw new UnsupportedOperationError(`Unsupported value type '${type}'`);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
export function _elementPtr(fullPath) {
|
|
89
|
+
const ptr = new V1_PackageableElementPtr();
|
|
90
|
+
ptr.fullPath = fullPath;
|
|
91
|
+
return ptr;
|
|
92
|
+
}
|
|
93
|
+
function _classInstance(type, value) {
|
|
94
|
+
const instance = new V1_ClassInstance();
|
|
95
|
+
instance.type = type;
|
|
96
|
+
instance.value = value;
|
|
97
|
+
return instance;
|
|
98
|
+
}
|
|
99
|
+
export function _colSpec(name, function1, function2) {
|
|
100
|
+
const colSpec = new V1_ColSpec();
|
|
101
|
+
colSpec.name = name;
|
|
102
|
+
colSpec.function1 = function1;
|
|
103
|
+
colSpec.function2 = function2;
|
|
104
|
+
return colSpec;
|
|
105
|
+
}
|
|
106
|
+
export function _value(value, variable) {
|
|
107
|
+
switch (value.type) {
|
|
108
|
+
case PRIMITIVE_TYPE.STRING:
|
|
109
|
+
case PRIMITIVE_TYPE.BOOLEAN:
|
|
110
|
+
case PRIMITIVE_TYPE.NUMBER:
|
|
111
|
+
case PRIMITIVE_TYPE.DECIMAL:
|
|
112
|
+
case PRIMITIVE_TYPE.INTEGER:
|
|
113
|
+
case PRIMITIVE_TYPE.FLOAT:
|
|
114
|
+
case PRIMITIVE_TYPE.DATE:
|
|
115
|
+
case PRIMITIVE_TYPE.DATETIME:
|
|
116
|
+
case PRIMITIVE_TYPE.STRICTDATE:
|
|
117
|
+
case PRIMITIVE_TYPE.STRICTTIME: {
|
|
118
|
+
if (Array.isArray(value.value)) {
|
|
119
|
+
return _collection(value.value.map((val) => _primitiveValue(value.type, val)));
|
|
120
|
+
}
|
|
121
|
+
return _primitiveValue(value.type, value.value);
|
|
122
|
+
}
|
|
123
|
+
case DataCubeOperationAdvancedValueType.COLUMN:
|
|
124
|
+
return _property(guaranteeIsString(value.value), variable);
|
|
125
|
+
default:
|
|
126
|
+
throw new UnsupportedOperationError(`Unsupported value type '${value.type}'`);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
function _aggFunctionName(operation) {
|
|
130
|
+
switch (operation) {
|
|
131
|
+
case DataCubeAggregateOperator.SUM:
|
|
132
|
+
return DataCubeFunction.SUM;
|
|
133
|
+
case DataCubeAggregateOperator.AVERAGE:
|
|
134
|
+
return DataCubeFunction.AVERAGE;
|
|
135
|
+
case DataCubeAggregateOperator.COUNT:
|
|
136
|
+
return DataCubeFunction.COUNT;
|
|
137
|
+
case DataCubeAggregateOperator.MIN:
|
|
138
|
+
return DataCubeFunction.MIN;
|
|
139
|
+
case DataCubeAggregateOperator.MAX:
|
|
140
|
+
return DataCubeFunction.MAX;
|
|
141
|
+
case DataCubeAggregateOperator.FIRST:
|
|
142
|
+
return DataCubeFunction.FIRST;
|
|
143
|
+
case DataCubeAggregateOperator.LAST:
|
|
144
|
+
return DataCubeFunction.LAST;
|
|
145
|
+
case DataCubeAggregateOperator.VAR_POP:
|
|
146
|
+
return DataCubeFunction.VAR_POP;
|
|
147
|
+
case DataCubeAggregateOperator.VAR_SAMP:
|
|
148
|
+
return DataCubeFunction.VAR_SAMP;
|
|
149
|
+
case DataCubeAggregateOperator.STDDEV_POP:
|
|
150
|
+
return DataCubeFunction.STDDEV_POP;
|
|
151
|
+
case DataCubeAggregateOperator.STDDEV_SAMP:
|
|
152
|
+
return DataCubeFunction.STDDEV_SAMP;
|
|
153
|
+
default:
|
|
154
|
+
throw new UnsupportedOperationError(`Unsupported aggregate operation '${operation}'`);
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
function _agg(agg, variable) {
|
|
158
|
+
const parameters = agg.parameters.map((param) => _value(param));
|
|
159
|
+
return _function(_aggFunctionName(agg.operation), [
|
|
160
|
+
variable ?? _var(),
|
|
161
|
+
...parameters,
|
|
162
|
+
]);
|
|
163
|
+
}
|
|
164
|
+
export function _not(fn) {
|
|
165
|
+
return _function(DataCubeFunction.NOT, [fn]);
|
|
166
|
+
}
|
|
167
|
+
// --------------------------------- BUILDING BLOCKS ---------------------------------
|
|
168
|
+
export function _col(name, function1, function2) {
|
|
169
|
+
return _classInstance(V1_ClassInstanceType.COL_SPEC, _colSpec(name, function1, function2));
|
|
170
|
+
}
|
|
171
|
+
export function _cols(colSpecs) {
|
|
172
|
+
const colSpecArray = new V1_ColSpecArray();
|
|
173
|
+
colSpecArray.colSpecs = colSpecs;
|
|
174
|
+
return _classInstance(V1_ClassInstanceType.COL_SPEC_ARRAY, colSpecArray);
|
|
175
|
+
}
|
|
176
|
+
export function _groupByAggCols(columns) {
|
|
177
|
+
const variable = _var();
|
|
178
|
+
return columns.length
|
|
179
|
+
? columns.map((agg) => _colSpec(agg.name, _lambda([variable], [_property(agg.name, variable)]), _lambda([variable], [_agg(agg)])))
|
|
180
|
+
: // if no aggregates are specified, add a dummy count() aggregate to satisfy compiler
|
|
181
|
+
[
|
|
182
|
+
_colSpec(INTERNAL__FILLER_COUNT_AGG_COLUMN_NAME, _lambda([variable], [variable]), _lambda([variable], [_function(DataCubeFunction.COUNT, [variable])])),
|
|
183
|
+
];
|
|
184
|
+
}
|
|
185
|
+
export function _filter(filter, filterOperations) {
|
|
186
|
+
if ('groupOperator' in filter) {
|
|
187
|
+
const filterGroup = filter;
|
|
188
|
+
const groupOperation = filterGroup.groupOperator === DataCubeQueryFilterGroupOperator.AND
|
|
189
|
+
? DataCubeFunction.AND
|
|
190
|
+
: DataCubeFunction.OR;
|
|
191
|
+
let conditions = [];
|
|
192
|
+
filterGroup.conditions.forEach((condition) => {
|
|
193
|
+
conditions.push(_filter(condition, filterOperations));
|
|
194
|
+
// NOTE: a group operation (and/or) function can only have 2 parameters, so we
|
|
195
|
+
// have to breakdown the group operation into nested group functions
|
|
196
|
+
if (conditions.length === 2) {
|
|
197
|
+
conditions = [_function(groupOperation, conditions)];
|
|
198
|
+
}
|
|
199
|
+
});
|
|
200
|
+
return guaranteeNonNullable(conditions[0]);
|
|
201
|
+
}
|
|
202
|
+
else {
|
|
203
|
+
const filterCondition = filter;
|
|
204
|
+
const operation = filterOperations.find((op) => op.operator === filterCondition.operation);
|
|
205
|
+
const condition = operation?.buildConditionExpression(filterCondition);
|
|
206
|
+
if (!condition) {
|
|
207
|
+
throw new UnsupportedOperationError(`Unsupported filter operation '${filterCondition.operation}'`);
|
|
208
|
+
}
|
|
209
|
+
return condition;
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
export function _groupByExtend(columns, columnsUsedInGroupBy) {
|
|
213
|
+
const missingCols = columns.filter((col) => !_findCol(columnsUsedInGroupBy, col.name));
|
|
214
|
+
return missingCols.length
|
|
215
|
+
? _function(_functionName(DataCubeFunction.EXTEND), [
|
|
216
|
+
_cols(missingCols.map((col) => _colSpec(col.name, _lambda([_var()], [_primitiveValue(PRIMITIVE_TYPE.STRING, '')])))),
|
|
217
|
+
])
|
|
218
|
+
: undefined;
|
|
219
|
+
}
|
|
220
|
+
//# sourceMappingURL=DataCubeQueryBuilderUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataCubeQueryBuilderUtils.js","sourceRoot":"","sources":["../../../../src/stores/dataCube/core/DataCubeQueryBuilderUtils.ts"],"names":[],"mappings":"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"}
|