@bizdoc/core 1.15.3 → 1.15.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/bizdoc-schema.json +6 -8
- package/assets/system/icons.json +1 -0
- package/esm2020/lib/admin/configuration-designer/designer-element.component.mjs +9 -7
- package/esm2020/lib/admin/configuration-designer/designer.base.mjs +109 -4
- package/esm2020/lib/admin/configuration-designer/designer.component.mjs +115 -46
- package/esm2020/lib/admin/configuration-designer/elements/action.component.mjs +12 -20
- package/esm2020/lib/admin/configuration-designer/elements/analysis-view.component.mjs +48 -0
- package/esm2020/lib/admin/configuration-designer/elements/analysis-widget.component.mjs +16 -39
- package/esm2020/lib/admin/configuration-designer/elements/anomaly-rule.component.mjs +10 -15
- package/esm2020/lib/admin/configuration-designer/elements/box-form.component.mjs +14 -15
- package/esm2020/lib/admin/configuration-designer/elements/configuration-datasource.component.mjs +61 -0
- package/esm2020/lib/admin/configuration-designer/elements/cube-view.component.mjs +18 -28
- package/esm2020/lib/admin/configuration-designer/elements/cube.component.mjs +142 -17
- package/esm2020/lib/admin/configuration-designer/elements/documents-report.component.mjs +15 -34
- package/esm2020/lib/admin/configuration-designer/elements/documents-widget.component.mjs +24 -34
- package/esm2020/lib/admin/configuration-designer/elements/explore-view.component.mjs +18 -27
- package/esm2020/lib/admin/configuration-designer/elements/folder.component.mjs +16 -19
- package/esm2020/lib/admin/configuration-designer/elements/form.component.mjs +58 -25
- package/esm2020/lib/admin/configuration-designer/elements/guide.component.mjs +34 -19
- package/esm2020/lib/admin/configuration-designer/elements/matrix-view.component.mjs +45 -41
- package/esm2020/lib/admin/configuration-designer/elements/parallel-view.component.mjs +18 -34
- package/esm2020/lib/admin/configuration-designer/elements/performance-widget.component.mjs +15 -29
- package/esm2020/lib/admin/configuration-designer/elements/pivot-view.component.mjs +17 -34
- package/esm2020/lib/admin/configuration-designer/elements/report.component.mjs +12 -18
- package/esm2020/lib/admin/configuration-designer/elements/return-to-role-action.component.mjs +38 -0
- package/esm2020/lib/admin/configuration-designer/elements/role.component.mjs +18 -18
- package/esm2020/lib/admin/configuration-designer/elements/rule.component.mjs +9 -18
- package/esm2020/lib/admin/configuration-designer/elements/state.component.mjs +28 -0
- package/esm2020/lib/admin/configuration-designer/elements/sum-view.component.mjs +17 -35
- package/esm2020/lib/admin/configuration-designer/elements/tasks-report.component.mjs +19 -42
- package/esm2020/lib/admin/configuration-designer/elements/type.component.mjs +15 -19
- package/esm2020/lib/admin/configuration-designer/elements/usage-report.component.mjs +37 -33
- package/esm2020/lib/admin/configuration-designer/elements/utility.component.mjs +12 -18
- package/esm2020/lib/admin/configuration-designer/elements/view.component.mjs +13 -16
- package/esm2020/lib/admin/configuration-designer/elements/widget.component.mjs +10 -20
- package/esm2020/lib/admin/configuration-designer/icon-picker.component.mjs +162 -0
- package/esm2020/lib/admin/configuration-designer/privileges.component.mjs +31 -16
- package/esm2020/lib/admin/core/color-picker.input.mjs +9 -33
- package/esm2020/lib/admin/document-trace/document-trace.component.mjs +4 -4
- package/esm2020/lib/admin/form/designer/designer.component.mjs +140 -18
- package/esm2020/lib/admin/form/form.resolve.service.mjs +7 -7
- package/esm2020/lib/admin/form/workflow/workflow.component.mjs +9 -9
- package/esm2020/lib/admin/patterns/patterns.component.mjs +4 -4
- package/esm2020/lib/admin/system.service.mjs +57 -0
- package/esm2020/lib/compose/box/box.component.mjs +43 -0
- package/esm2020/lib/compose/document.component.mjs +2 -2
- package/esm2020/lib/compose/form-ref.mjs +7 -2
- package/esm2020/lib/compose/form-selector/form-selector.sheet.mjs +3 -3
- package/esm2020/lib/compose/form.component.mjs +2 -2
- package/esm2020/lib/compose/new-menu.component.mjs +3 -3
- package/esm2020/lib/compose/version-compare/version-compare.component.mjs +2 -2
- package/esm2020/lib/core/functions.mjs +6 -1
- package/esm2020/lib/core/mailbox.service.mjs +2 -2
- package/esm2020/lib/core/models.mjs +1 -1
- package/esm2020/lib/core/translations.mjs +44 -6
- package/esm2020/lib/cube/filter/filter.component.mjs +3 -3
- package/esm2020/lib/cube/matrix/table.component.mjs +1 -1
- package/esm2020/lib/cube/sum/sum.component.mjs +1 -1
- package/esm2020/lib/dashboard/cube/accum-cube.widget.mjs +1 -1
- package/esm2020/lib/dashboard/cube/compare.widget.mjs +1 -1
- package/esm2020/lib/dashboard/cube/cube-analysis.base.mjs +1 -1
- package/esm2020/lib/dashboard/cube/cube-analysis.widget.mjs +1 -1
- package/esm2020/lib/dashboard/cube/documents.widget.mjs +1 -1
- package/esm2020/lib/dashboard/cube/filter/filter.component.mjs +1 -1
- package/esm2020/lib/reports/cube/documents.component.mjs +1 -1
- package/esm2020/lib/reports/cube/grid-documents.component.mjs +1 -1
- package/esm2020/lib/reports/cube/table-documents.component.mjs +1 -1
- package/esm2020/lib/reports/cube/usage-args.component.mjs +1 -1
- package/esm2020/lib/reports/cube/usage-base.mjs +2 -1
- package/esm2020/lib/reports/cube/usage-chart.component.mjs +1 -1
- package/esm2020/lib/reports/cube/usage-pivot.component.mjs +1 -1
- package/esm2020/lib/reports/cube/usage.component.mjs +4 -5
- package/esm2020/lib/reports/tasks/tasks.component.mjs +1 -1
- package/esm2020/lib/shared.module.mjs +5 -4
- package/esm2020/lib/system.module.mjs +18 -12
- package/esm2020/lib/views/cube/chart.component.mjs +2 -2
- package/esm2020/lib/views/cube/explore.component.mjs +1 -1
- package/esm2020/lib/views/cube/matrix.component.mjs +1 -1
- package/esm2020/lib/views/cube/parallel.component.mjs +1 -1
- package/esm2020/lib/views/cube/pivot.component.mjs +1 -1
- package/esm2020/lib/views/cube/sum.component.mjs +1 -1
- package/esm2020/lib/views/cube/view.component.mjs +1 -1
- package/fesm2015/bizdoc-core.mjs +1457 -937
- package/fesm2015/bizdoc-core.mjs.map +1 -1
- package/fesm2020/bizdoc-core.mjs +1437 -939
- package/fesm2020/bizdoc-core.mjs.map +1 -1
- package/lib/admin/configuration-designer/designer-element.component.d.ts +3 -2
- package/lib/admin/configuration-designer/designer.base.d.ts +111 -16
- package/lib/admin/configuration-designer/designer.component.d.ts +15 -18
- package/lib/admin/configuration-designer/elements/action.component.d.ts +2 -16
- package/lib/admin/configuration-designer/elements/analysis-view.component.d.ts +19 -0
- package/lib/admin/configuration-designer/elements/analysis-widget.component.d.ts +4 -30
- package/lib/admin/configuration-designer/elements/anomaly-rule.component.d.ts +1 -9
- package/lib/admin/configuration-designer/elements/box-form.component.d.ts +3 -13
- package/lib/admin/configuration-designer/elements/configuration-datasource.component.d.ts +26 -0
- package/lib/admin/configuration-designer/elements/cube-view.component.d.ts +6 -29
- package/lib/admin/configuration-designer/elements/cube.component.d.ts +36 -13
- package/lib/admin/configuration-designer/elements/documents-report.component.d.ts +3 -27
- package/lib/admin/configuration-designer/elements/documents-widget.component.d.ts +8 -25
- package/lib/admin/configuration-designer/elements/explore-view.component.d.ts +6 -26
- package/lib/admin/configuration-designer/elements/folder.component.d.ts +2 -14
- package/lib/admin/configuration-designer/elements/form.component.d.ts +8 -13
- package/lib/admin/configuration-designer/elements/guide.component.d.ts +7 -16
- package/lib/admin/configuration-designer/elements/matrix-view.component.d.ts +10 -32
- package/lib/admin/configuration-designer/elements/parallel-view.component.d.ts +5 -28
- package/lib/admin/configuration-designer/elements/performance-widget.component.d.ts +3 -21
- package/lib/admin/configuration-designer/elements/pivot-view.component.d.ts +5 -25
- package/lib/admin/configuration-designer/elements/report.component.d.ts +2 -15
- package/lib/admin/configuration-designer/elements/return-to-role-action.component.d.ts +18 -0
- package/lib/admin/configuration-designer/elements/role.component.d.ts +3 -15
- package/lib/admin/configuration-designer/elements/rule.component.d.ts +2 -13
- package/lib/admin/configuration-designer/elements/state.component.d.ts +7 -0
- package/lib/admin/configuration-designer/elements/sum-view.component.d.ts +4 -29
- package/lib/admin/configuration-designer/elements/tasks-report.component.d.ts +6 -29
- package/lib/admin/configuration-designer/elements/type.component.d.ts +2 -16
- package/lib/admin/configuration-designer/elements/usage-report.component.d.ts +9 -25
- package/lib/admin/configuration-designer/elements/utility.component.d.ts +2 -15
- package/lib/admin/configuration-designer/elements/view.component.d.ts +3 -13
- package/lib/admin/configuration-designer/elements/widget.component.d.ts +2 -16
- package/lib/admin/configuration-designer/icon-picker.component.d.ts +67 -0
- package/lib/admin/configuration-designer/privileges.component.d.ts +11 -7
- package/lib/admin/core/color-picker.input.d.ts +3 -6
- package/lib/admin/document-trace/document-trace.component.d.ts +2 -2
- package/lib/admin/form/designer/designer.component.d.ts +59 -19
- package/lib/admin/form/form.resolve.service.d.ts +3 -3
- package/lib/admin/form/workflow/workflow.component.d.ts +3 -3
- package/lib/admin/patterns/patterns.component.d.ts +2 -2
- package/lib/admin/{form/form.service.d.ts → system.service.d.ts} +9 -5
- package/lib/compose/box/box.component.d.ts +17 -0
- package/lib/compose/form-ref.d.ts +6 -2
- package/lib/core/models.d.ts +4 -1
- package/lib/core/translations.d.ts +42 -0
- package/lib/cube/matrix/table.component.d.ts +0 -1
- package/lib/cube/sum/sum.component.d.ts +2 -1
- package/lib/dashboard/cube/accum-cube.widget.d.ts +2 -2
- package/lib/dashboard/cube/compare.widget.d.ts +7 -1
- package/lib/dashboard/cube/cube-analysis.base.d.ts +4 -3
- package/lib/dashboard/cube/cube-analysis.widget.d.ts +2 -2
- package/lib/dashboard/cube/documents.widget.d.ts +11 -1
- package/lib/dashboard/cube/filter/filter.component.d.ts +2 -2
- package/lib/reports/cube/documents.component.d.ts +2 -3
- package/lib/reports/cube/grid-documents.component.d.ts +2 -2
- package/lib/reports/cube/table-documents.component.d.ts +2 -2
- package/lib/reports/cube/usage-args.component.d.ts +2 -2
- package/lib/reports/cube/usage-base.d.ts +9 -7
- package/lib/reports/cube/usage-chart.component.d.ts +2 -2
- package/lib/reports/cube/usage-pivot.component.d.ts +2 -2
- package/lib/reports/cube/usage.component.d.ts +3 -4
- package/lib/reports/tasks/tasks.component.d.ts +4 -2
- package/lib/shared.module.d.ts +183 -182
- package/lib/system.module.d.ts +61 -57
- package/lib/views/cube/chart.component.d.ts +5 -4
- package/lib/views/cube/explore.component.d.ts +4 -4
- package/lib/views/cube/matrix.component.d.ts +8 -7
- package/lib/views/cube/parallel.component.d.ts +8 -3
- package/lib/views/cube/pivot.component.d.ts +4 -3
- package/lib/views/cube/sum.component.d.ts +5 -3
- package/lib/views/cube/view.component.d.ts +4 -4
- package/package.json +1 -1
- package/esm2020/lib/admin/configuration-designer/elements/chart-view.component.mjs +0 -76
- package/esm2020/lib/admin/form/form.service.mjs +0 -48
- package/lib/admin/configuration-designer/elements/chart-view.component.d.ts +0 -45
@@ -1,65 +1,69 @@
|
|
1
1
|
import { __decorate } from "tslib";
|
2
|
+
import { moveItemInArray } from "@angular/cdk/drag-drop";
|
2
3
|
import { Component } from "@angular/core";
|
3
4
|
import { Validators } from "@angular/forms";
|
4
5
|
import { BizDoc } from "../../../core/decorators";
|
5
|
-
import {
|
6
|
+
import { isArray } from "../../../core/functions";
|
7
|
+
import { DesignerCubeElementComponent } from "../designer.base";
|
6
8
|
import * as i0 from "@angular/core";
|
7
|
-
import * as i1 from "@angular/
|
8
|
-
import * as i2 from "
|
9
|
-
import * as i3 from "@angular/
|
10
|
-
import * as i4 from "@angular/material/
|
11
|
-
import * as i5 from "@angular/material/
|
12
|
-
import * as i6 from "@angular/material/
|
13
|
-
import * as i7 from "
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
9
|
+
import * as i1 from "@angular/common";
|
10
|
+
import * as i2 from "@angular/forms";
|
11
|
+
import * as i3 from "@angular/cdk/drag-drop";
|
12
|
+
import * as i4 from "@angular/material/radio";
|
13
|
+
import * as i5 from "@angular/material/core";
|
14
|
+
import * as i6 from "@angular/material/form-field";
|
15
|
+
import * as i7 from "@angular/material/select";
|
16
|
+
import * as i8 from "@angular/material/button";
|
17
|
+
import * as i9 from "@angular/material/input";
|
18
|
+
import * as i10 from "@angular/material/icon";
|
19
|
+
import * as i11 from "../../../core/popup/tooltip.directive";
|
20
|
+
import * as i12 from "../../../core/pipes/translate.pipe";
|
21
|
+
let MatrixViewDesignComponent = class MatrixViewDesignComponent extends DesignerCubeElementComponent {
|
22
|
+
constructor() {
|
23
|
+
super(...arguments);
|
24
|
+
this.sum = this._fb.array([]);
|
19
25
|
this.form = this._fb.group({
|
20
26
|
cube: null,
|
21
27
|
xAxis: this._fb.control(null, Validators.required),
|
22
|
-
|
23
|
-
series: null,
|
28
|
+
series: this._fb.control(null, Validators.required),
|
24
29
|
indices: null,
|
30
|
+
aggregate: null,
|
31
|
+
sum: this.sum,
|
25
32
|
filters: null,
|
26
|
-
scope: null
|
27
33
|
});
|
28
|
-
this.cubes = this._session.profile.cubes;
|
29
34
|
}
|
30
35
|
ngOnInit() {
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
+
if (this.args.sum) {
|
37
|
+
if (isArray(this.args.sum))
|
38
|
+
this.args.sum.forEach(s => this.add(s));
|
39
|
+
else
|
40
|
+
this.add(this.args.sum);
|
36
41
|
}
|
42
|
+
super.ngOnInit();
|
37
43
|
}
|
38
|
-
|
39
|
-
this.
|
44
|
+
add(sum) {
|
45
|
+
this.sum.push(this._fb.group({
|
46
|
+
axis: sum?.axis || 'series',
|
47
|
+
title: this._fb.control(sum?.title, Validators.required),
|
48
|
+
value: sum?.value,
|
49
|
+
format: sum?.format,
|
50
|
+
precision: sum?.precision,
|
51
|
+
explorable: sum?.explorable,
|
52
|
+
calculate: sum?.calculate
|
53
|
+
}));
|
40
54
|
}
|
41
|
-
|
42
|
-
this.
|
43
|
-
}
|
44
|
-
seriesSelected(evt) {
|
45
|
-
this._thirdAxes(evt.value);
|
46
|
-
}
|
47
|
-
_thirdAxes(value) {
|
48
|
-
this.thirdAxes = this.secondaryAxes.filter(a => a.name !== value);
|
49
|
-
}
|
50
|
-
cubeSelected(evt) {
|
51
|
-
this.cube = evt.value;
|
52
|
-
this.form.get('cube').setValue(evt.value.name);
|
55
|
+
drop(event) {
|
56
|
+
moveItemInArray(this.model.axes, event.previousIndex, event.currentIndex);
|
53
57
|
}
|
54
58
|
};
|
55
|
-
MatrixViewDesignComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: MatrixViewDesignComponent, deps:
|
56
|
-
MatrixViewDesignComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.3", type: MatrixViewDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<
|
59
|
+
MatrixViewDesignComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: MatrixViewDesignComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
60
|
+
MatrixViewDesignComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.3", type: MatrixViewDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"editMode; else info\">\r\n <form autocomplete=\"off\" [formGroup]=\"form\" class=\"column\">\r\n <mat-form-field *ngIf=\"cubes.length>1\">\r\n <mat-label>{{'Cube'|translate}}</mat-label>\r\n <mat-select required (selectionChange)=\"cubeSelected($event)\">\r\n <mat-option *ngFor=\"let c of cubes\" [value]=\"c\">{{c.title || x.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'XAxis'|translate}}</mat-label>\r\n <mat-select formControlName=\"xAxis\" required (selectionChange)=\"xAxisSelected($event)\">\r\n <mat-option *ngFor=\"let x of cube?.axes\" [value]=\"x.name\">{{x.title || x.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'Series'|translate}}</mat-label>\r\n <mat-select formControlName=\"series\" required (selectionChange)=\"seriesSelected($event)\">\r\n <mat-option *ngFor=\"let x of secondaryAxes\" [value]=\"x.name\">{{x.title || x.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'Filters'|translate}}</mat-label>\r\n <mat-select formControlName=\"filters\" multiple (selectionChange)=\"forthSelected($event)\">\r\n <mat-option *ngFor=\"let x of thirdAxes\" [value]=\"x.name\">{{x.title || x.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field *ngIf=\"cube?.indices?.length\">\r\n <mat-label>{{'Indices'|translate}}</mat-label>\r\n <mat-select formControlName=\"indices\" multiple>\r\n <mat-option *ngFor=\"let x of cube?.indices\" [value]=\"x.name\">{{x.title || x.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'Aggregate'|translate}}</mat-label>\r\n <mat-select formControlName=\"aggregate\" multiple [disabled]=\"!forthAxes || forthAxes?.length\">\r\n <mat-option *ngFor=\"let x of forthAxes\" [value]=\"x.name\">{{x.title || x.name}}</mat-option>\r\n </mat-select>\r\n <mat-hint></mat-hint>\r\n </mat-form-field>\r\n <h2 class=\"mat-title\">{{'Summary'|translate}}</h2>\r\n <div formArrayName=\"sum\" class=\"column\" cdkDropList (cdkDropListDropped)=\"drop($event)\">\r\n <div class=\"row\" *ngFor=\"let s of sum.controls; index as index\" [formGroup]=\"s\" cdkDrag cdkDragRootElement=\".drag\">\r\n <mat-icon class=\"drag\">drag_indicator</mat-icon>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'title'|translate}}</mat-label>\r\n <input matInput formControlName=\"title\" required />\r\n </mat-form-field>\r\n \r\n <mat-label>{{'Axis'|translate}}</mat-label>\r\n <mat-radio-group formControlName=\"axis\">\r\n <mat-radio-button value=\"xAxis\">{{'X'|translate}}</mat-radio-button>\r\n <mat-radio-button value=\"series\">{{'Y'|translate}}</mat-radio-button>\r\n </mat-radio-group>\r\n \r\n <mat-form-field>\r\n <mat-label>{{'Calculate'|translate}}</mat-label>\r\n <mat-select formControlName=\"calculate\">\r\n <mat-option>{{'None'|translate}}</mat-option>\r\n <mat-option value=\"quarter\">{{'Quarter'|translate}}</mat-option>\r\n <mat-option value=\"year\">{{'Year'|translate}}</mat-option>\r\n <mat-option value=\"month\">{{'Month'|translate}}</mat-option>\r\n <mat-option value=\"accumulate\">{{'Accumulate'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <button mat-icon-button (click)=\"sum.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\"><mat-icon>delete</mat-icon></button>\r\n </div>\r\n </div>\r\n <button mat-icon-button (click)=\"add()\" [bizdocTooltip]=\"'Add'|translate\"><mat-icon>add</mat-icon></button>\r\n </form>\r\n <!--<ng-container *ngIf=\"cube\">\r\n <h2 class=\"mat-title\">{{'Filters'|translate}}</h2>\r\n <bizdoc-cube-filter [cube]=\"cube.name\" [(axes)]=\"form.controls.filters.value\"></bizdoc-cube-filter>\r\n </ng-container>\r\n --> \r\n</ng-container>\r\n<ng-template #info></ng-template>\r\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i2.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: i3.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i3.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i4.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { kind: "component", type: i4.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "component", type: i7.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i8.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"] }, { kind: "directive", type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i11.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { kind: "pipe", type: i12.TranslatePipe, name: "translate" }] });
|
57
61
|
MatrixViewDesignComponent = __decorate([
|
58
62
|
BizDoc({ selector: 'matrix-view-designer' })
|
59
63
|
], MatrixViewDesignComponent);
|
60
64
|
export { MatrixViewDesignComponent };
|
61
65
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: MatrixViewDesignComponent, decorators: [{
|
62
66
|
type: Component,
|
63
|
-
args: [{ template: "<
|
64
|
-
}]
|
65
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0cml4LXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9hZG1pbi9jb25maWd1cmF0aW9uLWRlc2lnbmVyL2VsZW1lbnRzL21hdHJpeC12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvYWRtaW4vY29uZmlndXJhdGlvbi1kZXNpZ25lci9lbGVtZW50cy9tYXRyaXgtdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQWUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFekQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBSWxELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7Ozs7SUFJL0MseUJBQXlCLFNBQXpCLHlCQUEwQixTQUFRLHdCQUErQjtJQWM1RSxZQUFvQixHQUFnQixFQUFVLFFBQXdCO1FBQ3BFLEtBQUssRUFBRSxDQUFBO1FBRFcsUUFBRyxHQUFILEdBQUcsQ0FBYTtRQUFVLGFBQVEsR0FBUixRQUFRLENBQWdCO1FBYjdELFNBQUksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQztZQUM3QixJQUFJLEVBQUUsSUFBSTtZQUNWLEtBQUssRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUNsRCxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3ZCLE1BQU0sRUFBRSxJQUFJO1lBQ1osT0FBTyxFQUFFLElBQUk7WUFDYixPQUFPLEVBQUUsSUFBSTtZQUNiLEtBQUssRUFBRSxJQUFJO1NBQ1osQ0FBQyxDQUFDO1FBT0QsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7SUFDM0MsQ0FBQztJQUNELFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNyRSxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1RSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ25CLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNyQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDbkM7SUFDSCxDQUFDO0lBQ08sY0FBYyxDQUFDLFdBQXFCO1FBQzFDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUNELGFBQWEsQ0FBQyxHQUFvQjtRQUNoQyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBQ0QsY0FBYyxDQUFDLEdBQW9CO1FBQ2pDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFDTyxVQUFVLENBQUMsS0FBYTtRQUM5QixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBQ0QsWUFBWSxDQUFDLEdBQW9CO1FBQy9CLElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQztRQUN0QixJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxRQUFRLENBQUUsR0FBRyxDQUFDLEtBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzRCxDQUFDO0NBQ0YsQ0FBQTtzSEExQ1kseUJBQXlCOzBHQUF6Qix5QkFBeUIsMkVDWHRDLGlvREFpQ0E7QUR0QmEseUJBQXlCO0lBRHJDLE1BQU0sQ0FBQyxFQUFFLFFBQVEsRUFBRSxzQkFBc0IsRUFBRSxDQUFDO0dBQ2hDLHlCQUF5QixDQTBDckM7U0ExQ1kseUJBQXlCOzJGQUF6Qix5QkFBeUI7a0JBRnJDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBWYWxpZGF0b3JzIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IE1hdFNlbGVjdENoYW5nZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3RcIjtcclxuaW1wb3J0IHsgQml6RG9jIH0gZnJvbSBcIi4uLy4uLy4uL2NvcmUvZGVjb3JhdG9yc1wiO1xyXG5pbXBvcnQgeyBDdWJlLCBDdWJlQXhpcyB9IGZyb20gXCIuLi8uLi8uLi9jb3JlL21vZGVsc1wiO1xyXG5pbXBvcnQgeyBTZXNzaW9uU2VydmljZSB9IGZyb20gXCIuLi8uLi8uLi9jb3JlL3Nlc3Npb24uc2VydmljZVwiO1xyXG5pbXBvcnQgeyBTdW1TZXR0aW5ncyB9IGZyb20gXCIuLi8uLi8uLi9jdWJlL21hdHJpeC90YWJsZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRGVzaWduZXJFbGVtZW50Q29tcG9uZW50IH0gZnJvbSBcIi4uL2Rlc2lnbmVyLmJhc2VcIjtcclxuXHJcbkBDb21wb25lbnQoeyB0ZW1wbGF0ZVVybDogJ21hdHJpeC12aWV3LmNvbXBvbmVudC5odG1sJyB9KVxyXG5AQml6RG9jKHsgc2VsZWN0b3I6ICdtYXRyaXgtdmlldy1kZXNpZ25lcicgfSlcclxuZXhwb3J0IGNsYXNzIE1hdHJpeFZpZXdEZXNpZ25Db21wb25lbnQgZXh0ZW5kcyBEZXNpZ25lckVsZW1lbnRDb21wb25lbnQ8TW9kZWw+IGltcGxlbWVudHMgT25Jbml0IHtcclxuICByZWFkb25seSBmb3JtID0gdGhpcy5fZmIuZ3JvdXAoe1xyXG4gICAgY3ViZTogbnVsbCxcclxuICAgIHhBeGlzOiB0aGlzLl9mYi5jb250cm9sKG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxyXG4gICAgc3VtOiB0aGlzLl9mYi5hcnJheShbXSksXHJcbiAgICBzZXJpZXM6IG51bGwsXHJcbiAgICBpbmRpY2VzOiBudWxsLFxyXG4gICAgZmlsdGVyczogbnVsbCxcclxuICAgIHNjb3BlOiBudWxsXHJcbiAgfSk7XHJcbiAgY3ViZTogQ3ViZTtcclxuICBzZWNvbmRhcnlBeGVzOiBDdWJlQXhpc1tdO1xyXG4gIHRoaXJkQXhlczogQ3ViZUF4aXNbXTtcclxuICByZWFkb25seSBjdWJlczogQ3ViZVtdO1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2ZiOiBGb3JtQnVpbGRlciwgcHJpdmF0ZSBfc2Vzc2lvbjogU2Vzc2lvblNlcnZpY2UpIHtcclxuICAgIHN1cGVyKClcclxuICAgIHRoaXMuY3ViZXMgPSB0aGlzLl9zZXNzaW9uLnByb2ZpbGUuY3ViZXM7XHJcbiAgfVxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5jdWJlID0gIXRoaXMubW9kZWwub3B0aW9ucy5jdWJlID8gdGhpcy5fc2Vzc2lvbi5wcm9maWxlLmN1YmVzWzBdIDpcclxuICAgICAgdGhpcy5fc2Vzc2lvbi5wcm9maWxlLmN1YmVzLmZpbmQoYyA9PiBjLm5hbWUgPT09IHRoaXMubW9kZWwub3B0aW9ucy5jdWJlKTtcclxuICAgIGlmICh0aGlzLmFyZ3MueEF4aXMpIHtcclxuICAgICAgdGhpcy5fc2Vjb25kYXJ5QXhlcyh0aGlzLmFyZ3MueEF4aXMpO1xyXG4gICAgICB0aGlzLl90aGlyZEF4ZXModGhpcy5hcmdzLnNlcmllcyk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHByaXZhdGUgX3NlY29uZGFyeUF4ZXMocHJpbWFyeUF4ZXM6IHN0cmluZ1tdKSB7XHJcbiAgICB0aGlzLnNlY29uZGFyeUF4ZXMgPSB0aGlzLmN1YmUuYXhlcy5maWx0ZXIoYSA9PiBwcmltYXJ5QXhlcy5pbmRleE9mKGEubmFtZSkgPCAwKTtcclxuICB9XHJcbiAgeEF4aXNTZWxlY3RlZChldnQ6IE1hdFNlbGVjdENoYW5nZSkge1xyXG4gICAgdGhpcy5fc2Vjb25kYXJ5QXhlcyhldnQudmFsdWUpO1xyXG4gIH1cclxuICBzZXJpZXNTZWxlY3RlZChldnQ6IE1hdFNlbGVjdENoYW5nZSkge1xyXG4gICAgdGhpcy5fdGhpcmRBeGVzKGV2dC52YWx1ZSk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX3RoaXJkQXhlcyh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICB0aGlzLnRoaXJkQXhlcyA9IHRoaXMuc2Vjb25kYXJ5QXhlcy5maWx0ZXIoYSA9PiBhLm5hbWUgIT09IHZhbHVlKTtcclxuICB9XHJcbiAgY3ViZVNlbGVjdGVkKGV2dDogTWF0U2VsZWN0Q2hhbmdlKSB7XHJcbiAgICB0aGlzLmN1YmUgPSBldnQudmFsdWU7XHJcbiAgICB0aGlzLmZvcm0uZ2V0KCdjdWJlJykuc2V0VmFsdWUoKGV2dC52YWx1ZSBhcyBDdWJlKS5uYW1lKTtcclxuICB9XHJcbn1cclxuaW50ZXJmYWNlIE1vZGVsIHtcclxuICBjdWJlOiBudWxsLFxyXG4gIHhBeGlzOiBudWxsLFxyXG4gIHNlcmllczogbnVsbCxcclxuICBpbmRpY2VzOiBudWxsLFxyXG4gIGZpbHRlcnM6IG51bGwsXHJcbiAgYWdncmVnYXRlOiBudWxsLFxyXG4gIHN1bT86IFN1bVNldHRpbmdzIHwgU3VtU2V0dGluZ3NbXTtcclxuICBzY29wZTogbnVsbFxyXG59XHJcbiIsIjxmb3JtIGF1dG9jb21wbGV0ZT1cIm9mZlwiICpuZ0lmPVwiZWRpdE1vZGVcIiBbZm9ybUdyb3VwXT1cImZvcm1cIiBjbGFzcz1cImNvbHVtblwiPlxyXG4gIDxtYXQtZm9ybS1maWVsZCAqbmdJZj1cImN1YmVzLmxlbmd0aFwiPlxyXG4gICAgPG1hdC1sYWJlbD57eydDdWJlJ3x0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxyXG4gICAgPG1hdC1zZWxlY3QgcmVxdWlyZWQgKG9wdGlvblNlbGVjdGVkKT1cImN1YmVTZWxlY3RlZCgkZXZlbnQpXCI+XHJcbiAgICAgIDxtYXQtb3B0aW9uPnt7J0RlZmF1bHQnfHRyYW5zbGF0ZX19PC9tYXQtb3B0aW9uPlxyXG4gICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgYyBvZiBjdWJlc1wiIFt2YWx1ZV09XCJjXCI+e3tjLnRpdGxlfX08L21hdC1vcHRpb24+XHJcbiAgICA8L21hdC1zZWxlY3Q+XHJcbiAgPC9tYXQtZm9ybS1maWVsZD5cclxuICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICA8bWF0LWxhYmVsPnt7J1hBeGlzJ3x0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxyXG4gICAgPG1hdC1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwieEF4aXNcIiByZXF1aXJlZCAob3B0aW9uU2VsZWN0ZWQpPVwieEF4aXNTZWxlY3RlZCgkZXZlbnQpXCI+XHJcbiAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCB4IG9mIGN1YmU/LmF4ZXNcIiBbdmFsdWVdPVwieC5uYW1lXCI+e3t4LnRpdGxlfX08L21hdC1vcHRpb24+XHJcbiAgICA8L21hdC1zZWxlY3Q+XHJcbiAgPC9tYXQtZm9ybS1maWVsZD5cclxuICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICA8bWF0LWxhYmVsPnt7J1Nlcmllcyd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgIDxtYXQtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cInNlcmllc1wiIHJlcXVpcmVkIChvcHRpb25TZWxlY3RlZCk9XCJzZXJpZXNTZWxlY3RlZCgkZXZlbnQpXCI+XHJcbiAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCB4IG9mIHNlY29uZGFyeUF4ZXNcIiBbdmFsdWVdPVwieC5uYW1lXCI+e3t4LnRpdGxlfX08L21hdC1vcHRpb24+XHJcbiAgICA8L21hdC1zZWxlY3Q+XHJcbiAgPC9tYXQtZm9ybS1maWVsZD5cclxuICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICA8bWF0LWxhYmVsPnt7J0ZpbHRlcnMnfHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XHJcbiAgICA8bWF0LXNlbGVjdCBmb3JtQ29udHJvbE5hbWU9XCJmaWx0ZXJzXCIgbXVsdGlwbGU+XHJcbiAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCB4IG9mIHRoaXJkQXhlc1wiIFt2YWx1ZV09XCJ4Lm5hbWVcIj57e3gudGl0bGV9fTwvbWF0LW9wdGlvbj5cclxuICAgIDwvbWF0LXNlbGVjdD5cclxuICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gIDxtYXQtZm9ybS1maWVsZCAqbmdJZj1cImN1YmU/LmluZGljZXM/Lmxlbmd0aFwiPlxyXG4gICAgPG1hdC1sYWJlbD57eydJbmRpY2VzJ3x0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxyXG4gICAgPG1hdC1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwiaW5kaWNlc1wiIG11bHRpcGxlPlxyXG4gICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgeCBvZiBjdWJlLmluZGljZXNcIiBbdmFsdWVdPVwieC5uYW1lXCI+e3t4LnRpdGxlfX08L21hdC1vcHRpb24+XHJcbiAgICA8L21hdC1zZWxlY3Q+XHJcbiAgPC9tYXQtZm9ybS1maWVsZD5cclxuPC9mb3JtPlxyXG4iXX0=
|
67
|
+
args: [{ template: "<ng-container *ngIf=\"editMode; else info\">\r\n <form autocomplete=\"off\" [formGroup]=\"form\" class=\"column\">\r\n <mat-form-field *ngIf=\"cubes.length>1\">\r\n <mat-label>{{'Cube'|translate}}</mat-label>\r\n <mat-select required (selectionChange)=\"cubeSelected($event)\">\r\n <mat-option *ngFor=\"let c of cubes\" [value]=\"c\">{{c.title || x.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'XAxis'|translate}}</mat-label>\r\n <mat-select formControlName=\"xAxis\" required (selectionChange)=\"xAxisSelected($event)\">\r\n <mat-option *ngFor=\"let x of cube?.axes\" [value]=\"x.name\">{{x.title || x.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'Series'|translate}}</mat-label>\r\n <mat-select formControlName=\"series\" required (selectionChange)=\"seriesSelected($event)\">\r\n <mat-option *ngFor=\"let x of secondaryAxes\" [value]=\"x.name\">{{x.title || x.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'Filters'|translate}}</mat-label>\r\n <mat-select formControlName=\"filters\" multiple (selectionChange)=\"forthSelected($event)\">\r\n <mat-option *ngFor=\"let x of thirdAxes\" [value]=\"x.name\">{{x.title || x.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field *ngIf=\"cube?.indices?.length\">\r\n <mat-label>{{'Indices'|translate}}</mat-label>\r\n <mat-select formControlName=\"indices\" multiple>\r\n <mat-option *ngFor=\"let x of cube?.indices\" [value]=\"x.name\">{{x.title || x.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'Aggregate'|translate}}</mat-label>\r\n <mat-select formControlName=\"aggregate\" multiple [disabled]=\"!forthAxes || forthAxes?.length\">\r\n <mat-option *ngFor=\"let x of forthAxes\" [value]=\"x.name\">{{x.title || x.name}}</mat-option>\r\n </mat-select>\r\n <mat-hint></mat-hint>\r\n </mat-form-field>\r\n <h2 class=\"mat-title\">{{'Summary'|translate}}</h2>\r\n <div formArrayName=\"sum\" class=\"column\" cdkDropList (cdkDropListDropped)=\"drop($event)\">\r\n <div class=\"row\" *ngFor=\"let s of sum.controls; index as index\" [formGroup]=\"s\" cdkDrag cdkDragRootElement=\".drag\">\r\n <mat-icon class=\"drag\">drag_indicator</mat-icon>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'title'|translate}}</mat-label>\r\n <input matInput formControlName=\"title\" required />\r\n </mat-form-field>\r\n \r\n <mat-label>{{'Axis'|translate}}</mat-label>\r\n <mat-radio-group formControlName=\"axis\">\r\n <mat-radio-button value=\"xAxis\">{{'X'|translate}}</mat-radio-button>\r\n <mat-radio-button value=\"series\">{{'Y'|translate}}</mat-radio-button>\r\n </mat-radio-group>\r\n \r\n <mat-form-field>\r\n <mat-label>{{'Calculate'|translate}}</mat-label>\r\n <mat-select formControlName=\"calculate\">\r\n <mat-option>{{'None'|translate}}</mat-option>\r\n <mat-option value=\"quarter\">{{'Quarter'|translate}}</mat-option>\r\n <mat-option value=\"year\">{{'Year'|translate}}</mat-option>\r\n <mat-option value=\"month\">{{'Month'|translate}}</mat-option>\r\n <mat-option value=\"accumulate\">{{'Accumulate'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <button mat-icon-button (click)=\"sum.removeAt(index)\" [bizdocTooltip]=\"'Remove'|translate\"><mat-icon>delete</mat-icon></button>\r\n </div>\r\n </div>\r\n <button mat-icon-button (click)=\"add()\" [bizdocTooltip]=\"'Add'|translate\"><mat-icon>add</mat-icon></button>\r\n </form>\r\n <!--<ng-container *ngIf=\"cube\">\r\n <h2 class=\"mat-title\">{{'Filters'|translate}}</h2>\r\n <bizdoc-cube-filter [cube]=\"cube.name\" [(axes)]=\"form.controls.filters.value\"></bizdoc-cube-filter>\r\n </ng-container>\r\n --> \r\n</ng-container>\r\n<ng-template #info></ng-template>\r\n" }]
|
68
|
+
}] });
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0cml4LXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9hZG1pbi9jb25maWd1cmF0aW9uLWRlc2lnbmVyL2VsZW1lbnRzL21hdHJpeC12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvYWRtaW4vY29uZmlndXJhdGlvbi1kZXNpZ25lci9lbGVtZW50cy9tYXRyaXgtdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFlLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHbEQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sa0JBQWtCLENBQUM7Ozs7Ozs7Ozs7Ozs7O0lBSW5ELHlCQUF5QixTQUF6Qix5QkFBMEIsU0FBUSw0QkFBaUQ7OztRQUNyRixRQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDekIsU0FBSSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDO1lBQzdCLElBQUksRUFBRSxJQUFJO1lBQ1YsS0FBSyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ2xELE1BQU0sRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUNuRCxPQUFPLEVBQUUsSUFBSTtZQUNiLFNBQVMsRUFBRSxJQUFJO1lBQ2YsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHO1lBQ2IsT0FBTyxFQUFFLElBQUk7U0FDZCxDQUFDLENBQUM7S0F3Qko7SUF2QkMsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDakIsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzs7Z0JBRXhDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUMzQjtRQUNELEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBQ0QsR0FBRyxDQUFDLEdBQWlCO1FBQ25CLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDO1lBQzNCLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxJQUFJLFFBQVE7WUFDM0IsS0FBSyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUN4RCxLQUFLLEVBQUUsR0FBRyxFQUFFLEtBQUs7WUFDakIsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNO1lBQ25CLFNBQVMsRUFBRSxHQUFHLEVBQUUsU0FBUztZQUN6QixVQUFVLEVBQUUsR0FBRyxFQUFFLFVBQVU7WUFDM0IsU0FBUyxFQUFFLEdBQUcsRUFBRSxTQUFTO1NBQzFCLENBQVEsQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUNELElBQUksQ0FBQyxLQUFpQztRQUNwQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDNUUsQ0FBQztDQUNGLENBQUE7c0hBbENZLHlCQUF5QjswR0FBekIseUJBQXlCLDJFQ1h0Qyw0cElBNEVBO0FEakVhLHlCQUF5QjtJQURyQyxNQUFNLENBQUMsRUFBRSxRQUFRLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQztHQUNoQyx5QkFBeUIsQ0FrQ3JDO1NBbENZLHlCQUF5QjsyRkFBekIseUJBQXlCO2tCQUZyQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2RrRHJhZ0Ryb3AsIG1vdmVJdGVtSW5BcnJheSB9IGZyb20gXCJAYW5ndWxhci9jZGsvZHJhZy1kcm9wXCI7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgVmFsaWRhdG9ycyB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBCaXpEb2MgfSBmcm9tIFwiLi4vLi4vLi4vY29yZS9kZWNvcmF0b3JzXCI7XHJcbmltcG9ydCB7IGlzQXJyYXkgfSBmcm9tIFwiLi4vLi4vLi4vY29yZS9mdW5jdGlvbnNcIjtcclxuaW1wb3J0IHsgU3VtU2V0dGluZ3MgfSBmcm9tIFwiLi4vLi4vLi4vY3ViZS9tYXRyaXgvdGFibGUuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IE1hdHJpeFNldHRpbmdzTW9kZWwgfSBmcm9tIFwiLi4vLi4vLi4vdmlld3MvY3ViZS9tYXRyaXguY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IERlc2lnbmVyQ3ViZUVsZW1lbnRDb21wb25lbnQgfSBmcm9tIFwiLi4vZGVzaWduZXIuYmFzZVwiO1xyXG5cclxuQENvbXBvbmVudCh7IHRlbXBsYXRlVXJsOiAnbWF0cml4LXZpZXcuY29tcG9uZW50Lmh0bWwnIH0pXHJcbkBCaXpEb2MoeyBzZWxlY3RvcjogJ21hdHJpeC12aWV3LWRlc2lnbmVyJyB9KVxyXG5leHBvcnQgY2xhc3MgTWF0cml4Vmlld0Rlc2lnbkNvbXBvbmVudCBleHRlbmRzIERlc2lnbmVyQ3ViZUVsZW1lbnRDb21wb25lbnQ8TWF0cml4U2V0dGluZ3NNb2RlbD4gaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHJlYWRvbmx5IHN1bSA9IHRoaXMuX2ZiLmFycmF5KFtdKTtcclxuICByZWFkb25seSBmb3JtID0gdGhpcy5fZmIuZ3JvdXAoe1xyXG4gICAgY3ViZTogbnVsbCxcclxuICAgIHhBeGlzOiB0aGlzLl9mYi5jb250cm9sKG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxyXG4gICAgc2VyaWVzOiB0aGlzLl9mYi5jb250cm9sKG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxyXG4gICAgaW5kaWNlczogbnVsbCxcclxuICAgIGFnZ3JlZ2F0ZTogbnVsbCxcclxuICAgIHN1bTogdGhpcy5zdW0sXHJcbiAgICBmaWx0ZXJzOiBudWxsLFxyXG4gIH0pO1xyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgaWYgKHRoaXMuYXJncy5zdW0pIHtcclxuICAgICAgaWYgKGlzQXJyYXkodGhpcy5hcmdzLnN1bSkpXHJcbiAgICAgICAgdGhpcy5hcmdzLnN1bS5mb3JFYWNoKHMgPT4gdGhpcy5hZGQocykpO1xyXG4gICAgICBlbHNlXHJcbiAgICAgICAgdGhpcy5hZGQodGhpcy5hcmdzLnN1bSk7XHJcbiAgICB9XHJcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gIH1cclxuICBhZGQoc3VtPzogU3VtU2V0dGluZ3MpOiB2b2lkIHtcclxuICAgIHRoaXMuc3VtLnB1c2godGhpcy5fZmIuZ3JvdXAoe1xyXG4gICAgICBheGlzOiBzdW0/LmF4aXMgfHwgJ3NlcmllcycsXHJcbiAgICAgIHRpdGxlOiB0aGlzLl9mYi5jb250cm9sKHN1bT8udGl0bGUsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxyXG4gICAgICB2YWx1ZTogc3VtPy52YWx1ZSxcclxuICAgICAgZm9ybWF0OiBzdW0/LmZvcm1hdCxcclxuICAgICAgcHJlY2lzaW9uOiBzdW0/LnByZWNpc2lvbixcclxuICAgICAgZXhwbG9yYWJsZTogc3VtPy5leHBsb3JhYmxlLFxyXG4gICAgICBjYWxjdWxhdGU6IHN1bT8uY2FsY3VsYXRlXHJcbiAgICB9KSBhcyBhbnkpO1xyXG4gIH1cclxuICBkcm9wKGV2ZW50OiBDZGtEcmFnRHJvcDxTdW1TZXR0aW5nc1tdPikge1xyXG4gICAgbW92ZUl0ZW1JbkFycmF5KHRoaXMubW9kZWwuYXhlcywgZXZlbnQucHJldmlvdXNJbmRleCwgZXZlbnQuY3VycmVudEluZGV4KTtcclxuICB9XHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImVkaXRNb2RlOyBlbHNlIGluZm9cIj5cclxuICA8Zm9ybSBhdXRvY29tcGxldGU9XCJvZmZcIiBbZm9ybUdyb3VwXT1cImZvcm1cIiBjbGFzcz1cImNvbHVtblwiPlxyXG4gICAgPG1hdC1mb3JtLWZpZWxkICpuZ0lmPVwiY3ViZXMubGVuZ3RoPjFcIj5cclxuICAgICAgPG1hdC1sYWJlbD57eydDdWJlJ3x0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxyXG4gICAgICA8bWF0LXNlbGVjdCByZXF1aXJlZCAoc2VsZWN0aW9uQ2hhbmdlKT1cImN1YmVTZWxlY3RlZCgkZXZlbnQpXCI+XHJcbiAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IGMgb2YgY3ViZXNcIiBbdmFsdWVdPVwiY1wiPnt7Yy50aXRsZSB8fCB4Lm5hbWV9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgIDxtYXQtZm9ybS1maWVsZD5cclxuICAgICAgPG1hdC1sYWJlbD57eydYQXhpcyd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgICAgPG1hdC1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwieEF4aXNcIiByZXF1aXJlZCAoc2VsZWN0aW9uQ2hhbmdlKT1cInhBeGlzU2VsZWN0ZWQoJGV2ZW50KVwiPlxyXG4gICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCB4IG9mIGN1YmU/LmF4ZXNcIiBbdmFsdWVdPVwieC5uYW1lXCI+e3t4LnRpdGxlIHx8IHgubmFtZX19PC9tYXQtb3B0aW9uPlxyXG4gICAgICA8L21hdC1zZWxlY3Q+XHJcbiAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgPG1hdC1mb3JtLWZpZWxkPlxyXG4gICAgICA8bWF0LWxhYmVsPnt7J1Nlcmllcyd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgICAgPG1hdC1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwic2VyaWVzXCIgcmVxdWlyZWQgKHNlbGVjdGlvbkNoYW5nZSk9XCJzZXJpZXNTZWxlY3RlZCgkZXZlbnQpXCI+XHJcbiAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IHggb2Ygc2Vjb25kYXJ5QXhlc1wiIFt2YWx1ZV09XCJ4Lm5hbWVcIj57e3gudGl0bGUgfHwgeC5uYW1lfX08L21hdC1vcHRpb24+XHJcbiAgICAgIDwvbWF0LXNlbGVjdD5cclxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgIDxtYXQtbGFiZWw+e3snRmlsdGVycyd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgICAgPG1hdC1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwiZmlsdGVyc1wiIG11bHRpcGxlIChzZWxlY3Rpb25DaGFuZ2UpPVwiZm9ydGhTZWxlY3RlZCgkZXZlbnQpXCI+XHJcbiAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IHggb2YgdGhpcmRBeGVzXCIgW3ZhbHVlXT1cIngubmFtZVwiPnt7eC50aXRsZSB8fCB4Lm5hbWV9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgIDxtYXQtZm9ybS1maWVsZCAqbmdJZj1cImN1YmU/LmluZGljZXM/Lmxlbmd0aFwiPlxyXG4gICAgICA8bWF0LWxhYmVsPnt7J0luZGljZXMnfHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XHJcbiAgICAgIDxtYXQtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cImluZGljZXNcIiBtdWx0aXBsZT5cclxuICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgeCBvZiBjdWJlPy5pbmRpY2VzXCIgW3ZhbHVlXT1cIngubmFtZVwiPnt7eC50aXRsZSB8fCB4Lm5hbWV9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgIDxtYXQtZm9ybS1maWVsZD5cclxuICAgICAgPG1hdC1sYWJlbD57eydBZ2dyZWdhdGUnfHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XHJcbiAgICAgIDxtYXQtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cImFnZ3JlZ2F0ZVwiIG11bHRpcGxlIFtkaXNhYmxlZF09XCIhZm9ydGhBeGVzIHx8IGZvcnRoQXhlcz8ubGVuZ3RoXCI+XHJcbiAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IHggb2YgZm9ydGhBeGVzXCIgW3ZhbHVlXT1cIngubmFtZVwiPnt7eC50aXRsZSB8fCB4Lm5hbWV9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgICA8bWF0LWhpbnQ+PC9tYXQtaGludD5cclxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICA8aDIgY2xhc3M9XCJtYXQtdGl0bGVcIj57eydTdW1tYXJ5J3x0cmFuc2xhdGV9fTwvaDI+XHJcbiAgICA8ZGl2IGZvcm1BcnJheU5hbWU9XCJzdW1cIiBjbGFzcz1cImNvbHVtblwiIGNka0Ryb3BMaXN0IChjZGtEcm9wTGlzdERyb3BwZWQpPVwiZHJvcCgkZXZlbnQpXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIiAqbmdGb3I9XCJsZXQgcyBvZiBzdW0uY29udHJvbHM7IGluZGV4IGFzIGluZGV4XCIgW2Zvcm1Hcm91cF09XCJzXCIgY2RrRHJhZyBjZGtEcmFnUm9vdEVsZW1lbnQ9XCIuZHJhZ1wiPlxyXG4gICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImRyYWdcIj5kcmFnX2luZGljYXRvcjwvbWF0LWljb24+XHJcbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZmxleFwiPlxyXG4gICAgICAgICAgPG1hdC1sYWJlbD57eyd0aXRsZSd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJ0aXRsZVwiIHJlcXVpcmVkIC8+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICAmbmJzcDtcclxuICAgICAgICA8bWF0LWxhYmVsPnt7J0F4aXMnfHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XHJcbiAgICAgICAgPG1hdC1yYWRpby1ncm91cCBmb3JtQ29udHJvbE5hbWU9XCJheGlzXCI+XHJcbiAgICAgICAgICA8bWF0LXJhZGlvLWJ1dHRvbiB2YWx1ZT1cInhBeGlzXCI+e3snWCd8dHJhbnNsYXRlfX08L21hdC1yYWRpby1idXR0b24+XHJcbiAgICAgICAgICA8bWF0LXJhZGlvLWJ1dHRvbiB2YWx1ZT1cInNlcmllc1wiPnt7J1knfHRyYW5zbGF0ZX19PC9tYXQtcmFkaW8tYnV0dG9uPlxyXG4gICAgICAgIDwvbWF0LXJhZGlvLWdyb3VwPlxyXG4gICAgICAgICZuYnNwO1xyXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZD5cclxuICAgICAgICAgIDxtYXQtbGFiZWw+e3snQ2FsY3VsYXRlJ3x0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgPG1hdC1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwiY2FsY3VsYXRlXCI+XHJcbiAgICAgICAgICAgIDxtYXQtb3B0aW9uPnt7J05vbmUnfHRyYW5zbGF0ZX19PC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgICA8bWF0LW9wdGlvbiB2YWx1ZT1cInF1YXJ0ZXJcIj57eydRdWFydGVyJ3x0cmFuc2xhdGV9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgICAgICAgPG1hdC1vcHRpb24gdmFsdWU9XCJ5ZWFyXCI+e3snWWVhcid8dHJhbnNsYXRlfX08L21hdC1vcHRpb24+XHJcbiAgICAgICAgICAgIDxtYXQtb3B0aW9uIHZhbHVlPVwibW9udGhcIj57eydNb250aCd8dHJhbnNsYXRlfX08L21hdC1vcHRpb24+XHJcbiAgICAgICAgICAgIDxtYXQtb3B0aW9uIHZhbHVlPVwiYWNjdW11bGF0ZVwiPnt7J0FjY3VtdWxhdGUnfHRyYW5zbGF0ZX19PC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cInN1bS5yZW1vdmVBdChpbmRleClcIiBbYml6ZG9jVG9vbHRpcF09XCInUmVtb3ZlJ3x0cmFuc2xhdGVcIj48bWF0LWljb24+ZGVsZXRlPC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJhZGQoKVwiIFtiaXpkb2NUb29sdGlwXT1cIidBZGQnfHRyYW5zbGF0ZVwiPjxtYXQtaWNvbj5hZGQ8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gIDwvZm9ybT5cclxuICA8IS0tPG5nLWNvbnRhaW5lciAqbmdJZj1cImN1YmVcIj5cclxuICAgIDxoMiBjbGFzcz1cIm1hdC10aXRsZVwiPnt7J0ZpbHRlcnMnfHRyYW5zbGF0ZX19PC9oMj5cclxuICAgIDxiaXpkb2MtY3ViZS1maWx0ZXIgW2N1YmVdPVwiY3ViZS5uYW1lXCIgWyhheGVzKV09XCJmb3JtLmNvbnRyb2xzLmZpbHRlcnMudmFsdWVcIj48L2JpemRvYy1jdWJlLWZpbHRlcj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuICAgIC0tPiBcclxuPC9uZy1jb250YWluZXI+XHJcbjxuZy10ZW1wbGF0ZSAjaW5mbz48L25nLXRlbXBsYXRlPlxyXG4iXX0=
|
@@ -2,55 +2,39 @@ import { __decorate } from "tslib";
|
|
2
2
|
import { Component } from "@angular/core";
|
3
3
|
import { Validators } from "@angular/forms";
|
4
4
|
import { BizDoc } from "../../../core/decorators";
|
5
|
-
import {
|
5
|
+
import { DesignerCubeElementComponent } from "../designer.base";
|
6
6
|
import * as i0 from "@angular/core";
|
7
|
-
import * as i1 from "@angular/
|
8
|
-
import * as i2 from "
|
9
|
-
import * as i3 from "@angular/
|
10
|
-
import * as i4 from "@angular/material/
|
11
|
-
import * as i5 from "@angular/material/
|
12
|
-
import * as i6 from "
|
13
|
-
import * as i7 from "../../../cube/
|
7
|
+
import * as i1 from "@angular/common";
|
8
|
+
import * as i2 from "@angular/forms";
|
9
|
+
import * as i3 from "@angular/material/core";
|
10
|
+
import * as i4 from "@angular/material/form-field";
|
11
|
+
import * as i5 from "@angular/material/select";
|
12
|
+
import * as i6 from "../../../cube/parallel/parallel.component";
|
13
|
+
import * as i7 from "../../../cube/filter/filter.component";
|
14
14
|
import * as i8 from "../../../core/pipes/translate.pipe";
|
15
|
-
let ParallelViewDesignComponent = class ParallelViewDesignComponent extends
|
16
|
-
constructor(
|
17
|
-
super();
|
18
|
-
this._fb = _fb;
|
19
|
-
this._session = _session;
|
15
|
+
let ParallelViewDesignComponent = class ParallelViewDesignComponent extends DesignerCubeElementComponent {
|
16
|
+
constructor() {
|
17
|
+
super(...arguments);
|
20
18
|
this.form = this._fb.group({
|
21
19
|
cube: null,
|
22
20
|
xAxis: this._fb.control(null, Validators.required),
|
23
|
-
series: null,
|
21
|
+
series: this._fb.control(null, Validators.required),
|
24
22
|
indices: null,
|
25
23
|
filters: this._fb.group({}),
|
26
24
|
chartType: null,
|
25
|
+
aggregate: null,
|
27
26
|
scope: null
|
28
27
|
});
|
29
|
-
this.cubes = this._session.profile.cubes;
|
30
|
-
}
|
31
|
-
_secondaryAxes(primaryAxes) {
|
32
|
-
this.secondaryAxes = this.cube.axes.filter(a => primaryAxes.indexOf(a.name) < 0);
|
33
|
-
}
|
34
|
-
xAxisSelected(evt) {
|
35
|
-
this._secondaryAxes(evt.value);
|
36
|
-
}
|
37
|
-
ngOnInit() {
|
38
|
-
this.cube = !this.model.options.cube ? this._session.profile.cubes[0] :
|
39
|
-
this._session.profile.cubes.find(c => c.name === this.model.options.cube);
|
40
|
-
}
|
41
|
-
cubeSelected(evt) {
|
42
|
-
this.cube = evt.value;
|
43
|
-
this.form.get('cube').setValue(evt.value.name);
|
44
28
|
}
|
45
29
|
};
|
46
|
-
ParallelViewDesignComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: ParallelViewDesignComponent, deps:
|
47
|
-
ParallelViewDesignComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.3", type: ParallelViewDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ng-
|
30
|
+
ParallelViewDesignComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: ParallelViewDesignComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
31
|
+
ParallelViewDesignComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.3", type: ParallelViewDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"editMode; else info\">\r\n <form autocomplete=\"off\" [formGroup]=\"form\" class=\"column\">\r\n <mat-form-field *ngIf=\"cubes.length>1\">\r\n <mat-label>{{'Cube'|translate}}</mat-label>\r\n <mat-select required (selectionChange)=\"cubeSelected($event)\">\r\n <mat-option *ngFor=\"let c of cubes\" [value]=\"c\">{{c.title}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'XAxis'|translate}}</mat-label>\r\n <mat-select formControlName=\"xAxis\" required (selectionChange)=\"xAxisSelected($event)\">\r\n <mat-option *ngFor=\"let x of cube.axes\" [value]=\"x.name\">{{x.title || x.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'Series'|translate}}</mat-label>\r\n <mat-select formControlName=\"series\" required (selectionChange)=\"seriesSelected($event)\">\r\n <mat-option *ngFor=\"let x of secondaryAxes\" [value]=\"x.name\">{{x.title || x.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'ChartType'|translate}}</mat-label>\r\n <mat-select formControlName=\"chartType\">\r\n <mat-option value=\"Pie\">{{'Pie'|translate}}</mat-option>\r\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\r\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\r\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field *ngIf=\"cube.indices?.length\">\r\n <mat-label>{{'Indices'|translate}}</mat-label>\r\n <mat-select formControlName=\"indices\" multiple>\r\n <mat-option *ngFor=\"let x of cube.indices\" [value]=\"x.name\">{{x.title || x.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'Aggregate'|translate}}</mat-label>\r\n <mat-select formControlName=\"aggregate\" multiple [disabled]=\"!thirdAxes || !thirdAxes.length\">\r\n <mat-option *ngFor=\"let x of thirdAxes\" [value]=\"x.name\">{{x.title || x.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </form>\r\n <ng-container *ngIf=\"cube\">\r\n <h2 class=\"mat-title\">{{'Filters'|translate}}</h2>\r\n <bizdoc-cube-filter [cube]=\"cube.name\" [(axes)]=\"form.controls.filters.value\"></bizdoc-cube-filter>\r\n </ng-container>\r\n <div>\r\n <bizdoc-cube-parallel *ngIf=\"args.xAxis\" [cube]=\"args.cube\"\r\n [xAxis]=\"args.xAxis\"\r\n [series]=\"args.series\"\r\n [indices]=\"args.indices\"\r\n [filters]=\"args.filters\"\r\n [chartType]=\"args.chartType\"\r\n [scope]=\"args.scope\"\r\n [size]=\"250\"></bizdoc-cube-parallel>\r\n </div>\r\n</ng-container>\r\n<ng-template #info></ng-template>\r\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i3.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i6.CubeParallelComponent, selector: "bizdoc-cube-parallel", inputs: ["filters", "xAxis", "series", "indices", "cube", "size", "chartType", "scope", "palettes"], outputs: ["explore"] }, { kind: "component", type: i7.CubeFilterComponent, selector: "bizdoc-cube-filter", inputs: ["cube", "exclude", "include", "axes"], outputs: ["axesChange"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }] });
|
48
32
|
ParallelViewDesignComponent = __decorate([
|
49
33
|
BizDoc({ selector: 'parallel-view-designer' })
|
50
34
|
], ParallelViewDesignComponent);
|
51
35
|
export { ParallelViewDesignComponent };
|
52
36
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: ParallelViewDesignComponent, decorators: [{
|
53
37
|
type: Component,
|
54
|
-
args: [{ template: "<ng-
|
55
|
-
}]
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
38
|
+
args: [{ template: "<ng-container *ngIf=\"editMode; else info\">\r\n <form autocomplete=\"off\" [formGroup]=\"form\" class=\"column\">\r\n <mat-form-field *ngIf=\"cubes.length>1\">\r\n <mat-label>{{'Cube'|translate}}</mat-label>\r\n <mat-select required (selectionChange)=\"cubeSelected($event)\">\r\n <mat-option *ngFor=\"let c of cubes\" [value]=\"c\">{{c.title}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'XAxis'|translate}}</mat-label>\r\n <mat-select formControlName=\"xAxis\" required (selectionChange)=\"xAxisSelected($event)\">\r\n <mat-option *ngFor=\"let x of cube.axes\" [value]=\"x.name\">{{x.title || x.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'Series'|translate}}</mat-label>\r\n <mat-select formControlName=\"series\" required (selectionChange)=\"seriesSelected($event)\">\r\n <mat-option *ngFor=\"let x of secondaryAxes\" [value]=\"x.name\">{{x.title || x.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'ChartType'|translate}}</mat-label>\r\n <mat-select formControlName=\"chartType\">\r\n <mat-option value=\"Pie\">{{'Pie'|translate}}</mat-option>\r\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\r\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\r\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field *ngIf=\"cube.indices?.length\">\r\n <mat-label>{{'Indices'|translate}}</mat-label>\r\n <mat-select formControlName=\"indices\" multiple>\r\n <mat-option *ngFor=\"let x of cube.indices\" [value]=\"x.name\">{{x.title || x.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'Aggregate'|translate}}</mat-label>\r\n <mat-select formControlName=\"aggregate\" multiple [disabled]=\"!thirdAxes || !thirdAxes.length\">\r\n <mat-option *ngFor=\"let x of thirdAxes\" [value]=\"x.name\">{{x.title || x.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </form>\r\n <ng-container *ngIf=\"cube\">\r\n <h2 class=\"mat-title\">{{'Filters'|translate}}</h2>\r\n <bizdoc-cube-filter [cube]=\"cube.name\" [(axes)]=\"form.controls.filters.value\"></bizdoc-cube-filter>\r\n </ng-container>\r\n <div>\r\n <bizdoc-cube-parallel *ngIf=\"args.xAxis\" [cube]=\"args.cube\"\r\n [xAxis]=\"args.xAxis\"\r\n [series]=\"args.series\"\r\n [indices]=\"args.indices\"\r\n [filters]=\"args.filters\"\r\n [chartType]=\"args.chartType\"\r\n [scope]=\"args.scope\"\r\n [size]=\"250\"></bizdoc-cube-parallel>\r\n </div>\r\n</ng-container>\r\n<ng-template #info></ng-template>\r\n" }]
|
39
|
+
}] });
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYWxsZWwtdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL2FkbWluL2NvbmZpZ3VyYXRpb24tZGVzaWduZXIvZWxlbWVudHMvcGFyYWxsZWwtdmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL2FkbWluL2NvbmZpZ3VyYXRpb24tZGVzaWduZXIvZWxlbWVudHMvcGFyYWxsZWwtdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRWxELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7Ozs7O0lBSW5ELDJCQUEyQixTQUEzQiwyQkFBNEIsU0FBUSw0QkFBbUQ7OztRQUN6RixTQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUM7WUFDN0IsSUFBSSxFQUFFLElBQUk7WUFDVixLQUFLLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDbEQsTUFBTSxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ25ELE9BQU8sRUFBRSxJQUFJO1lBQ2IsT0FBTyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUMzQixTQUFTLEVBQUUsSUFBSTtZQUNmLFNBQVMsRUFBRSxJQUFJO1lBQ2YsS0FBSyxFQUFFLElBQUk7U0FDWixDQUFDLENBQUM7S0FDSjtDQUFBLENBQUE7d0hBWFksMkJBQTJCOzRHQUEzQiwyQkFBMkIsMkVDUnhDLHkrRkEwREE7QURsRGEsMkJBQTJCO0lBRHZDLE1BQU0sQ0FBQyxFQUFFLFFBQVEsRUFBRSx3QkFBd0IsRUFBRSxDQUFDO0dBQ2xDLDJCQUEyQixDQVd2QztTQVhZLDJCQUEyQjsyRkFBM0IsMkJBQTJCO2tCQUZ2QyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBWYWxpZGF0b3JzIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IEJpekRvYyB9IGZyb20gXCIuLi8uLi8uLi9jb3JlL2RlY29yYXRvcnNcIjtcclxuaW1wb3J0IHsgUGFyYWxsZWxTZXR0aW5nc01vZGVsIH0gZnJvbSBcIi4uLy4uLy4uL3ZpZXdzL2N1YmUvcGFyYWxsZWwuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IERlc2lnbmVyQ3ViZUVsZW1lbnRDb21wb25lbnQgfSBmcm9tIFwiLi4vZGVzaWduZXIuYmFzZVwiO1xyXG5cclxuQENvbXBvbmVudCh7IHRlbXBsYXRlVXJsOiAncGFyYWxsZWwtdmlldy5jb21wb25lbnQuaHRtbCcgfSlcclxuQEJpekRvYyh7IHNlbGVjdG9yOiAncGFyYWxsZWwtdmlldy1kZXNpZ25lcicgfSlcclxuZXhwb3J0IGNsYXNzIFBhcmFsbGVsVmlld0Rlc2lnbkNvbXBvbmVudCBleHRlbmRzIERlc2lnbmVyQ3ViZUVsZW1lbnRDb21wb25lbnQ8UGFyYWxsZWxTZXR0aW5nc01vZGVsPiBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgcmVhZG9ubHkgZm9ybSA9IHRoaXMuX2ZiLmdyb3VwKHtcclxuICAgIGN1YmU6IG51bGwsXHJcbiAgICB4QXhpczogdGhpcy5fZmIuY29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuICAgIHNlcmllczogdGhpcy5fZmIuY29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuICAgIGluZGljZXM6IG51bGwsXHJcbiAgICBmaWx0ZXJzOiB0aGlzLl9mYi5ncm91cCh7fSksXHJcbiAgICBjaGFydFR5cGU6IG51bGwsXHJcbiAgICBhZ2dyZWdhdGU6IG51bGwsXHJcbiAgICBzY29wZTogbnVsbFxyXG4gIH0pO1xyXG59XHJcbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJlZGl0TW9kZTsgZWxzZSBpbmZvXCI+XHJcbiAgPGZvcm0gYXV0b2NvbXBsZXRlPVwib2ZmXCIgW2Zvcm1Hcm91cF09XCJmb3JtXCIgY2xhc3M9XCJjb2x1bW5cIj5cclxuICAgIDxtYXQtZm9ybS1maWVsZCAqbmdJZj1cImN1YmVzLmxlbmd0aD4xXCI+XHJcbiAgICAgIDxtYXQtbGFiZWw+e3snQ3ViZSd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgICAgPG1hdC1zZWxlY3QgcmVxdWlyZWQgKHNlbGVjdGlvbkNoYW5nZSk9XCJjdWJlU2VsZWN0ZWQoJGV2ZW50KVwiPlxyXG4gICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBjIG9mIGN1YmVzXCIgW3ZhbHVlXT1cImNcIj57e2MudGl0bGV9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgIDxtYXQtZm9ybS1maWVsZD5cclxuICAgICAgPG1hdC1sYWJlbD57eydYQXhpcyd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgICAgPG1hdC1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwieEF4aXNcIiByZXF1aXJlZCAoc2VsZWN0aW9uQ2hhbmdlKT1cInhBeGlzU2VsZWN0ZWQoJGV2ZW50KVwiPlxyXG4gICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCB4IG9mIGN1YmUuYXhlc1wiIFt2YWx1ZV09XCJ4Lm5hbWVcIj57e3gudGl0bGUgfHwgeC5uYW1lfX08L21hdC1vcHRpb24+XHJcbiAgICAgIDwvbWF0LXNlbGVjdD5cclxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgIDxtYXQtbGFiZWw+e3snU2VyaWVzJ3x0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxyXG4gICAgICA8bWF0LXNlbGVjdCBmb3JtQ29udHJvbE5hbWU9XCJzZXJpZXNcIiByZXF1aXJlZCAoc2VsZWN0aW9uQ2hhbmdlKT1cInNlcmllc1NlbGVjdGVkKCRldmVudClcIj5cclxuICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgeCBvZiBzZWNvbmRhcnlBeGVzXCIgW3ZhbHVlXT1cIngubmFtZVwiPnt7eC50aXRsZSB8fCB4Lm5hbWV9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgIDxtYXQtZm9ybS1maWVsZD5cclxuICAgICAgPG1hdC1sYWJlbD57eydDaGFydFR5cGUnfHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XHJcbiAgICAgIDxtYXQtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cImNoYXJ0VHlwZVwiPlxyXG4gICAgICAgIDxtYXQtb3B0aW9uIHZhbHVlPVwiUGllXCI+e3snUGllJ3x0cmFuc2xhdGV9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgICA8bWF0LW9wdGlvbiB2YWx1ZT1cIkNvbHVtblwiPnt7J0NvbHVtbid8dHJhbnNsYXRlfX08L21hdC1vcHRpb24+XHJcbiAgICAgICAgPG1hdC1vcHRpb24gdmFsdWU9XCJMaW5lXCI+e3snTGluZSd8dHJhbnNsYXRlfX08L21hdC1vcHRpb24+XHJcbiAgICAgICAgPG1hdC1vcHRpb24gdmFsdWU9XCJBcmVhXCI+e3snQXJlYSd8dHJhbnNsYXRlfX08L21hdC1vcHRpb24+XHJcbiAgICAgIDwvbWF0LXNlbGVjdD5cclxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICA8bWF0LWZvcm0tZmllbGQgKm5nSWY9XCJjdWJlLmluZGljZXM/Lmxlbmd0aFwiPlxyXG4gICAgICA8bWF0LWxhYmVsPnt7J0luZGljZXMnfHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XHJcbiAgICAgIDxtYXQtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cImluZGljZXNcIiBtdWx0aXBsZT5cclxuICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgeCBvZiBjdWJlLmluZGljZXNcIiBbdmFsdWVdPVwieC5uYW1lXCI+e3t4LnRpdGxlIHx8IHgubmFtZX19PC9tYXQtb3B0aW9uPlxyXG4gICAgICA8L21hdC1zZWxlY3Q+XHJcbiAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgPG1hdC1mb3JtLWZpZWxkPlxyXG4gICAgICA8bWF0LWxhYmVsPnt7J0FnZ3JlZ2F0ZSd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgICAgPG1hdC1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwiYWdncmVnYXRlXCIgbXVsdGlwbGUgW2Rpc2FibGVkXT1cIiF0aGlyZEF4ZXMgfHwgIXRoaXJkQXhlcy5sZW5ndGhcIj5cclxuICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgeCBvZiB0aGlyZEF4ZXNcIiBbdmFsdWVdPVwieC5uYW1lXCI+e3t4LnRpdGxlIHx8IHgubmFtZX19PC9tYXQtb3B0aW9uPlxyXG4gICAgICA8L21hdC1zZWxlY3Q+XHJcbiAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gIDwvZm9ybT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjdWJlXCI+XHJcbiAgICAgIDxoMiBjbGFzcz1cIm1hdC10aXRsZVwiPnt7J0ZpbHRlcnMnfHRyYW5zbGF0ZX19PC9oMj5cclxuICAgICAgPGJpemRvYy1jdWJlLWZpbHRlciBbY3ViZV09XCJjdWJlLm5hbWVcIiBbKGF4ZXMpXT1cImZvcm0uY29udHJvbHMuZmlsdGVycy52YWx1ZVwiPjwvYml6ZG9jLWN1YmUtZmlsdGVyPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPGRpdj5cclxuICAgIDxiaXpkb2MtY3ViZS1wYXJhbGxlbCAqbmdJZj1cImFyZ3MueEF4aXNcIiBbY3ViZV09XCJhcmdzLmN1YmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFt4QXhpc109XCJhcmdzLnhBeGlzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbc2VyaWVzXT1cImFyZ3Muc2VyaWVzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbaW5kaWNlc109XCJhcmdzLmluZGljZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtmaWx0ZXJzXT1cImFyZ3MuZmlsdGVyc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2NoYXJ0VHlwZV09XCJhcmdzLmNoYXJ0VHlwZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW3Njb3BlXT1cImFyZ3Muc2NvcGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtzaXplXT1cIjI1MFwiPjwvYml6ZG9jLWN1YmUtcGFyYWxsZWw+XHJcbiAgPC9kaXY+XHJcbjwvbmctY29udGFpbmVyPlxyXG48bmctdGVtcGxhdGUgI2luZm8+PC9uZy10ZW1wbGF0ZT5cclxuIl19
|
@@ -1,47 +1,33 @@
|
|
1
1
|
import { __decorate } from "tslib";
|
2
2
|
import { Component } from "@angular/core";
|
3
3
|
import { BizDoc } from "../../../core/decorators";
|
4
|
-
import {
|
4
|
+
import { DesignerCubeElementComponent } from "../designer.base";
|
5
5
|
import * as i0 from "@angular/core";
|
6
|
-
import * as i1 from "@angular/
|
7
|
-
import * as i2 from "
|
8
|
-
import * as i3 from "@angular/
|
9
|
-
import * as i4 from "@angular/material/
|
10
|
-
import * as i5 from "@angular/material/
|
11
|
-
import * as i6 from "
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
let PerformanceWidgetDesignComponent = class PerformanceWidgetDesignComponent extends DesignerElementComponent {
|
16
|
-
constructor(_fb, _session) {
|
17
|
-
super();
|
18
|
-
this._fb = _fb;
|
19
|
-
this._session = _session;
|
6
|
+
import * as i1 from "@angular/common";
|
7
|
+
import * as i2 from "@angular/forms";
|
8
|
+
import * as i3 from "@angular/material/core";
|
9
|
+
import * as i4 from "@angular/material/form-field";
|
10
|
+
import * as i5 from "@angular/material/select";
|
11
|
+
import * as i6 from "../../../core/pipes/translate.pipe";
|
12
|
+
let PerformanceWidgetDesignComponent = class PerformanceWidgetDesignComponent extends DesignerCubeElementComponent {
|
13
|
+
constructor() {
|
14
|
+
super(...arguments);
|
20
15
|
this.form = this._fb.group({
|
21
16
|
cube: null,
|
22
17
|
series: null,
|
23
18
|
filters: this._fb.group({}),
|
24
19
|
scope: null
|
25
20
|
});
|
26
|
-
this.cubes = this._session.profile.cubes;
|
27
|
-
}
|
28
|
-
ngOnInit() {
|
29
|
-
this.selectedCube = !this.model.options.cube ? this._session.profile.cubes[0] :
|
30
|
-
this._session.profile.cubes.find(c => c.name === this.model.options.cube);
|
31
|
-
}
|
32
|
-
cubeSelected(evt) {
|
33
|
-
this.selectedCube = evt.value;
|
34
|
-
this.form.get('cube').setValue(evt.value.name);
|
35
21
|
}
|
36
22
|
};
|
37
|
-
PerformanceWidgetDesignComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: PerformanceWidgetDesignComponent, deps:
|
38
|
-
PerformanceWidgetDesignComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.3", type: PerformanceWidgetDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ng-
|
23
|
+
PerformanceWidgetDesignComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: PerformanceWidgetDesignComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
24
|
+
PerformanceWidgetDesignComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.3", type: PerformanceWidgetDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"editMode; else info\">\r\n <form autocomplete=\"off\" [formGroup]=\"form\" class=\"column\">\r\n <mat-form-field *ngIf=\"cubes.length>1\">\r\n <mat-label>{{'Cube'|translate}}</mat-label>\r\n <mat-select required (selectionChange)=\"cubeSelected($event)\">\r\n <mat-option *ngFor=\"let c of cubes\" [value]=\"c\">{{c.title}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'Series'|translate}}</mat-label>\r\n <mat-select formControlName=\"series\" required>\r\n <mat-option *ngFor=\"let x of cube?.axes\" [value]=\"x.name\">{{x.title||x.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </form>\r\n</ng-container>\r\n<ng-template #info></ng-template>\r\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i3.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] });
|
39
25
|
PerformanceWidgetDesignComponent = __decorate([
|
40
26
|
BizDoc({ selector: 'performance-widget-designer' })
|
41
27
|
], PerformanceWidgetDesignComponent);
|
42
28
|
export { PerformanceWidgetDesignComponent };
|
43
29
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: PerformanceWidgetDesignComponent, decorators: [{
|
44
30
|
type: Component,
|
45
|
-
args: [{ template: "<ng-
|
46
|
-
}]
|
47
|
-
//# sourceMappingURL=data:application/json;base64,
|
31
|
+
args: [{ template: "<ng-container *ngIf=\"editMode; else info\">\r\n <form autocomplete=\"off\" [formGroup]=\"form\" class=\"column\">\r\n <mat-form-field *ngIf=\"cubes.length>1\">\r\n <mat-label>{{'Cube'|translate}}</mat-label>\r\n <mat-select required (selectionChange)=\"cubeSelected($event)\">\r\n <mat-option *ngFor=\"let c of cubes\" [value]=\"c\">{{c.title}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'Series'|translate}}</mat-label>\r\n <mat-select formControlName=\"series\" required>\r\n <mat-option *ngFor=\"let x of cube?.axes\" [value]=\"x.name\">{{x.title||x.name}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </form>\r\n</ng-container>\r\n<ng-template #info></ng-template>\r\n" }]
|
32
|
+
}] });
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyZm9ybWFuY2Utd2lkZ2V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvYWRtaW4vY29uZmlndXJhdGlvbi1kZXNpZ25lci9lbGVtZW50cy9wZXJmb3JtYW5jZS13aWRnZXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9hZG1pbi9jb25maWd1cmF0aW9uLWRlc2lnbmVyL2VsZW1lbnRzL3BlcmZvcm1hbmNlLXdpZGdldC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFbEQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sa0JBQWtCLENBQUM7Ozs7Ozs7O0lBSW5ELGdDQUFnQyxTQUFoQyxnQ0FBaUMsU0FBUSw0QkFBc0Q7OztRQUNqRyxTQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUM7WUFDN0IsSUFBSSxFQUFFLElBQUk7WUFDVixNQUFNLEVBQUUsSUFBSTtZQUNaLE9BQU8sRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDM0IsS0FBSyxFQUFFLElBQUk7U0FDWixDQUFDLENBQUM7S0FDSjtDQUFBLENBQUE7NkhBUFksZ0NBQWdDO2lIQUFoQyxnQ0FBZ0MsMkVDUDdDLHl4QkFpQkE7QURWYSxnQ0FBZ0M7SUFENUMsTUFBTSxDQUFDLEVBQUUsUUFBUSxFQUFFLDZCQUE2QixFQUFFLENBQUM7R0FDdkMsZ0NBQWdDLENBTzVDO1NBUFksZ0NBQWdDOzJGQUFoQyxnQ0FBZ0M7a0JBRjVDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEJpekRvYyB9IGZyb20gXCIuLi8uLi8uLi9jb3JlL2RlY29yYXRvcnNcIjtcclxuaW1wb3J0IHsgUGVyZm9ybWFuY2VTZXR0aW5nc01vZGVsIH0gZnJvbSBcIi4uLy4uLy4uL2Rhc2hib2FyZC9jdWJlL2NvbXBhcmUud2lkZ2V0XCI7XHJcbmltcG9ydCB7IERlc2lnbmVyQ3ViZUVsZW1lbnRDb21wb25lbnQgfSBmcm9tIFwiLi4vZGVzaWduZXIuYmFzZVwiO1xyXG5cclxuQENvbXBvbmVudCh7IHRlbXBsYXRlVXJsOiAncGVyZm9ybWFuY2Utd2lkZ2V0LmNvbXBvbmVudC5odG1sJyB9KVxyXG5AQml6RG9jKHsgc2VsZWN0b3I6ICdwZXJmb3JtYW5jZS13aWRnZXQtZGVzaWduZXInIH0pXHJcbmV4cG9ydCBjbGFzcyBQZXJmb3JtYW5jZVdpZGdldERlc2lnbkNvbXBvbmVudCBleHRlbmRzIERlc2lnbmVyQ3ViZUVsZW1lbnRDb21wb25lbnQ8UGVyZm9ybWFuY2VTZXR0aW5nc01vZGVsPiBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgcmVhZG9ubHkgZm9ybSA9IHRoaXMuX2ZiLmdyb3VwKHtcclxuICAgIGN1YmU6IG51bGwsXHJcbiAgICBzZXJpZXM6IG51bGwsXHJcbiAgICBmaWx0ZXJzOiB0aGlzLl9mYi5ncm91cCh7fSksXHJcbiAgICBzY29wZTogbnVsbFxyXG4gIH0pO1xyXG59XHJcbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJlZGl0TW9kZTsgZWxzZSBpbmZvXCI+XHJcbiAgPGZvcm0gYXV0b2NvbXBsZXRlPVwib2ZmXCIgW2Zvcm1Hcm91cF09XCJmb3JtXCIgY2xhc3M9XCJjb2x1bW5cIj5cclxuICAgIDxtYXQtZm9ybS1maWVsZCAqbmdJZj1cImN1YmVzLmxlbmd0aD4xXCI+XHJcbiAgICAgIDxtYXQtbGFiZWw+e3snQ3ViZSd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgICAgPG1hdC1zZWxlY3QgcmVxdWlyZWQgKHNlbGVjdGlvbkNoYW5nZSk9XCJjdWJlU2VsZWN0ZWQoJGV2ZW50KVwiPlxyXG4gICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBjIG9mIGN1YmVzXCIgW3ZhbHVlXT1cImNcIj57e2MudGl0bGV9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgIDxtYXQtZm9ybS1maWVsZD5cclxuICAgICAgPG1hdC1sYWJlbD57eydTZXJpZXMnfHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XHJcbiAgICAgIDxtYXQtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cInNlcmllc1wiIHJlcXVpcmVkPlxyXG4gICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCB4IG9mIGN1YmU/LmF4ZXNcIiBbdmFsdWVdPVwieC5uYW1lXCI+e3t4LnRpdGxlfHx4Lm5hbWV9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICA8L2Zvcm0+XHJcbjwvbmctY29udGFpbmVyPlxyXG48bmctdGVtcGxhdGUgI2luZm8+PC9uZy10ZW1wbGF0ZT5cclxuIl19
|