@bizdoc/core 1.10.0-next.9 → 1.10.0
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/esm2020/lib/admin/form/workflow/workflow.component.mjs +2 -2
- package/esm2020/lib/browse/filter/filter.component.mjs +1 -1
- package/esm2020/lib/core/controls/select.input.mjs +2 -2
- package/esm2020/lib/core/models.mjs +1 -1
- package/esm2020/lib/core/slots/pane-ref.mjs +1 -1
- package/esm2020/lib/cube/accum/accum.component.mjs +2 -3
- package/esm2020/lib/cube/chart/chart.component.mjs +2 -3
- package/esm2020/lib/cube/cube-info.service.mjs +3 -3
- package/esm2020/lib/cube/grid/spreadsheet.component.mjs +2 -2
- package/esm2020/lib/cube/matrix/matrix.component.mjs +1 -1
- package/esm2020/lib/cube/matrix/matrix.mobile.component.mjs +1 -1
- package/esm2020/lib/cube/matrix/matrix.pane.component.mjs +4 -3
- package/esm2020/lib/cube/matrix/table.component.mjs +152 -103
- package/esm2020/lib/cube/sum/sum.component.mjs +3 -3
- package/esm2020/lib/dashboard/cube/accum-cube.widget.mjs +2 -3
- package/esm2020/lib/dashboard/cube/cube-chart.widget.mjs +2 -3
- package/esm2020/lib/modules/chart.module.mjs +4 -2
- package/esm2020/lib/shared.module.mjs +3 -1
- package/esm2020/lib/views/cube/matrix.component.mjs +1 -1
- package/esm2020/public-api.mjs +1 -1
- package/fesm2015/bizdoc-core.mjs +170 -122
- package/fesm2015/bizdoc-core.mjs.map +1 -1
- package/fesm2020/bizdoc-core.mjs +171 -123
- package/fesm2020/bizdoc-core.mjs.map +1 -1
- package/lib/browse/filter/filter.component.d.ts +1 -1
- package/lib/core/models.d.ts +1 -1
- package/lib/core/slots/pane-ref.d.ts +0 -1
- package/lib/cube/cube-info.service.d.ts +1 -0
- package/lib/cube/matrix/matrix.pane.component.d.ts +1 -0
- package/lib/cube/matrix/table.component.d.ts +21 -7
- package/package.json +1 -1
- package/public-api.d.ts +1 -1
package/fesm2020/bizdoc-core.mjs
CHANGED
@@ -18,7 +18,7 @@ import { MatIconModule } from '@angular/material/icon';
|
|
18
18
|
import * as i10 from '@angular/material/progress-spinner';
|
19
19
|
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
20
20
|
import * as i10$1 from '@angular/common';
|
21
|
-
import { CommonModule } from '@angular/common';
|
21
|
+
import { CommonModule, getCurrencySymbol, formatNumber, formatPercent, formatCurrency } from '@angular/common';
|
22
22
|
import * as i6 from '@angular/flex-layout/flex';
|
23
23
|
import { ESCAPE, UP_ARROW, DOWN_ARROW, ENTER, COMMA, RIGHT_ARROW, LEFT_ARROW } from '@angular/cdk/keycodes';
|
24
24
|
import { HubConnectionBuilder, HubConnectionState } from '@microsoft/signalr';
|
@@ -116,9 +116,9 @@ import * as i24 from '@angular/flex-layout/extended';
|
|
116
116
|
import * as i4$1 from '@ctrl/ngx-emoji-mart';
|
117
117
|
import { PickerModule } from '@ctrl/ngx-emoji-mart';
|
118
118
|
import * as i8$2 from '@syncfusion/ej2-angular-charts';
|
119
|
-
import { AccumulationChart, FunnelSeries, AccumulationDataLabel, AccumulationTooltip, AccumulationLegend, Export, PieSeries, ChartModule, AccumulationChartAllModule, SparklineAllModule, AccumulationDistributionIndicatorService, FunnelSeriesService, StackingStepAreaSeriesService, PieSeriesService, PyramidSeriesService, LineSeriesService, ScatterSeriesService, ColumnSeriesService, SplineSeriesService, SplineAreaSeriesService, StripLineService, AreaSeriesService, ScrollBarService, StepLineSeriesService, StepAreaSeriesService, StackingColumnSeriesService, StackingLineSeriesService, StackingAreaSeriesService, BarSeriesService, StackingBarSeriesService, RangeColumnSeriesService, BubbleSeriesService, TooltipService, CrosshairService, CategoryService, DateTimeService, LogarithmicService, LegendService, ZoomService, DataLabelService, SelectionService, ChartAnnotationService, WaterfallSeriesService, RangeAreaSeriesService, PolarSeriesService, RadarSeriesService, DateTimeCategoryService, MultiLevelLabelService, ParetoSeriesService, TooltipRenderService, ExportService, AccumulationAnnotationService, AccumulationDataLabelService, AccumulationLegendService, AccumulationSelectionService, AccumulationTooltipService, AccumulationChartComponent,
|
119
|
+
import { AccumulationChart, PyramidSeries, FunnelSeries, AccumulationDataLabel, AccumulationTooltip, AccumulationLegend, Export, PieSeries, Chart as Chart$1, Category, DateTime, Tooltip, Legend, BarSeries, AreaSeries, BubbleSeries, ColumnSeries, LineSeries, PolarSeries, RadarSeries, SplineSeries, SplineAreaSeries, ScatterSeries, StackingLineSeries, StackingAreaSeries, StackingColumnSeries, StackingBarSeries, StepAreaSeries, StepLineSeries, ChartModule, AccumulationChartAllModule, SparklineAllModule, AccumulationDistributionIndicatorService, FunnelSeriesService, StackingStepAreaSeriesService, PieSeriesService, PyramidSeriesService, LineSeriesService, ScatterSeriesService, ColumnSeriesService, SplineSeriesService, SplineAreaSeriesService, StripLineService, AreaSeriesService, ScrollBarService, StepLineSeriesService, StepAreaSeriesService, StackingColumnSeriesService, StackingLineSeriesService, StackingAreaSeriesService, BarSeriesService, StackingBarSeriesService, RangeColumnSeriesService, BubbleSeriesService, TooltipService, CrosshairService, CategoryService, DateTimeService, LogarithmicService, LegendService, ZoomService, DataLabelService, SelectionService, ChartAnnotationService, WaterfallSeriesService, RangeAreaSeriesService, PolarSeriesService, RadarSeriesService, DateTimeCategoryService, MultiLevelLabelService, ParetoSeriesService, TooltipRenderService, ExportService, AccumulationAnnotationService, AccumulationDataLabelService, AccumulationLegendService, AccumulationSelectionService, AccumulationTooltipService, AccumulationChartComponent, ChartComponent } from '@syncfusion/ej2-angular-charts';
|
120
120
|
import * as XLSX from 'xlsx';
|
121
|
-
import { Chart
|
121
|
+
import { Chart } from '@syncfusion/ej2-charts';
|
122
122
|
import * as i6$5 from '@syncfusion/ej2-angular-grids';
|
123
123
|
import { Grid, Selection, Aggregate, Freeze, ExcelExport, Resize, GridModule, PagerModule, ExcelExportService, AggregateService, FreezeService, GroupService, PageService, ResizeService, SortService, SelectionService as SelectionService$1, GridComponent } from '@syncfusion/ej2-angular-grids';
|
124
124
|
import { PivotView, ExcelExport as ExcelExport$1 } from '@syncfusion/ej2-pivotview';
|
@@ -3872,7 +3872,7 @@ class TypeSelect {
|
|
3872
3872
|
this._setValue(val, false);
|
3873
3873
|
}
|
3874
3874
|
_setValue(val, emitEvent) {
|
3875
|
-
this._control.setValue(val ? this.multiple ? val : { key: val } : null, { emitEvent });
|
3875
|
+
this._control.setValue(val ? this.multiple ? val.map(key => ({ key })) : { key: val } : null, { emitEvent });
|
3876
3876
|
}
|
3877
3877
|
registerOnChange(fn) {
|
3878
3878
|
this._onChange = fn;
|
@@ -9579,7 +9579,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
|
|
9579
9579
|
args: ['document:keydown', ['$event']]
|
9580
9580
|
}] } });
|
9581
9581
|
|
9582
|
-
AccumulationChart.Inject(FunnelSeries, AccumulationDataLabel, AccumulationTooltip, AccumulationLegend, Export, PieSeries);
|
9583
9582
|
/** chart component*/
|
9584
9583
|
class CubeAccumulationChartComponent {
|
9585
9584
|
/** chart ctor */
|
@@ -9768,7 +9767,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
|
|
9768
9767
|
type: Output
|
9769
9768
|
}] } });
|
9770
9769
|
|
9771
|
-
Chart.Inject(Category, DateTime, Tooltip, Export$1, BarSeries, AreaSeries, StackingStepAreaSeries, BubbleSeries, ColumnSeries, LineSeries, Legend, PolarSeries, RadarSeries, SplineSeries, SplineAreaSeries, ScatterSeries, StackingLineSeries, StackingAreaSeries, StackingColumnSeries, StackingBarSeries, StepAreaSeries, StepLineSeries);
|
9772
9770
|
/** chart component*/
|
9773
9771
|
class CubeChartComponent {
|
9774
9772
|
/** chart ctor */
|
@@ -10726,7 +10724,7 @@ class CubeSpreadsheetComponent {
|
|
10726
10724
|
if (this.spreadsheet) {
|
10727
10725
|
this.spreadsheet.height = this.height;
|
10728
10726
|
this.spreadsheet.width = this.width;
|
10729
|
-
this.spreadsheet.
|
10727
|
+
this.spreadsheet.refresh();
|
10730
10728
|
}
|
10731
10729
|
}
|
10732
10730
|
execute() {
|
@@ -12423,12 +12421,12 @@ class WorkflowComponent {
|
|
12423
12421
|
}
|
12424
12422
|
}
|
12425
12423
|
WorkflowComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: WorkflowComponent, deps: [{ token: PromptService }, { token: FormService }, { token: PaneRef }, { token: PanesRouter }, { token: SessionService }, { token: TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
12426
|
-
WorkflowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: WorkflowComponent, selector: "bizdoc-workflow", host: { listeners: { "document:keydown": "handleKeyboardEvent($event)" }, classAttribute: "pane" }, viewQueries: [{ propertyName: "symbolPalette", first: true, predicate: SymbolPaletteComponent, descendants: true }, { propertyName: "diagram", first: true, predicate: ["diagram"], descendants: true }], ngImport: i0, template: "<mat-toolbar>\r\n <button mat-icon-button (click)=\"tools = !tools\" [bizdocTooltip]=\"'Collapse' | translate\"><mat-icon>view_sidebar</mat-icon></button>\r\n <button mat-button (click)=\"save()\" color=\"primary\" [disabled]=\"!dirty || saving\">{{'SaveChanges' | translate}}</button>\r\n <button mat-icon-button (click)=\"diagram.fitToPage()\" [bizdocTooltip]=\"'FitToPage' | translate\"><mat-icon>fullscreen_exit</mat-icon></button>\r\n <button mat-icon-button (click)=\"diagram.undo()\" [bizdocTooltip]=\"'Undo' | translate\" [disabled]=\"!diagram.historyManager?.canUndo\"><mat-icon>undo</mat-icon></button>\r\n <button mat-icon-button (click)=\"diagram.redo()\" [bizdocTooltip]=\"'Redo' | translate\" [disabled]=\"!diagram.historyManager?.canRedo\"><mat-icon>redo</mat-icon></button>\r\n \r\n <button mat-icon-button (click)=\"pan()\" [bizdocTooltip]=\"'Pan' | translate\"><span class=\"e-icons sf-icon-pan\"></span></button>\r\n <button mat-icon-button (click)=\"cursor()\" [bizdocTooltip]=\"'Cursor' | translate\"><span class=\"e-icons sf-icon-cursor\"></span></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"addText()\" [bizdocTooltip]=\"'Text' | translate\"><mat-icon>title</mat-icon></button>\r\n <button mat-button [matMenuTriggerFor]=\"lineMenu\" [disabled]=\"!diagram.selectedItems?.connectors.length\" [bizdocTooltip]=\"'ConnectorMode'|translate\">\r\n <span class=\"e-menu-icon\" [ngClass]=\"{'sf-icon-straight-line': connectorType === 'Straight',\r\n 'sf-icon-orthogonal-line': connectorType === 'Orthogonal',\r\n 'sf-icon-beizer-line': connectorType === 'Bezier'}\"></span>\r\n <mat-icon>arrow_drop_down</mat-icon>\r\n </button>\r\n <mat-menu #lineMenu panelClass=\"icon-menu-panel\">\r\n <button mat-menu-item (click)=\"connectorTypeChange('Straight')\">\r\n <span class=\"e-menu-icon sf-icon-straight-line\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"connectorTypeChange('Orthogonal')\">\r\n <span class=\"e-menu-icon sf-icon-orthogonal-line\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"connectorTypeChange('Bezier')\">\r\n <span class=\"e-menu-icon sf-icon-beizer-line\"></span>\r\n </button>\r\n </mat-menu>\r\n \r\n <button mat-button [matMenuTriggerFor]=\"alignMenu\" [disabled]=\"!diagram.selectedItems?.nodes.length && !diagram.selectedItems?.connectors.length\" [bizdocTooltip]=\"'Align'|translate\">\r\n <span class=\"e-icons\" [ngClass]=\"{'sf-icon-top': alignment === 'Top',\r\n 'sf-icon-left': alignment === 'Left',\r\n 'sf-icon-center': alignment === 'Center',\r\n 'sf-icon-bottom': alignment === 'Bottom',\r\n 'sf-icon-right': alignment === 'Right'}\"></span>\r\n <mat-icon>arrow_drop_down</mat-icon>\r\n </button>\r\n <mat-menu #alignMenu panelClass=\"icon-menu-panel\">\r\n <button mat-menu-item (click)=\"align('Top')\">\r\n <span class=\"e-icons sf-icon-top\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"align('Left')\">\r\n <span class=\"e-icons sf-icon-left\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"align('Center')\">\r\n <span class=\"e-icons sf-icon-center\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"align('Bottom')\">\r\n <span class=\"e-icons sf-icon-bottom\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"align('Right')\">\r\n <span class=\"e-icons sf-icon-right\"></span>\r\n </button>\r\n </mat-menu>\r\n</mat-toolbar>\r\n<div class=\"row container\">\r\n <div id=\"symbolpalette\" *ngIf=\"tools\">\r\n <ejs-symbolpalette dir=\"ltr\" expandMode='Multiple' [palettes]='palettes' width=\"100%\" height=\"100%\" [symbolHeight]=80\r\n [enableRtl]=\"false\" [enableAnimation]=\"false\" [symbolWidth]=80 [symbolMargin]='symbolMargin' [getSymbolInfo]='getSymbolInfo' [getNodeDefaults]='getSymbolDefaults'>\r\n </ejs-symbolpalette>\r\n </div>\r\n <ejs-diagram #diagram id=\"diagram\" width=\"100%\" height=\"100%\" dir=\"ltr\" [snapSettings]='snapSettings' [getConnectorDefaults]='connDefaults' fxFlex\r\n [constraints]=\"diagramConstraints\" [tool]=diagramTool [getNodeDefaults]='nodeDefaults' [getCustomTool]='getCustomTool' [scrollSettings]=\"scrollSettings\"\r\n [selectedItems]=\"selectedItems\"\r\n [rulerSettings]=\"rulerSettings\"\r\n (dragEnter)='dragEnter($event)'\r\n (connectionChange)=\"change()\"\r\n (collectionChange)=\"change()\"\r\n (propertyChange)=\"propertyChange($event)\"\r\n (selectionChange)=\"selectionChange()\"\r\n (created)=\"diagramCreate()\">\r\n </ejs-diagram>\r\n</div>\r\n", styles: [":host{display:flex;flex-direction:column;flex-grow:1;height:100%}.container{flex-grow:1;overflow-y:auto}#diagram{flex-grow:1}#symbolpalette{width:210px}::ng-deep .e-rtl{direction:ltr}::ng-deep .mat-toolbar .mat-button-toggle{background:transparent!important}.e-menu-icon{font-family:\"diagram-icons\"!important;speak:none;font-size:18px;font-style:normal;font-weight:normal;font-feature-settings:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::ng-deep .icon-menu-panel{min-width:0}\n"], components: [{ type: i7$4.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { type: i7$1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i7$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i8$1.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i8$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i11$2.SymbolPaletteComponent, selector: "ejs-symbolpalette", inputs: ["accessKey", "allowDrag", "connectorDefaults", "enableAnimation", "enablePersistence", "enableRtl", "enableSearch", "expandMode", "filterSymbols", "getConnectorDefaults", "getNodeDefaults", "getSymbolInfo", "getSymbolTemplate", "height", "ignoreSymbolsOnSearch", "locale", "nodeDefaults", "palettes", "symbolDragSize", "symbolHeight", "symbolInfo", "symbolMargin", "symbolPreview", "symbolWidth", "width"], outputs: ["paletteExpanding", "paletteSelectionChange"] }, { type: i11$2.DiagramComponent, selector: "ejs-diagram", inputs: ["addInfo", "annotationTemplate", "backgroundColor", "bridgeDirection", "commandManager", "connectorDefaults", "connectors", "constraints", "contextMenuSettings", "customCursor", "dataSourceSettings", "diagramSettings", "drawingObject", "enablePersistence", "enableRtl", "getConnectorDefaults", "getCustomCursor", "getCustomProperty", "getCustomTool", "getDescription", "getNodeDefaults", "height", "historyManager", "layers", "layout", "locale", "mode", "nodeDefaults", "nodeTemplate", "nodes", "pageSettings", "rulerSettings", "scrollSettings", "selectedItems", "serializationSettings", "setNodeTemplate", "snapSettings", "tool", "tooltip", "updateSelection", "userHandleTemplate", "width"], outputs: ["animationComplete", "click", "collectionChange", "commandExecute", "connectionChange", "contextMenuBeforeItemRender", "contextMenuClick", "contextMenuOpen", "created", "dataLoaded", "doubleClick", "dragEnter", "dragLeave", "dragOver", "drop", "expandStateChange", "fixedUserHandleClick", "historyChange", "historyStateChange", "keyDown", "keyUp", "mouseEnter", "mouseLeave", "mouseOver", "onImageLoad", "onUserHandleMouseDown", "onUserHandleMouseEnter", "onUserHandleMouseLeave", "onUserHandleMouseUp", "positionChange", "propertyChange", "rotateChange", "scrollChange", "segmentCollectionChange", "selectionChange", "sizeChange", "sourcePointChange", "targetPointChange", "textEdit"] }], directives: [{ type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i8$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i10$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i24.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { type: i6.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }], pipes: { "translate": TranslatePipe } });
|
12424
|
+
WorkflowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: WorkflowComponent, selector: "bizdoc-workflow", host: { listeners: { "document:keydown": "handleKeyboardEvent($event)" }, classAttribute: "pane" }, viewQueries: [{ propertyName: "symbolPalette", first: true, predicate: SymbolPaletteComponent, descendants: true }, { propertyName: "diagram", first: true, predicate: ["diagram"], descendants: true }], ngImport: i0, template: "<mat-toolbar>\r\n <button mat-icon-button (click)=\"tools = !tools\" [bizdocTooltip]=\"'Collapse' | translate\"><mat-icon>view_sidebar</mat-icon></button>\r\n <button mat-button (click)=\"save()\" color=\"primary\" [disabled]=\"!dirty || saving\">{{'SaveChanges' | translate}}</button>\r\n <button mat-icon-button (click)=\"diagram.fitToPage()\" [bizdocTooltip]=\"'FitToPage' | translate\"><mat-icon>fullscreen_exit</mat-icon></button>\r\n <button mat-icon-button (click)=\"diagram.undo()\" [bizdocTooltip]=\"'Undo' | translate\" [disabled]=\"!diagram.historyManager?.canUndo\"><mat-icon>undo</mat-icon></button>\r\n <button mat-icon-button (click)=\"diagram.redo()\" [bizdocTooltip]=\"'Redo' | translate\" [disabled]=\"!diagram.historyManager?.canRedo\"><mat-icon>redo</mat-icon></button>\r\n \r\n <button mat-icon-button (click)=\"pan()\" [bizdocTooltip]=\"'Pan' | translate\"><span class=\"e-icons sf-icon-pan\"></span></button>\r\n <button mat-icon-button (click)=\"cursor()\" [bizdocTooltip]=\"'Cursor' | translate\"><span class=\"e-icons sf-icon-cursor\"></span></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"addText()\" [bizdocTooltip]=\"'Text' | translate\"><mat-icon>title</mat-icon></button>\r\n <button mat-button [matMenuTriggerFor]=\"lineMenu\" [disabled]=\"!diagram.selectedItems?.connectors.length\" [bizdocTooltip]=\"'ConnectorMode'|translate\">\r\n <span class=\"e-menu-icon\" [ngClass]=\"{'sf-icon-straight-line': connectorType === 'Straight',\r\n 'sf-icon-orthogonal-line': connectorType === 'Orthogonal',\r\n 'sf-icon-beizer-line': connectorType === 'Bezier'}\"></span>\r\n <mat-icon>arrow_drop_down</mat-icon>\r\n </button>\r\n <mat-menu #lineMenu panelClass=\"icon-menu-panel\">\r\n <button mat-menu-item (click)=\"connectorTypeChange('Straight')\">\r\n <span class=\"e-menu-icon sf-icon-straight-line\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"connectorTypeChange('Orthogonal')\">\r\n <span class=\"e-menu-icon sf-icon-orthogonal-line\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"connectorTypeChange('Bezier')\">\r\n <span class=\"e-menu-icon sf-icon-beizer-line\"></span>\r\n </button>\r\n </mat-menu>\r\n \r\n <button mat-button [matMenuTriggerFor]=\"alignMenu\" [disabled]=\"!diagram.selectedItems?.nodes.length && !diagram.selectedItems?.connectors.length\" [bizdocTooltip]=\"'Align'|translate\">\r\n <span class=\"e-icons\" [ngClass]=\"{'sf-icon-top': alignment === 'Top',\r\n 'sf-icon-left': alignment === 'Left',\r\n 'sf-icon-center': alignment === 'Center',\r\n 'sf-icon-bottom': alignment === 'Bottom',\r\n 'sf-icon-right': alignment === 'Right'}\"></span>\r\n <mat-icon>arrow_drop_down</mat-icon>\r\n </button>\r\n <mat-menu #alignMenu panelClass=\"icon-menu-panel\">\r\n <button mat-menu-item (click)=\"align('Top')\">\r\n <span class=\"e-icons sf-icon-top\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"align('Left')\">\r\n <span class=\"e-icons sf-icon-left\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"align('Center')\">\r\n <span class=\"e-icons sf-icon-center\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"align('Bottom')\">\r\n <span class=\"e-icons sf-icon-bottom\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"align('Right')\">\r\n <span class=\"e-icons sf-icon-right\"></span>\r\n </button>\r\n </mat-menu>\r\n</mat-toolbar>\r\n<div class=\"row container\">\r\n <div id=\"symbolpalette\" *ngIf=\"tools\">\r\n <ejs-symbolpalette dir=\"ltr\" expandMode='Multiple' [palettes]='palettes' width=\"100%\" height=\"100%\" [symbolHeight]=80\r\n [enableRtl]=\"false\" [enableAnimation]=\"false\" [symbolWidth]=80 [symbolMargin]='symbolMargin' [getSymbolInfo]='getSymbolInfo' [getNodeDefaults]='getSymbolDefaults'>\r\n </ejs-symbolpalette>\r\n </div>\r\n <ejs-diagram #diagram id=\"diagram\" width=\"100%\" height=\"100%\" dir=\"ltr\" [snapSettings]='snapSettings' [getConnectorDefaults]='connDefaults' fxFlex\r\n [constraints]=\"diagramConstraints\" [tool]=diagramTool [getNodeDefaults]='nodeDefaults' [getCustomTool]='getCustomTool' [scrollSettings]=\"scrollSettings\"\r\n [selectedItems]=\"selectedItems\"\r\n [rulerSettings]=\"rulerSettings\"\r\n (dragEnter)='dragEnter($event)'\r\n (connectionChange)=\"change()\"\r\n (collectionChange)=\"change()\"\r\n (propertyChange)=\"propertyChange($event)\"\r\n (selectionChange)=\"selectionChange()\"\r\n (created)=\"diagramCreate()\">\r\n </ejs-diagram>\r\n</div>\r\n", styles: [":host{display:flex;flex-direction:column;flex-grow:1;height:100%}.container{flex-grow:1;overflow-y:auto}#diagram{flex-grow:1}#symbolpalette{width:210px}::ng-deep .e-rtl{direction:ltr}::ng-deep .mat-toolbar .mat-button-toggle{background:transparent!important}.e-menu-icon{font-family:diagram-icons!important;speak:none;font-size:18px;font-style:normal;font-weight:400;font-feature-settings:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::ng-deep .icon-menu-panel{min-width:0}\n"], components: [{ type: i7$4.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { type: i7$1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i7$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i8$1.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i8$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i11$2.SymbolPaletteComponent, selector: "ejs-symbolpalette", inputs: ["accessKey", "allowDrag", "connectorDefaults", "enableAnimation", "enablePersistence", "enableRtl", "enableSearch", "expandMode", "filterSymbols", "getConnectorDefaults", "getNodeDefaults", "getSymbolInfo", "getSymbolTemplate", "height", "ignoreSymbolsOnSearch", "locale", "nodeDefaults", "palettes", "symbolDragSize", "symbolHeight", "symbolInfo", "symbolMargin", "symbolPreview", "symbolWidth", "width"], outputs: ["paletteExpanding", "paletteSelectionChange"] }, { type: i11$2.DiagramComponent, selector: "ejs-diagram", inputs: ["addInfo", "annotationTemplate", "backgroundColor", "bridgeDirection", "commandManager", "connectorDefaults", "connectors", "constraints", "contextMenuSettings", "customCursor", "dataSourceSettings", "diagramSettings", "drawingObject", "enablePersistence", "enableRtl", "getConnectorDefaults", "getCustomCursor", "getCustomProperty", "getCustomTool", "getDescription", "getNodeDefaults", "height", "historyManager", "layers", "layout", "locale", "mode", "nodeDefaults", "nodeTemplate", "nodes", "pageSettings", "rulerSettings", "scrollSettings", "selectedItems", "serializationSettings", "setNodeTemplate", "snapSettings", "tool", "tooltip", "updateSelection", "userHandleTemplate", "width"], outputs: ["animationComplete", "click", "collectionChange", "commandExecute", "connectionChange", "contextMenuBeforeItemRender", "contextMenuClick", "contextMenuOpen", "created", "dataLoaded", "doubleClick", "dragEnter", "dragLeave", "dragOver", "drop", "expandStateChange", "fixedUserHandleClick", "historyChange", "historyStateChange", "keyDown", "keyUp", "mouseEnter", "mouseLeave", "mouseOver", "onImageLoad", "onUserHandleMouseDown", "onUserHandleMouseEnter", "onUserHandleMouseLeave", "onUserHandleMouseUp", "positionChange", "propertyChange", "rotateChange", "scrollChange", "segmentCollectionChange", "selectionChange", "sizeChange", "sourcePointChange", "targetPointChange", "textEdit"] }], directives: [{ type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i8$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i10$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i24.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { type: i6.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }], pipes: { "translate": TranslatePipe } });
|
12427
12425
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: WorkflowComponent, decorators: [{
|
12428
12426
|
type: Component,
|
12429
12427
|
args: [{ selector: 'bizdoc-workflow', host: {
|
12430
12428
|
class: 'pane'
|
12431
|
-
}, template: "<mat-toolbar>\r\n <button mat-icon-button (click)=\"tools = !tools\" [bizdocTooltip]=\"'Collapse' | translate\"><mat-icon>view_sidebar</mat-icon></button>\r\n <button mat-button (click)=\"save()\" color=\"primary\" [disabled]=\"!dirty || saving\">{{'SaveChanges' | translate}}</button>\r\n <button mat-icon-button (click)=\"diagram.fitToPage()\" [bizdocTooltip]=\"'FitToPage' | translate\"><mat-icon>fullscreen_exit</mat-icon></button>\r\n <button mat-icon-button (click)=\"diagram.undo()\" [bizdocTooltip]=\"'Undo' | translate\" [disabled]=\"!diagram.historyManager?.canUndo\"><mat-icon>undo</mat-icon></button>\r\n <button mat-icon-button (click)=\"diagram.redo()\" [bizdocTooltip]=\"'Redo' | translate\" [disabled]=\"!diagram.historyManager?.canRedo\"><mat-icon>redo</mat-icon></button>\r\n \r\n <button mat-icon-button (click)=\"pan()\" [bizdocTooltip]=\"'Pan' | translate\"><span class=\"e-icons sf-icon-pan\"></span></button>\r\n <button mat-icon-button (click)=\"cursor()\" [bizdocTooltip]=\"'Cursor' | translate\"><span class=\"e-icons sf-icon-cursor\"></span></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"addText()\" [bizdocTooltip]=\"'Text' | translate\"><mat-icon>title</mat-icon></button>\r\n <button mat-button [matMenuTriggerFor]=\"lineMenu\" [disabled]=\"!diagram.selectedItems?.connectors.length\" [bizdocTooltip]=\"'ConnectorMode'|translate\">\r\n <span class=\"e-menu-icon\" [ngClass]=\"{'sf-icon-straight-line': connectorType === 'Straight',\r\n 'sf-icon-orthogonal-line': connectorType === 'Orthogonal',\r\n 'sf-icon-beizer-line': connectorType === 'Bezier'}\"></span>\r\n <mat-icon>arrow_drop_down</mat-icon>\r\n </button>\r\n <mat-menu #lineMenu panelClass=\"icon-menu-panel\">\r\n <button mat-menu-item (click)=\"connectorTypeChange('Straight')\">\r\n <span class=\"e-menu-icon sf-icon-straight-line\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"connectorTypeChange('Orthogonal')\">\r\n <span class=\"e-menu-icon sf-icon-orthogonal-line\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"connectorTypeChange('Bezier')\">\r\n <span class=\"e-menu-icon sf-icon-beizer-line\"></span>\r\n </button>\r\n </mat-menu>\r\n \r\n <button mat-button [matMenuTriggerFor]=\"alignMenu\" [disabled]=\"!diagram.selectedItems?.nodes.length && !diagram.selectedItems?.connectors.length\" [bizdocTooltip]=\"'Align'|translate\">\r\n <span class=\"e-icons\" [ngClass]=\"{'sf-icon-top': alignment === 'Top',\r\n 'sf-icon-left': alignment === 'Left',\r\n 'sf-icon-center': alignment === 'Center',\r\n 'sf-icon-bottom': alignment === 'Bottom',\r\n 'sf-icon-right': alignment === 'Right'}\"></span>\r\n <mat-icon>arrow_drop_down</mat-icon>\r\n </button>\r\n <mat-menu #alignMenu panelClass=\"icon-menu-panel\">\r\n <button mat-menu-item (click)=\"align('Top')\">\r\n <span class=\"e-icons sf-icon-top\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"align('Left')\">\r\n <span class=\"e-icons sf-icon-left\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"align('Center')\">\r\n <span class=\"e-icons sf-icon-center\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"align('Bottom')\">\r\n <span class=\"e-icons sf-icon-bottom\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"align('Right')\">\r\n <span class=\"e-icons sf-icon-right\"></span>\r\n </button>\r\n </mat-menu>\r\n</mat-toolbar>\r\n<div class=\"row container\">\r\n <div id=\"symbolpalette\" *ngIf=\"tools\">\r\n <ejs-symbolpalette dir=\"ltr\" expandMode='Multiple' [palettes]='palettes' width=\"100%\" height=\"100%\" [symbolHeight]=80\r\n [enableRtl]=\"false\" [enableAnimation]=\"false\" [symbolWidth]=80 [symbolMargin]='symbolMargin' [getSymbolInfo]='getSymbolInfo' [getNodeDefaults]='getSymbolDefaults'>\r\n </ejs-symbolpalette>\r\n </div>\r\n <ejs-diagram #diagram id=\"diagram\" width=\"100%\" height=\"100%\" dir=\"ltr\" [snapSettings]='snapSettings' [getConnectorDefaults]='connDefaults' fxFlex\r\n [constraints]=\"diagramConstraints\" [tool]=diagramTool [getNodeDefaults]='nodeDefaults' [getCustomTool]='getCustomTool' [scrollSettings]=\"scrollSettings\"\r\n [selectedItems]=\"selectedItems\"\r\n [rulerSettings]=\"rulerSettings\"\r\n (dragEnter)='dragEnter($event)'\r\n (connectionChange)=\"change()\"\r\n (collectionChange)=\"change()\"\r\n (propertyChange)=\"propertyChange($event)\"\r\n (selectionChange)=\"selectionChange()\"\r\n (created)=\"diagramCreate()\">\r\n </ejs-diagram>\r\n</div>\r\n", styles: [":host{display:flex;flex-direction:column;flex-grow:1;height:100%}.container{flex-grow:1;overflow-y:auto}#diagram{flex-grow:1}#symbolpalette{width:210px}::ng-deep .e-rtl{direction:ltr}::ng-deep .mat-toolbar .mat-button-toggle{background:transparent!important}.e-menu-icon{font-family
|
12429
|
+
}, template: "<mat-toolbar>\r\n <button mat-icon-button (click)=\"tools = !tools\" [bizdocTooltip]=\"'Collapse' | translate\"><mat-icon>view_sidebar</mat-icon></button>\r\n <button mat-button (click)=\"save()\" color=\"primary\" [disabled]=\"!dirty || saving\">{{'SaveChanges' | translate}}</button>\r\n <button mat-icon-button (click)=\"diagram.fitToPage()\" [bizdocTooltip]=\"'FitToPage' | translate\"><mat-icon>fullscreen_exit</mat-icon></button>\r\n <button mat-icon-button (click)=\"diagram.undo()\" [bizdocTooltip]=\"'Undo' | translate\" [disabled]=\"!diagram.historyManager?.canUndo\"><mat-icon>undo</mat-icon></button>\r\n <button mat-icon-button (click)=\"diagram.redo()\" [bizdocTooltip]=\"'Redo' | translate\" [disabled]=\"!diagram.historyManager?.canRedo\"><mat-icon>redo</mat-icon></button>\r\n \r\n <button mat-icon-button (click)=\"pan()\" [bizdocTooltip]=\"'Pan' | translate\"><span class=\"e-icons sf-icon-pan\"></span></button>\r\n <button mat-icon-button (click)=\"cursor()\" [bizdocTooltip]=\"'Cursor' | translate\"><span class=\"e-icons sf-icon-cursor\"></span></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"addText()\" [bizdocTooltip]=\"'Text' | translate\"><mat-icon>title</mat-icon></button>\r\n <button mat-button [matMenuTriggerFor]=\"lineMenu\" [disabled]=\"!diagram.selectedItems?.connectors.length\" [bizdocTooltip]=\"'ConnectorMode'|translate\">\r\n <span class=\"e-menu-icon\" [ngClass]=\"{'sf-icon-straight-line': connectorType === 'Straight',\r\n 'sf-icon-orthogonal-line': connectorType === 'Orthogonal',\r\n 'sf-icon-beizer-line': connectorType === 'Bezier'}\"></span>\r\n <mat-icon>arrow_drop_down</mat-icon>\r\n </button>\r\n <mat-menu #lineMenu panelClass=\"icon-menu-panel\">\r\n <button mat-menu-item (click)=\"connectorTypeChange('Straight')\">\r\n <span class=\"e-menu-icon sf-icon-straight-line\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"connectorTypeChange('Orthogonal')\">\r\n <span class=\"e-menu-icon sf-icon-orthogonal-line\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"connectorTypeChange('Bezier')\">\r\n <span class=\"e-menu-icon sf-icon-beizer-line\"></span>\r\n </button>\r\n </mat-menu>\r\n \r\n <button mat-button [matMenuTriggerFor]=\"alignMenu\" [disabled]=\"!diagram.selectedItems?.nodes.length && !diagram.selectedItems?.connectors.length\" [bizdocTooltip]=\"'Align'|translate\">\r\n <span class=\"e-icons\" [ngClass]=\"{'sf-icon-top': alignment === 'Top',\r\n 'sf-icon-left': alignment === 'Left',\r\n 'sf-icon-center': alignment === 'Center',\r\n 'sf-icon-bottom': alignment === 'Bottom',\r\n 'sf-icon-right': alignment === 'Right'}\"></span>\r\n <mat-icon>arrow_drop_down</mat-icon>\r\n </button>\r\n <mat-menu #alignMenu panelClass=\"icon-menu-panel\">\r\n <button mat-menu-item (click)=\"align('Top')\">\r\n <span class=\"e-icons sf-icon-top\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"align('Left')\">\r\n <span class=\"e-icons sf-icon-left\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"align('Center')\">\r\n <span class=\"e-icons sf-icon-center\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"align('Bottom')\">\r\n <span class=\"e-icons sf-icon-bottom\"></span>\r\n </button>\r\n <button mat-menu-item (click)=\"align('Right')\">\r\n <span class=\"e-icons sf-icon-right\"></span>\r\n </button>\r\n </mat-menu>\r\n</mat-toolbar>\r\n<div class=\"row container\">\r\n <div id=\"symbolpalette\" *ngIf=\"tools\">\r\n <ejs-symbolpalette dir=\"ltr\" expandMode='Multiple' [palettes]='palettes' width=\"100%\" height=\"100%\" [symbolHeight]=80\r\n [enableRtl]=\"false\" [enableAnimation]=\"false\" [symbolWidth]=80 [symbolMargin]='symbolMargin' [getSymbolInfo]='getSymbolInfo' [getNodeDefaults]='getSymbolDefaults'>\r\n </ejs-symbolpalette>\r\n </div>\r\n <ejs-diagram #diagram id=\"diagram\" width=\"100%\" height=\"100%\" dir=\"ltr\" [snapSettings]='snapSettings' [getConnectorDefaults]='connDefaults' fxFlex\r\n [constraints]=\"diagramConstraints\" [tool]=diagramTool [getNodeDefaults]='nodeDefaults' [getCustomTool]='getCustomTool' [scrollSettings]=\"scrollSettings\"\r\n [selectedItems]=\"selectedItems\"\r\n [rulerSettings]=\"rulerSettings\"\r\n (dragEnter)='dragEnter($event)'\r\n (connectionChange)=\"change()\"\r\n (collectionChange)=\"change()\"\r\n (propertyChange)=\"propertyChange($event)\"\r\n (selectionChange)=\"selectionChange()\"\r\n (created)=\"diagramCreate()\">\r\n </ejs-diagram>\r\n</div>\r\n", styles: [":host{display:flex;flex-direction:column;flex-grow:1;height:100%}.container{flex-grow:1;overflow-y:auto}#diagram{flex-grow:1}#symbolpalette{width:210px}::ng-deep .e-rtl{direction:ltr}::ng-deep .mat-toolbar .mat-button-toggle{background:transparent!important}.e-menu-icon{font-family:diagram-icons!important;speak:none;font-size:18px;font-style:normal;font-weight:400;font-feature-settings:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::ng-deep .icon-menu-panel{min-width:0}\n"] }]
|
12432
12430
|
}], ctorParameters: function () { return [{ type: PromptService }, { type: FormService }, { type: PaneRef }, { type: PanesRouter }, { type: SessionService }, { type: TranslateService }]; }, propDecorators: { symbolPalette: [{
|
12433
12431
|
type: ViewChild,
|
12434
12432
|
args: [SymbolPaletteComponent]
|
@@ -14055,7 +14053,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
|
|
14055
14053
|
type: Injectable
|
14056
14054
|
}], ctorParameters: function () { return [{ type: FormService }]; } });
|
14057
14055
|
|
14058
|
-
const LOADING_DELAY = 200;
|
14056
|
+
const LOADING_DELAY = 200, SUM_PREFIX = '_sum';
|
14059
14057
|
/** cube matrix component*/
|
14060
14058
|
class CubeMatrixComponent {
|
14061
14059
|
constructor(_sb, _service, _session, _ds) {
|
@@ -14064,9 +14062,11 @@ class CubeMatrixComponent {
|
|
14064
14062
|
this._session = _session;
|
14065
14063
|
this._ds = _ds;
|
14066
14064
|
this.PRECISION = this._service.digitsInfo;
|
14065
|
+
this.LANGUAGE = this._session.language;
|
14067
14066
|
this._interactive = true;
|
14068
14067
|
this.onExplore = new EventEmitter();
|
14069
14068
|
this.loadingChange = new EventEmitter();
|
14069
|
+
this.indices = [];
|
14070
14070
|
}
|
14071
14071
|
set sum(val) {
|
14072
14072
|
if (val)
|
@@ -14088,8 +14088,8 @@ class CubeMatrixComponent {
|
|
14088
14088
|
break;
|
14089
14089
|
}
|
14090
14090
|
return {
|
14091
|
-
|
14092
|
-
|
14091
|
+
...sum,
|
14092
|
+
value
|
14093
14093
|
};
|
14094
14094
|
});
|
14095
14095
|
}
|
@@ -14103,28 +14103,36 @@ class CubeMatrixComponent {
|
|
14103
14103
|
if (changes['_cube']) {
|
14104
14104
|
this.cube = this._session.profile.cubes.find(c => c.name === this._cube);
|
14105
14105
|
this.CURRENCY = this.cube.currencyCode /*|| this._service.currencyCode*/;
|
14106
|
+
this.SYMBOL = getCurrencySymbol(this.CURRENCY, 'narrow');
|
14106
14107
|
}
|
14107
14108
|
if (!this.cube) {
|
14108
14109
|
this.cube = this._session.profile.cubes[0];
|
14109
14110
|
this.CURRENCY = this.cube.currencyCode /*|| this._service.currencyCode*/;
|
14111
|
+
this.SYMBOL = getCurrencySymbol(this.CURRENCY, 'narrow');
|
14110
14112
|
}
|
14111
14113
|
if (changes['_indices'])
|
14112
14114
|
this.indices = this.cube.indices.filter(i => isArray(this._indices) ? this._indices.indexOf(i.name) > -1 : this._indices === i.name);
|
14113
14115
|
if (changes['_xAxis'] || changes['_series']) {
|
14114
14116
|
this.xAxis = this.cube.axes.find(a => a.name === this._xAxis);
|
14115
14117
|
this.series = this.cube.axes.find(a => a.name === this._series);
|
14116
|
-
this.
|
14117
|
-
|
14118
|
+
this.data = null;
|
14119
|
+
this._prepare = forkJoin(this._ds.all(this.series.dataType).pipe(tap(r => this.rows = r)), this._ds.all(this.xAxis.dataType).pipe(tap(c => this.columns = c))).toPromise().then(() => this._sum && this._addsumheaders());
|
14120
|
+
this.refresh();
|
14118
14121
|
}
|
14119
|
-
if (changes['filters'])
|
14122
|
+
else if (changes['filters'])
|
14120
14123
|
this.refresh();
|
14121
14124
|
}
|
14122
|
-
|
14125
|
+
_addsumheaders() {
|
14123
14126
|
this._sum.forEach((s, i) => {
|
14124
14127
|
let { value, axis } = s;
|
14125
14128
|
const element = {
|
14126
|
-
key:
|
14127
|
-
value: s.title
|
14129
|
+
key: SUM_PREFIX + i,
|
14130
|
+
value: s.title,
|
14131
|
+
explorable: !isFunction(s.calculate),
|
14132
|
+
accumulate: s.accumulate,
|
14133
|
+
precision: s.precision,
|
14134
|
+
format: s.format,
|
14135
|
+
index: i
|
14128
14136
|
};
|
14129
14137
|
let j = 0;
|
14130
14138
|
if (axis === 'xAxis') {
|
@@ -14159,9 +14167,10 @@ class CubeMatrixComponent {
|
|
14159
14167
|
filters: this.filters,
|
14160
14168
|
scope: this.scope
|
14161
14169
|
}).pipe(modelize(), first$1()).subscribe(d => {
|
14170
|
+
this._data = JSON.parse(JSON.stringify(d));
|
14162
14171
|
this._totals(d);
|
14163
|
-
this._sum &&
|
14164
|
-
|
14172
|
+
this._sum && this._calculatesum(d);
|
14173
|
+
this._stringfy(d);
|
14165
14174
|
this.data = d;
|
14166
14175
|
}, (e) => {
|
14167
14176
|
this._sb.error(e.status === 401 ? 'Unauthorized' : null);
|
@@ -14170,72 +14179,98 @@ class CubeMatrixComponent {
|
|
14170
14179
|
this.loadingChange.next(this.loading = false);
|
14171
14180
|
}));
|
14172
14181
|
}
|
14182
|
+
_stringfy(data) {
|
14183
|
+
const fmt = (xAxis, series) => data[xAxis][series] = formatNumber(data[xAxis][series] || 0, this.LANGUAGE, this.PRECISION);
|
14184
|
+
this.columns.forEach(c => {
|
14185
|
+
if (c.index !== undefined)
|
14186
|
+
return;
|
14187
|
+
this.indices && this.indices.forEach(i => fmt(i.name, c.key));
|
14188
|
+
this.rows.forEach(r => {
|
14189
|
+
r.index === undefined &&
|
14190
|
+
fmt(r.key, c.key);
|
14191
|
+
});
|
14192
|
+
});
|
14193
|
+
}
|
14173
14194
|
_totals(data) {
|
14174
|
-
this.totals = {};
|
14175
14195
|
let grand = 0;
|
14176
14196
|
this.indices && this.indices.forEach(i => {
|
14177
|
-
|
14178
|
-
if (!
|
14179
|
-
data[i.name] = {};
|
14197
|
+
let row = data[i.name];
|
14198
|
+
if (!row)
|
14199
|
+
row = data[i.name] = {};
|
14180
14200
|
else {
|
14181
|
-
let sum = 0
|
14182
|
-
for (x in
|
14183
|
-
sum +=
|
14184
|
-
|
14201
|
+
let sum = 0;
|
14202
|
+
for (let x in row)
|
14203
|
+
sum += row[x];
|
14204
|
+
row['_total'] = this._format(sum);
|
14185
14205
|
grand += sum;
|
14186
14206
|
}
|
14187
14207
|
});
|
14188
14208
|
this.rows.forEach(r => {
|
14189
|
-
if (
|
14190
|
-
|
14191
|
-
|
14192
|
-
|
14193
|
-
|
14194
|
-
|
14195
|
-
|
14196
|
-
|
14197
|
-
|
14198
|
-
|
14199
|
-
|
14200
|
-
|
14201
|
-
|
14209
|
+
if (r.accumulate === false)
|
14210
|
+
return;
|
14211
|
+
let row = data[r.key];
|
14212
|
+
if (!row)
|
14213
|
+
row = data[r.key] = {
|
14214
|
+
'_total': '0'
|
14215
|
+
};
|
14216
|
+
else {
|
14217
|
+
let sum = 0;
|
14218
|
+
for (let x in row)
|
14219
|
+
sum += row[x];
|
14220
|
+
row['_total'] = this._format(sum, r);
|
14221
|
+
grand += sum * -1;
|
14222
|
+
}
|
14223
|
+
});
|
14224
|
+
const totals = data['_total'] = this.totals = {};
|
14225
|
+
this.columns.forEach(c => {
|
14226
|
+
if (c.accumulate === false)
|
14227
|
+
return;
|
14228
|
+
let sum = 0;
|
14229
|
+
for (let key in data) {
|
14202
14230
|
const val = data[key][c.key];
|
14203
14231
|
if (val !== undefined)
|
14204
|
-
sum += this._indices.indexOf(key) > -1 ? val : -val;
|
14232
|
+
sum += this._indices && this._indices.indexOf(key) > -1 ? val : -val;
|
14205
14233
|
}
|
14206
|
-
|
14234
|
+
totals[c.key] = this._format(sum, c);
|
14207
14235
|
});
|
14208
|
-
|
14236
|
+
totals['_grand'] = this._format(grand);
|
14209
14237
|
}
|
14210
14238
|
_calculatesum(data) {
|
14211
14239
|
this._sum.forEach((s, i) => {
|
14212
|
-
const { axis, value, calculate } = s
|
14240
|
+
const { axis, value, calculate, accumulate } = s;
|
14241
|
+
const name = SUM_PREFIX + i;
|
14213
14242
|
if (axis === 'xAxis') {
|
14214
14243
|
let total = 0;
|
14215
14244
|
this.rows.forEach(r => {
|
14245
|
+
if (r.accumulate === false)
|
14246
|
+
return;
|
14216
14247
|
const row = data[r.key];
|
14217
14248
|
if (!row)
|
14218
14249
|
return;
|
14219
14250
|
let sum = 0, j = 0;
|
14220
14251
|
while (j < this.columns.length) {
|
14221
|
-
let
|
14222
|
-
if (
|
14223
|
-
|
14224
|
-
|
14225
|
-
|
14226
|
-
|
14227
|
-
|
14228
|
-
|
14229
|
-
|
14230
|
-
|
14231
|
-
|
14232
|
-
|
14252
|
+
let column = this.columns[j], key = column.key;
|
14253
|
+
if (column.index === undefined) {
|
14254
|
+
if (isFunction(calculate)) {
|
14255
|
+
let val = calculate(r.key, this._data);
|
14256
|
+
if (val !== undefined)
|
14257
|
+
sum += val;
|
14258
|
+
}
|
14259
|
+
else {
|
14260
|
+
let val = row[key];
|
14261
|
+
if (val !== undefined)
|
14262
|
+
sum += val;
|
14263
|
+
if (key === value)
|
14264
|
+
break;
|
14265
|
+
}
|
14233
14266
|
}
|
14234
14267
|
j++;
|
14235
14268
|
}
|
14236
|
-
row[name] = sum;
|
14269
|
+
row[name] = this._format(sum, s);
|
14237
14270
|
total += sum;
|
14238
14271
|
});
|
14272
|
+
if (accumulate !== false)
|
14273
|
+
data['_total'][name] = this._format(total);
|
14239
14274
|
this.indices && this.indices.forEach(i => {
|
14240
14275
|
const row = data[i.name];
|
14241
14276
|
if (!row)
|
@@ -14244,7 +14279,7 @@ class CubeMatrixComponent {
|
|
14244
14279
|
while (j < this.columns.length) {
|
14245
14280
|
let key = this.columns[j].key;
|
14246
14281
|
if (isFunction(calculate)) {
|
14247
|
-
let val = calculate(
|
14282
|
+
let val = calculate(i.name, this._data);
|
14248
14283
|
if (val !== undefined)
|
14249
14284
|
sum += val;
|
14250
14285
|
}
|
@@ -14257,26 +14292,28 @@ class CubeMatrixComponent {
|
|
14257
14292
|
}
|
14258
14293
|
j++;
|
14259
14294
|
}
|
14260
|
-
row[name] = sum;
|
14295
|
+
row[name] = this._format(sum);
|
14261
14296
|
});
|
14262
|
-
this.totals[name] = total;
|
14263
14297
|
}
|
14264
14298
|
else {
|
14299
|
+
data[name] = {};
|
14265
14300
|
let total = 0;
|
14266
14301
|
this.columns.forEach(c => {
|
14302
|
+
if (c.explorable === false)
|
14303
|
+
return;
|
14267
14304
|
let sum = 0, j = 0;
|
14268
14305
|
while (j < this.rows.length) {
|
14269
|
-
let
|
14270
|
-
if (
|
14306
|
+
let row = this.rows[j], key = row.key;
|
14307
|
+
if (row.index === undefined) {
|
14271
14308
|
if (isFunction(calculate)) {
|
14272
|
-
let val = calculate(key, this.
|
14309
|
+
let val = calculate(c.key, this._data);
|
14273
14310
|
if (val !== undefined)
|
14274
14311
|
sum += val;
|
14275
14312
|
}
|
14276
14313
|
else {
|
14277
|
-
let
|
14278
|
-
if (
|
14279
|
-
let val =
|
14314
|
+
let drow = data[key];
|
14315
|
+
if (drow) {
|
14316
|
+
let val = drow[c.key];
|
14280
14317
|
if (val !== undefined)
|
14281
14318
|
sum += val;
|
14282
14319
|
if (key === value)
|
@@ -14286,58 +14323,64 @@ class CubeMatrixComponent {
|
|
14286
14323
|
}
|
14287
14324
|
j++;
|
14288
14325
|
}
|
14289
|
-
|
14290
|
-
|
14291
|
-
|
14292
|
-
total += sum;
|
14326
|
+
data[name][c.key] = this._format(sum, s);
|
14327
|
+
if (c.index === undefined)
|
14328
|
+
total += sum;
|
14293
14329
|
});
|
14294
|
-
|
14330
|
+
if (accumulate !== false)
|
14331
|
+
data[name]['_total'] = this._format(total);
|
14295
14332
|
}
|
14296
14333
|
});
|
14297
14334
|
}
|
14298
|
-
|
14335
|
+
_format(val, options) {
|
14336
|
+
if (options) {
|
14337
|
+
if (options.format === 'percent')
|
14338
|
+
return formatPercent(val, this.LANGUAGE, options.precision);
|
14339
|
+
else if (options.format === 'currency')
|
14340
|
+
return formatCurrency(val, this.LANGUAGE, this.SYMBOL, this.CURRENCY, options.precision);
|
14341
|
+
}
|
14342
|
+
if (this.CURRENCY)
|
14343
|
+
return formatCurrency(val, this.LANGUAGE, this.SYMBOL, this.CURRENCY, this.PRECISION);
|
14344
|
+
else
|
14345
|
+
return formatNumber(val, this.LANGUAGE, this.PRECISION);
|
14346
|
+
}
|
14347
|
+
explore(column, row) {
|
14299
14348
|
if (!this.interactive)
|
14300
14349
|
return;
|
14350
|
+
let x, series;
|
14301
14351
|
const axes = { ...this.filters };
|
14302
|
-
if (
|
14303
|
-
|
14304
|
-
|
14305
|
-
|
14306
|
-
|
14307
|
-
|
14308
|
-
|
14309
|
-
|
14310
|
-
|
14311
|
-
|
14312
|
-
|
14313
|
-
|
14314
|
-
|
14315
|
-
|
14316
|
-
x.push(key);
|
14317
|
-
if (key === value)
|
14318
|
-
break;
|
14319
|
-
}
|
14320
|
-
}
|
14352
|
+
if (column.index === undefined)
|
14353
|
+
x = column.key;
|
14354
|
+
else {
|
14355
|
+
let { value, calculate } = this._sum[column.index];
|
14356
|
+
if (isFunction(calculate))
|
14357
|
+
return;
|
14358
|
+
x = [];
|
14359
|
+
for (let i = 0; i < this.columns.length; i++) {
|
14360
|
+
let column = this.columns[i];
|
14361
|
+
if (column.index !== undefined)
|
14362
|
+
continue;
|
14363
|
+
let key = column.key;
|
14364
|
+
x.push(key);
|
14365
|
+
if (key === value)
|
14321
14366
|
break;
|
14322
|
-
|
14323
|
-
|
14324
|
-
|
14325
|
-
|
14326
|
-
|
14327
|
-
|
14328
|
-
|
14329
|
-
|
14330
|
-
|
14331
|
-
|
14332
|
-
|
14333
|
-
|
14334
|
-
|
14335
|
-
|
14336
|
-
|
14337
|
-
|
14367
|
+
}
|
14368
|
+
}
|
14369
|
+
if (row.index === undefined)
|
14370
|
+
series = row.key;
|
14371
|
+
else {
|
14372
|
+
let { value, calculate } = this._sum[row.index];
|
14373
|
+
if (isFunction(calculate))
|
14374
|
+
return;
|
14375
|
+
series = [];
|
14376
|
+
for (let i = 0; i < this.rows.length; i++) {
|
14377
|
+
let row = this.rows[i];
|
14378
|
+
if (row.index !== undefined)
|
14379
|
+
continue;
|
14380
|
+
let key = row.key;
|
14381
|
+
series.push(key);
|
14382
|
+
if (key === value)
|
14338
14383
|
break;
|
14339
|
-
}
|
14340
|
-
i++;
|
14341
14384
|
}
|
14342
14385
|
}
|
14343
14386
|
axes[this.xAxis.name] = x;
|
@@ -14375,13 +14418,15 @@ class CubeMatrixComponent {
|
|
14375
14418
|
}
|
14376
14419
|
}
|
14377
14420
|
CubeMatrixComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeMatrixComponent, deps: [{ token: PromptService }, { token: CubeService }, { token: SessionService }, { token: DatasourceService }], target: i0.ɵɵFactoryTarget.Component });
|
14378
|
-
CubeMatrixComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeMatrixComponent, selector: "bizdoc-cube-matrix", inputs: { _cube: ["cube", "_cube"], _xAxis: ["xAxis", "_xAxis"], _series: ["series", "_series"], _indices: ["indices", "_indices"], scope: "scope", sum: "sum", filters: "filters", loading: "loading", interactive: "interactive" }, outputs: { onExplore: "explore", loadingChange: "loadingChange" }, viewQueries: [{ propertyName: "tableElement", first: true, predicate: ["table"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<table #table class=\"mat-table cube-table\" (mouseleave)=\"move(-1, -1)\" *ngIf=\"data\">\r\n <thead>\r\n <!-- headers -->\r\n <tr class=\"mat-row\">\r\n <th></th>\r\n <th *ngFor=\"let column of columns; let x = index\" (mouseenter)=\"move(x + 1, -2)\" class=\"mat-header-cell\">\r\n {{ column.value }}\r\n </th>\r\n <th></th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <!-- indices -->\r\n <tr class=\"mat-row cube-index\" *ngFor=\"let index of indices; let y = index\">\r\n <th class=\"mat-header-cell\" (mouseenter)=\"move(0, y)\">{{index.title}}</th>\r\n <td *ngFor=\"let column of columns; let x = index\" class=\"mat-cell figure\" (mouseenter)=\"move(x + 1, y)\">\r\n
|
14421
|
+
CubeMatrixComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeMatrixComponent, selector: "bizdoc-cube-matrix", inputs: { available: "available", _cube: ["cube", "_cube"], _xAxis: ["xAxis", "_xAxis"], _series: ["series", "_series"], _indices: ["indices", "_indices"], scope: "scope", sum: "sum", filters: "filters", loading: "loading", interactive: "interactive" }, outputs: { onExplore: "explore", loadingChange: "loadingChange" }, viewQueries: [{ propertyName: "tableElement", first: true, predicate: ["table"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<table #table class=\"mat-table cube-table\" (mouseleave)=\"move(-1, -1)\" *ngIf=\"data\">\r\n <thead>\r\n <!-- headers -->\r\n <tr class=\"mat-row\">\r\n <th></th>\r\n <th *ngFor=\"let column of columns; let x = index\" (mouseenter)=\"move(x + 1, -2)\" class=\"mat-header-cell\">\r\n {{ column.value }}\r\n </th>\r\n <th></th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <!-- indices -->\r\n <tr class=\"mat-row cube-index\" *ngFor=\"let index of indices; let y = index\">\r\n <th class=\"mat-header-cell\" (mouseenter)=\"move(0, y)\">{{index.title}}</th>\r\n <td *ngFor=\"let column of columns; let x = index\" class=\"mat-cell figure\" (mouseenter)=\"move(x + 1, y)\">\r\n {{ data[index.name][column.key] }}\r\n </td>\r\n <th class=\"mat-cell figure\" (mouseenter)=\"move(0, y)\">\r\n {{ data[index.name]['_total'] }}\r\n </th>\r\n </tr>\r\n </tbody>\r\n <tbody>\r\n <!-- rows -->\r\n <tr *ngFor=\"let row of rows; let y = index\" class=\"mat-row\">\r\n <th class=\"mat-header-cell\" (mouseenter)=\"move(-2, y + indices.length)\">{{ row.value }}</th>\r\n <td *ngFor=\"let column of columns; let x = index\" class=\"mat-cell figure\" (mouseenter)=\"move(x + 1, y + indices.length)\">\r\n <span [class.clickable]=\"interactive && column.explorable !== false && row.explorable !== false\" (click)=\"explore(column, row)\">\r\n {{ data[row.key][column.key] }}\r\n </span>\r\n </td>\r\n <th class=\"mat-cell figure\" (mouseenter)=\"move(-1, y + indices.length)\">\r\n <ng-container *ngIf=\"data[row.key]['_total'] !== undefined\">\r\n {{ data[row.key]['_total'] }}\r\n </ng-container>\r\n </th>\r\n </tr>\r\n </tbody>\r\n <tfoot>\r\n <!-- footer -->\r\n <tr class=\"mat-row\">\r\n <th class=\"mat-header-cell\">{{available}}</th>\r\n <td *ngFor=\"let column of columns; let x = index\" class=\"mat-cell figure\" (mouseenter)=\"move(x + 1, -2)\"\r\n [class.negative-figure]=\"totals[column.key].startsWith('-')\">\r\n <ng-container *ngIf=\"totals[column.key] !== undefined\">\r\n {{ totals[column.key] }}\r\n </ng-container>\r\n </td>\r\n <th class=\"mat-cell figure\">{{ totals['_grand'] }}</th>\r\n </tr>\r\n </tfoot>\r\n</table>\r\n", styles: [".clickable{cursor:pointer}.cube-table{width:100%;display:inline-table;border-collapse:collapse}.cube-table th{cursor:default}.cube-table th.figure{font-weight:500}.cube-table td{padding-right:4px}\n"], directives: [{ type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i10$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], animations: [matrixAnimation] });
|
14379
14422
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeMatrixComponent, decorators: [{
|
14380
14423
|
type: Component,
|
14381
|
-
args: [{ selector: 'bizdoc-cube-matrix', animations: [matrixAnimation], template: "<table #table class=\"mat-table cube-table\" (mouseleave)=\"move(-1, -1)\" *ngIf=\"data\">\r\n <thead>\r\n <!-- headers -->\r\n <tr class=\"mat-row\">\r\n <th></th>\r\n <th *ngFor=\"let column of columns; let x = index\" (mouseenter)=\"move(x + 1, -2)\" class=\"mat-header-cell\">\r\n {{ column.value }}\r\n </th>\r\n <th></th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <!-- indices -->\r\n <tr class=\"mat-row cube-index\" *ngFor=\"let index of indices; let y = index\">\r\n <th class=\"mat-header-cell\" (mouseenter)=\"move(0, y)\">{{index.title}}</th>\r\n <td *ngFor=\"let column of columns; let x = index\" class=\"mat-cell figure\" (mouseenter)=\"move(x + 1, y)\">\r\n
|
14424
|
+
args: [{ selector: 'bizdoc-cube-matrix', animations: [matrixAnimation], template: "<table #table class=\"mat-table cube-table\" (mouseleave)=\"move(-1, -1)\" *ngIf=\"data\">\r\n <thead>\r\n <!-- headers -->\r\n <tr class=\"mat-row\">\r\n <th></th>\r\n <th *ngFor=\"let column of columns; let x = index\" (mouseenter)=\"move(x + 1, -2)\" class=\"mat-header-cell\">\r\n {{ column.value }}\r\n </th>\r\n <th></th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <!-- indices -->\r\n <tr class=\"mat-row cube-index\" *ngFor=\"let index of indices; let y = index\">\r\n <th class=\"mat-header-cell\" (mouseenter)=\"move(0, y)\">{{index.title}}</th>\r\n <td *ngFor=\"let column of columns; let x = index\" class=\"mat-cell figure\" (mouseenter)=\"move(x + 1, y)\">\r\n {{ data[index.name][column.key] }}\r\n </td>\r\n <th class=\"mat-cell figure\" (mouseenter)=\"move(0, y)\">\r\n {{ data[index.name]['_total'] }}\r\n </th>\r\n </tr>\r\n </tbody>\r\n <tbody>\r\n <!-- rows -->\r\n <tr *ngFor=\"let row of rows; let y = index\" class=\"mat-row\">\r\n <th class=\"mat-header-cell\" (mouseenter)=\"move(-2, y + indices.length)\">{{ row.value }}</th>\r\n <td *ngFor=\"let column of columns; let x = index\" class=\"mat-cell figure\" (mouseenter)=\"move(x + 1, y + indices.length)\">\r\n <span [class.clickable]=\"interactive && column.explorable !== false && row.explorable !== false\" (click)=\"explore(column, row)\">\r\n {{ data[row.key][column.key] }}\r\n </span>\r\n </td>\r\n <th class=\"mat-cell figure\" (mouseenter)=\"move(-1, y + indices.length)\">\r\n <ng-container *ngIf=\"data[row.key]['_total'] !== undefined\">\r\n {{ data[row.key]['_total'] }}\r\n </ng-container>\r\n </th>\r\n </tr>\r\n </tbody>\r\n <tfoot>\r\n <!-- footer -->\r\n <tr class=\"mat-row\">\r\n <th class=\"mat-header-cell\">{{available}}</th>\r\n <td *ngFor=\"let column of columns; let x = index\" class=\"mat-cell figure\" (mouseenter)=\"move(x + 1, -2)\"\r\n [class.negative-figure]=\"totals[column.key].startsWith('-')\">\r\n <ng-container *ngIf=\"totals[column.key] !== undefined\">\r\n {{ totals[column.key] }}\r\n </ng-container>\r\n </td>\r\n <th class=\"mat-cell figure\">{{ totals['_grand'] }}</th>\r\n </tr>\r\n </tfoot>\r\n</table>\r\n", styles: [".clickable{cursor:pointer}.cube-table{width:100%;display:inline-table;border-collapse:collapse}.cube-table th{cursor:default}.cube-table th.figure{font-weight:500}.cube-table td{padding-right:4px}\n"] }]
|
14382
14425
|
}], ctorParameters: function () { return [{ type: PromptService }, { type: CubeService }, { type: SessionService }, { type: DatasourceService }]; }, propDecorators: { tableElement: [{
|
14383
14426
|
type: ViewChild,
|
14384
14427
|
args: ['table']
|
14428
|
+
}], available: [{
|
14429
|
+
type: Input
|
14385
14430
|
}], _cube: [{
|
14386
14431
|
type: Input,
|
14387
14432
|
args: ['cube']
|
@@ -14592,6 +14637,7 @@ class CubeMatrixPaneComponent extends CubeMatrixBase {
|
|
14592
14637
|
this.aggregation = d['aggregate'];
|
14593
14638
|
this.sum = d['sum'];
|
14594
14639
|
this.selection = d['filters'];
|
14640
|
+
this.available = d['available'];
|
14595
14641
|
});
|
14596
14642
|
this._pane.queryParamsChange.subscribe(p => this.originalAxes = this.axes = p);
|
14597
14643
|
}
|
@@ -14608,12 +14654,12 @@ class CubeMatrixPaneComponent extends CubeMatrixBase {
|
|
14608
14654
|
}
|
14609
14655
|
}
|
14610
14656
|
CubeMatrixPaneComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeMatrixPaneComponent, deps: [{ token: PaneRef }, { token: PanesRouter }, { token: TranslateService }, { token: CubeService }, { token: DatasourceService }, { token: SessionService }], target: i0.ɵɵFactoryTarget.Component });
|
14611
|
-
CubeMatrixPaneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeMatrixPaneComponent, selector: "ng-component", host: { classAttribute: "pane" }, usesInheritance: true, ngImport: i0, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"table.refresh()\" [bizdocTooltip]=\"'Refresh' | translate\"><mat-icon matAnimate=\"rotate\">autorenew</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button [matMenuTriggerFor]=\"options\" *ngIf=\"patterns && patterns.length\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #options xPosition=\"before\">\r\n <!-- patterns -->\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"aggregate(p)\">{{p.title}}</button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"reset()\" [disabled]=\"!pattern\" [bizdocTooltip]=\"'Clear' | translate\">\r\n <mat-icon>clear_all</mat-icon>\r\n </button>\r\n <!-- filters -->\r\n <ng-container *ngFor=\"let f of filters\">\r\n <button mat-button [matMenuTriggerFor]=\"fmenu\">{{values[f.name]| typeValue : f.dataType | async}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #fmenu xPosition=\"before\">\r\n <button mat-menu-item *ngFor=\"let kv of sources[f.name] | async\"\r\n (click)=\"filter(f.name, kv.key, kv.value)\">\r\n {{kv.value}}\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n</mat-toolbar>\r\n<mat-progress-bar mode=\"query\" [style.visibility]=\"loading ? 'visible':'hidden'\"></mat-progress-bar>\r\n<bizdoc-cube-matrix [cube]=\"cube\" [xAxis]=\"xAxis\" [series]=\"series\" [indices]=\"indices\" [sum]=sum\r\n [filters]=\"axes\"\r\n [(loading)]=\"loading\" (explore)='explore($event)'></bizdoc-cube-matrix>\r\n", styles: [":host{min-width:450px}:host ::ng-deep .cube-table thead{position:sticky;top:0}\n"], components: [{ type: i7$4.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { type: i7$1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i7$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i8$1.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i8$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i11$1.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: CubeMatrixComponent, selector: "bizdoc-cube-matrix", inputs: ["cube", "xAxis", "series", "indices", "scope", "sum", "filters", "loading", "interactive"], outputs: ["explore", "loadingChange"] }], directives: [{ type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: MatIconAnimate, selector: "[matAnimate]" }, { type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i10$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "translate": TranslatePipe, "async": i10$1.AsyncPipe, "typeValue": TypeValuePipe } });
|
14657
|
+
CubeMatrixPaneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeMatrixPaneComponent, selector: "ng-component", host: { classAttribute: "pane" }, usesInheritance: true, ngImport: i0, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"table.refresh()\" [bizdocTooltip]=\"'Refresh' | translate\"><mat-icon matAnimate=\"rotate\">autorenew</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button [matMenuTriggerFor]=\"options\" *ngIf=\"patterns && patterns.length\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #options xPosition=\"before\">\r\n <!-- patterns -->\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"aggregate(p)\">{{p.title}}</button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"reset()\" [disabled]=\"!pattern\" [bizdocTooltip]=\"'Clear' | translate\">\r\n <mat-icon>clear_all</mat-icon>\r\n </button>\r\n <!-- filters -->\r\n <ng-container *ngFor=\"let f of filters\">\r\n <button mat-button [matMenuTriggerFor]=\"fmenu\">{{values[f.name]| typeValue : f.dataType | async}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #fmenu xPosition=\"before\">\r\n <button mat-menu-item *ngFor=\"let kv of sources[f.name] | async\"\r\n (click)=\"filter(f.name, kv.key, kv.value)\">\r\n {{kv.value}}\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n</mat-toolbar>\r\n<mat-progress-bar mode=\"query\" [style.visibility]=\"loading ? 'visible':'hidden'\"></mat-progress-bar>\r\n<bizdoc-cube-matrix [cube]=\"cube\" [xAxis]=\"xAxis\" [series]=\"series\" [indices]=\"indices\" [sum]=sum\r\n [filters]=\"axes\" [available]=\"available\"\r\n [(loading)]=\"loading\" (explore)='explore($event)'></bizdoc-cube-matrix>\r\n", styles: [":host{min-width:450px}:host ::ng-deep .cube-table thead{position:sticky;top:0}\n"], components: [{ type: i7$4.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { type: i7$1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i7$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i8$1.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i8$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i11$1.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: CubeMatrixComponent, selector: "bizdoc-cube-matrix", inputs: ["available", "cube", "xAxis", "series", "indices", "scope", "sum", "filters", "loading", "interactive"], outputs: ["explore", "loadingChange"] }], directives: [{ type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: MatIconAnimate, selector: "[matAnimate]" }, { type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i10$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "translate": TranslatePipe, "async": i10$1.AsyncPipe, "typeValue": TypeValuePipe } });
|
14612
14658
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeMatrixPaneComponent, decorators: [{
|
14613
14659
|
type: Component,
|
14614
14660
|
args: [{ host: {
|
14615
14661
|
class: 'pane'
|
14616
|
-
}, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"table.refresh()\" [bizdocTooltip]=\"'Refresh' | translate\"><mat-icon matAnimate=\"rotate\">autorenew</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button [matMenuTriggerFor]=\"options\" *ngIf=\"patterns && patterns.length\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #options xPosition=\"before\">\r\n <!-- patterns -->\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"aggregate(p)\">{{p.title}}</button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"reset()\" [disabled]=\"!pattern\" [bizdocTooltip]=\"'Clear' | translate\">\r\n <mat-icon>clear_all</mat-icon>\r\n </button>\r\n <!-- filters -->\r\n <ng-container *ngFor=\"let f of filters\">\r\n <button mat-button [matMenuTriggerFor]=\"fmenu\">{{values[f.name]| typeValue : f.dataType | async}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #fmenu xPosition=\"before\">\r\n <button mat-menu-item *ngFor=\"let kv of sources[f.name] | async\"\r\n (click)=\"filter(f.name, kv.key, kv.value)\">\r\n {{kv.value}}\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n</mat-toolbar>\r\n<mat-progress-bar mode=\"query\" [style.visibility]=\"loading ? 'visible':'hidden'\"></mat-progress-bar>\r\n<bizdoc-cube-matrix [cube]=\"cube\" [xAxis]=\"xAxis\" [series]=\"series\" [indices]=\"indices\" [sum]=sum\r\n [filters]=\"axes\"\r\n [(loading)]=\"loading\" (explore)='explore($event)'></bizdoc-cube-matrix>\r\n", styles: [":host{min-width:450px}:host ::ng-deep .cube-table thead{position:sticky;top:0}\n"] }]
|
14662
|
+
}, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"table.refresh()\" [bizdocTooltip]=\"'Refresh' | translate\"><mat-icon matAnimate=\"rotate\">autorenew</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button [matMenuTriggerFor]=\"options\" *ngIf=\"patterns && patterns.length\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #options xPosition=\"before\">\r\n <!-- patterns -->\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"aggregate(p)\">{{p.title}}</button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"reset()\" [disabled]=\"!pattern\" [bizdocTooltip]=\"'Clear' | translate\">\r\n <mat-icon>clear_all</mat-icon>\r\n </button>\r\n <!-- filters -->\r\n <ng-container *ngFor=\"let f of filters\">\r\n <button mat-button [matMenuTriggerFor]=\"fmenu\">{{values[f.name]| typeValue : f.dataType | async}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #fmenu xPosition=\"before\">\r\n <button mat-menu-item *ngFor=\"let kv of sources[f.name] | async\"\r\n (click)=\"filter(f.name, kv.key, kv.value)\">\r\n {{kv.value}}\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n</mat-toolbar>\r\n<mat-progress-bar mode=\"query\" [style.visibility]=\"loading ? 'visible':'hidden'\"></mat-progress-bar>\r\n<bizdoc-cube-matrix [cube]=\"cube\" [xAxis]=\"xAxis\" [series]=\"series\" [indices]=\"indices\" [sum]=sum\r\n [filters]=\"axes\" [available]=\"available\"\r\n [(loading)]=\"loading\" (explore)='explore($event)'></bizdoc-cube-matrix>\r\n", styles: [":host{min-width:450px}:host ::ng-deep .cube-table thead{position:sticky;top:0}\n"] }]
|
14617
14663
|
}], ctorParameters: function () { return [{ type: PaneRef }, { type: PanesRouter }, { type: TranslateService }, { type: CubeService }, { type: DatasourceService }, { type: SessionService }]; } });
|
14618
14664
|
|
14619
14665
|
const NOTIFICATION_DATA = new InjectionToken('notification');
|
@@ -19073,7 +19119,7 @@ class CubeMatrixMobileComponent extends CubeMatrixBase {
|
|
19073
19119
|
}
|
19074
19120
|
}
|
19075
19121
|
CubeMatrixMobileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeMatrixMobileComponent, deps: [{ token: WindowTitleService }, { token: i1$7.ActivatedRoute }, { token: i1$7.Router }, { token: CubeService }, { token: DatasourceService }, { token: SessionService }], target: i0.ɵɵFactoryTarget.Component });
|
19076
|
-
CubeMatrixMobileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeMatrixMobileComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"table.refresh()\" [bizdocTooltip]=\"'Refresh' | translate\"><mat-icon matAnimate=\"rotate\">autorenew</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button [matMenuTriggerFor]=\"options\" *ngIf=\"patterns && patterns.length\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #options xPosition=\"before\">\r\n <!-- patterns -->\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"aggregate(p)\">{{p.title}}</button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"reset()\" [disabled]=\"!pattern\" [bizdocTooltip]=\"'Clear' | translate\">\r\n <mat-icon>clear_all</mat-icon>\r\n </button>\r\n <!-- filters -->\r\n <ng-container *ngFor=\"let f of filters\">\r\n <button mat-button [matMenuTriggerFor]=\"fmenu\">{{values[f.name]| typeValue : f.dataType | async}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #fmenu xPosition=\"before\">\r\n <button mat-menu-item *ngFor=\"let kv of sources[f.name] | async\"\r\n (click)=\"filter(f.name, kv.key, kv.value)\">\r\n {{kv.value}}\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n</mat-toolbar>\r\n<mat-progress-bar mode=\"query\" [style.visibility]=\"loading ? 'visible':'hidden'\"></mat-progress-bar>\r\n<bizdoc-cube-matrix [cube]=\"cube\" [xAxis]=\"xAxis\" [series]=\"series\" [indices]=\"indices\" [sum]=sum\r\n [filters]=\"axes\"\r\n [(loading)]=\"loading\" (explore)='explore($event)'></bizdoc-cube-matrix>\r\n", styles: [":host{min-width:450px}:host ::ng-deep .cube-table thead{position:sticky;top:0}\n"], components: [{ type: i7$4.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { type: i7$1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i7$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i8$1.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i8$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i11$1.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: CubeMatrixComponent, selector: "bizdoc-cube-matrix", inputs: ["cube", "xAxis", "series", "indices", "scope", "sum", "filters", "loading", "interactive"], outputs: ["explore", "loadingChange"] }], directives: [{ type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: MatIconAnimate, selector: "[matAnimate]" }, { type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i10$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "translate": TranslatePipe, "async": i10$1.AsyncPipe, "typeValue": TypeValuePipe } });
|
19122
|
+
CubeMatrixMobileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeMatrixMobileComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"table.refresh()\" [bizdocTooltip]=\"'Refresh' | translate\"><mat-icon matAnimate=\"rotate\">autorenew</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button [matMenuTriggerFor]=\"options\" *ngIf=\"patterns && patterns.length\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #options xPosition=\"before\">\r\n <!-- patterns -->\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"aggregate(p)\">{{p.title}}</button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"reset()\" [disabled]=\"!pattern\" [bizdocTooltip]=\"'Clear' | translate\">\r\n <mat-icon>clear_all</mat-icon>\r\n </button>\r\n <!-- filters -->\r\n <ng-container *ngFor=\"let f of filters\">\r\n <button mat-button [matMenuTriggerFor]=\"fmenu\">{{values[f.name]| typeValue : f.dataType | async}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #fmenu xPosition=\"before\">\r\n <button mat-menu-item *ngFor=\"let kv of sources[f.name] | async\"\r\n (click)=\"filter(f.name, kv.key, kv.value)\">\r\n {{kv.value}}\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n</mat-toolbar>\r\n<mat-progress-bar mode=\"query\" [style.visibility]=\"loading ? 'visible':'hidden'\"></mat-progress-bar>\r\n<bizdoc-cube-matrix [cube]=\"cube\" [xAxis]=\"xAxis\" [series]=\"series\" [indices]=\"indices\" [sum]=sum\r\n [filters]=\"axes\"\r\n [(loading)]=\"loading\" (explore)='explore($event)'></bizdoc-cube-matrix>\r\n", styles: [":host{min-width:450px}:host ::ng-deep .cube-table thead{position:sticky;top:0}\n"], components: [{ type: i7$4.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { type: i7$1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i7$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i8$1.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i8$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i11$1.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: CubeMatrixComponent, selector: "bizdoc-cube-matrix", inputs: ["available", "cube", "xAxis", "series", "indices", "scope", "sum", "filters", "loading", "interactive"], outputs: ["explore", "loadingChange"] }], directives: [{ type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: MatIconAnimate, selector: "[matAnimate]" }, { type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i10$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "translate": TranslatePipe, "async": i10$1.AsyncPipe, "typeValue": TypeValuePipe } });
|
19077
19123
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeMatrixMobileComponent, decorators: [{
|
19078
19124
|
type: Component,
|
19079
19125
|
args: [{ template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"table.refresh()\" [bizdocTooltip]=\"'Refresh' | translate\"><mat-icon matAnimate=\"rotate\">autorenew</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button [matMenuTriggerFor]=\"options\" *ngIf=\"patterns && patterns.length\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #options xPosition=\"before\">\r\n <!-- patterns -->\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"aggregate(p)\">{{p.title}}</button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"reset()\" [disabled]=\"!pattern\" [bizdocTooltip]=\"'Clear' | translate\">\r\n <mat-icon>clear_all</mat-icon>\r\n </button>\r\n <!-- filters -->\r\n <ng-container *ngFor=\"let f of filters\">\r\n <button mat-button [matMenuTriggerFor]=\"fmenu\">{{values[f.name]| typeValue : f.dataType | async}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #fmenu xPosition=\"before\">\r\n <button mat-menu-item *ngFor=\"let kv of sources[f.name] | async\"\r\n (click)=\"filter(f.name, kv.key, kv.value)\">\r\n {{kv.value}}\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n</mat-toolbar>\r\n<mat-progress-bar mode=\"query\" [style.visibility]=\"loading ? 'visible':'hidden'\"></mat-progress-bar>\r\n<bizdoc-cube-matrix [cube]=\"cube\" [xAxis]=\"xAxis\" [series]=\"series\" [indices]=\"indices\" [sum]=sum\r\n [filters]=\"axes\"\r\n [(loading)]=\"loading\" (explore)='explore($event)'></bizdoc-cube-matrix>\r\n", styles: [":host{min-width:450px}:host ::ng-deep .cube-table thead{position:sticky;top:0}\n"] }]
|
@@ -19190,6 +19236,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
|
|
19190
19236
|
}]
|
19191
19237
|
}] });
|
19192
19238
|
|
19239
|
+
AccumulationChart.Inject(PyramidSeries, FunnelSeries, AccumulationDataLabel, AccumulationTooltip, AccumulationLegend, Export, PieSeries);
|
19240
|
+
Chart$1.Inject(Category, DateTime, Tooltip, Legend, Export, BarSeries, AreaSeries, BubbleSeries, ColumnSeries, LineSeries, PolarSeries, RadarSeries, SplineSeries, SplineAreaSeries, ScatterSeries, StackingLineSeries, StackingAreaSeries, StackingColumnSeries, StackingBarSeries, StepAreaSeries, StepLineSeries);
|
19193
19241
|
class SyncfusionChartModule {
|
19194
19242
|
}
|
19195
19243
|
SyncfusionChartModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: SyncfusionChartModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
@@ -19655,7 +19703,7 @@ class CubeMatrixPopupComponent extends CubeMatrixBase {
|
|
19655
19703
|
}
|
19656
19704
|
}
|
19657
19705
|
CubeMatrixPopupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeMatrixPopupComponent, deps: [{ token: PopupRef }, { token: POPUP_DATA }, { token: CubeService }, { token: DatasourceService }, { token: SessionService }, { token: PromptService }], target: i0.ɵɵFactoryTarget.Component });
|
19658
|
-
CubeMatrixPopupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeMatrixPopupComponent, selector: "ng-component", viewQueries: [{ propertyName: "table", first: true, predicate: CubeMatrixComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-progress-bar mode=\"query\" [style.visibility]=\"loading ? 'visible':'hidden'\"></mat-progress-bar>\r\n<div class=\"container\">\r\n <div class=\"row\" *ngIf=\"!preloading\">\r\n <span class=\"divider\"></span>\r\n <!-- title -->\r\n <button mat-icon-button [matMenuTriggerFor]=\"options\" *ngIf=\"patterns && patterns.length\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #options xPosition=\"before\">\r\n <!-- patterns -->\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"aggregate(p)\">{{p.title}}</button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"reset()\" [disabled]=\"!pattern\" [bizdocTooltip]=\"'Clear' | translate\">\r\n <mat-icon>clear_all</mat-icon>\r\n </button>\r\n <!-- filters -->\r\n <ng-container *ngFor=\"let f of filters\">\r\n <button mat-button [matMenuTriggerFor]=\"fmenu\">{{values[f.name]| typeValue : f.dataType | async}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #fmenu xPosition=\"before\">\r\n <button mat-menu-item *ngFor=\"let kv of sources[f.name] | async\"\r\n (click)=\"filter(f.name, kv.key, kv.value)\">\r\n {{kv.value}}\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n </div>\r\n <bizdoc-cube-matrix [cube]=\"cube\" [xAxis]=\"xAxis\" [series]=\"series\" [indices]=\"indices\" [sum]=sum [interactive]=\"false\"\r\n [filters]=\"axes\" [(loading)]=\"loading\"></bizdoc-cube-matrix>\r\n</div>\r\n", styles: [".container{padding:8px}\n"], components: [{ type: i11$1.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: i7$1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i7$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i8$1.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i8$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: CubeMatrixComponent, selector: "bizdoc-cube-matrix", inputs: ["cube", "xAxis", "series", "indices", "scope", "sum", "filters", "loading", "interactive"], outputs: ["explore", "loadingChange"] }], directives: [{ type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i10$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }], pipes: { "translate": TranslatePipe, "async": i10$1.AsyncPipe, "typeValue": TypeValuePipe } });
|
19706
|
+
CubeMatrixPopupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeMatrixPopupComponent, selector: "ng-component", viewQueries: [{ propertyName: "table", first: true, predicate: CubeMatrixComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-progress-bar mode=\"query\" [style.visibility]=\"loading ? 'visible':'hidden'\"></mat-progress-bar>\r\n<div class=\"container\">\r\n <div class=\"row\" *ngIf=\"!preloading\">\r\n <span class=\"divider\"></span>\r\n <!-- title -->\r\n <button mat-icon-button [matMenuTriggerFor]=\"options\" *ngIf=\"patterns && patterns.length\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #options xPosition=\"before\">\r\n <!-- patterns -->\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"aggregate(p)\">{{p.title}}</button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"reset()\" [disabled]=\"!pattern\" [bizdocTooltip]=\"'Clear' | translate\">\r\n <mat-icon>clear_all</mat-icon>\r\n </button>\r\n <!-- filters -->\r\n <ng-container *ngFor=\"let f of filters\">\r\n <button mat-button [matMenuTriggerFor]=\"fmenu\">{{values[f.name]| typeValue : f.dataType | async}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #fmenu xPosition=\"before\">\r\n <button mat-menu-item *ngFor=\"let kv of sources[f.name] | async\"\r\n (click)=\"filter(f.name, kv.key, kv.value)\">\r\n {{kv.value}}\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n </div>\r\n <bizdoc-cube-matrix [cube]=\"cube\" [xAxis]=\"xAxis\" [series]=\"series\" [indices]=\"indices\" [sum]=sum [interactive]=\"false\"\r\n [filters]=\"axes\" [(loading)]=\"loading\"></bizdoc-cube-matrix>\r\n</div>\r\n", styles: [".container{padding:8px}\n"], components: [{ type: i11$1.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: i7$1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i7$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i8$1.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i8$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: CubeMatrixComponent, selector: "bizdoc-cube-matrix", inputs: ["available", "cube", "xAxis", "series", "indices", "scope", "sum", "filters", "loading", "interactive"], outputs: ["explore", "loadingChange"] }], directives: [{ type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i10$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }], pipes: { "translate": TranslatePipe, "async": i10$1.AsyncPipe, "typeValue": TypeValuePipe } });
|
19659
19707
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeMatrixPopupComponent, decorators: [{
|
19660
19708
|
type: Component,
|
19661
19709
|
args: [{ template: "<mat-progress-bar mode=\"query\" [style.visibility]=\"loading ? 'visible':'hidden'\"></mat-progress-bar>\r\n<div class=\"container\">\r\n <div class=\"row\" *ngIf=\"!preloading\">\r\n <span class=\"divider\"></span>\r\n <!-- title -->\r\n <button mat-icon-button [matMenuTriggerFor]=\"options\" *ngIf=\"patterns && patterns.length\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #options xPosition=\"before\">\r\n <!-- patterns -->\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"aggregate(p)\">{{p.title}}</button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"reset()\" [disabled]=\"!pattern\" [bizdocTooltip]=\"'Clear' | translate\">\r\n <mat-icon>clear_all</mat-icon>\r\n </button>\r\n <!-- filters -->\r\n <ng-container *ngFor=\"let f of filters\">\r\n <button mat-button [matMenuTriggerFor]=\"fmenu\">{{values[f.name]| typeValue : f.dataType | async}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #fmenu xPosition=\"before\">\r\n <button mat-menu-item *ngFor=\"let kv of sources[f.name] | async\"\r\n (click)=\"filter(f.name, kv.key, kv.value)\">\r\n {{kv.value}}\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n </div>\r\n <bizdoc-cube-matrix [cube]=\"cube\" [xAxis]=\"xAxis\" [series]=\"series\" [indices]=\"indices\" [sum]=sum [interactive]=\"false\"\r\n [filters]=\"axes\" [(loading)]=\"loading\"></bizdoc-cube-matrix>\r\n</div>\r\n", styles: [".container{padding:8px}\n"] }]
|
@@ -19794,7 +19842,7 @@ class CubeInfo {
|
|
19794
19842
|
this._cf = _cf;
|
19795
19843
|
}
|
19796
19844
|
navigate(axes, options) {
|
19797
|
-
const { cube, view, series, xAxis, filters, aggregate, indices, sum } = options || {};
|
19845
|
+
const { cube, view, series, xAxis, filters, aggregate, indices, sum, available } = options || {};
|
19798
19846
|
const ccube = cube ? this._session.profile.cubes.find(c => c.name === cube) : this._session.profile.cubes[0];
|
19799
19847
|
if (isArray(axes))
|
19800
19848
|
axes = this._mapAxes(ccube, axes);
|
@@ -19805,7 +19853,7 @@ class CubeInfo {
|
|
19805
19853
|
else {
|
19806
19854
|
this._router.navigate(['cube', ccube.name, 'i', xAxis, series], {
|
19807
19855
|
queryParams: axes,
|
19808
|
-
state: { indices, aggregate, filters, sum }
|
19856
|
+
state: { indices, aggregate, filters, sum, available }
|
19809
19857
|
});
|
19810
19858
|
}
|
19811
19859
|
}
|
@@ -19953,7 +20001,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
|
|
19953
20001
|
type: Directive
|
19954
20002
|
}], ctorParameters: function () { return [{ type: WidgetRef }, { type: CubeInfo }, { type: SessionService }, { type: DatasourceService }, { type: CubeService }]; } });
|
19955
20003
|
|
19956
|
-
AccumulationChart.Inject(AccumulationDataLabel, AccumulationTooltip);
|
19957
20004
|
function cardColor() {
|
19958
20005
|
return getComputedStyle(document.querySelector(".mat-card-title")).color;
|
19959
20006
|
}
|
@@ -20088,7 +20135,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
|
|
20088
20135
|
}]
|
20089
20136
|
}], ctorParameters: function () { return [{ type: WidgetRef }, { type: CubeInfo }, { type: SessionService }, { type: DatasourceService }, { type: CubeService }, { type: i0.ElementRef }]; } });
|
20090
20137
|
|
20091
|
-
Chart$1.Inject(DateTime$1, BarSeries$1, AreaSeries$1, BubbleSeries$1, ColumnSeries$1, LineSeries$1, PolarSeries$1, RadarSeries$1, SplineSeries$1, SplineAreaSeries$1, ScatterSeries$1, StackingLineSeries$1, StackingAreaSeries$1, StackingColumnSeries$1, StackingBarSeries$1, StepAreaSeries$1, StepLineSeries$1);
|
20092
20138
|
/** statistics component*/
|
20093
20139
|
class CubeChartAnalysisWidget extends CubeAnalysisBase {
|
20094
20140
|
constructor(ref, session, ds, cube, info, _elementRef, _translate) {
|
@@ -23830,7 +23876,7 @@ let CubeDocumentMatrixComponent = class CubeDocumentMatrixComponent extends Cube
|
|
23830
23876
|
}
|
23831
23877
|
};
|
23832
23878
|
CubeDocumentMatrixComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeDocumentMatrixComponent, deps: [{ token: DocumentViewRef }, { token: RouterImpl }, { token: CubeService }, { token: DatasourceService }, { token: SessionService }], target: i0.ɵɵFactoryTarget.Component });
|
23833
|
-
CubeDocumentMatrixComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeDocumentMatrixComponent, selector: "ng-component", host: { classAttribute: "view" }, viewQueries: [{ propertyName: "table", first: true, predicate: CubeMatrixComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"hasdata; else none\">\r\n <div class=\"nav-toolbar\">\r\n <ng-container *ngIf=\"alternate\">\r\n <button mat-button [matMenuTriggerFor]=\"cmenu\">{{cube.title}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #cmenu>\r\n <button mat-menu-item *ngFor=\"let a of alternate\"\r\n (click)=\"switchTo(a)\">\r\n {{a.title}}\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n <span class=\"divider\"></span>\r\n <!-- title -->\r\n <button mat-icon-button [matMenuTriggerFor]=\"patternsMenu\" *ngIf=\"patterns && patterns.length\" [bizdocTooltip]=\"'Pattern'|translate\" [attr.aria-label]=\"'Pattern'|translate\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #patternsMenu xPosition=\"before\">\r\n <!-- patterns -->\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"patternChange(p)\">{{p.title}}</button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"reset()\" [disabled]=\"!pattern\" [bizdocTooltip]=\"'Clear' | translate\">\r\n <mat-icon>clear_all</mat-icon>\r\n </button>\r\n <!-- filters -->\r\n <ng-container *ngFor=\"let f of filters\">\r\n <button mat-button [matMenuTriggerFor]=\"fmenu\">{{axes[f.name] | typeValue : f.dataType | async}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #fmenu xPosition=\"before\">\r\n <button mat-menu-item *ngFor=\"let kv of sources[f.name] | async\"\r\n (click)=\"filter(f.name, kv.key, kv.value)\">\r\n {{kv.value}}\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n </div>\r\n <div class=\"loading-view\" *ngIf=\"loading\">\r\n <mat-spinner color=\"accent\"></mat-spinner>\r\n </div>\r\n <bizdoc-cube-matrix [cube]=\"cube.name\" [xAxis]=\"xAxis\" [series]=\"series\" [indices]=\"indices\" [sum]=\"sum\"\r\n [filters]=\"axes\" [scope]=\"scope\" class=\"table\"\r\n (explore)='explore($event)' [(loading)]=\"loading\"></bizdoc-cube-matrix>\r\n</ng-container>\r\n<ng-template #none>\r\n <bizdoc-none icon=\"insert_chart_outlined\" subtitle=\"NothingHere\"></bizdoc-none>\r\n</ng-template>\r\n", styles: [".table{padding:0 8px}\n"], components: [{ type: i7$1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i7$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i8$1.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i8$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i10.MatSpinner, selector: "mat-spinner", inputs: ["color"] }, { type: CubeMatrixComponent, selector: "bizdoc-cube-matrix", inputs: ["cube", "xAxis", "series", "indices", "scope", "sum", "filters", "loading", "interactive"], outputs: ["explore", "loadingChange"] }, { type: NoneComponent, selector: "bizdoc-none", inputs: ["title", "subtitle", "icon"] }], directives: [{ type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i10$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }], pipes: { "translate": TranslatePipe, "async": i10$1.AsyncPipe, "typeValue": TypeValuePipe } });
|
23879
|
+
CubeDocumentMatrixComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeDocumentMatrixComponent, selector: "ng-component", host: { classAttribute: "view" }, viewQueries: [{ propertyName: "table", first: true, predicate: CubeMatrixComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"hasdata; else none\">\r\n <div class=\"nav-toolbar\">\r\n <ng-container *ngIf=\"alternate\">\r\n <button mat-button [matMenuTriggerFor]=\"cmenu\">{{cube.title}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #cmenu>\r\n <button mat-menu-item *ngFor=\"let a of alternate\"\r\n (click)=\"switchTo(a)\">\r\n {{a.title}}\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n <span class=\"divider\"></span>\r\n <!-- title -->\r\n <button mat-icon-button [matMenuTriggerFor]=\"patternsMenu\" *ngIf=\"patterns && patterns.length\" [bizdocTooltip]=\"'Pattern'|translate\" [attr.aria-label]=\"'Pattern'|translate\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #patternsMenu xPosition=\"before\">\r\n <!-- patterns -->\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"patternChange(p)\">{{p.title}}</button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"reset()\" [disabled]=\"!pattern\" [bizdocTooltip]=\"'Clear' | translate\">\r\n <mat-icon>clear_all</mat-icon>\r\n </button>\r\n <!-- filters -->\r\n <ng-container *ngFor=\"let f of filters\">\r\n <button mat-button [matMenuTriggerFor]=\"fmenu\">{{axes[f.name] | typeValue : f.dataType | async}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #fmenu xPosition=\"before\">\r\n <button mat-menu-item *ngFor=\"let kv of sources[f.name] | async\"\r\n (click)=\"filter(f.name, kv.key, kv.value)\">\r\n {{kv.value}}\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n </div>\r\n <div class=\"loading-view\" *ngIf=\"loading\">\r\n <mat-spinner color=\"accent\"></mat-spinner>\r\n </div>\r\n <bizdoc-cube-matrix [cube]=\"cube.name\" [xAxis]=\"xAxis\" [series]=\"series\" [indices]=\"indices\" [sum]=\"sum\"\r\n [filters]=\"axes\" [scope]=\"scope\" class=\"table\"\r\n (explore)='explore($event)' [(loading)]=\"loading\"></bizdoc-cube-matrix>\r\n</ng-container>\r\n<ng-template #none>\r\n <bizdoc-none icon=\"insert_chart_outlined\" subtitle=\"NothingHere\"></bizdoc-none>\r\n</ng-template>\r\n", styles: [".table{padding:0 8px}\n"], components: [{ type: i7$1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i7$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i8$1.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i8$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i10.MatSpinner, selector: "mat-spinner", inputs: ["color"] }, { type: CubeMatrixComponent, selector: "bizdoc-cube-matrix", inputs: ["available", "cube", "xAxis", "series", "indices", "scope", "sum", "filters", "loading", "interactive"], outputs: ["explore", "loadingChange"] }, { type: NoneComponent, selector: "bizdoc-none", inputs: ["title", "subtitle", "icon"] }], directives: [{ type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i10$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }], pipes: { "translate": TranslatePipe, "async": i10$1.AsyncPipe, "typeValue": TypeValuePipe } });
|
23834
23880
|
CubeDocumentMatrixComponent = __decorate([
|
23835
23881
|
BizDoc({
|
23836
23882
|
selector: 'bizdoc-cube-matrix'
|
@@ -24619,7 +24665,7 @@ class CubeSumComponent {
|
|
24619
24665
|
}
|
24620
24666
|
}
|
24621
24667
|
CubeSumComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeSumComponent, deps: [{ token: DatasourceService }, { token: CubeService }, { token: SessionService }], target: i0.ɵɵFactoryTarget.Component });
|
24622
|
-
CubeSumComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeSumComponent, selector: "bizdoc-cube-sum", inputs: { xAxis: "xAxis", periodPolicy: "periodPolicy", parentAxis: "parentAxis", filters: "filters", cube: "cube", indices: "indices", scope: "scope" }, outputs: { onExplore: "explore" }, usesOnChanges: true, ngImport: i0, template: " <!-- levels -->\r\n<div class=\"row\">\r\n <div *ngIf=\"prev\" class=\"level prev-level\">\r\n <div class=\"level-header row\">\r\n <mat-icon class=\"cliclable mat-icon-rtl-mirror\" [inline]=true (click)=\"goprev()\" *ngIf=\"back\">keyboard_arrow_left</mat-icon>\r\n <div div class=\"mat-h1 title\">\r\n {{'PrevLevel'| translate}}\r\n </div>\r\n <span class=\"divider\"></span>\r\n <mat-icon *ngIf=\"forward\" class=\"cliclable mat-icon-rtl-mirror\" [inline]=true (click)=\"gonext()\">keyboard_arrow_right</mat-icon>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"level; context: {use: prev}\"></ng-container>\r\n </div>\r\n <div *ngIf=\"current\" class=\"level current-level\">\r\n <div class=\"level-header row\">\r\n <div div class=\"mat-h1 title\">\r\n {{'CurrentLevel'| translate : primaryAxis.title}}\r\n </div>\r\n <span class=\"divider\"></span>\r\n <mat-icon [bizdocTooltip]=\"help\" *ngIf=\"help\" [inline]=\"true\">help_outline</mat-icon>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"level; context: {use: current}\"></ng-container>\r\n </div>\r\n <div *ngIf=\"next\" class=\"level next-level\">\r\n <div class=\"level-header\">\r\n <div div class=\"mat-h1 title\">\r\n {{'NextLevel'| translate}}\r\n </div>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"level; context: {use: next}\"></ng-container>\r\n </div>\r\n</div>\r\n<!-- level -->\r\n<ng-template #level let-use=\"use\" let-help=\"help\">\r\n <div>\r\n <h2 class=\"mat-h1\" [class.cliclable]=\"use.value !== 0\" (click)=\"explore(use)\">{{use.title}}</h2>\r\n <div class=\"row\">\r\n <h3 class=\"mat-h1\" [class.cliclable]=\"use.value !== 0\" (click)=\"explore(use)\">{{use.value | currency : currencyCode : 'symbol' : digitsInfo}}</h3>\r\n <span class=\"divider\"></span>\r\n <div *ngIf=\"use.chain && use.value !== use.chain.value\">\r\n <span *ngIf=\"use.value !== 0 && use.chain.value !== 0\">{{Math.round(use.value / use.chain.value * 100) }}%</span>\r\n <mat-icon>{{use.value > use.chain.value ? 'trending_up':'trending_down' }}</mat-icon>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- -->\r\n <div class=\"row\">\r\n <div *ngFor=\"let i of use.indices\" class=\"index\">\r\n <h4 class=\"mat-h3 title\">{{i.title}}</h4>\r\n <h5 class=\"mat-h3\" [class.cliclable]=\"i.value !== 0\" (click)=\"explore(use, i.name)\">{{i.value | currency : currencyCode : 'symbol' : digitsInfo}}</h5>\r\n </div>\r\n </div>\r\n <div class=\"bar\" *ngIf=\"use.indices.length\" [class.available]=\"use.percent < 100\">\r\n <div class=\"value\" [style.flexBasis]=\"Math.round(use.percent < 100 ?\r\n 100 - use.percent :\r\n 100 / use.percent * 100) + '%'\"\r\n [@bar]=\"use.animation\"></div>\r\n <div class=\"overflow\" *ngIf=\"use.percent > 0\"></div>\r\n </div>\r\n</ng-template>\r\n", styles: [":host{padding:0 8px}.level{border-width:thin;border-radius:3px;padding:8px;margin:3px;flex:1 1 0;border-style:solid}.level .cliclable{cursor:pointer}.level.next-level{border-style:dashed}.level .level-header{align-items:center}.level .level-header .title{margin:0;line-height:22px;font-size:inherit;font-feature-settings:\"pcap\",\"c2pc\";font-variant-caps:all-petite-caps}.level h3{margin:0;font-size:x-large}.level h2{font-weight:400;font-size:larger;margin:0}.level .percent{display:flex;align-items:center}.level .index{padding:0 4px}.level .index h5
|
24668
|
+
CubeSumComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeSumComponent, selector: "bizdoc-cube-sum", inputs: { xAxis: "xAxis", periodPolicy: "periodPolicy", parentAxis: "parentAxis", filters: "filters", cube: "cube", indices: "indices", scope: "scope" }, outputs: { onExplore: "explore" }, usesOnChanges: true, ngImport: i0, template: " <!-- levels -->\r\n<div class=\"row\">\r\n <div *ngIf=\"prev\" class=\"level prev-level\">\r\n <div class=\"level-header row\">\r\n <mat-icon class=\"cliclable mat-icon-rtl-mirror\" [inline]=true (click)=\"goprev()\" *ngIf=\"back\">keyboard_arrow_left</mat-icon>\r\n <div div class=\"mat-h1 title\">\r\n {{'PrevLevel'| translate}}\r\n </div>\r\n <span class=\"divider\"></span>\r\n <mat-icon *ngIf=\"forward\" class=\"cliclable mat-icon-rtl-mirror\" [inline]=true (click)=\"gonext()\">keyboard_arrow_right</mat-icon>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"level; context: {use: prev}\"></ng-container>\r\n </div>\r\n <div *ngIf=\"current\" class=\"level current-level\">\r\n <div class=\"level-header row\">\r\n <div div class=\"mat-h1 title\">\r\n {{'CurrentLevel'| translate : primaryAxis.title}}\r\n </div>\r\n <span class=\"divider\"></span>\r\n <mat-icon [bizdocTooltip]=\"help\" *ngIf=\"help\" [inline]=\"true\">help_outline</mat-icon>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"level; context: {use: current}\"></ng-container>\r\n </div>\r\n <div *ngIf=\"next\" class=\"level next-level\">\r\n <div class=\"level-header\">\r\n <div div class=\"mat-h1 title\">\r\n {{'NextLevel'| translate}}\r\n </div>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"level; context: {use: next}\"></ng-container>\r\n </div>\r\n</div>\r\n<!-- level -->\r\n<ng-template #level let-use=\"use\" let-help=\"help\">\r\n <div>\r\n <h2 class=\"mat-h1\" [class.cliclable]=\"use.value !== 0\" (click)=\"explore(use)\">{{use.title}}</h2>\r\n <div class=\"row\">\r\n <h3 class=\"mat-h1\" [class.cliclable]=\"use.value !== 0\" (click)=\"explore(use)\">{{use.value | currency : currencyCode : 'symbol' : digitsInfo}}</h3>\r\n <span class=\"divider\"></span>\r\n <div *ngIf=\"use.chain && use.value !== use.chain.value\">\r\n <span *ngIf=\"use.value !== 0 && use.chain.value !== 0\">{{Math.round(use.value / use.chain.value * 100) }}%</span>\r\n <mat-icon>{{use.value > use.chain.value ? 'trending_up':'trending_down' }}</mat-icon>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- -->\r\n <div class=\"row\">\r\n <div *ngFor=\"let i of use.indices\" class=\"index\">\r\n <h4 class=\"mat-h3 title\">{{i.title}}</h4>\r\n <h5 class=\"mat-h3\" [class.cliclable]=\"i.value !== 0\" (click)=\"explore(use, i.name)\">{{i.value | currency : currencyCode : 'symbol' : digitsInfo}}</h5>\r\n </div>\r\n </div>\r\n <div class=\"bar\" *ngIf=\"use.indices.length\" [class.available]=\"use.percent < 100\">\r\n <div class=\"value\" [style.flexBasis]=\"Math.round(use.percent < 100 ?\r\n 100 - use.percent :\r\n 100 / use.percent * 100) + '%'\"\r\n [@bar]=\"use.animation\"></div>\r\n <div class=\"overflow\" *ngIf=\"use.percent > 0\"></div>\r\n </div>\r\n</ng-template>\r\n", styles: [":host{padding:0 8px}.level{border-width:thin;border-radius:3px;padding:8px;margin:3px;flex:1 1 0;border-style:solid}.level .cliclable{cursor:pointer}.level.next-level{border-style:dashed}.level .level-header{align-items:center}.level .level-header .title{margin:0;line-height:22px;font-size:inherit;font-feature-settings:\"pcap\",\"c2pc\";font-variant-caps:all-petite-caps}.level h3{margin:0;font-size:x-large}.level h2{font-weight:400;font-size:larger;margin:0}.level .percent{display:flex;align-items:center}.level .index{padding:0 4px}.level .index h5,.level .index h4{margin:0}.level .bar{display:flex}.level .bar .value,.level .bar .overflow{height:12px}.level .bar .value{flex:0 0 0%}.level .bar .overflow{flex:1 1 0%;box-sizing:border-box}.level .bar.available .overflow{border-width:1px;border-style:dashed}\n"], components: [{ type: i7$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i10$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i10$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "translate": TranslatePipe, "currency": i10$1.CurrencyPipe }, animations: [trigger('bar', [
|
24623
24669
|
transition('*<=>*', [style({
|
24624
24670
|
flexBasis: '{{startWidth}}%'
|
24625
24671
|
}), animate('500ms ease')], { params: { startWidth: 100 } }),
|
@@ -24630,7 +24676,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
|
|
24630
24676
|
transition('*<=>*', [style({
|
24631
24677
|
flexBasis: '{{startWidth}}%'
|
24632
24678
|
}), animate('500ms ease')], { params: { startWidth: 100 } }),
|
24633
|
-
])], template: " <!-- levels -->\r\n<div class=\"row\">\r\n <div *ngIf=\"prev\" class=\"level prev-level\">\r\n <div class=\"level-header row\">\r\n <mat-icon class=\"cliclable mat-icon-rtl-mirror\" [inline]=true (click)=\"goprev()\" *ngIf=\"back\">keyboard_arrow_left</mat-icon>\r\n <div div class=\"mat-h1 title\">\r\n {{'PrevLevel'| translate}}\r\n </div>\r\n <span class=\"divider\"></span>\r\n <mat-icon *ngIf=\"forward\" class=\"cliclable mat-icon-rtl-mirror\" [inline]=true (click)=\"gonext()\">keyboard_arrow_right</mat-icon>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"level; context: {use: prev}\"></ng-container>\r\n </div>\r\n <div *ngIf=\"current\" class=\"level current-level\">\r\n <div class=\"level-header row\">\r\n <div div class=\"mat-h1 title\">\r\n {{'CurrentLevel'| translate : primaryAxis.title}}\r\n </div>\r\n <span class=\"divider\"></span>\r\n <mat-icon [bizdocTooltip]=\"help\" *ngIf=\"help\" [inline]=\"true\">help_outline</mat-icon>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"level; context: {use: current}\"></ng-container>\r\n </div>\r\n <div *ngIf=\"next\" class=\"level next-level\">\r\n <div class=\"level-header\">\r\n <div div class=\"mat-h1 title\">\r\n {{'NextLevel'| translate}}\r\n </div>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"level; context: {use: next}\"></ng-container>\r\n </div>\r\n</div>\r\n<!-- level -->\r\n<ng-template #level let-use=\"use\" let-help=\"help\">\r\n <div>\r\n <h2 class=\"mat-h1\" [class.cliclable]=\"use.value !== 0\" (click)=\"explore(use)\">{{use.title}}</h2>\r\n <div class=\"row\">\r\n <h3 class=\"mat-h1\" [class.cliclable]=\"use.value !== 0\" (click)=\"explore(use)\">{{use.value | currency : currencyCode : 'symbol' : digitsInfo}}</h3>\r\n <span class=\"divider\"></span>\r\n <div *ngIf=\"use.chain && use.value !== use.chain.value\">\r\n <span *ngIf=\"use.value !== 0 && use.chain.value !== 0\">{{Math.round(use.value / use.chain.value * 100) }}%</span>\r\n <mat-icon>{{use.value > use.chain.value ? 'trending_up':'trending_down' }}</mat-icon>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- -->\r\n <div class=\"row\">\r\n <div *ngFor=\"let i of use.indices\" class=\"index\">\r\n <h4 class=\"mat-h3 title\">{{i.title}}</h4>\r\n <h5 class=\"mat-h3\" [class.cliclable]=\"i.value !== 0\" (click)=\"explore(use, i.name)\">{{i.value | currency : currencyCode : 'symbol' : digitsInfo}}</h5>\r\n </div>\r\n </div>\r\n <div class=\"bar\" *ngIf=\"use.indices.length\" [class.available]=\"use.percent < 100\">\r\n <div class=\"value\" [style.flexBasis]=\"Math.round(use.percent < 100 ?\r\n 100 - use.percent :\r\n 100 / use.percent * 100) + '%'\"\r\n [@bar]=\"use.animation\"></div>\r\n <div class=\"overflow\" *ngIf=\"use.percent > 0\"></div>\r\n </div>\r\n</ng-template>\r\n", styles: [":host{padding:0 8px}.level{border-width:thin;border-radius:3px;padding:8px;margin:3px;flex:1 1 0;border-style:solid}.level .cliclable{cursor:pointer}.level.next-level{border-style:dashed}.level .level-header{align-items:center}.level .level-header .title{margin:0;line-height:22px;font-size:inherit;font-feature-settings:\"pcap\",\"c2pc\";font-variant-caps:all-petite-caps}.level h3{margin:0;font-size:x-large}.level h2{font-weight:400;font-size:larger;margin:0}.level .percent{display:flex;align-items:center}.level .index{padding:0 4px}.level .index h5
|
24679
|
+
])], template: " <!-- levels -->\r\n<div class=\"row\">\r\n <div *ngIf=\"prev\" class=\"level prev-level\">\r\n <div class=\"level-header row\">\r\n <mat-icon class=\"cliclable mat-icon-rtl-mirror\" [inline]=true (click)=\"goprev()\" *ngIf=\"back\">keyboard_arrow_left</mat-icon>\r\n <div div class=\"mat-h1 title\">\r\n {{'PrevLevel'| translate}}\r\n </div>\r\n <span class=\"divider\"></span>\r\n <mat-icon *ngIf=\"forward\" class=\"cliclable mat-icon-rtl-mirror\" [inline]=true (click)=\"gonext()\">keyboard_arrow_right</mat-icon>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"level; context: {use: prev}\"></ng-container>\r\n </div>\r\n <div *ngIf=\"current\" class=\"level current-level\">\r\n <div class=\"level-header row\">\r\n <div div class=\"mat-h1 title\">\r\n {{'CurrentLevel'| translate : primaryAxis.title}}\r\n </div>\r\n <span class=\"divider\"></span>\r\n <mat-icon [bizdocTooltip]=\"help\" *ngIf=\"help\" [inline]=\"true\">help_outline</mat-icon>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"level; context: {use: current}\"></ng-container>\r\n </div>\r\n <div *ngIf=\"next\" class=\"level next-level\">\r\n <div class=\"level-header\">\r\n <div div class=\"mat-h1 title\">\r\n {{'NextLevel'| translate}}\r\n </div>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"level; context: {use: next}\"></ng-container>\r\n </div>\r\n</div>\r\n<!-- level -->\r\n<ng-template #level let-use=\"use\" let-help=\"help\">\r\n <div>\r\n <h2 class=\"mat-h1\" [class.cliclable]=\"use.value !== 0\" (click)=\"explore(use)\">{{use.title}}</h2>\r\n <div class=\"row\">\r\n <h3 class=\"mat-h1\" [class.cliclable]=\"use.value !== 0\" (click)=\"explore(use)\">{{use.value | currency : currencyCode : 'symbol' : digitsInfo}}</h3>\r\n <span class=\"divider\"></span>\r\n <div *ngIf=\"use.chain && use.value !== use.chain.value\">\r\n <span *ngIf=\"use.value !== 0 && use.chain.value !== 0\">{{Math.round(use.value / use.chain.value * 100) }}%</span>\r\n <mat-icon>{{use.value > use.chain.value ? 'trending_up':'trending_down' }}</mat-icon>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- -->\r\n <div class=\"row\">\r\n <div *ngFor=\"let i of use.indices\" class=\"index\">\r\n <h4 class=\"mat-h3 title\">{{i.title}}</h4>\r\n <h5 class=\"mat-h3\" [class.cliclable]=\"i.value !== 0\" (click)=\"explore(use, i.name)\">{{i.value | currency : currencyCode : 'symbol' : digitsInfo}}</h5>\r\n </div>\r\n </div>\r\n <div class=\"bar\" *ngIf=\"use.indices.length\" [class.available]=\"use.percent < 100\">\r\n <div class=\"value\" [style.flexBasis]=\"Math.round(use.percent < 100 ?\r\n 100 - use.percent :\r\n 100 / use.percent * 100) + '%'\"\r\n [@bar]=\"use.animation\"></div>\r\n <div class=\"overflow\" *ngIf=\"use.percent > 0\"></div>\r\n </div>\r\n</ng-template>\r\n", styles: [":host{padding:0 8px}.level{border-width:thin;border-radius:3px;padding:8px;margin:3px;flex:1 1 0;border-style:solid}.level .cliclable{cursor:pointer}.level.next-level{border-style:dashed}.level .level-header{align-items:center}.level .level-header .title{margin:0;line-height:22px;font-size:inherit;font-feature-settings:\"pcap\",\"c2pc\";font-variant-caps:all-petite-caps}.level h3{margin:0;font-size:x-large}.level h2{font-weight:400;font-size:larger;margin:0}.level .percent{display:flex;align-items:center}.level .index{padding:0 4px}.level .index h5,.level .index h4{margin:0}.level .bar{display:flex}.level .bar .value,.level .bar .overflow{height:12px}.level .bar .value{flex:0 0 0%}.level .bar .overflow{flex:1 1 0%;box-sizing:border-box}.level .bar.available .overflow{border-width:1px;border-style:dashed}\n"] }]
|
24634
24680
|
}], ctorParameters: function () { return [{ type: DatasourceService }, { type: CubeService }, { type: SessionService }]; }, propDecorators: { xAxis: [{
|
24635
24681
|
type: Input
|
24636
24682
|
}], periodPolicy: [{
|
@@ -25228,6 +25274,7 @@ SharedModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
25228
25274
|
AccountService, ChatService, ChatInfo,
|
25229
25275
|
GuideService, OptionsService,
|
25230
25276
|
BizDocComponentFactoryResolver, PromptService, TranslateService,
|
25277
|
+
//{ provide: LOCALE_ID, useClass: SessionService.getLocale() },
|
25231
25278
|
{ provide: HTTP_INTERCEPTORS, useClass: AppHttpInterceptor, multi: true },
|
25232
25279
|
{ provide: APP_INITIALIZER, useFactory: TranslateProviderFactory, deps: [TranslateService], multi: true },
|
25233
25280
|
], imports: [[
|
@@ -25343,6 +25390,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
|
|
25343
25390
|
AccountService, ChatService, ChatInfo,
|
25344
25391
|
GuideService, OptionsService,
|
25345
25392
|
BizDocComponentFactoryResolver, PromptService, TranslateService,
|
25393
|
+
//{ provide: LOCALE_ID, useClass: SessionService.getLocale() },
|
25346
25394
|
{ provide: HTTP_INTERCEPTORS, useClass: AppHttpInterceptor, multi: true },
|
25347
25395
|
{ provide: APP_INITIALIZER, useFactory: TranslateProviderFactory, deps: [TranslateService], multi: true },
|
25348
25396
|
],
|