@bizdoc/core 1.10.0-next.2 → 1.10.0-next.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 +1 -1
- package/assets/themes/brown.min.css +1 -1
- package/assets/themes/deep-purple-light-blue.min.css +1 -1
- package/assets/themes/default.min.css +1 -1
- package/assets/themes/green.min.css +1 -1
- package/assets/themes/indigo.min.css +1 -1
- package/esm2020/lib/compose/compose.mobile.component.mjs +25 -15
- package/esm2020/lib/compose/compose.pane.component.mjs +3 -3
- package/esm2020/lib/compose/trace/flow.component.mjs +44 -22
- package/esm2020/lib/core/animations.mjs +7 -1
- package/esm2020/lib/core/models.mjs +1 -1
- package/esm2020/lib/core/pipes/translate.pipe.mjs +17 -2
- package/esm2020/lib/cube/chart/chart.component.mjs +5 -5
- package/esm2020/lib/cube/cube-view.component.mjs +11 -10
- package/esm2020/lib/cube/matrix/matrix.base.mjs +1 -1
- package/esm2020/lib/cube/matrix/matrix.component.mjs +4 -4
- package/esm2020/lib/cube/matrix/matrix.mobile.component.mjs +4 -4
- package/esm2020/lib/cube/matrix/matrix.pane.component.mjs +4 -4
- package/esm2020/lib/cube/matrix/table.component.mjs +65 -63
- package/esm2020/lib/cube/parallel/parallel.component.mjs +8 -8
- package/esm2020/lib/cube/pivot/pivot.component.mjs +3 -3
- package/esm2020/lib/cube/sum/sum.component.mjs +13 -13
- package/esm2020/lib/cube/view.mobile.component.mjs +4 -7
- package/esm2020/lib/cube/view.pane.component.mjs +3 -3
- package/esm2020/lib/dashboard/cube/cube-analysis.base.mjs +1 -1
- package/esm2020/lib/dashboard/cube/cube-chart.widget.mjs +2 -2
- package/esm2020/lib/home/home.mobile.component.mjs +3 -3
- package/esm2020/lib/notifications/notifications-table.component.mjs +3 -3
- package/esm2020/lib/routes.desktop.mjs +2 -2
- package/esm2020/lib/routes.mobile.mjs +9 -9
- package/esm2020/lib/views/cube/chart.component.mjs +5 -5
- package/esm2020/lib/views/cube/matrix.component.mjs +6 -6
- package/esm2020/lib/views/cube/parallel.component.mjs +3 -3
- package/esm2020/lib/views/cube/pivot.component.mjs +3 -3
- package/esm2020/lib/views/cube/sum.component.mjs +3 -3
- package/esm2020/lib/views/cube/view.component.mjs +3 -3
- package/esm2020/lib/views/views.mobile.component.mjs +10 -14
- package/fesm2015/bizdoc-core.mjs +232 -183
- package/fesm2015/bizdoc-core.mjs.map +1 -1
- package/fesm2020/bizdoc-core.mjs +232 -183
- package/fesm2020/bizdoc-core.mjs.map +1 -1
- package/lib/compose/compose.mobile.component.d.ts +2 -2
- package/lib/compose/trace/flow.component.d.ts +1 -1
- package/lib/core/animations.d.ts +1 -0
- package/lib/core/models.d.ts +1 -1
- package/lib/core/pipes/translate.pipe.d.ts +9 -1
- package/lib/cube/chart/chart.component.d.ts +2 -2
- package/lib/cube/cube-view.component.d.ts +2 -2
- package/lib/cube/matrix/matrix.base.d.ts +1 -1
- package/lib/cube/matrix/table.component.d.ts +7 -7
- package/lib/cube/parallel/parallel.component.d.ts +2 -2
- package/lib/cube/pivot/pivot.component.d.ts +2 -2
- package/lib/cube/sum/sum.component.d.ts +3 -3
- package/lib/dashboard/cube/cube-analysis.base.d.ts +1 -1
- package/lib/views/cube/chart.component.d.ts +2 -2
- package/lib/views/cube/matrix.component.d.ts +2 -4
- package/lib/views/cube/pivot.component.d.ts +1 -1
- package/lib/views/cube/sum.component.d.ts +2 -2
- package/lib/views/views.mobile.component.d.ts +1 -5
- package/package.json +1 -1
package/fesm2015/bizdoc-core.mjs
CHANGED
@@ -217,6 +217,12 @@ const SwapAnimation = [
|
|
217
217
|
transition(':increment', [style({ transform: 'translateX(100px)' }), animate('200ms', style({ transform: 'translateX(0)' }))]),
|
218
218
|
transition(':decrement', [style({ transform: 'translateX(-100px)' }), animate('200ms', style({ transform: 'translateX(0)' }))])
|
219
219
|
];
|
220
|
+
const matrixAnimation = trigger('table', [transition('void=>*', [
|
221
|
+
query('.mat-row', [
|
222
|
+
style({ opacity: 0, transform: 'translateX(10px)' }),
|
223
|
+
stagger(100, style({ opacity: 1, transform: 'none' }))
|
224
|
+
], { optional: true })
|
225
|
+
])]);
|
220
226
|
const swapAnimation = trigger('swape', SwapAnimation);
|
221
227
|
const pageAnimation = trigger('page', [
|
222
228
|
state(':enter', style({ transform: 'translateX(0)' })),
|
@@ -2628,7 +2634,22 @@ TranslatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13
|
|
2628
2634
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: TranslatePipe, decorators: [{
|
2629
2635
|
type: Pipe,
|
2630
2636
|
args: [{ name: 'translate' }]
|
2631
|
-
}], ctorParameters: function () { return [{ type: TranslateService }]; } });
|
2637
|
+
}], ctorParameters: function () { return [{ type: TranslateService }]; } });
|
2638
|
+
class TranslateDirective {
|
2639
|
+
constructor(_elementRef, _translate) {
|
2640
|
+
this._elementRef = _elementRef;
|
2641
|
+
this._translate = _translate;
|
2642
|
+
}
|
2643
|
+
ngOnInit() {
|
2644
|
+
this._elementRef.nativeElement.innerHTML = this._translate.get(this._elementRef.nativeElement.innerText);
|
2645
|
+
}
|
2646
|
+
}
|
2647
|
+
TranslateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: TranslateDirective, deps: [{ token: i0.ElementRef }, { token: TranslateService }], target: i0.ɵɵFactoryTarget.Directive });
|
2648
|
+
TranslateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.3", type: TranslateDirective, selector: "[i18n]", ngImport: i0 });
|
2649
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: TranslateDirective, decorators: [{
|
2650
|
+
type: Directive,
|
2651
|
+
args: [{ selector: '[i18n]' }]
|
2652
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: TranslateService }]; } });
|
2632
2653
|
|
2633
2654
|
const FILE_PREVIEW_DIALOG_DATA = new InjectionToken('FILE_PREVIEW_DIALOG_DATA');
|
2634
2655
|
const IMAGE_TYPE = ['image/png', 'image/jpeg', 'image/jpg', 'image/gif'];
|
@@ -9463,12 +9484,12 @@ class ComposePaneComponent {
|
|
9463
9484
|
}
|
9464
9485
|
}
|
9465
9486
|
ComposePaneComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ComposePaneComponent, deps: [{ token: SessionService }, { token: MailboxService }, { token: PaneRef }, { token: PanesRouter }], target: i0.ɵɵFactoryTarget.Component });
|
9466
|
-
ComposePaneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: ComposePaneComponent, selector: "bizdoc-compose.pane", host: { listeners: { "document:drop": "handleDocumentDrop($event)", "drop": "handleDrop($event)", "dragenter": "handleEnter($event)", "dragleave": "handleLeave($event)", "dragover": "handleOver($event)", "document:keydown": "handleKeydown($event)" }, classAttribute: "pane" }, viewQueries: [{ propertyName: "form", first: true, predicate: ComposeFormComponent, descendants: true, static: true }, { propertyName: "dropableElement", first: true, predicate: ["dropable"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button color=\"primary\" (click)=\"form.back()\" [bizdocTooltip]=\"'Back'|translate\" *ngIf=\"form.page !== undefined\" tabindex=\"1\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">arrow_back</mat-icon>\r\n </button>\r\n <button mat-stroked-button color=\"primary\" *ngIf=\"model.draft\" data-help=\"submit\"\r\n (click)=\"submit()\" [disabled]=\"!valid||working\">\r\n <span>{{'Submit' | translate}}</span>\r\n </button>\r\n <button mat-stroked-button color=\"primary\" *ngIf=\"model.actions?.length === 1\" [attr.data-help]=\"'action-'+form.actions[0].name\" (click)=\"send(model.actions[0])\" [disabled]=\"!valid||working\">\r\n <span>{{form.actions[0].title}}</span>\r\n </button>\r\n <button mat-stroked-button data-help=\"send\" color=\"primary\" *ngIf=\"model.actions?.length > 1\" [matMenuTriggerFor]=\"actionMenu\" [disabled]=\"!valid||working\" [bizdocTooltip]=\"'Send' | translate\">\r\n <span>{{'Send' | translate}}</span>\r\n </button>\r\n <!-- action -->\r\n <mat-menu #actionMenu>\r\n <ng-template matMenuContent>\r\n <ng-container *ngFor=\"let a of form.actions; let i = index\">\r\n <mat-divider *ngIf=\"i > 0 && form.actions[i - 1].group !== a.group\"></mat-divider>\r\n <button mat-menu-item (click)=\"send(a.name)\">{{a.title}}</button>\r\n </ng-container>\r\n </ng-template>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"save()\" data-help=\"save\" [disabled]=\"!dirty||working\" [bizdocTooltip]=\"'Save'|translate\" *ngIf=\"mode === 'compose'\">\r\n <mat-icon>save</mat-icon>\r\n </button>\r\n <button mat-icon-button data-help=\"tag\" (click)=\"form.tag($event)\" [bizdocTooltip]=\"'Tags' | translate\" [disabled]=\"working\"><mat-icon class=\"filled\">{{model.tags && model.tags.length ?'bookmark':'bookmark_border'}}</mat-icon></button>\r\n <button mat-icon-button data-help=\"flag\" [bizdocTooltip]=\"'Flagged'| translate\" [disabled]=\"working\" (click)=\"form.flag()\"><mat-icon [class.document-flag]=\"model.flag\">{{model.flag ? 'star' : 'star_border'}}</mat-icon></button>\r\n <button mat-icon-button (click)=\"form.attach()\" data-help=\"attach\" [bizdocTooltip]=\"'AttachFile' | translate\" [disabled]=\"working\"><mat-icon>attach_file</mat-icon></button>\r\n <button mat-icon-button [disabled]=\"working\" data-help=\"edit\" (click)=\"edit()\" [bizdocTooltip]=\"'Edit' | translate\" *ngIf=\"mode !== 'compose' && model.pending && !model.completed\"><mat-icon>create</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"navTrace()\" [bizdocTooltip]=\"'Trace' | translate\" tabindex=\"1\"><mat-icon>timeline</mat-icon></button>\r\n <button mat-icon-button (click)=\"navComments()\" data-help=\"comments\" [bizdocTooltip]=\"'Comments' | translate\" [matBadge]=\"newCommentsCount\" [matBadgeHidden]=\"!newCommentsCount\" matBadgeColor=\"accent\">\r\n <mat-icon [class.filled]=\"model.comments.length > 0\">format_quote</mat-icon>\r\n </button>\r\n <button mat-icon-button (click)=\"view()\" [bizdocTooltip]=\"'View' | translate\" [attr.aria-label]=\"'View' | translate\" class=\"tool\"><mat-icon>data_usage</mat-icon></button>\r\n <button mat-icon-button
|
9487
|
+
ComposePaneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: ComposePaneComponent, selector: "bizdoc-compose.pane", host: { listeners: { "document:drop": "handleDocumentDrop($event)", "drop": "handleDrop($event)", "dragenter": "handleEnter($event)", "dragleave": "handleLeave($event)", "dragover": "handleOver($event)", "document:keydown": "handleKeydown($event)" }, classAttribute: "pane" }, viewQueries: [{ propertyName: "form", first: true, predicate: ComposeFormComponent, descendants: true, static: true }, { propertyName: "dropableElement", first: true, predicate: ["dropable"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button color=\"primary\" (click)=\"form.back()\" [bizdocTooltip]=\"'Back'|translate\" *ngIf=\"form.page !== undefined\" tabindex=\"1\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">arrow_back</mat-icon>\r\n </button>\r\n <button mat-stroked-button color=\"primary\" *ngIf=\"model.draft\" data-help=\"submit\"\r\n (click)=\"submit()\" [disabled]=\"!valid||working\">\r\n <span>{{'Submit' | translate}}</span>\r\n </button>\r\n <button mat-stroked-button color=\"primary\" *ngIf=\"model.actions?.length === 1\" [attr.data-help]=\"'action-'+form.actions[0].name\" (click)=\"send(model.actions[0])\" [disabled]=\"!valid||working\">\r\n <span>{{form.actions[0].title}}</span>\r\n </button>\r\n <button mat-stroked-button data-help=\"send\" color=\"primary\" *ngIf=\"model.actions?.length > 1\" [matMenuTriggerFor]=\"actionMenu\" [disabled]=\"!valid||working\" [bizdocTooltip]=\"'Send' | translate\">\r\n <span>{{'Send' | translate}}</span>\r\n </button>\r\n <!-- action -->\r\n <mat-menu #actionMenu>\r\n <ng-template matMenuContent>\r\n <ng-container *ngFor=\"let a of form.actions; let i = index\">\r\n <mat-divider *ngIf=\"i > 0 && form.actions[i - 1].group !== a.group\"></mat-divider>\r\n <button mat-menu-item (click)=\"send(a.name)\">{{a.title}}</button>\r\n </ng-container>\r\n </ng-template>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"save()\" data-help=\"save\" [disabled]=\"!dirty||working\" [bizdocTooltip]=\"'Save'|translate\" *ngIf=\"mode === 'compose'\">\r\n <mat-icon>save</mat-icon>\r\n </button>\r\n <button mat-icon-button data-help=\"tag\" (click)=\"form.tag($event)\" [bizdocTooltip]=\"'Tags' | translate\" [disabled]=\"working\"><mat-icon class=\"filled\">{{model.tags && model.tags.length ?'bookmark':'bookmark_border'}}</mat-icon></button>\r\n <button mat-icon-button data-help=\"flag\" [bizdocTooltip]=\"'Flagged'| translate\" [disabled]=\"working\" (click)=\"form.flag()\"><mat-icon [class.document-flag]=\"model.flag\">{{model.flag ? 'star' : 'star_border'}}</mat-icon></button>\r\n <button mat-icon-button (click)=\"form.attach()\" data-help=\"attach\" [bizdocTooltip]=\"'AttachFile' | translate\" [disabled]=\"working\"><mat-icon>attach_file</mat-icon></button>\r\n <button mat-icon-button [disabled]=\"working\" data-help=\"edit\" (click)=\"edit()\" [bizdocTooltip]=\"'Edit' | translate\" *ngIf=\"mode !== 'compose' && model.pending && !model.completed\"><mat-icon>create</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"navTrace()\" [bizdocTooltip]=\"'Trace' | translate\" tabindex=\"1\"><mat-icon>timeline</mat-icon></button>\r\n <button mat-icon-button (click)=\"navComments()\" data-help=\"comments\" [bizdocTooltip]=\"'Comments' | translate\" [matBadge]=\"newCommentsCount\" [matBadgeHidden]=\"!newCommentsCount\" matBadgeColor=\"accent\">\r\n <mat-icon [class.filled]=\"model.comments.length > 0\">format_quote</mat-icon>\r\n </button>\r\n <button mat-icon-button (click)=\"view()\" [bizdocTooltip]=\"'View' | translate\" [attr.aria-label]=\"'View' | translate\" class=\"tool\"><mat-icon>data_usage</mat-icon></button>\r\n <button mat-icon-button (click)=\"expand()\" [bizdocTooltip]=\"'Expand' | translate\" *ngIf=\"expendable\" [attr.aria-label]=\"'Expand' | translate\"><mat-icon>open_in_new</mat-icon></button>\r\n <button mat-icon-button [matMenuTriggerFor]=\"optionsMenu\" [bizdocTooltip]=\"'Options' | translate\" [attr.aria-label]=\"'Options' | translate\"><mat-icon>more_vert</mat-icon></button>\r\n <mat-menu #optionsMenu=\"matMenu\">\r\n <ng-template matMenuContent>\r\n <button mat-menu-item (click)=\"form.copy()\" [disabled]=\"working\">\r\n <!--<mat-icon>content_copy</mat-icon>-->\r\n <span>{{'Copy' | translate}}</span>\r\n </button>\r\n <button mat-menu-item (click)=\"discard()\" *ngIf=\"model.draft && !model.issued\" [disabled]=\"working\">\r\n <!--<mat-icon>delete_outlined</mat-icon>-->\r\n <span>{{'Discard' | translate}}</span>\r\n </button>\r\n <ng-container *ngIf=\"form.help\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"form.guide(form.help)\">\r\n <!--<mat-icon>help_outline</mat-icon>-->\r\n <span>{{'Help' | translate}}</span>\r\n </button>\r\n </ng-container>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"close()\"><!--<mat-icon></mat-icon>--><span>{{'Close'| translate}}</span></button>\r\n </ng-template>\r\n </mat-menu>\r\n</mat-toolbar>\r\n<div class=\"file-dropable\" #dropable>\r\n <bizdoc-form [model]=model #form\r\n (modelChange)=\"change()\"\r\n (validChange)=\"valid=$event\"\r\n (workingChange)=\"working=$event\"\r\n (dirtyChange)=\"dirty=$event\" [mode]=\"mode\"></bizdoc-form>\r\n</div>\r\n", styles: [".nav-toolbar{position:sticky;top:0;z-index:1}.file-dropable.drag{opacity:.5;overflow:hidden;margin:8px;border-style:dashed;border-color:#777;border-width:5px;background-color:#f5f5f5;z-index:2;top:0;left:0;right:0;bottom: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: i12.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { type: i8$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: ComposeFormComponent, selector: "bizdoc-form", inputs: ["model", "working", "dirty", "valid", "mode", "contacts"], outputs: ["modelChange", "workingChange", "dirtyChange", "validChange"] }], directives: [{ type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i8$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i8$1.MatMenuContent, selector: "ng-template[matMenuContent]" }, { type: i10$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i13.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }], pipes: { "translate": TranslatePipe } });
|
9467
9488
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ComposePaneComponent, decorators: [{
|
9468
9489
|
type: Component,
|
9469
9490
|
args: [{ selector: 'bizdoc-compose.pane', host: {
|
9470
9491
|
class: 'pane'
|
9471
|
-
}, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button color=\"primary\" (click)=\"form.back()\" [bizdocTooltip]=\"'Back'|translate\" *ngIf=\"form.page !== undefined\" tabindex=\"1\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">arrow_back</mat-icon>\r\n </button>\r\n <button mat-stroked-button color=\"primary\" *ngIf=\"model.draft\" data-help=\"submit\"\r\n (click)=\"submit()\" [disabled]=\"!valid||working\">\r\n <span>{{'Submit' | translate}}</span>\r\n </button>\r\n <button mat-stroked-button color=\"primary\" *ngIf=\"model.actions?.length === 1\" [attr.data-help]=\"'action-'+form.actions[0].name\" (click)=\"send(model.actions[0])\" [disabled]=\"!valid||working\">\r\n <span>{{form.actions[0].title}}</span>\r\n </button>\r\n <button mat-stroked-button data-help=\"send\" color=\"primary\" *ngIf=\"model.actions?.length > 1\" [matMenuTriggerFor]=\"actionMenu\" [disabled]=\"!valid||working\" [bizdocTooltip]=\"'Send' | translate\">\r\n <span>{{'Send' | translate}}</span>\r\n </button>\r\n <!-- action -->\r\n <mat-menu #actionMenu>\r\n <ng-template matMenuContent>\r\n <ng-container *ngFor=\"let a of form.actions; let i = index\">\r\n <mat-divider *ngIf=\"i > 0 && form.actions[i - 1].group !== a.group\"></mat-divider>\r\n <button mat-menu-item (click)=\"send(a.name)\">{{a.title}}</button>\r\n </ng-container>\r\n </ng-template>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"save()\" data-help=\"save\" [disabled]=\"!dirty||working\" [bizdocTooltip]=\"'Save'|translate\" *ngIf=\"mode === 'compose'\">\r\n <mat-icon>save</mat-icon>\r\n </button>\r\n <button mat-icon-button data-help=\"tag\" (click)=\"form.tag($event)\" [bizdocTooltip]=\"'Tags' | translate\" [disabled]=\"working\"><mat-icon class=\"filled\">{{model.tags && model.tags.length ?'bookmark':'bookmark_border'}}</mat-icon></button>\r\n <button mat-icon-button data-help=\"flag\" [bizdocTooltip]=\"'Flagged'| translate\" [disabled]=\"working\" (click)=\"form.flag()\"><mat-icon [class.document-flag]=\"model.flag\">{{model.flag ? 'star' : 'star_border'}}</mat-icon></button>\r\n <button mat-icon-button (click)=\"form.attach()\" data-help=\"attach\" [bizdocTooltip]=\"'AttachFile' | translate\" [disabled]=\"working\"><mat-icon>attach_file</mat-icon></button>\r\n <button mat-icon-button [disabled]=\"working\" data-help=\"edit\" (click)=\"edit()\" [bizdocTooltip]=\"'Edit' | translate\" *ngIf=\"mode !== 'compose' && model.pending && !model.completed\"><mat-icon>create</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"navTrace()\" [bizdocTooltip]=\"'Trace' | translate\" tabindex=\"1\"><mat-icon>timeline</mat-icon></button>\r\n <button mat-icon-button (click)=\"navComments()\" data-help=\"comments\" [bizdocTooltip]=\"'Comments' | translate\" [matBadge]=\"newCommentsCount\" [matBadgeHidden]=\"!newCommentsCount\" matBadgeColor=\"accent\">\r\n <mat-icon [class.filled]=\"model.comments.length > 0\">format_quote</mat-icon>\r\n </button>\r\n <button mat-icon-button (click)=\"view()\" [bizdocTooltip]=\"'View' | translate\" [attr.aria-label]=\"'View' | translate\" class=\"tool\"><mat-icon>data_usage</mat-icon></button>\r\n <button mat-icon-button
|
9492
|
+
}, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button color=\"primary\" (click)=\"form.back()\" [bizdocTooltip]=\"'Back'|translate\" *ngIf=\"form.page !== undefined\" tabindex=\"1\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">arrow_back</mat-icon>\r\n </button>\r\n <button mat-stroked-button color=\"primary\" *ngIf=\"model.draft\" data-help=\"submit\"\r\n (click)=\"submit()\" [disabled]=\"!valid||working\">\r\n <span>{{'Submit' | translate}}</span>\r\n </button>\r\n <button mat-stroked-button color=\"primary\" *ngIf=\"model.actions?.length === 1\" [attr.data-help]=\"'action-'+form.actions[0].name\" (click)=\"send(model.actions[0])\" [disabled]=\"!valid||working\">\r\n <span>{{form.actions[0].title}}</span>\r\n </button>\r\n <button mat-stroked-button data-help=\"send\" color=\"primary\" *ngIf=\"model.actions?.length > 1\" [matMenuTriggerFor]=\"actionMenu\" [disabled]=\"!valid||working\" [bizdocTooltip]=\"'Send' | translate\">\r\n <span>{{'Send' | translate}}</span>\r\n </button>\r\n <!-- action -->\r\n <mat-menu #actionMenu>\r\n <ng-template matMenuContent>\r\n <ng-container *ngFor=\"let a of form.actions; let i = index\">\r\n <mat-divider *ngIf=\"i > 0 && form.actions[i - 1].group !== a.group\"></mat-divider>\r\n <button mat-menu-item (click)=\"send(a.name)\">{{a.title}}</button>\r\n </ng-container>\r\n </ng-template>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"save()\" data-help=\"save\" [disabled]=\"!dirty||working\" [bizdocTooltip]=\"'Save'|translate\" *ngIf=\"mode === 'compose'\">\r\n <mat-icon>save</mat-icon>\r\n </button>\r\n <button mat-icon-button data-help=\"tag\" (click)=\"form.tag($event)\" [bizdocTooltip]=\"'Tags' | translate\" [disabled]=\"working\"><mat-icon class=\"filled\">{{model.tags && model.tags.length ?'bookmark':'bookmark_border'}}</mat-icon></button>\r\n <button mat-icon-button data-help=\"flag\" [bizdocTooltip]=\"'Flagged'| translate\" [disabled]=\"working\" (click)=\"form.flag()\"><mat-icon [class.document-flag]=\"model.flag\">{{model.flag ? 'star' : 'star_border'}}</mat-icon></button>\r\n <button mat-icon-button (click)=\"form.attach()\" data-help=\"attach\" [bizdocTooltip]=\"'AttachFile' | translate\" [disabled]=\"working\"><mat-icon>attach_file</mat-icon></button>\r\n <button mat-icon-button [disabled]=\"working\" data-help=\"edit\" (click)=\"edit()\" [bizdocTooltip]=\"'Edit' | translate\" *ngIf=\"mode !== 'compose' && model.pending && !model.completed\"><mat-icon>create</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"navTrace()\" [bizdocTooltip]=\"'Trace' | translate\" tabindex=\"1\"><mat-icon>timeline</mat-icon></button>\r\n <button mat-icon-button (click)=\"navComments()\" data-help=\"comments\" [bizdocTooltip]=\"'Comments' | translate\" [matBadge]=\"newCommentsCount\" [matBadgeHidden]=\"!newCommentsCount\" matBadgeColor=\"accent\">\r\n <mat-icon [class.filled]=\"model.comments.length > 0\">format_quote</mat-icon>\r\n </button>\r\n <button mat-icon-button (click)=\"view()\" [bizdocTooltip]=\"'View' | translate\" [attr.aria-label]=\"'View' | translate\" class=\"tool\"><mat-icon>data_usage</mat-icon></button>\r\n <button mat-icon-button (click)=\"expand()\" [bizdocTooltip]=\"'Expand' | translate\" *ngIf=\"expendable\" [attr.aria-label]=\"'Expand' | translate\"><mat-icon>open_in_new</mat-icon></button>\r\n <button mat-icon-button [matMenuTriggerFor]=\"optionsMenu\" [bizdocTooltip]=\"'Options' | translate\" [attr.aria-label]=\"'Options' | translate\"><mat-icon>more_vert</mat-icon></button>\r\n <mat-menu #optionsMenu=\"matMenu\">\r\n <ng-template matMenuContent>\r\n <button mat-menu-item (click)=\"form.copy()\" [disabled]=\"working\">\r\n <!--<mat-icon>content_copy</mat-icon>-->\r\n <span>{{'Copy' | translate}}</span>\r\n </button>\r\n <button mat-menu-item (click)=\"discard()\" *ngIf=\"model.draft && !model.issued\" [disabled]=\"working\">\r\n <!--<mat-icon>delete_outlined</mat-icon>-->\r\n <span>{{'Discard' | translate}}</span>\r\n </button>\r\n <ng-container *ngIf=\"form.help\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"form.guide(form.help)\">\r\n <!--<mat-icon>help_outline</mat-icon>-->\r\n <span>{{'Help' | translate}}</span>\r\n </button>\r\n </ng-container>\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"close()\"><!--<mat-icon></mat-icon>--><span>{{'Close'| translate}}</span></button>\r\n </ng-template>\r\n </mat-menu>\r\n</mat-toolbar>\r\n<div class=\"file-dropable\" #dropable>\r\n <bizdoc-form [model]=model #form\r\n (modelChange)=\"change()\"\r\n (validChange)=\"valid=$event\"\r\n (workingChange)=\"working=$event\"\r\n (dirtyChange)=\"dirty=$event\" [mode]=\"mode\"></bizdoc-form>\r\n</div>\r\n", styles: [".nav-toolbar{position:sticky;top:0;z-index:1}.file-dropable.drag{opacity:.5;overflow:hidden;margin:8px;border-style:dashed;border-color:#777;border-width:5px;background-color:#f5f5f5;z-index:2;top:0;left:0;right:0;bottom:0}\n"] }]
|
9472
9493
|
}], ctorParameters: function () { return [{ type: SessionService }, { type: MailboxService }, { type: PaneRef }, { type: PanesRouter }]; }, propDecorators: { form: [{
|
9473
9494
|
type: ViewChild,
|
9474
9495
|
args: [ComposeFormComponent, { static: true }]
|
@@ -9931,12 +9952,12 @@ class CubeChartComponent {
|
|
9931
9952
|
yName: 'y',
|
9932
9953
|
name: s.title,
|
9933
9954
|
dataSource: s.points,
|
9934
|
-
type: this.
|
9955
|
+
type: this.indicesChartType || 'Spline',
|
9935
9956
|
width: 2,
|
9936
9957
|
fill: this._session.getPrimery(),
|
9937
9958
|
stackingGroup: 'index',
|
9938
9959
|
marker: {
|
9939
|
-
visible: !this.
|
9960
|
+
visible: !this.indicesChartType || this.indicesChartType === 'Line' || this.indicesChartType === 'Spline',
|
9940
9961
|
shape: 'Diamond',
|
9941
9962
|
height: 10,
|
9942
9963
|
width: 10
|
@@ -10017,7 +10038,7 @@ class CubeChartComponent {
|
|
10017
10038
|
}
|
10018
10039
|
CubeChartComponent.nextId = 0;
|
10019
10040
|
CubeChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeChartComponent, deps: [{ token: CubeService }, { token: PromptService }, { token: TranslateService }, { token: SessionService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
10020
|
-
CubeChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeChartComponent, selector: "bizdoc-cube-chart", inputs: { width: "width", height: "height", cube: "cube", xAxis: "xAxis", series: "series", indices: "indices", filters: "filters", yAxis: "yAxis", chartType: "chartType",
|
10041
|
+
CubeChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeChartComponent, selector: "bizdoc-cube-chart", inputs: { width: "width", height: "height", cube: "cube", xAxis: "xAxis", series: "series", indices: "indices", filters: "filters", yAxis: "yAxis", chartType: "chartType", indicesChartType: "indicesChartType", scope: "scope", currencyCode: "currencyCode", loading: "loading" }, outputs: { explore: "explore", loadingChange: "loadingChange" }, host: { attributes: { "dir": "ltr" }, properties: { "id": "this.id" }, classAttribute: "cube-view" }, usesOnChanges: true, ngImport: i0, template: '', isInline: true });
|
10021
10042
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeChartComponent, decorators: [{
|
10022
10043
|
type: Component,
|
10023
10044
|
args: [{
|
@@ -10046,7 +10067,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
|
|
10046
10067
|
type: Input
|
10047
10068
|
}], chartType: [{
|
10048
10069
|
type: Input
|
10049
|
-
}],
|
10070
|
+
}], indicesChartType: [{
|
10050
10071
|
type: Input
|
10051
10072
|
}], scope: [{
|
10052
10073
|
type: Input
|
@@ -10629,7 +10650,7 @@ class CubePivotComponent {
|
|
10629
10650
|
}
|
10630
10651
|
CubePivotComponent.nextId = 0;
|
10631
10652
|
CubePivotComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubePivotComponent, deps: [{ token: CubeService }, { token: SessionService }, { token: TranslateService }, { token: PromptService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
10632
|
-
CubePivotComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubePivotComponent, selector: "bizdoc-cube-pivot", inputs: { width: "width", height: "height", cube: "cube", xAxis: "xAxis", yAxis: "yAxis", series: "series", indices: "indices", filters: "filters", chartType: "chartType",
|
10653
|
+
CubePivotComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubePivotComponent, selector: "bizdoc-cube-pivot", inputs: { width: "width", height: "height", cube: "cube", xAxis: "xAxis", yAxis: "yAxis", series: "series", indices: "indices", filters: "filters", chartType: "chartType", indicesChartType: "indicesChartType", currencyCode: "currencyCode", loading: "loading" }, outputs: { explore: "explore", loadingChange: "loadingChange" }, host: { properties: { "style.direction": "dir", "id": "this.id" }, classAttribute: "cube-view" }, usesOnChanges: true, ngImport: i0, template: '', isInline: true, styles: ["::ng-deep .e-cellvalue{cursor:pointer}\n"] });
|
10633
10654
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubePivotComponent, decorators: [{
|
10634
10655
|
type: Component,
|
10635
10656
|
args: [{
|
@@ -10659,7 +10680,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
|
|
10659
10680
|
type: Input
|
10660
10681
|
}], chartType: [{
|
10661
10682
|
type: Input
|
10662
|
-
}],
|
10683
|
+
}], indicesChartType: [{
|
10663
10684
|
type: Input
|
10664
10685
|
}], currencyCode: [{
|
10665
10686
|
type: Input
|
@@ -11020,7 +11041,7 @@ class CubeViewComponent {
|
|
11020
11041
|
constructor(_viewContainer, _factoryResolver) {
|
11021
11042
|
this._viewContainer = _viewContainer;
|
11022
11043
|
this._factoryResolver = _factoryResolver;
|
11023
|
-
this.
|
11044
|
+
this.filters = {};
|
11024
11045
|
this.explore = new EventEmitter();
|
11025
11046
|
this.loadingChange = new EventEmitter();
|
11026
11047
|
this._resizing = new Subject();
|
@@ -11056,7 +11077,8 @@ class CubeViewComponent {
|
|
11056
11077
|
setTimeout(this._createView.bind(this));
|
11057
11078
|
}
|
11058
11079
|
ngOnChanges(changes) {
|
11059
|
-
changes['
|
11080
|
+
changes['view'] && !changes['view'].firstChange && this._createView();
|
11081
|
+
changes['filters'] && !changes['filters'].firstChange && this.refresh();
|
11060
11082
|
}
|
11061
11083
|
_createView() {
|
11062
11084
|
this._viewDestroy.next();
|
@@ -11070,7 +11092,7 @@ class CubeViewComponent {
|
|
11070
11092
|
comp.series = this.view.series;
|
11071
11093
|
comp.indices = this.view.indices;
|
11072
11094
|
comp.chartType = this.view.chartType;
|
11073
|
-
comp.
|
11095
|
+
comp.indicesChartType = this.view.indicesChartType;
|
11074
11096
|
comp.yAxis = this.cube.yAxis;
|
11075
11097
|
break;
|
11076
11098
|
}
|
@@ -11112,7 +11134,7 @@ class CubeViewComponent {
|
|
11112
11134
|
comp.series = this.view.series;
|
11113
11135
|
comp.indices = this.view.indices;
|
11114
11136
|
comp.yAxis = this.cube.yAxis;
|
11115
|
-
comp.
|
11137
|
+
comp.indicesChartType = this.view.indicesChartType;
|
11116
11138
|
}
|
11117
11139
|
}
|
11118
11140
|
}
|
@@ -11123,13 +11145,13 @@ class CubeViewComponent {
|
|
11123
11145
|
const instance = componentRef.instance;
|
11124
11146
|
this._instance = instance;
|
11125
11147
|
instance.explore.pipe(takeUntil(this._viewDestroy)).subscribe(e => {
|
11126
|
-
const axes = Object.assign(Object.assign(Object.assign({}, this.view.filters), this.
|
11148
|
+
const axes = Object.assign(Object.assign(Object.assign({}, this.view.filters), this.filters), e.axes);
|
11127
11149
|
this.explore.emit({ axes, index: e.index });
|
11128
11150
|
});
|
11129
11151
|
instance.cube = this.cube.name;
|
11130
11152
|
instance.xAxis = this.view.xAxis;
|
11131
11153
|
instance.currencyCode = this.cube.currencyCode;
|
11132
|
-
instance.filters = Object.assign(Object.assign({}, this.view.filters), this.
|
11154
|
+
instance.filters = Object.assign(Object.assign({}, this.view.filters), this.filters);
|
11133
11155
|
instance.loadingChange.pipe(takeUntil(this._viewDestroy), debounceTime(150)).subscribe(e => this.loadingChange.emit(this.loading = e));
|
11134
11156
|
return instance;
|
11135
11157
|
}
|
@@ -11144,7 +11166,7 @@ class CubeViewComponent {
|
|
11144
11166
|
};
|
11145
11167
|
}
|
11146
11168
|
refresh() {
|
11147
|
-
this._instance.filters = Object.assign(Object.assign({}, this.view.filters), this.
|
11169
|
+
this._instance.filters = Object.assign(Object.assign({}, this.view.filters), this.filters);
|
11148
11170
|
this._instance.execute();
|
11149
11171
|
}
|
11150
11172
|
exportToExcel() {
|
@@ -11157,7 +11179,7 @@ class CubeViewComponent {
|
|
11157
11179
|
}
|
11158
11180
|
}
|
11159
11181
|
CubeViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeViewComponent, deps: [{ token: i0.ViewContainerRef }, { token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Component });
|
11160
|
-
CubeViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeViewComponent, selector: "bizdoc-cube-view", inputs: {
|
11182
|
+
CubeViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeViewComponent, selector: "bizdoc-cube-view", inputs: { filters: "filters", cube: "cube", view: "view", loading: "loading" }, outputs: { explore: "explore", loadingChange: "loadingChange" }, host: { listeners: { "window:resize": "resize()" } }, usesOnChanges: true, ngImport: i0, template: '', isInline: true });
|
11161
11183
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeViewComponent, decorators: [{
|
11162
11184
|
type: Component,
|
11163
11185
|
args: [{
|
@@ -11171,7 +11193,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
|
|
11171
11193
|
CubeSpreadsheetComponent
|
11172
11194
|
]
|
11173
11195
|
}]
|
11174
|
-
}], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.ComponentFactoryResolver }]; }, propDecorators: {
|
11196
|
+
}], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.ComponentFactoryResolver }]; }, propDecorators: { filters: [{
|
11175
11197
|
type: Input
|
11176
11198
|
}], explore: [{
|
11177
11199
|
type: Output
|
@@ -11321,12 +11343,12 @@ class CubeViewPaneComponent extends ViewBase {
|
|
11321
11343
|
}
|
11322
11344
|
}
|
11323
11345
|
CubeViewPaneComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeViewPaneComponent, deps: [{ token: SessionService }, { token: PaneRef }, { token: Popup }, { token: RouterImpl }, { token: CubeService }, { token: GuideService }], target: i0.ɵɵFactoryTarget.Component });
|
11324
|
-
CubeViewPaneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeViewPaneComponent, selector: "ng-component", host: { listeners: { "window:keydown.f1": "guide($event)" }, classAttribute: "pane" }, viewQueries: [{ propertyName: "viewPane", first: true, predicate: CubeViewComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\" *ngIf=\"view.guide\"><mat-icon>help_outline</mat-icon></button>\r\n <button mat-icon-button (click)=\"vp.refresh()\" [bizdocTooltip]=\"'Refresh' | translate\"><mat-icon matAnimate=\"rotate\">autorenew</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button [bizdocTooltip]=\"'Download' | translate\"\r\n data-help=\"download\" (click)=\"vp.exportToExcel()\">\r\n <mat-icon>save_alt</mat-icon>\r\n </button>\r\n <button mat-icon-button [matMenuTriggerFor]=\"pmenu\" [bizdocTooltip]=\"'Patterns' | translate\" [disabled]=\"!patterns?.length\" data-help=\"pattern\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #pmenu>\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"patternChange(p)\">\r\n {{p.title}}\r\n </button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"clearFilter()\" [bizdocTooltip]=\"'Clear' | translate\" [disabled]=\"!anyFilters\"><mat-icon>clear_all</mat-icon></button>\r\n <button mat-icon-button (click)=\"filterToggle($event)\" [bizdocTooltip]=\"'Filter' | translate\" [disabled]=\"!anyAxes\" data-help=\"filter\"><mat-icon>filter_list</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-progress-bar mode=\"query\" [style.visibility]=\"loading ? 'visible':'hidden'\"></mat-progress-bar>\r\n<!--<bizdoc-filter-tags [(filters)]=\"axes\" [cube]=\"cube\"></bizdoc-filter-tags>-->\r\n<bizdoc-cube-view [
|
11346
|
+
CubeViewPaneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeViewPaneComponent, selector: "ng-component", host: { listeners: { "window:keydown.f1": "guide($event)" }, classAttribute: "pane" }, viewQueries: [{ propertyName: "viewPane", first: true, predicate: CubeViewComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\" *ngIf=\"view.guide\"><mat-icon>help_outline</mat-icon></button>\r\n <button mat-icon-button (click)=\"vp.refresh()\" [bizdocTooltip]=\"'Refresh' | translate\"><mat-icon matAnimate=\"rotate\">autorenew</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button [bizdocTooltip]=\"'Download' | translate\"\r\n data-help=\"download\" (click)=\"vp.exportToExcel()\">\r\n <mat-icon>save_alt</mat-icon>\r\n </button>\r\n <button mat-icon-button [matMenuTriggerFor]=\"pmenu\" [bizdocTooltip]=\"'Patterns' | translate\" [disabled]=\"!patterns?.length\" data-help=\"pattern\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #pmenu>\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"patternChange(p)\">\r\n {{p.title}}\r\n </button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"clearFilter()\" [bizdocTooltip]=\"'Clear' | translate\" [disabled]=\"!anyFilters\"><mat-icon>clear_all</mat-icon></button>\r\n <button mat-icon-button (click)=\"filterToggle($event)\" [bizdocTooltip]=\"'Filter' | translate\" [disabled]=\"!anyAxes\" data-help=\"filter\"><mat-icon>filter_list</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-progress-bar mode=\"query\" [style.visibility]=\"loading ? 'visible':'hidden'\"></mat-progress-bar>\r\n<!--<bizdoc-filter-tags [(filters)]=\"axes\" [cube]=\"cube\"></bizdoc-filter-tags>-->\r\n<bizdoc-cube-view [filters]=\"axes\" #vp\r\n (explore)=\"explore($event)\"\r\n [cube]=\"cube\"\r\n [view]=\"view\"\r\n [(loading)]=\"loading\"></bizdoc-cube-view>\r\n<!--<ng-lottie options=\"{path: 'assets/8318-loader.json'}\" *ngIf=\"loading\"></ng-lottie>-->\r\n", styles: [":host{display:flex;flex-direction:column;height:100%}:host ::ng-deep .cube-view{flex:1 auto}\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: CubeViewComponent, selector: "bizdoc-cube-view", inputs: ["filters", "cube", "view", "loading"], outputs: ["explore", "loadingChange"] }], directives: [{ type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: MatIconAnimate, selector: "[matAnimate]" }, { 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 } });
|
11325
11347
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeViewPaneComponent, decorators: [{
|
11326
11348
|
type: Component,
|
11327
11349
|
args: [{ host: {
|
11328
11350
|
class: 'pane'
|
11329
|
-
}, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\" *ngIf=\"view.guide\"><mat-icon>help_outline</mat-icon></button>\r\n <button mat-icon-button (click)=\"vp.refresh()\" [bizdocTooltip]=\"'Refresh' | translate\"><mat-icon matAnimate=\"rotate\">autorenew</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button [bizdocTooltip]=\"'Download' | translate\"\r\n data-help=\"download\" (click)=\"vp.exportToExcel()\">\r\n <mat-icon>save_alt</mat-icon>\r\n </button>\r\n <button mat-icon-button [matMenuTriggerFor]=\"pmenu\" [bizdocTooltip]=\"'Patterns' | translate\" [disabled]=\"!patterns?.length\" data-help=\"pattern\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #pmenu>\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"patternChange(p)\">\r\n {{p.title}}\r\n </button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"clearFilter()\" [bizdocTooltip]=\"'Clear' | translate\" [disabled]=\"!anyFilters\"><mat-icon>clear_all</mat-icon></button>\r\n <button mat-icon-button (click)=\"filterToggle($event)\" [bizdocTooltip]=\"'Filter' | translate\" [disabled]=\"!anyAxes\" data-help=\"filter\"><mat-icon>filter_list</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-progress-bar mode=\"query\" [style.visibility]=\"loading ? 'visible':'hidden'\"></mat-progress-bar>\r\n<!--<bizdoc-filter-tags [(filters)]=\"axes\" [cube]=\"cube\"></bizdoc-filter-tags>-->\r\n<bizdoc-cube-view [
|
11351
|
+
}, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\" *ngIf=\"view.guide\"><mat-icon>help_outline</mat-icon></button>\r\n <button mat-icon-button (click)=\"vp.refresh()\" [bizdocTooltip]=\"'Refresh' | translate\"><mat-icon matAnimate=\"rotate\">autorenew</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button [bizdocTooltip]=\"'Download' | translate\"\r\n data-help=\"download\" (click)=\"vp.exportToExcel()\">\r\n <mat-icon>save_alt</mat-icon>\r\n </button>\r\n <button mat-icon-button [matMenuTriggerFor]=\"pmenu\" [bizdocTooltip]=\"'Patterns' | translate\" [disabled]=\"!patterns?.length\" data-help=\"pattern\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #pmenu>\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"patternChange(p)\">\r\n {{p.title}}\r\n </button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"clearFilter()\" [bizdocTooltip]=\"'Clear' | translate\" [disabled]=\"!anyFilters\"><mat-icon>clear_all</mat-icon></button>\r\n <button mat-icon-button (click)=\"filterToggle($event)\" [bizdocTooltip]=\"'Filter' | translate\" [disabled]=\"!anyAxes\" data-help=\"filter\"><mat-icon>filter_list</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-progress-bar mode=\"query\" [style.visibility]=\"loading ? 'visible':'hidden'\"></mat-progress-bar>\r\n<!--<bizdoc-filter-tags [(filters)]=\"axes\" [cube]=\"cube\"></bizdoc-filter-tags>-->\r\n<bizdoc-cube-view [filters]=\"axes\" #vp\r\n (explore)=\"explore($event)\"\r\n [cube]=\"cube\"\r\n [view]=\"view\"\r\n [(loading)]=\"loading\"></bizdoc-cube-view>\r\n<!--<ng-lottie options=\"{path: 'assets/8318-loader.json'}\" *ngIf=\"loading\"></ng-lottie>-->\r\n", styles: [":host{display:flex;flex-direction:column;height:100%}:host ::ng-deep .cube-view{flex:1 auto}\n"] }]
|
11330
11352
|
}], ctorParameters: function () { return [{ type: SessionService }, { type: PaneRef }, { type: Popup }, { type: RouterImpl }, { type: CubeService }, { type: GuideService }]; }, propDecorators: { viewPane: [{
|
11331
11353
|
type: ViewChild,
|
11332
11354
|
args: [CubeViewComponent, { static: true }]
|
@@ -12708,7 +12730,6 @@ class FlowViewComponent extends TraceBase {
|
|
12708
12730
|
return __awaiter(this, void 0, void 0, function* () {
|
12709
12731
|
const { connectors, nodes, indicators } = yield this._prepare();
|
12710
12732
|
this.diagram && this.diagram.destroy();
|
12711
|
-
//this.layout.type = 'None';
|
12712
12733
|
this.diagram = new Diagram({
|
12713
12734
|
width: '100%',
|
12714
12735
|
height: 380,
|
@@ -12722,7 +12743,6 @@ class FlowViewComponent extends TraceBase {
|
|
12722
12743
|
getConnectorDefaults: this.connDefaults.bind(this),
|
12723
12744
|
getNodeDefaults: this.nodeDefaults.bind(this),
|
12724
12745
|
}, this._elementRef.nativeElement);
|
12725
|
-
//this.layout.type = 'ComplexHierarchicalTree';
|
12726
12746
|
this.diagram.doLayout();
|
12727
12747
|
indicators.forEach((n, i) => {
|
12728
12748
|
const parent = this.diagram.getNodeObject(n.addInfo.parentId);
|
@@ -12732,7 +12752,6 @@ class FlowViewComponent extends TraceBase {
|
|
12732
12752
|
this.diagram.add(n);
|
12733
12753
|
});
|
12734
12754
|
this.diagram.fitToPage();
|
12735
|
-
//this.diagram.layoutAnimateModule.;
|
12736
12755
|
interval(60000).pipe(takeUntil(this._destroy)).subscribe(() => this._refresh());
|
12737
12756
|
});
|
12738
12757
|
}
|
@@ -12817,7 +12836,7 @@ class FlowViewComponent extends TraceBase {
|
|
12817
12836
|
_prepare() {
|
12818
12837
|
return __awaiter(this, void 0, void 0, function* () {
|
12819
12838
|
const indicators = [], connectors = [], nodes = [];
|
12820
|
-
this.
|
12839
|
+
this._issued = this.model.issued || this.model.log.filter(l => l.type === 'Submit')[0].time;
|
12821
12840
|
const nodeMap = {};
|
12822
12841
|
let zIndex = 500;
|
12823
12842
|
var i = 0;
|
@@ -12829,7 +12848,7 @@ class FlowViewComponent extends TraceBase {
|
|
12829
12848
|
continue;
|
12830
12849
|
nodeMap[node.id] = node;
|
12831
12850
|
let recipients = this.model.recipients.
|
12832
|
-
filter(r => r.nodeId === node.id && r.received >= this.
|
12851
|
+
filter(r => r.nodeId === node.id && r.received >= this._issued);
|
12833
12852
|
if (recipients.length) {
|
12834
12853
|
recipients = recipients.sort(a => a.replied ? -1 : 1);
|
12835
12854
|
for (var r = 0; r < recipients.length; r++) {
|
@@ -12933,6 +12952,24 @@ class FlowViewComponent extends TraceBase {
|
|
12933
12952
|
parentId: nod.id
|
12934
12953
|
}
|
12935
12954
|
});
|
12955
|
+
// if (this.model.log.filter(l => l.time > this._submitted && l.type === 'Escalation' && l.recipientId === recipient.id).length) {
|
12956
|
+
// const escalateIndicator = {
|
12957
|
+
// id: nod.id + 'escalate',
|
12958
|
+
// shape: {
|
12959
|
+
// type: 'Path',
|
12960
|
+
// data: ESCALATED_PATH,
|
12961
|
+
// align: this._session.inverse ? 'XMinYMax' : 'XMaxYMax'
|
12962
|
+
// },
|
12963
|
+
// style: {
|
12964
|
+
// fill: this._session.getAccent(900)
|
12965
|
+
// },
|
12966
|
+
// addInfo: {
|
12967
|
+
// indicator: true,
|
12968
|
+
// parentId: nod.id
|
12969
|
+
// } as NodeInfoModel
|
12970
|
+
// } as NodeModel;
|
12971
|
+
// indicators.push(escalateIndicator);
|
12972
|
+
// }
|
12936
12973
|
}
|
12937
12974
|
}
|
12938
12975
|
else {
|
@@ -13000,21 +13037,26 @@ class FlowViewComponent extends TraceBase {
|
|
13000
13037
|
const { connectors: dconnectors } = this.model.workflow;
|
13001
13038
|
while (i < dconnectors.length) {
|
13002
13039
|
let connector = dconnectors[i];
|
13003
|
-
if (nodeMap[connector.
|
13004
|
-
nodeMap[connector.
|
13005
|
-
|
13006
|
-
|
13007
|
-
|
13008
|
-
|
13009
|
-
|
13010
|
-
|
13011
|
-
|
13040
|
+
if (nodeMap[connector.sourceId]) {
|
13041
|
+
if (nodeMap[connector.targetId]) {
|
13042
|
+
connectors.push({
|
13043
|
+
sourceID: connector.sourceId,
|
13044
|
+
targetID: connector.targetId,
|
13045
|
+
addInfo: {
|
13046
|
+
estimate: connector.estimate,
|
13047
|
+
time: connector.time
|
13048
|
+
}
|
13049
|
+
});
|
13050
|
+
}
|
13051
|
+
else
|
13052
|
+
reroute(connector, i + 1);
|
13012
13053
|
}
|
13013
|
-
else
|
13014
|
-
reroute(connector, 1);
|
13015
13054
|
i++;
|
13016
13055
|
}
|
13017
|
-
function reroute(connector, index) {
|
13056
|
+
function reroute(connector, index, vconnectors = []) {
|
13057
|
+
if (vconnectors.indexOf(connector) > -1)
|
13058
|
+
return;
|
13059
|
+
vconnectors.push(connector);
|
13018
13060
|
while (index < dconnectors.length - 1) {
|
13019
13061
|
let tconnector = dconnectors[index];
|
13020
13062
|
if (tconnector.sourceId === connector.targetId) {
|
@@ -13028,7 +13070,7 @@ class FlowViewComponent extends TraceBase {
|
|
13028
13070
|
}
|
13029
13071
|
});
|
13030
13072
|
else
|
13031
|
-
reroute(Object.assign(Object.assign({}, tconnector), { sourceId: connector.sourceId }), 1);
|
13073
|
+
reroute(Object.assign(Object.assign({}, tconnector), { sourceId: connector.sourceId }), index + 1, vconnectors);
|
13032
13074
|
}
|
13033
13075
|
index++;
|
13034
13076
|
}
|
@@ -13046,7 +13088,7 @@ class FlowViewComponent extends TraceBase {
|
|
13046
13088
|
if (node.error)
|
13047
13089
|
tooltip.error = node.error;
|
13048
13090
|
let annotation, state;
|
13049
|
-
const log = this.model.log.filter(l => l.nodeId === node.id && l.time >= this.
|
13091
|
+
const log = this.model.log.filter(l => l.nodeId === node.id && l.time >= this._issued);
|
13050
13092
|
const stateLog = log.find(l => l.type === 'StateChange');
|
13051
13093
|
if (stateLog) {
|
13052
13094
|
state = this._session.profile.states.find(s => s.name === stateLog.state);
|
@@ -13078,10 +13120,12 @@ class FlowViewComponent extends TraceBase {
|
|
13078
13120
|
_tooltip(obj) {
|
13079
13121
|
const { note, role, substituting, duration, standardTime, estimatedTime, error, fyi } = obj;
|
13080
13122
|
const rows = [error, note, role, substituting, fyi, duration, standardTime, estimatedTime];
|
13081
|
-
|
13123
|
+
let div;
|
13082
13124
|
rows.forEach(r => {
|
13083
13125
|
if (!r)
|
13084
13126
|
return;
|
13127
|
+
if (!div)
|
13128
|
+
div = document.createElement('div');
|
13085
13129
|
const span = document.createElement('span');
|
13086
13130
|
span.innerText = r;
|
13087
13131
|
div.append(span);
|
@@ -13188,7 +13232,7 @@ class FlowViewComponent extends TraceBase {
|
|
13188
13232
|
tooltip.substituting = this._translate.personalize('SubstitutingFor', u.gender, u.name);
|
13189
13233
|
}
|
13190
13234
|
}
|
13191
|
-
const escalations = this.model.log.filter(l => l.time > this.
|
13235
|
+
const escalations = this.model.log.filter(l => l.time > this._issued && l.type === 'Escalation' && l.recipientId === recipient.id);
|
13192
13236
|
if (escalations.length) {
|
13193
13237
|
const userIds = escalations.map(e => e.userId);
|
13194
13238
|
const users = yield this._accounts.getAll(userIds).toPromise();
|
@@ -14071,12 +14115,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
|
|
14071
14115
|
}], ctorParameters: function () { return [{ type: FormService }]; } });
|
14072
14116
|
|
14073
14117
|
const LOADING_DELAY = 200;
|
14074
|
-
const matrixAnimation = trigger('table', [transition('void=>*', [
|
14075
|
-
query('.mat-row', [
|
14076
|
-
style({ opacity: 0, transform: 'translateX(10px)' }),
|
14077
|
-
stagger(100, style({ opacity: 1, transform: 'none' }))
|
14078
|
-
], { optional: true })
|
14079
|
-
])]);
|
14080
14118
|
/** cube matrix component*/
|
14081
14119
|
class CubeMatrixComponent {
|
14082
14120
|
constructor(_sb, _service, _session, _ds) {
|
@@ -14096,6 +14134,26 @@ class CubeMatrixComponent {
|
|
14096
14134
|
if (value)
|
14097
14135
|
this._indices = isArray(value) ? value : [value];
|
14098
14136
|
}
|
14137
|
+
set sum(val) {
|
14138
|
+
function translate(axis) {
|
14139
|
+
switch (axis) {
|
14140
|
+
case '$month':
|
14141
|
+
return 'M' + ('0' + new Date().getMonth().toString()).slice(-2);
|
14142
|
+
case '$year':
|
14143
|
+
return new Date().getFullYear().toString();
|
14144
|
+
case '$quarter':
|
14145
|
+
return Math.ceil(new Date().getMonth() / 3).toString();
|
14146
|
+
default:
|
14147
|
+
return axis ? axis.toString() : null;
|
14148
|
+
}
|
14149
|
+
}
|
14150
|
+
this._sum = {
|
14151
|
+
//fn: val.fn,
|
14152
|
+
title: val.title,
|
14153
|
+
xAxis: translate(val.xAxis),
|
14154
|
+
series: translate(val.series)
|
14155
|
+
};
|
14156
|
+
}
|
14099
14157
|
get interactive() {
|
14100
14158
|
return this._interactive;
|
14101
14159
|
}
|
@@ -14114,40 +14172,46 @@ class CubeMatrixComponent {
|
|
14114
14172
|
this.indexes = this.cube.indices;
|
14115
14173
|
this._indices = this.indexes.map(i => i.name);
|
14116
14174
|
}
|
14117
|
-
if (changes['_xAxis'] || changes['
|
14175
|
+
if (changes['_xAxis'] || changes['_series']) {
|
14118
14176
|
this.xAxis = this.cube.axes.find(a => a.name === this._xAxis) || this.cube.axes[0];
|
14119
|
-
this.series = this.cube.axes.find(a => a.name === this.
|
14120
|
-
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.
|
14177
|
+
this.series = this.cube.axes.find(a => a.name === this._series) || this.cube.axes[1];
|
14178
|
+
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 &&
|
14121
14179
|
this._addsum());
|
14122
14180
|
}
|
14123
|
-
if (changes['
|
14181
|
+
if (changes['filters'])
|
14124
14182
|
this.refresh();
|
14125
14183
|
}
|
14184
|
+
/** */
|
14126
14185
|
_addsum() {
|
14127
|
-
let { xAxis,
|
14186
|
+
let { xAxis, series } = this._sum;
|
14128
14187
|
if (xAxis) {
|
14129
|
-
|
14130
|
-
this.columns.
|
14131
|
-
columns.
|
14132
|
-
|
14133
|
-
columns.push({
|
14188
|
+
let i = 0;
|
14189
|
+
while (i < this.columns.length - 1) {
|
14190
|
+
if (this.columns[i].key === xAxis.toString()) {
|
14191
|
+
this.columns.splice(i + 1, 0, {
|
14134
14192
|
key: '_sum',
|
14135
|
-
value: this.
|
14193
|
+
value: this._sum.title
|
14136
14194
|
});
|
14137
|
-
|
14138
|
-
|
14195
|
+
break;
|
14196
|
+
}
|
14197
|
+
i++;
|
14198
|
+
}
|
14139
14199
|
}
|
14140
|
-
if (
|
14141
|
-
|
14142
|
-
|
14143
|
-
|
14144
|
-
|
14145
|
-
|
14146
|
-
|
14147
|
-
|
14148
|
-
|
14149
|
-
|
14150
|
-
|
14200
|
+
if (series) {
|
14201
|
+
let i = 0;
|
14202
|
+
const row = {
|
14203
|
+
key: '_sum',
|
14204
|
+
value: this._sum.title
|
14205
|
+
};
|
14206
|
+
while (i < this.rows.length - 1) {
|
14207
|
+
if (this.rows[i].key === series.toString()) {
|
14208
|
+
this.rows.splice(i + 1, 0, row);
|
14209
|
+
break;
|
14210
|
+
}
|
14211
|
+
i++;
|
14212
|
+
}
|
14213
|
+
if (i === this.rows.length - 1)
|
14214
|
+
this.rows.push(row);
|
14151
14215
|
}
|
14152
14216
|
}
|
14153
14217
|
refresh() {
|
@@ -14155,11 +14219,11 @@ class CubeMatrixComponent {
|
|
14155
14219
|
this._prepare.then(() => this._service.series(this.cube.name, this.xAxis.name, {
|
14156
14220
|
series: this.series.name,
|
14157
14221
|
indices: this._indices,
|
14158
|
-
filters: this.
|
14222
|
+
filters: this.filters,
|
14159
14223
|
scope: this.scope
|
14160
14224
|
}).pipe(modelize(), first$1(), tap(d => {
|
14161
14225
|
this._totals(d);
|
14162
|
-
this.
|
14226
|
+
this._sum &&
|
14163
14227
|
this._calculatesum(d);
|
14164
14228
|
})).subscribe(d => this.data = d, (e) => {
|
14165
14229
|
this._sb.error(e.status === 401 ? 'Unauthorized' : null);
|
@@ -14206,7 +14270,7 @@ class CubeMatrixComponent {
|
|
14206
14270
|
this.totals['_total'] = grand;
|
14207
14271
|
}
|
14208
14272
|
_calculatesum(data) {
|
14209
|
-
let { xAxis,
|
14273
|
+
let { xAxis, series } = this._sum;
|
14210
14274
|
if (xAxis) {
|
14211
14275
|
let total = 0;
|
14212
14276
|
this.rows.forEach(r => {
|
@@ -14218,7 +14282,7 @@ class CubeMatrixComponent {
|
|
14218
14282
|
let key = this.columns[i].key, val = row[key];
|
14219
14283
|
if (val !== undefined)
|
14220
14284
|
sum += val;
|
14221
|
-
if (key === xAxis
|
14285
|
+
if (key === xAxis)
|
14222
14286
|
break;
|
14223
14287
|
i++;
|
14224
14288
|
}
|
@@ -14227,7 +14291,7 @@ class CubeMatrixComponent {
|
|
14227
14291
|
});
|
14228
14292
|
this.totals['_sum'] = total;
|
14229
14293
|
}
|
14230
|
-
if (
|
14294
|
+
if (series) {
|
14231
14295
|
let total = 0;
|
14232
14296
|
this.columns.forEach(c => {
|
14233
14297
|
let sum = 0, i = 0;
|
@@ -14237,7 +14301,7 @@ class CubeMatrixComponent {
|
|
14237
14301
|
let val = row[c.key];
|
14238
14302
|
if (val !== undefined)
|
14239
14303
|
sum += val;
|
14240
|
-
if (key ===
|
14304
|
+
if (key === series)
|
14241
14305
|
break;
|
14242
14306
|
}
|
14243
14307
|
i++;
|
@@ -14248,24 +14312,6 @@ class CubeMatrixComponent {
|
|
14248
14312
|
data['_sum']['_total'] = total;
|
14249
14313
|
}
|
14250
14314
|
}
|
14251
|
-
get _dsum() {
|
14252
|
-
if (this._evalsum)
|
14253
|
-
return this._evalsum;
|
14254
|
-
const { xAxis, serie } = this.sum;
|
14255
|
-
function translate(axis) {
|
14256
|
-
switch (axis) {
|
14257
|
-
case '$month':
|
14258
|
-
return 'M' + ('0' + new Date().getMonth().toString()).slice(-2);
|
14259
|
-
case '$year':
|
14260
|
-
return new Date().getFullYear().toString();
|
14261
|
-
case '$quarter':
|
14262
|
-
return Math.ceil(new Date().getMonth() / 3).toString();
|
14263
|
-
default:
|
14264
|
-
return axis;
|
14265
|
-
}
|
14266
|
-
}
|
14267
|
-
return this._evalsum = { xAxis: translate(xAxis), serie: translate(serie) };
|
14268
|
-
}
|
14269
14315
|
explore(x, serie) {
|
14270
14316
|
if (!this.interactive)
|
14271
14317
|
return;
|
@@ -14275,7 +14321,7 @@ class CubeMatrixComponent {
|
|
14275
14321
|
for (let i = 0; i < this.columns.length; i++) {
|
14276
14322
|
let key = this.columns[i].key;
|
14277
14323
|
x.push(key);
|
14278
|
-
if (key === this.
|
14324
|
+
if (key === this._sum.xAxis)
|
14279
14325
|
break;
|
14280
14326
|
}
|
14281
14327
|
}
|
@@ -14284,12 +14330,12 @@ class CubeMatrixComponent {
|
|
14284
14330
|
for (let i = 0; i < this.rows.length; i++) {
|
14285
14331
|
let key = this.rows[i].key;
|
14286
14332
|
serie.push(key);
|
14287
|
-
if (key === this.
|
14333
|
+
if (key === this._sum.series)
|
14288
14334
|
break;
|
14289
14335
|
}
|
14290
14336
|
}
|
14291
14337
|
}
|
14292
|
-
const axes = Object.assign({}, this.
|
14338
|
+
const axes = Object.assign({}, this.filters);
|
14293
14339
|
axes[this.xAxis.name] = x;
|
14294
14340
|
axes[this.series.name] = serie;
|
14295
14341
|
this.onExplore.emit(axes);
|
@@ -14325,7 +14371,7 @@ class CubeMatrixComponent {
|
|
14325
14371
|
}
|
14326
14372
|
}
|
14327
14373
|
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 });
|
14328
|
-
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"],
|
14374
|
+
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", 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 indexes; 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 <span *ngIf=\"data[index.name] && data[index.name][column.key]; else zero\">{{ data[index.name][column.key] | number : PRECISION }}</span>\r\n </td>\r\n <th class=\"mat-cell figure\" (mouseenter)=\"move(0, y)\" [ngSwitch]=\"!CURRENCY\">\r\n <ng-container *ngSwitchCase=\"true\">\r\n {{ data[index.name]['_total'] | number : PRECISION }}\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n {{ data[index.name]['_total'] | currency : CURRENCY: 'symbol' : PRECISION }}\r\n </ng-container>\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 <ng-container *ngIf=\"data[row.key] && data[row.key][column.key] !== undefined; else zero\">\r\n <span [class.clickable]=\"interactive\" (click)=\"explore(column.key, row.key)\">\r\n {{data[row.key][column.key] | number : PRECISION }}\r\n </span>\r\n </ng-container>\r\n </td>\r\n <th class=\"mat-cell figure\" (mouseenter)=\"move(-1, y + indices.length)\" [ngSwitch]=\"!CURRENCY\">\r\n <ng-container *ngSwitchCase=\"true\">\r\n {{ data[row.key]['_total'] | number : PRECISION }}\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n {{ data[row.key]['_total'] | currency : CURRENCY: 'symbol' : PRECISION }}\r\n </ng-container>\r\n </th>\r\n </tr>\r\n </tbody>\r\n <tfoot>\r\n <!-- available -->\r\n <tr>\r\n <th></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] < 0\">\r\n {{totals[column.key] | currency : CURRENCY: 'symbol' : PRECISION }}\r\n </td>\r\n <th class=\"mat-cell figure\">{{totals['_total'] | currency : CURRENCY: 'symbol' : PRECISION }}</th>\r\n </tr>\r\n </tfoot>\r\n</table>\r\n<ng-template #zero>\r\n 0\r\n</ng-template>\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"] }, { type: i10$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i10$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i10$1.NgSwitchDefault, selector: "[ngSwitchDefault]" }], pipes: { "number": i10$1.DecimalPipe, "currency": i10$1.CurrencyPipe }, animations: [matrixAnimation] });
|
14329
14375
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeMatrixComponent, decorators: [{
|
14330
14376
|
type: Component,
|
14331
14377
|
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 indexes; 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 <span *ngIf=\"data[index.name] && data[index.name][column.key]; else zero\">{{ data[index.name][column.key] | number : PRECISION }}</span>\r\n </td>\r\n <th class=\"mat-cell figure\" (mouseenter)=\"move(0, y)\" [ngSwitch]=\"!CURRENCY\">\r\n <ng-container *ngSwitchCase=\"true\">\r\n {{ data[index.name]['_total'] | number : PRECISION }}\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n {{ data[index.name]['_total'] | currency : CURRENCY: 'symbol' : PRECISION }}\r\n </ng-container>\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 <ng-container *ngIf=\"data[row.key] && data[row.key][column.key] !== undefined; else zero\">\r\n <span [class.clickable]=\"interactive\" (click)=\"explore(column.key, row.key)\">\r\n {{data[row.key][column.key] | number : PRECISION }}\r\n </span>\r\n </ng-container>\r\n </td>\r\n <th class=\"mat-cell figure\" (mouseenter)=\"move(-1, y + indices.length)\" [ngSwitch]=\"!CURRENCY\">\r\n <ng-container *ngSwitchCase=\"true\">\r\n {{ data[row.key]['_total'] | number : PRECISION }}\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n {{ data[row.key]['_total'] | currency : CURRENCY: 'symbol' : PRECISION }}\r\n </ng-container>\r\n </th>\r\n </tr>\r\n </tbody>\r\n <tfoot>\r\n <!-- available -->\r\n <tr>\r\n <th></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] < 0\">\r\n {{totals[column.key] | currency : CURRENCY: 'symbol' : PRECISION }}\r\n </td>\r\n <th class=\"mat-cell figure\">{{totals['_total'] | currency : CURRENCY: 'symbol' : PRECISION }}</th>\r\n </tr>\r\n </tfoot>\r\n</table>\r\n<ng-template #zero>\r\n 0\r\n</ng-template>\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"] }]
|
@@ -14338,16 +14384,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
|
|
14338
14384
|
}], _xAxis: [{
|
14339
14385
|
type: Input,
|
14340
14386
|
args: ['xAxis']
|
14341
|
-
}],
|
14387
|
+
}], _series: [{
|
14342
14388
|
type: Input,
|
14343
|
-
args: ['
|
14389
|
+
args: ['series']
|
14344
14390
|
}], indices: [{
|
14345
14391
|
type: Input
|
14346
14392
|
}], scope: [{
|
14347
14393
|
type: Input
|
14348
14394
|
}], sum: [{
|
14349
14395
|
type: Input
|
14350
|
-
}],
|
14396
|
+
}], filters: [{
|
14351
14397
|
type: Input
|
14352
14398
|
}], loading: [{
|
14353
14399
|
type: Input
|
@@ -14537,7 +14583,7 @@ class CubeMatrixPaneComponent extends CubeMatrixBase {
|
|
14537
14583
|
if (this.configuration.icon)
|
14538
14584
|
this._pane.icon = this.configuration.icon;
|
14539
14585
|
this.xAxis = p['xAxis'];
|
14540
|
-
this.
|
14586
|
+
this.series = p['series'];
|
14541
14587
|
});
|
14542
14588
|
this._pane.dataChange.subscribe(d => {
|
14543
14589
|
this.indices = d['indices'];
|
@@ -14561,12 +14607,12 @@ class CubeMatrixPaneComponent extends CubeMatrixBase {
|
|
14561
14607
|
}
|
14562
14608
|
}
|
14563
14609
|
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 });
|
14564
|
-
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\" [
|
14610
|
+
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 } });
|
14565
14611
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeMatrixPaneComponent, decorators: [{
|
14566
14612
|
type: Component,
|
14567
14613
|
args: [{ host: {
|
14568
14614
|
class: 'pane'
|
14569
|
-
}, 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\" [
|
14615
|
+
}, 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"] }]
|
14570
14616
|
}], ctorParameters: function () { return [{ type: PaneRef }, { type: PanesRouter }, { type: TranslateService }, { type: CubeService }, { type: DatasourceService }, { type: SessionService }]; } });
|
14571
14617
|
|
14572
14618
|
const NOTIFICATION_DATA = new InjectionToken('notification');
|
@@ -15105,10 +15151,10 @@ class NotificationsTableComponent extends NotificationsComponentBase {
|
|
15105
15151
|
}
|
15106
15152
|
}
|
15107
15153
|
NotificationsTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NotificationsTableComponent, deps: [{ token: NotificationsService }, { token: i0.Injector }, { token: Popup }], target: i0.ɵɵFactoryTarget.Component });
|
15108
|
-
NotificationsTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: NotificationsTableComponent, selector: "bizdoc-notifications-table", viewQueries: [{ propertyName: "sort", first: true, predicate: MatSort, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-toolbar>\r\n <button mat-icon-button *ngIf=\"selection.selected.length\" (click)=\"discardAll()\" bizdocTooltip=\"{{'DiscardSelected' | translate : selection.selected.length }}\"><mat-icon>delete</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"openFilter($event)\" [bizdocTooltip]=\"'Filter' | translate\" [attr.aria-label]=\"'Filter' | translate\"><mat-icon>filter_list</mat-icon></button>\r\n</mat-toolbar>\r\n<table [hidden]=\"!dataSource||dataSource.data.length===0\" mat-table matSort [dataSource]=\"dataSource\" [@list]=\"dataSource?.data.length\" class=\"data-table\">\r\n <ng-container matColumnDef=\"select\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <mat-checkbox (change)=\"$event ? masterToggle() : null\"\r\n [checked]=\"selection.hasValue() && isAllSelected()\"\r\n [indeterminate]=\"selection.hasValue() && !isAllSelected()\">\r\n </mat-checkbox>\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <mat-checkbox (click)=\"$event.stopPropagation()\"\r\n (change)=\"$event ? selection.toggle(element) : null\"\r\n [checked]=\"selection.isSelected(element)\">\r\n </mat-checkbox>\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"content\">\r\n <th mat-header-cell *matHeaderCellDef>{{ 'Content' | translate}}</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <h3 *ngComponentOutlet=\"element.comp; injector: element.injector\"></h3>\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sent\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header>{{ 'Time' | translate}}</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <span [bizdocTooltip]=\"element.sent | amCalendar\">{{element.sent | amTimeAgo }}</span>\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"options\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <button mat-icon-button [matMenuTriggerFor]=\"options\" [matMenuTriggerData]=\"{muted: false}\" class=\"tool\"><mat-icon>more_vert</mat-icon></button>\r\n <mat-menu #options>\r\n <ng-template matMenuContent let-muted=\"muted\">\r\n <ng-container *ngIf=\"element.recipientId\">\r\n <button mat-menu-item (click)=\"read(element, !element.read)\">{{'MarkAsRead' | translate}}</button>\r\n <mat-divider></mat-divider>\r\n </ng-container>\r\n <button mat-menu-item (click)=\"mute(element, true)\" *ngIf=\"element.documentId\">{{ (!(muted | async) ? 'Mute': 'Unmute') | translate}}</button>\r\n <ng-container *ngIf=\"!element.deleted\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"delete(element)\">{{ 'Discard' | translate}}</button>\r\n </ng-container>\r\n </ng-template>\r\n </mat-menu>\r\n </td>\r\n </ng-container>\r\n <tr mat-header-row *matHeaderRowDef=\"['select','content','sent','options']\"></tr>\r\n <tr mat-row *matRowDef=\"let element; columns: ['select','content','sent','options'];\" @item class=\"item\" [class.read]=\"element.read\"></tr>\r\n</table>\r\n", styles: [":host{
|
15154
|
+
NotificationsTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: NotificationsTableComponent, selector: "bizdoc-notifications-table", viewQueries: [{ propertyName: "sort", first: true, predicate: MatSort, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-toolbar>\r\n <button mat-icon-button *ngIf=\"selection.selected.length\" (click)=\"discardAll()\" bizdocTooltip=\"{{'DiscardSelected' | translate : selection.selected.length }}\"><mat-icon>delete</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"openFilter($event)\" [bizdocTooltip]=\"'Filter' | translate\" [attr.aria-label]=\"'Filter' | translate\"><mat-icon>filter_list</mat-icon></button>\r\n</mat-toolbar>\r\n<table [hidden]=\"!dataSource||dataSource.data.length===0\" mat-table matSort [dataSource]=\"dataSource\" [@list]=\"dataSource?.data.length\" class=\"data-table\">\r\n <ng-container matColumnDef=\"select\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <mat-checkbox (change)=\"$event ? masterToggle() : null\"\r\n [checked]=\"selection.hasValue() && isAllSelected()\"\r\n [indeterminate]=\"selection.hasValue() && !isAllSelected()\">\r\n </mat-checkbox>\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <mat-checkbox (click)=\"$event.stopPropagation()\"\r\n (change)=\"$event ? selection.toggle(element) : null\"\r\n [checked]=\"selection.isSelected(element)\">\r\n </mat-checkbox>\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"content\">\r\n <th mat-header-cell *matHeaderCellDef>{{ 'Content' | translate}}</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <h3 *ngComponentOutlet=\"element.comp; injector: element.injector\"></h3>\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sent\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header>{{ 'Time' | translate}}</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <span [bizdocTooltip]=\"element.sent | amCalendar\">{{element.sent | amTimeAgo }}</span>\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"options\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <button mat-icon-button [matMenuTriggerFor]=\"options\" [matMenuTriggerData]=\"{muted: false}\" class=\"tool\"><mat-icon>more_vert</mat-icon></button>\r\n <mat-menu #options>\r\n <ng-template matMenuContent let-muted=\"muted\">\r\n <ng-container *ngIf=\"element.recipientId\">\r\n <button mat-menu-item (click)=\"read(element, !element.read)\">{{'MarkAsRead' | translate}}</button>\r\n <mat-divider></mat-divider>\r\n </ng-container>\r\n <button mat-menu-item (click)=\"mute(element, true)\" *ngIf=\"element.documentId\">{{ (!(muted | async) ? 'Mute': 'Unmute') | translate}}</button>\r\n <ng-container *ngIf=\"!element.deleted\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"delete(element)\">{{ 'Discard' | translate}}</button>\r\n </ng-container>\r\n </ng-template>\r\n </mat-menu>\r\n </td>\r\n </ng-container>\r\n <tr mat-header-row *matHeaderRowDef=\"['select','content','sent','options']\"></tr>\r\n <tr mat-row *matRowDef=\"let element; columns: ['select','content','sent','options'];\" @item class=\"item\" [class.read]=\"element.read\"></tr>\r\n</table>\r\n", styles: [":host{display:block}.item .tool{opacity:0}.item:hover .tool{opacity:1}\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: i5$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { type: i7$3.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i6$2.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "mat-sort-header", "arrowPosition", "start", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { type: i8$1.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i8$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i12.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { type: i5$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { type: i5$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }], directives: [{ type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i6$2.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { type: i5$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { type: i5$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { type: i5$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { type: i5$1.MatCellDef, selector: "[matCellDef]" }, { type: i5$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { type: i10$1.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModuleFactory"] }, { type: i8$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i8$1.MatMenuContent, selector: "ng-template[matMenuContent]" }, { type: i5$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { type: i5$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }], pipes: { "translate": TranslatePipe, "amCalendar": CalendarPipe, "amTimeAgo": TimeAgoPipe, "async": i10$1.AsyncPipe }, animations: [listAnimation, itemAnimation] });
|
15109
15155
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: NotificationsTableComponent, decorators: [{
|
15110
15156
|
type: Component,
|
15111
|
-
args: [{ selector: 'bizdoc-notifications-table', animations: [listAnimation, itemAnimation], template: "<mat-toolbar>\r\n <button mat-icon-button *ngIf=\"selection.selected.length\" (click)=\"discardAll()\" bizdocTooltip=\"{{'DiscardSelected' | translate : selection.selected.length }}\"><mat-icon>delete</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"openFilter($event)\" [bizdocTooltip]=\"'Filter' | translate\" [attr.aria-label]=\"'Filter' | translate\"><mat-icon>filter_list</mat-icon></button>\r\n</mat-toolbar>\r\n<table [hidden]=\"!dataSource||dataSource.data.length===0\" mat-table matSort [dataSource]=\"dataSource\" [@list]=\"dataSource?.data.length\" class=\"data-table\">\r\n <ng-container matColumnDef=\"select\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <mat-checkbox (change)=\"$event ? masterToggle() : null\"\r\n [checked]=\"selection.hasValue() && isAllSelected()\"\r\n [indeterminate]=\"selection.hasValue() && !isAllSelected()\">\r\n </mat-checkbox>\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <mat-checkbox (click)=\"$event.stopPropagation()\"\r\n (change)=\"$event ? selection.toggle(element) : null\"\r\n [checked]=\"selection.isSelected(element)\">\r\n </mat-checkbox>\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"content\">\r\n <th mat-header-cell *matHeaderCellDef>{{ 'Content' | translate}}</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <h3 *ngComponentOutlet=\"element.comp; injector: element.injector\"></h3>\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sent\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header>{{ 'Time' | translate}}</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <span [bizdocTooltip]=\"element.sent | amCalendar\">{{element.sent | amTimeAgo }}</span>\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"options\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <button mat-icon-button [matMenuTriggerFor]=\"options\" [matMenuTriggerData]=\"{muted: false}\" class=\"tool\"><mat-icon>more_vert</mat-icon></button>\r\n <mat-menu #options>\r\n <ng-template matMenuContent let-muted=\"muted\">\r\n <ng-container *ngIf=\"element.recipientId\">\r\n <button mat-menu-item (click)=\"read(element, !element.read)\">{{'MarkAsRead' | translate}}</button>\r\n <mat-divider></mat-divider>\r\n </ng-container>\r\n <button mat-menu-item (click)=\"mute(element, true)\" *ngIf=\"element.documentId\">{{ (!(muted | async) ? 'Mute': 'Unmute') | translate}}</button>\r\n <ng-container *ngIf=\"!element.deleted\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"delete(element)\">{{ 'Discard' | translate}}</button>\r\n </ng-container>\r\n </ng-template>\r\n </mat-menu>\r\n </td>\r\n </ng-container>\r\n <tr mat-header-row *matHeaderRowDef=\"['select','content','sent','options']\"></tr>\r\n <tr mat-row *matRowDef=\"let element; columns: ['select','content','sent','options'];\" @item class=\"item\" [class.read]=\"element.read\"></tr>\r\n</table>\r\n", styles: [":host{
|
15157
|
+
args: [{ selector: 'bizdoc-notifications-table', animations: [listAnimation, itemAnimation], template: "<mat-toolbar>\r\n <button mat-icon-button *ngIf=\"selection.selected.length\" (click)=\"discardAll()\" bizdocTooltip=\"{{'DiscardSelected' | translate : selection.selected.length }}\"><mat-icon>delete</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"openFilter($event)\" [bizdocTooltip]=\"'Filter' | translate\" [attr.aria-label]=\"'Filter' | translate\"><mat-icon>filter_list</mat-icon></button>\r\n</mat-toolbar>\r\n<table [hidden]=\"!dataSource||dataSource.data.length===0\" mat-table matSort [dataSource]=\"dataSource\" [@list]=\"dataSource?.data.length\" class=\"data-table\">\r\n <ng-container matColumnDef=\"select\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <mat-checkbox (change)=\"$event ? masterToggle() : null\"\r\n [checked]=\"selection.hasValue() && isAllSelected()\"\r\n [indeterminate]=\"selection.hasValue() && !isAllSelected()\">\r\n </mat-checkbox>\r\n </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <mat-checkbox (click)=\"$event.stopPropagation()\"\r\n (change)=\"$event ? selection.toggle(element) : null\"\r\n [checked]=\"selection.isSelected(element)\">\r\n </mat-checkbox>\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"content\">\r\n <th mat-header-cell *matHeaderCellDef>{{ 'Content' | translate}}</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <h3 *ngComponentOutlet=\"element.comp; injector: element.injector\"></h3>\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sent\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header>{{ 'Time' | translate}}</th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <span [bizdocTooltip]=\"element.sent | amCalendar\">{{element.sent | amTimeAgo }}</span>\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"options\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <button mat-icon-button [matMenuTriggerFor]=\"options\" [matMenuTriggerData]=\"{muted: false}\" class=\"tool\"><mat-icon>more_vert</mat-icon></button>\r\n <mat-menu #options>\r\n <ng-template matMenuContent let-muted=\"muted\">\r\n <ng-container *ngIf=\"element.recipientId\">\r\n <button mat-menu-item (click)=\"read(element, !element.read)\">{{'MarkAsRead' | translate}}</button>\r\n <mat-divider></mat-divider>\r\n </ng-container>\r\n <button mat-menu-item (click)=\"mute(element, true)\" *ngIf=\"element.documentId\">{{ (!(muted | async) ? 'Mute': 'Unmute') | translate}}</button>\r\n <ng-container *ngIf=\"!element.deleted\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"delete(element)\">{{ 'Discard' | translate}}</button>\r\n </ng-container>\r\n </ng-template>\r\n </mat-menu>\r\n </td>\r\n </ng-container>\r\n <tr mat-header-row *matHeaderRowDef=\"['select','content','sent','options']\"></tr>\r\n <tr mat-row *matRowDef=\"let element; columns: ['select','content','sent','options'];\" @item class=\"item\" [class.read]=\"element.read\"></tr>\r\n</table>\r\n", styles: [":host{display:block}.item .tool{opacity:0}.item:hover .tool{opacity:1}\n"] }]
|
15112
15158
|
}], ctorParameters: function () { return [{ type: NotificationsService }, { type: i0.Injector }, { type: Popup }]; }, propDecorators: { sort: [{
|
15113
15159
|
type: ViewChild,
|
15114
15160
|
args: [MatSort, { static: true }]
|
@@ -18338,10 +18384,10 @@ class HomeMobileComponent extends HomeBase {
|
|
18338
18384
|
}
|
18339
18385
|
}
|
18340
18386
|
HomeMobileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: HomeMobileComponent, deps: [{ token: i0.Injector }, { token: i1$7.Router }, { token: i2$5.MatBottomSheet }, { token: i7.Directionality }, { token: SessionService }, { token: Popup }, { token: HubService }, { token: TranslateService }, { token: i8.MatSnackBar }, { token: ChatInfo }, { token: BIZDOC_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
|
18341
|
-
HomeMobileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: HomeMobileComponent, selector: "bizdoc-mobile-home", viewQueries: [{ propertyName: "menuDrawer", first: true, predicate: MatSidenav, descendants: true, static: true }, { propertyName: "secondaryDrawer", first: true, predicate: ["secondaryDrawer"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-toolbar color=\"primary\" [class.loading]=\"loading\">\r\n <button mat-icon-button (click)='menuDrawer.toggle()' [bizdocTooltip]=\"'Menu' | translate\" [attr.aria-label]=\"'Menu' | translate\"><mat-icon>menu</mat-icon></button>\r\n <div [routerLink]='[\"/dashboard\"]' matRipple [matRippleUnbounded]=\"true\" [matRippleRadius]=\"100\" [matRippleCentered]=\"true\" style=\"outline: none\">\r\n <img id=\"logo\" src=\"logo.svg\" alt=\"\" />\r\n </div>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"notifs()\" data-help=\"notifications\" [attr.aria-label]=\"'Notifications' | translate\" [bizdocTooltip]=\"'Notifications' | translate\"><mat-icon [matBadge]=\"profile.notificationsCount\" [matBadgeHidden]=\"!profile.notificationsCount\" matBadgeColor=\"accent\">notifications</mat-icon></button>\r\n <button mat-icon-button *ngIf='chatEnabled' (click)=\"chat()\" data-help=\"chat\" [attr.aria-label]=\"'Chat' | translate\" [bizdocTooltip]=\"'Chat' | translate\"><mat-icon [matBadge]=\"profile.conversationsCount\" [matBadgeHidden]=\"!profile.conversationsCount\" matBadgeColor=\"accent\">chat</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-sidenav-container autosize>\r\n <mat-sidenav #menuDrawer data-help=\"menu\" mode=\"over\" closed class=\"mat-elevation-z5\">\r\n <mat-nav-list>\r\n <mat-list-item [routerLink]='[\"/dashboard\"]' [attr.aria-label]=\"'Dashboard' | translate\" routerLinkActive=\"active\" data-help=\"dashboard\">\r\n <mat-icon matListIcon>apps</mat-icon><span>{{'Dashboard' | translate}}</span>\r\n </mat-list-item>\r\n <mat-expansion-panel class=\"mat-elevation-z0\" [attr.aria-label]=\"'Mailbox' | translate\" data-help=\"folders\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <mat-icon>inbox</mat-icon>\r\n <span>{{'Mailbox' | translate}}</span>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <mat-list-item *ngFor=\"let f of profile.folders\" [routerLink]='[\"/mailbox/f\", f.name]' routerLinkActive=\"active\" [attr.data-help]=\"'folder-'+f.name\" [attr.aria-label]=\"f.title\">\r\n <mat-icon matListIcon>{{f.icon}}</mat-icon><span>{{f.title}}</span>\r\n </mat-list-item>\r\n </mat-expansion-panel>\r\n <mat-list-item [routerLink]='[\"/schedule\"]' routerLinkActive=\"active\" *ngIf=\"schedulerEnabled\" [attr.aria-label]=\"'Scheduler' | translate\">\r\n <mat-icon matListIcon class=\"mat-icon-rtl-mirror\">date_range</mat-icon><span>{{ 'Schedule' | translate}}</span>\r\n </mat-list-item>\r\n <mat-divider></mat-divider>\r\n <ng-container *ngFor=\"let c of profile.cubes\">\r\n <mat-expansion-panel class=\"mat-elevation-z0\" *ngIf=\"c.views.length\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <mat-icon>{{ c.icon || 'insert_chart_outlined'}}</mat-icon>\r\n <span>{{c.title}}</span>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <mat-list-item *ngFor=\"let v of c.views\" [routerLink]='[\"/cube\", c.name, \"v\", v.name]' routerLinkActive=\"active\" [attr.data-help]=\"'cube-view-'+v.name\">\r\n <mat-icon matListIcon>{{v.icon}}</mat-icon><span>{{v.title}}</span>\r\n </mat-list-item>\r\n </mat-expansion-panel>\r\n </ng-container>\r\n <mat-expansion-panel *ngIf=\"profile.reports.length\" class=\"mat-elevation-z0\" [attr.aria-label]=\"'Reports' | translate\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <mat-icon>list_alt</mat-icon>\r\n <span>{{'Reports' | translate}}</span>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <mat-list-item *ngFor=\"let r of profile.reports\" [routerLink]='[\"/reports\", r.name]' routerLinkActive=\"active\"\r\n [attr.aria-label]=\"r.title\" [attr.data-help]=\"'report-'+r.name\">\r\n <mat-icon matListIcon>{{r.icon}}</mat-icon><span>{{r.title}}</span>\r\n </mat-list-item>\r\n </mat-expansion-panel>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" data-help=\"options\"\r\n (click)=\"options($event)\">\r\n <mat-icon matListIcon>settingson</mat-icon>\r\n <span>{{'Settings' | translate}}</span>\r\n </mat-list-item>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" (click)=\"signout($event)\">\r\n <mat-icon matListIcon>logout</mat-icon>\r\n <span>{{'Power' | translate}}</span>\r\n </mat-list-item>\r\n </mat-nav-list>\r\n </mat-sidenav>\r\n <mat-sidenav #secondaryDrawer position=\"end\" closed mode=\"over\" autoFocus=\"false\" class=\"mat-elevation-z3\">\r\n <ng-container [ngSwitch]=\"mode\">\r\n <bizdoc-chat [(contact)]=\"contact\" *ngSwitchCase=\"'chat'\"></bizdoc-chat>\r\n <bizdoc-notifications-table *ngSwitchCase=\"'notifications'\"></bizdoc-notifications-table>\r\n </ng-container>\r\n </mat-sidenav>\r\n <mat-sidenav-content data-help=\"main\">\r\n <router-outlet></router-outlet>\r\n </mat-sidenav-content>\r\n</mat-sidenav-container>\r\n<button mat-fab [attr.aria-label]=\"'Compose'| translate\" [@fabFull]=\"composeState\" *ngIf=\"composeEnabled\" color=\"accent\" (click)=\"compose()\" data-help=\"compose\"><mat-icon>add</mat-icon></button>\r\n", styles: ["#logo{padding-left:12px;padding-right:12px;vertical-align:middle;width:120px;filter:invert(1)}:host ::ng-deep .mat-sidenav-container{height:calc(100% - 58px)}:host ::ng-deep .mat-sidenav-container .home-content{padding:unset}::ng-deep .mat-drawer-inner-container{height:auto}router-outlet~*{position:absolute;height:100%;width:100%}::ng-deep [dir=rtl] .mat-fab{left:30px;right:unset}.mat-fab{z-index:1;position:absolute;bottom:30px;right:30px}:host ::ng-deep .mat-expansion-panel-header{padding:0 18px}:host ::ng-deep .mat-expansion-panel-header .mat-expansion-panel-header-title .mat-icon{padding:0 3px}\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: i9$3.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { type: i9$3.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { type: i2$3.MatNavList, selector: "mat-nav-list", inputs: ["disableRipple", "disabled"], exportAs: ["matNavList"] }, { type: i2$3.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["disableRipple", "disabled"], exportAs: ["matListItem"] }, { type: i6$4.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["disabled", "expanded", "hideToggle", "togglePosition"], outputs: ["opened", "closed", "expandedChange", "afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { type: i6$4.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["tabIndex", "expandedHeight", "collapsedHeight"] }, { type: i12.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { type: ChatComponent, selector: "bizdoc-chat", inputs: ["contact"], outputs: ["contactChange"] }, { type: NotificationsTableComponent, selector: "bizdoc-notifications-table" }, { type: i9$3.MatSidenavContent, selector: "mat-sidenav-content" }], directives: [{ type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i6$1.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { type: i1$7.RouterLink, selector: ":not(a):not(area)[routerLink]", inputs: ["queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { type: i13.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$7.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { type: i2$3.MatListIconCssMatStyler, selector: "[mat-list-icon], [matListIcon]" }, { type: i6$4.MatExpansionPanelTitle, selector: "mat-panel-title" }, { type: i10$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i10$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i10$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i1$7.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }], pipes: { "translate": TranslatePipe }, animations: [fabAnimation] });
|
18387
|
+
HomeMobileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: HomeMobileComponent, selector: "bizdoc-mobile-home", viewQueries: [{ propertyName: "menuDrawer", first: true, predicate: MatSidenav, descendants: true, static: true }, { propertyName: "secondaryDrawer", first: true, predicate: ["secondaryDrawer"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-toolbar color=\"primary\" [class.loading]=\"loading\">\r\n <button mat-icon-button (click)='menuDrawer.toggle()' [bizdocTooltip]=\"'Menu' | translate\" [attr.aria-label]=\"'Menu' | translate\"><mat-icon>menu</mat-icon></button>\r\n <div [routerLink]='[\"/dashboard\"]' matRipple [matRippleUnbounded]=\"true\" [matRippleRadius]=\"100\" [matRippleCentered]=\"true\" style=\"outline: none\">\r\n <img id=\"logo\" src=\"logo.svg\" alt=\"\" />\r\n </div>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"notifs()\" data-help=\"notifications\" [attr.aria-label]=\"'Notifications' | translate\" [bizdocTooltip]=\"'Notifications' | translate\"><mat-icon [matBadge]=\"profile.notificationsCount\" [matBadgeHidden]=\"!profile.notificationsCount\" matBadgeColor=\"accent\">notifications</mat-icon></button>\r\n <button mat-icon-button *ngIf='chatEnabled' (click)=\"chat()\" data-help=\"chat\" [attr.aria-label]=\"'Chat' | translate\" [bizdocTooltip]=\"'Chat' | translate\"><mat-icon [matBadge]=\"profile.conversationsCount\" [matBadgeHidden]=\"!profile.conversationsCount\" matBadgeColor=\"accent\">chat</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-sidenav-container autosize>\r\n <mat-sidenav #menuDrawer data-help=\"menu\" mode=\"over\" closed class=\"mat-elevation-z5\">\r\n <mat-nav-list>\r\n <mat-list-item [routerLink]='[\"/dashboard\"]' [attr.aria-label]=\"'Dashboard' | translate\" routerLinkActive=\"active\" data-help=\"dashboard\">\r\n <mat-icon matListIcon>apps</mat-icon><span>{{'Dashboard' | translate}}</span>\r\n </mat-list-item>\r\n <mat-expansion-panel class=\"mat-elevation-z0\" [attr.aria-label]=\"'Mailbox' | translate\" data-help=\"folders\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <mat-icon>inbox</mat-icon>\r\n <span>{{'Mailbox' | translate}}</span>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <mat-list-item *ngFor=\"let f of profile.folders\" [routerLink]='[\"/mailbox/f\", f.name]' routerLinkActive=\"active\" [attr.data-help]=\"'folder-'+f.name\" [attr.aria-label]=\"f.title\">\r\n <mat-icon matListIcon>{{f.icon}}</mat-icon><span>{{f.title}}</span>\r\n </mat-list-item>\r\n </mat-expansion-panel>\r\n <mat-list-item [routerLink]='[\"/schedule\"]' routerLinkActive=\"active\" *ngIf=\"schedulerEnabled\" [attr.aria-label]=\"'Scheduler' | translate\">\r\n <mat-icon matListIcon class=\"mat-icon-rtl-mirror\">date_range</mat-icon><span>{{ 'Schedule' | translate}}</span>\r\n </mat-list-item>\r\n <mat-divider></mat-divider>\r\n <ng-container *ngFor=\"let c of profile.cubes\">\r\n <mat-expansion-panel class=\"mat-elevation-z0\" *ngIf=\"c.views.length\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <mat-icon>{{ c.icon || 'insert_chart_outlined'}}</mat-icon>\r\n <span>{{c.title}}</span>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <mat-list-item *ngFor=\"let v of c.views\" [routerLink]='[\"/cube\", c.name, \"v\", v.name]' routerLinkActive=\"active\" [attr.data-help]=\"'cube-view-'+v.name\">\r\n <mat-icon matListIcon>{{v.icon || 'insights'}}</mat-icon><span>{{v.title}}</span>\r\n </mat-list-item>\r\n </mat-expansion-panel>\r\n </ng-container>\r\n <mat-expansion-panel *ngIf=\"profile.reports.length\" class=\"mat-elevation-z0\" [attr.aria-label]=\"'Reports' | translate\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <mat-icon>list_alt</mat-icon>\r\n <span>{{'Reports' | translate}}</span>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <mat-list-item *ngFor=\"let r of profile.reports\" [routerLink]='[\"/reports\", r.name]' routerLinkActive=\"active\"\r\n [attr.aria-label]=\"r.title\" [attr.data-help]=\"'report-'+r.name\">\r\n <mat-icon matListIcon>{{r.icon}}</mat-icon><span>{{r.title}}</span>\r\n </mat-list-item>\r\n </mat-expansion-panel>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" data-help=\"options\"\r\n (click)=\"options($event)\">\r\n <mat-icon matListIcon>settingson</mat-icon>\r\n <span>{{'Settings' | translate}}</span>\r\n </mat-list-item>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" (click)=\"signout($event)\">\r\n <mat-icon matListIcon>logout</mat-icon>\r\n <span>{{'Power' | translate}}</span>\r\n </mat-list-item>\r\n </mat-nav-list>\r\n </mat-sidenav>\r\n <mat-sidenav #secondaryDrawer position=\"end\" closed mode=\"over\" autoFocus=\"false\" class=\"mat-elevation-z3\">\r\n <ng-container [ngSwitch]=\"mode\">\r\n <bizdoc-chat [(contact)]=\"contact\" *ngSwitchCase=\"'chat'\"></bizdoc-chat>\r\n <bizdoc-notifications-table *ngSwitchCase=\"'notifications'\"></bizdoc-notifications-table>\r\n </ng-container>\r\n </mat-sidenav>\r\n <mat-sidenav-content data-help=\"main\">\r\n <router-outlet></router-outlet>\r\n </mat-sidenav-content>\r\n</mat-sidenav-container>\r\n<button mat-fab [attr.aria-label]=\"'Compose'| translate\" [@fabFull]=\"composeState\" *ngIf=\"composeEnabled\" color=\"accent\" (click)=\"compose()\" data-help=\"compose\"><mat-icon>add</mat-icon></button>\r\n", styles: ["#logo{padding-left:12px;padding-right:12px;vertical-align:middle;width:120px;filter:invert(1)}:host ::ng-deep .mat-sidenav-container{height:calc(100% - 58px)}:host ::ng-deep .mat-sidenav-container .home-content{padding:unset}::ng-deep .mat-drawer-inner-container{height:auto}router-outlet~*{position:absolute;height:100%;width:100%}::ng-deep [dir=rtl] .mat-fab{left:30px;right:unset}.mat-fab{z-index:1;position:absolute;bottom:30px;right:30px}:host ::ng-deep .mat-expansion-panel-header{padding:0 18px}:host ::ng-deep .mat-expansion-panel-header .mat-expansion-panel-header-title .mat-icon{padding:0 3px}\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: i9$3.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { type: i9$3.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { type: i2$3.MatNavList, selector: "mat-nav-list", inputs: ["disableRipple", "disabled"], exportAs: ["matNavList"] }, { type: i2$3.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["disableRipple", "disabled"], exportAs: ["matListItem"] }, { type: i6$4.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["disabled", "expanded", "hideToggle", "togglePosition"], outputs: ["opened", "closed", "expandedChange", "afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { type: i6$4.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["tabIndex", "expandedHeight", "collapsedHeight"] }, { type: i12.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { type: ChatComponent, selector: "bizdoc-chat", inputs: ["contact"], outputs: ["contactChange"] }, { type: NotificationsTableComponent, selector: "bizdoc-notifications-table" }, { type: i9$3.MatSidenavContent, selector: "mat-sidenav-content" }], directives: [{ type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i6$1.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { type: i1$7.RouterLink, selector: ":not(a):not(area)[routerLink]", inputs: ["queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { type: i13.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$7.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { type: i2$3.MatListIconCssMatStyler, selector: "[mat-list-icon], [matListIcon]" }, { type: i6$4.MatExpansionPanelTitle, selector: "mat-panel-title" }, { type: i10$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i10$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i10$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i1$7.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }], pipes: { "translate": TranslatePipe }, animations: [fabAnimation] });
|
18342
18388
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: HomeMobileComponent, decorators: [{
|
18343
18389
|
type: Component,
|
18344
|
-
args: [{ selector: 'bizdoc-mobile-home', animations: [fabAnimation], template: "<mat-toolbar color=\"primary\" [class.loading]=\"loading\">\r\n <button mat-icon-button (click)='menuDrawer.toggle()' [bizdocTooltip]=\"'Menu' | translate\" [attr.aria-label]=\"'Menu' | translate\"><mat-icon>menu</mat-icon></button>\r\n <div [routerLink]='[\"/dashboard\"]' matRipple [matRippleUnbounded]=\"true\" [matRippleRadius]=\"100\" [matRippleCentered]=\"true\" style=\"outline: none\">\r\n <img id=\"logo\" src=\"logo.svg\" alt=\"\" />\r\n </div>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"notifs()\" data-help=\"notifications\" [attr.aria-label]=\"'Notifications' | translate\" [bizdocTooltip]=\"'Notifications' | translate\"><mat-icon [matBadge]=\"profile.notificationsCount\" [matBadgeHidden]=\"!profile.notificationsCount\" matBadgeColor=\"accent\">notifications</mat-icon></button>\r\n <button mat-icon-button *ngIf='chatEnabled' (click)=\"chat()\" data-help=\"chat\" [attr.aria-label]=\"'Chat' | translate\" [bizdocTooltip]=\"'Chat' | translate\"><mat-icon [matBadge]=\"profile.conversationsCount\" [matBadgeHidden]=\"!profile.conversationsCount\" matBadgeColor=\"accent\">chat</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-sidenav-container autosize>\r\n <mat-sidenav #menuDrawer data-help=\"menu\" mode=\"over\" closed class=\"mat-elevation-z5\">\r\n <mat-nav-list>\r\n <mat-list-item [routerLink]='[\"/dashboard\"]' [attr.aria-label]=\"'Dashboard' | translate\" routerLinkActive=\"active\" data-help=\"dashboard\">\r\n <mat-icon matListIcon>apps</mat-icon><span>{{'Dashboard' | translate}}</span>\r\n </mat-list-item>\r\n <mat-expansion-panel class=\"mat-elevation-z0\" [attr.aria-label]=\"'Mailbox' | translate\" data-help=\"folders\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <mat-icon>inbox</mat-icon>\r\n <span>{{'Mailbox' | translate}}</span>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <mat-list-item *ngFor=\"let f of profile.folders\" [routerLink]='[\"/mailbox/f\", f.name]' routerLinkActive=\"active\" [attr.data-help]=\"'folder-'+f.name\" [attr.aria-label]=\"f.title\">\r\n <mat-icon matListIcon>{{f.icon}}</mat-icon><span>{{f.title}}</span>\r\n </mat-list-item>\r\n </mat-expansion-panel>\r\n <mat-list-item [routerLink]='[\"/schedule\"]' routerLinkActive=\"active\" *ngIf=\"schedulerEnabled\" [attr.aria-label]=\"'Scheduler' | translate\">\r\n <mat-icon matListIcon class=\"mat-icon-rtl-mirror\">date_range</mat-icon><span>{{ 'Schedule' | translate}}</span>\r\n </mat-list-item>\r\n <mat-divider></mat-divider>\r\n <ng-container *ngFor=\"let c of profile.cubes\">\r\n <mat-expansion-panel class=\"mat-elevation-z0\" *ngIf=\"c.views.length\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <mat-icon>{{ c.icon || 'insert_chart_outlined'}}</mat-icon>\r\n <span>{{c.title}}</span>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <mat-list-item *ngFor=\"let v of c.views\" [routerLink]='[\"/cube\", c.name, \"v\", v.name]' routerLinkActive=\"active\" [attr.data-help]=\"'cube-view-'+v.name\">\r\n <mat-icon matListIcon>{{v.icon}}</mat-icon><span>{{v.title}}</span>\r\n </mat-list-item>\r\n </mat-expansion-panel>\r\n </ng-container>\r\n <mat-expansion-panel *ngIf=\"profile.reports.length\" class=\"mat-elevation-z0\" [attr.aria-label]=\"'Reports' | translate\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <mat-icon>list_alt</mat-icon>\r\n <span>{{'Reports' | translate}}</span>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <mat-list-item *ngFor=\"let r of profile.reports\" [routerLink]='[\"/reports\", r.name]' routerLinkActive=\"active\"\r\n [attr.aria-label]=\"r.title\" [attr.data-help]=\"'report-'+r.name\">\r\n <mat-icon matListIcon>{{r.icon}}</mat-icon><span>{{r.title}}</span>\r\n </mat-list-item>\r\n </mat-expansion-panel>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" data-help=\"options\"\r\n (click)=\"options($event)\">\r\n <mat-icon matListIcon>settingson</mat-icon>\r\n <span>{{'Settings' | translate}}</span>\r\n </mat-list-item>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" (click)=\"signout($event)\">\r\n <mat-icon matListIcon>logout</mat-icon>\r\n <span>{{'Power' | translate}}</span>\r\n </mat-list-item>\r\n </mat-nav-list>\r\n </mat-sidenav>\r\n <mat-sidenav #secondaryDrawer position=\"end\" closed mode=\"over\" autoFocus=\"false\" class=\"mat-elevation-z3\">\r\n <ng-container [ngSwitch]=\"mode\">\r\n <bizdoc-chat [(contact)]=\"contact\" *ngSwitchCase=\"'chat'\"></bizdoc-chat>\r\n <bizdoc-notifications-table *ngSwitchCase=\"'notifications'\"></bizdoc-notifications-table>\r\n </ng-container>\r\n </mat-sidenav>\r\n <mat-sidenav-content data-help=\"main\">\r\n <router-outlet></router-outlet>\r\n </mat-sidenav-content>\r\n</mat-sidenav-container>\r\n<button mat-fab [attr.aria-label]=\"'Compose'| translate\" [@fabFull]=\"composeState\" *ngIf=\"composeEnabled\" color=\"accent\" (click)=\"compose()\" data-help=\"compose\"><mat-icon>add</mat-icon></button>\r\n", styles: ["#logo{padding-left:12px;padding-right:12px;vertical-align:middle;width:120px;filter:invert(1)}:host ::ng-deep .mat-sidenav-container{height:calc(100% - 58px)}:host ::ng-deep .mat-sidenav-container .home-content{padding:unset}::ng-deep .mat-drawer-inner-container{height:auto}router-outlet~*{position:absolute;height:100%;width:100%}::ng-deep [dir=rtl] .mat-fab{left:30px;right:unset}.mat-fab{z-index:1;position:absolute;bottom:30px;right:30px}:host ::ng-deep .mat-expansion-panel-header{padding:0 18px}:host ::ng-deep .mat-expansion-panel-header .mat-expansion-panel-header-title .mat-icon{padding:0 3px}\n"] }]
|
18390
|
+
args: [{ selector: 'bizdoc-mobile-home', animations: [fabAnimation], template: "<mat-toolbar color=\"primary\" [class.loading]=\"loading\">\r\n <button mat-icon-button (click)='menuDrawer.toggle()' [bizdocTooltip]=\"'Menu' | translate\" [attr.aria-label]=\"'Menu' | translate\"><mat-icon>menu</mat-icon></button>\r\n <div [routerLink]='[\"/dashboard\"]' matRipple [matRippleUnbounded]=\"true\" [matRippleRadius]=\"100\" [matRippleCentered]=\"true\" style=\"outline: none\">\r\n <img id=\"logo\" src=\"logo.svg\" alt=\"\" />\r\n </div>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"notifs()\" data-help=\"notifications\" [attr.aria-label]=\"'Notifications' | translate\" [bizdocTooltip]=\"'Notifications' | translate\"><mat-icon [matBadge]=\"profile.notificationsCount\" [matBadgeHidden]=\"!profile.notificationsCount\" matBadgeColor=\"accent\">notifications</mat-icon></button>\r\n <button mat-icon-button *ngIf='chatEnabled' (click)=\"chat()\" data-help=\"chat\" [attr.aria-label]=\"'Chat' | translate\" [bizdocTooltip]=\"'Chat' | translate\"><mat-icon [matBadge]=\"profile.conversationsCount\" [matBadgeHidden]=\"!profile.conversationsCount\" matBadgeColor=\"accent\">chat</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-sidenav-container autosize>\r\n <mat-sidenav #menuDrawer data-help=\"menu\" mode=\"over\" closed class=\"mat-elevation-z5\">\r\n <mat-nav-list>\r\n <mat-list-item [routerLink]='[\"/dashboard\"]' [attr.aria-label]=\"'Dashboard' | translate\" routerLinkActive=\"active\" data-help=\"dashboard\">\r\n <mat-icon matListIcon>apps</mat-icon><span>{{'Dashboard' | translate}}</span>\r\n </mat-list-item>\r\n <mat-expansion-panel class=\"mat-elevation-z0\" [attr.aria-label]=\"'Mailbox' | translate\" data-help=\"folders\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <mat-icon>inbox</mat-icon>\r\n <span>{{'Mailbox' | translate}}</span>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <mat-list-item *ngFor=\"let f of profile.folders\" [routerLink]='[\"/mailbox/f\", f.name]' routerLinkActive=\"active\" [attr.data-help]=\"'folder-'+f.name\" [attr.aria-label]=\"f.title\">\r\n <mat-icon matListIcon>{{f.icon}}</mat-icon><span>{{f.title}}</span>\r\n </mat-list-item>\r\n </mat-expansion-panel>\r\n <mat-list-item [routerLink]='[\"/schedule\"]' routerLinkActive=\"active\" *ngIf=\"schedulerEnabled\" [attr.aria-label]=\"'Scheduler' | translate\">\r\n <mat-icon matListIcon class=\"mat-icon-rtl-mirror\">date_range</mat-icon><span>{{ 'Schedule' | translate}}</span>\r\n </mat-list-item>\r\n <mat-divider></mat-divider>\r\n <ng-container *ngFor=\"let c of profile.cubes\">\r\n <mat-expansion-panel class=\"mat-elevation-z0\" *ngIf=\"c.views.length\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <mat-icon>{{ c.icon || 'insert_chart_outlined'}}</mat-icon>\r\n <span>{{c.title}}</span>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <mat-list-item *ngFor=\"let v of c.views\" [routerLink]='[\"/cube\", c.name, \"v\", v.name]' routerLinkActive=\"active\" [attr.data-help]=\"'cube-view-'+v.name\">\r\n <mat-icon matListIcon>{{v.icon || 'insights'}}</mat-icon><span>{{v.title}}</span>\r\n </mat-list-item>\r\n </mat-expansion-panel>\r\n </ng-container>\r\n <mat-expansion-panel *ngIf=\"profile.reports.length\" class=\"mat-elevation-z0\" [attr.aria-label]=\"'Reports' | translate\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n <mat-icon>list_alt</mat-icon>\r\n <span>{{'Reports' | translate}}</span>\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <mat-list-item *ngFor=\"let r of profile.reports\" [routerLink]='[\"/reports\", r.name]' routerLinkActive=\"active\"\r\n [attr.aria-label]=\"r.title\" [attr.data-help]=\"'report-'+r.name\">\r\n <mat-icon matListIcon>{{r.icon}}</mat-icon><span>{{r.title}}</span>\r\n </mat-list-item>\r\n </mat-expansion-panel>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" data-help=\"options\"\r\n (click)=\"options($event)\">\r\n <mat-icon matListIcon>settingson</mat-icon>\r\n <span>{{'Settings' | translate}}</span>\r\n </mat-list-item>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" (click)=\"signout($event)\">\r\n <mat-icon matListIcon>logout</mat-icon>\r\n <span>{{'Power' | translate}}</span>\r\n </mat-list-item>\r\n </mat-nav-list>\r\n </mat-sidenav>\r\n <mat-sidenav #secondaryDrawer position=\"end\" closed mode=\"over\" autoFocus=\"false\" class=\"mat-elevation-z3\">\r\n <ng-container [ngSwitch]=\"mode\">\r\n <bizdoc-chat [(contact)]=\"contact\" *ngSwitchCase=\"'chat'\"></bizdoc-chat>\r\n <bizdoc-notifications-table *ngSwitchCase=\"'notifications'\"></bizdoc-notifications-table>\r\n </ng-container>\r\n </mat-sidenav>\r\n <mat-sidenav-content data-help=\"main\">\r\n <router-outlet></router-outlet>\r\n </mat-sidenav-content>\r\n</mat-sidenav-container>\r\n<button mat-fab [attr.aria-label]=\"'Compose'| translate\" [@fabFull]=\"composeState\" *ngIf=\"composeEnabled\" color=\"accent\" (click)=\"compose()\" data-help=\"compose\"><mat-icon>add</mat-icon></button>\r\n", styles: ["#logo{padding-left:12px;padding-right:12px;vertical-align:middle;width:120px;filter:invert(1)}:host ::ng-deep .mat-sidenav-container{height:calc(100% - 58px)}:host ::ng-deep .mat-sidenav-container .home-content{padding:unset}::ng-deep .mat-drawer-inner-container{height:auto}router-outlet~*{position:absolute;height:100%;width:100%}::ng-deep [dir=rtl] .mat-fab{left:30px;right:unset}.mat-fab{z-index:1;position:absolute;bottom:30px;right:30px}:host ::ng-deep .mat-expansion-panel-header{padding:0 18px}:host ::ng-deep .mat-expansion-panel-header .mat-expansion-panel-header-title .mat-icon{padding:0 3px}\n"] }]
|
18345
18391
|
}], ctorParameters: function () {
|
18346
18392
|
return [{ type: i0.Injector }, { type: i1$7.Router }, { type: i2$5.MatBottomSheet }, { type: i7.Directionality }, { type: SessionService }, { type: Popup }, { type: HubService }, { type: TranslateService }, { type: i8.MatSnackBar }, { type: ChatInfo }, { type: undefined, decorators: [{
|
18347
18393
|
type: Inject,
|
@@ -18529,7 +18575,7 @@ const PANES_CONFIG = [{
|
|
18529
18575
|
}]
|
18530
18576
|
},
|
18531
18577
|
{
|
18532
|
-
path: ':cube/i/:xAxis/:
|
18578
|
+
path: ':cube/i/:xAxis/:series',
|
18533
18579
|
icon: 'bar_chart',
|
18534
18580
|
component: CubeMatrixPaneComponent,
|
18535
18581
|
policy: OpenPolicy.Tab
|
@@ -18671,7 +18717,6 @@ class ComposeComponent {
|
|
18671
18717
|
this._session = _session;
|
18672
18718
|
this._router = _router;
|
18673
18719
|
this._route = _route;
|
18674
|
-
this.viewMode = 'comments';
|
18675
18720
|
this.isMobile = isMobile();
|
18676
18721
|
this._destroy = new Subject();
|
18677
18722
|
}
|
@@ -18688,15 +18733,25 @@ class ComposeComponent {
|
|
18688
18733
|
this.form.navigate(page);
|
18689
18734
|
this.mode = this.model.draft ? 'compose' : 'preview';
|
18690
18735
|
});
|
18691
|
-
this.drawer.openedChange.pipe(takeUntil(this._destroy)).subscribe(o =>
|
18692
|
-
}
|
18693
|
-
toggle() {
|
18694
|
-
this.drawer.toggle().then(o => {
|
18736
|
+
this.drawer.openedChange.pipe(takeUntil(this._destroy)).subscribe(o => {
|
18695
18737
|
if (o) {
|
18696
|
-
this.comments
|
18738
|
+
if (this.comments) {
|
18739
|
+
!this.newCommentsCount && this.comments.focus();
|
18740
|
+
this.comments.change.pipe(takeUntil(this._destroy)).subscribe(() => this.newCommentsCount = this.comments.unreadComments);
|
18741
|
+
}
|
18697
18742
|
}
|
18698
18743
|
});
|
18699
18744
|
}
|
18745
|
+
toggle(mode) {
|
18746
|
+
if (this.viewMode === mode) {
|
18747
|
+
this.drawer.close();
|
18748
|
+
this.viewMode = null;
|
18749
|
+
}
|
18750
|
+
else {
|
18751
|
+
this.viewMode = mode;
|
18752
|
+
!this.drawer.opened && this.drawer.open();
|
18753
|
+
}
|
18754
|
+
}
|
18700
18755
|
send(action) {
|
18701
18756
|
this.form.send(action).subscribe(this._close.bind(this));
|
18702
18757
|
}
|
@@ -18720,10 +18775,10 @@ class ComposeComponent {
|
|
18720
18775
|
}
|
18721
18776
|
}
|
18722
18777
|
ComposeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ComposeComponent, deps: [{ token: WindowTitleService }, { token: SessionService }, { token: i1$7.Router }, { token: i1$7.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component });
|
18723
|
-
ComposeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: ComposeComponent, selector: "ng-component", viewQueries: [{ propertyName: "form", first: true, predicate: ComposeFormComponent, descendants: true, static: true }, { propertyName: "comments", first: true, predicate: CommentsComponent, descendants: true }, { propertyName: "drawer", first: true, predicate: MatSidenav, descendants: true, static: true }], ngImport: i0, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button color=\"primary\" (click)=\"form.back()\" [bizdocTooltip]=\"'Back'|translate\" *ngIf=\"form.page !== undefined\" tabindex=\"1\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">arrow_back</mat-icon>\r\n </button>\r\n <button mat-icon-button color=\"primary\" *ngIf=\"model.draft\" data-help=\"submit\"\r\n
|
18778
|
+
ComposeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: ComposeComponent, selector: "ng-component", viewQueries: [{ propertyName: "form", first: true, predicate: ComposeFormComponent, descendants: true, static: true }, { propertyName: "comments", first: true, predicate: CommentsComponent, descendants: true }, { propertyName: "drawer", first: true, predicate: MatSidenav, descendants: true, static: true }], ngImport: i0, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button color=\"primary\" (click)=\"form.back()\" [bizdocTooltip]=\"'Back'|translate\" *ngIf=\"form.page !== undefined\" tabindex=\"1\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">arrow_back</mat-icon>\r\n </button>\r\n <button mat-icon-button color=\"primary\" *ngIf=\"model.draft\" data-help=\"submit\"\r\n (click)=\"submit()\" [disabled]=\"!valid||working\" [bizdocTooltip]=\"'Submit' | translate\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">send</mat-icon>\r\n </button>\r\n <button mat-icon-button color=\"primary\" *ngIf=\"form.actions.length === 1\" [attr.data-help]=\"'action-'+form.actions[0].name\" (click)=\"send(model.actions[0])\" [disabled]=\"!valid||working\" [bizdocTooltip]=\"form.actions[0].title\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">{{form.actions[0].icon || 'send'}}</mat-icon>\r\n </button>\r\n <button mat-icon-button data-help=\"send\" color=\"primary\" *ngIf=\"form.actions.length > 1\" [matMenuTriggerFor]=\"actionmenu\" [disabled]=\"!valid||working\" [bizdocTooltip]=\"'Send' | translate\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">send</mat-icon>\r\n </button>\r\n <!-- action -->\r\n <mat-menu #actionmenu>\r\n <ng-container *ngFor=\"let a of form.actions | sort : 'group'; let i = index\">\r\n <mat-divider *ngIf=\"i>0 && form.actions[i-1].group !== a.group\"></mat-divider>\r\n <button mat-menu-item (click)=\"send(a.name)\">{{a.title}}</button>\r\n </ng-container>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"form.save().subscribe()\" data-help=\"save\" [disabled]=\"!dirty||working\" [bizdocTooltip]=\"(model.draft ? 'SaveDraft' : 'Save') | translate\" *ngIf=\"mode === 'compose'\">\r\n <mat-icon>save</mat-icon>\r\n </button>\r\n <button mat-icon-button data-help=\"tag\" (click)=\"form.tag($event)\" [bizdocTooltip]=\"'Tags' | translate\" [disabled]=\"working\"><mat-icon class=\"filled\">{{model.tags && model.tags.length ?'bookmark':'bookmark_border'}}</mat-icon></button>\r\n <button mat-icon-button data-help=\"flag\" [bizdocTooltip]=\"'Flagged'| translate\" [disabled]=\"working\" (click)=\"form.flag()\"><mat-icon class=\"filled\">{{model.flag ? 'star' : 'star_border'}}</mat-icon></button>\r\n <button mat-icon-button (click)=\"form.attach()\" data-help=\"attach\" [bizdocTooltip]=\"'AttachFile' | translate\" [disabled]=\"working\"><mat-icon>attach_file</mat-icon></button>\r\n <button mat-icon-button [disabled]=\"working\" data-help=\"edit\" (click)=\"edit()\" [bizdocTooltip]=\"'Edit' | translate\" *ngIf=\"mode !== 'compose' && !model.completed && model.pending\"><mat-icon>create</mat-icon></button>\r\n <span class=\"divider\"></span> \r\n <button mat-icon-button (click)=\"toggle('comments')\" data-help=\"comments\" [bizdocTooltip]=\"'Comments' | translate\" [matBadge]=\"newCommentsCount\" [matBadgeHidden]=\"!newCommentsCount\" matBadgeColor=\"accent\">\r\n <mat-icon class=\"filled\">format_quote</mat-icon>\r\n </button>\r\n <button mat-icon-button (click)=\"toggle('views')\" [bizdocTooltip]=\"'View' | translate\" [attr.aria-label]=\"'View' | translate\" class=\"tool\"><mat-icon>data_usage</mat-icon></button>\r\n <button mat-icon-button [matMenuTriggerFor]=\"optionsMenu\" [bizdocTooltip]=\"'Options' | translate\" [attr.aria-label]=\"'Options' | translate\"><mat-icon>more_vert</mat-icon></button>\r\n <mat-menu #optionsMenu=\"matMenu\">\r\n <ng-template matMenuContent>\r\n <button mat-menu-item (click)=\"form.copy()\" [disabled]=\"working\">\r\n <!--<mat-icon>content_copy</mat-icon>-->\r\n <span>{{'Copy' | translate}}</span>\r\n </button>\r\n <button mat-menu-item (click)=\"discard()\" *ngIf=\"model.draft && !model.issued\" [disabled]=\"working\">\r\n <!--<mat-icon>delete_outlined</mat-icon>-->\r\n <span>{{'Discard' | translate}}</span>\r\n </button>\r\n <ng-container *ngIf=\"form.help\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"form.guide(form.help)\">\r\n <!--<mat-icon>help_outline</mat-icon>-->\r\n <span>{{'Help' | translate}}</span>\r\n </button>\r\n </ng-container>\r\n </ng-template>\r\n </mat-menu>\r\n</mat-toolbar>\r\n<mat-sidenav-container class=\"page-container\">\r\n <mat-sidenav-content>\r\n <bizdoc-form [model]=model #form (validChange)=\"valid=$event\"\r\n (workingChange)=\"working=$event\"\r\n (dirtyChange)=\"dirty=$event\" [mode]=\"mode\"></bizdoc-form>\r\n </mat-sidenav-content>\r\n <mat-sidenav mode=\"over\" position=\"end\" [opened]=\"false\" #drawer autoFocus=\"false\" class=\"side-nav\">\r\n <ng-container [ngSwitch]=\"viewMode\">\r\n <bizdoc-document-views [model]=\"model\" *ngSwitchCase=\"'views'\"></bizdoc-document-views>\r\n <bizdoc-comments [model]=\"model\" *ngSwitchDefault></bizdoc-comments>\r\n </ng-container>\r\n </mat-sidenav>\r\n</mat-sidenav-container>\r\n", styles: [".page-container ::ng-deep form{padding:6px}.side-nav{min-width:280px}\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: i12.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { type: i8$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i9$3.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { type: i9$3.MatSidenavContent, selector: "mat-sidenav-content" }, { type: ComposeFormComponent, selector: "bizdoc-form", inputs: ["model", "working", "dirty", "valid", "mode", "contacts"], outputs: ["modelChange", "workingChange", "dirtyChange", "validChange"] }, { type: i9$3.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { type: DocumentViewsComponent, selector: "bizdoc-document-views", inputs: ["model"] }, { type: CommentsComponent, selector: "bizdoc-comments", inputs: ["model"], outputs: ["change"] }], directives: [{ type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i13.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { type: i8$1.MatMenuContent, selector: "ng-template[matMenuContent]" }, { type: i10$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i10$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i10$1.NgSwitchDefault, selector: "[ngSwitchDefault]" }], pipes: { "translate": TranslatePipe, "sort": ArraySortPipe } });
|
18724
18779
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ComposeComponent, decorators: [{
|
18725
18780
|
type: Component,
|
18726
|
-
args: [{ template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button color=\"primary\" (click)=\"form.back()\" [bizdocTooltip]=\"'Back'|translate\" *ngIf=\"form.page !== undefined\" tabindex=\"1\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">arrow_back</mat-icon>\r\n </button>\r\n <button mat-icon-button color=\"primary\" *ngIf=\"model.draft\" data-help=\"submit\"\r\n
|
18781
|
+
args: [{ template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button color=\"primary\" (click)=\"form.back()\" [bizdocTooltip]=\"'Back'|translate\" *ngIf=\"form.page !== undefined\" tabindex=\"1\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">arrow_back</mat-icon>\r\n </button>\r\n <button mat-icon-button color=\"primary\" *ngIf=\"model.draft\" data-help=\"submit\"\r\n (click)=\"submit()\" [disabled]=\"!valid||working\" [bizdocTooltip]=\"'Submit' | translate\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">send</mat-icon>\r\n </button>\r\n <button mat-icon-button color=\"primary\" *ngIf=\"form.actions.length === 1\" [attr.data-help]=\"'action-'+form.actions[0].name\" (click)=\"send(model.actions[0])\" [disabled]=\"!valid||working\" [bizdocTooltip]=\"form.actions[0].title\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">{{form.actions[0].icon || 'send'}}</mat-icon>\r\n </button>\r\n <button mat-icon-button data-help=\"send\" color=\"primary\" *ngIf=\"form.actions.length > 1\" [matMenuTriggerFor]=\"actionmenu\" [disabled]=\"!valid||working\" [bizdocTooltip]=\"'Send' | translate\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">send</mat-icon>\r\n </button>\r\n <!-- action -->\r\n <mat-menu #actionmenu>\r\n <ng-container *ngFor=\"let a of form.actions | sort : 'group'; let i = index\">\r\n <mat-divider *ngIf=\"i>0 && form.actions[i-1].group !== a.group\"></mat-divider>\r\n <button mat-menu-item (click)=\"send(a.name)\">{{a.title}}</button>\r\n </ng-container>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"form.save().subscribe()\" data-help=\"save\" [disabled]=\"!dirty||working\" [bizdocTooltip]=\"(model.draft ? 'SaveDraft' : 'Save') | translate\" *ngIf=\"mode === 'compose'\">\r\n <mat-icon>save</mat-icon>\r\n </button>\r\n <button mat-icon-button data-help=\"tag\" (click)=\"form.tag($event)\" [bizdocTooltip]=\"'Tags' | translate\" [disabled]=\"working\"><mat-icon class=\"filled\">{{model.tags && model.tags.length ?'bookmark':'bookmark_border'}}</mat-icon></button>\r\n <button mat-icon-button data-help=\"flag\" [bizdocTooltip]=\"'Flagged'| translate\" [disabled]=\"working\" (click)=\"form.flag()\"><mat-icon class=\"filled\">{{model.flag ? 'star' : 'star_border'}}</mat-icon></button>\r\n <button mat-icon-button (click)=\"form.attach()\" data-help=\"attach\" [bizdocTooltip]=\"'AttachFile' | translate\" [disabled]=\"working\"><mat-icon>attach_file</mat-icon></button>\r\n <button mat-icon-button [disabled]=\"working\" data-help=\"edit\" (click)=\"edit()\" [bizdocTooltip]=\"'Edit' | translate\" *ngIf=\"mode !== 'compose' && !model.completed && model.pending\"><mat-icon>create</mat-icon></button>\r\n <span class=\"divider\"></span> \r\n <button mat-icon-button (click)=\"toggle('comments')\" data-help=\"comments\" [bizdocTooltip]=\"'Comments' | translate\" [matBadge]=\"newCommentsCount\" [matBadgeHidden]=\"!newCommentsCount\" matBadgeColor=\"accent\">\r\n <mat-icon class=\"filled\">format_quote</mat-icon>\r\n </button>\r\n <button mat-icon-button (click)=\"toggle('views')\" [bizdocTooltip]=\"'View' | translate\" [attr.aria-label]=\"'View' | translate\" class=\"tool\"><mat-icon>data_usage</mat-icon></button>\r\n <button mat-icon-button [matMenuTriggerFor]=\"optionsMenu\" [bizdocTooltip]=\"'Options' | translate\" [attr.aria-label]=\"'Options' | translate\"><mat-icon>more_vert</mat-icon></button>\r\n <mat-menu #optionsMenu=\"matMenu\">\r\n <ng-template matMenuContent>\r\n <button mat-menu-item (click)=\"form.copy()\" [disabled]=\"working\">\r\n <!--<mat-icon>content_copy</mat-icon>-->\r\n <span>{{'Copy' | translate}}</span>\r\n </button>\r\n <button mat-menu-item (click)=\"discard()\" *ngIf=\"model.draft && !model.issued\" [disabled]=\"working\">\r\n <!--<mat-icon>delete_outlined</mat-icon>-->\r\n <span>{{'Discard' | translate}}</span>\r\n </button>\r\n <ng-container *ngIf=\"form.help\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"form.guide(form.help)\">\r\n <!--<mat-icon>help_outline</mat-icon>-->\r\n <span>{{'Help' | translate}}</span>\r\n </button>\r\n </ng-container>\r\n </ng-template>\r\n </mat-menu>\r\n</mat-toolbar>\r\n<mat-sidenav-container class=\"page-container\">\r\n <mat-sidenav-content>\r\n <bizdoc-form [model]=model #form (validChange)=\"valid=$event\"\r\n (workingChange)=\"working=$event\"\r\n (dirtyChange)=\"dirty=$event\" [mode]=\"mode\"></bizdoc-form>\r\n </mat-sidenav-content>\r\n <mat-sidenav mode=\"over\" position=\"end\" [opened]=\"false\" #drawer autoFocus=\"false\" class=\"side-nav\">\r\n <ng-container [ngSwitch]=\"viewMode\">\r\n <bizdoc-document-views [model]=\"model\" *ngSwitchCase=\"'views'\"></bizdoc-document-views>\r\n <bizdoc-comments [model]=\"model\" *ngSwitchDefault></bizdoc-comments>\r\n </ng-container>\r\n </mat-sidenav>\r\n</mat-sidenav-container>\r\n", styles: [".page-container ::ng-deep form{padding:6px}.side-nav{min-width:280px}\n"] }]
|
18727
18782
|
}], ctorParameters: function () { return [{ type: WindowTitleService }, { type: SessionService }, { type: i1$7.Router }, { type: i1$7.ActivatedRoute }]; }, propDecorators: { form: [{
|
18728
18783
|
type: ViewChild,
|
18729
18784
|
args: [ComposeFormComponent, { static: true }]
|
@@ -18880,10 +18935,7 @@ class CubeMobileViewComponent extends ViewBase {
|
|
18880
18935
|
if (!this.anyAxes && this.drawer.opened)
|
18881
18936
|
this.drawer.close();
|
18882
18937
|
});
|
18883
|
-
this._route.queryParams.pipe(takeUntil(this._destroy)
|
18884
|
-
this.originalAxes = p;
|
18885
|
-
this.viewPane.refresh();
|
18886
|
-
});
|
18938
|
+
this._route.queryParams.pipe(takeUntil(this._destroy)).subscribe(p => this.originalAxes = p);
|
18887
18939
|
this.drawer.openedChange.
|
18888
18940
|
pipe(filter(() => !this._navigating)).pipe(takeUntil(this._destroy)).subscribe(() => this.viewPane.resize());
|
18889
18941
|
this._session.loaded.pipe(takeUntil(this._destroy)).
|
@@ -18935,10 +18987,10 @@ class CubeMobileViewComponent extends ViewBase {
|
|
18935
18987
|
}
|
18936
18988
|
}
|
18937
18989
|
CubeMobileViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeMobileViewComponent, deps: [{ token: SessionService }, { token: RouterImpl }, { token: CubeService }, { token: GuideService }, { token: PromptService }, { token: WindowTitleService }, { token: i1$7.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component });
|
18938
|
-
CubeMobileViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeMobileViewComponent, selector: "ng-component", viewQueries: [{ propertyName: "viewPane", first: true, predicate: CubeViewComponent, descendants: true, static: true }, { propertyName: "drawer", first: true, predicate: MatSidenav, descendants: true, static: true }, { propertyName: "explorePane", first: true, predicate: ExploreItemsComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\" *ngIf=\"view.guide\"><mat-icon>help_outline</mat-icon></button>\r\n <button mat-icon-button (click)=\"viewPane.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]=\"pmenu\" [bizdocTooltip]=\"'Patterns' | translate\" [disabled]=\"!patterns?.length\" data-help=\"pattern\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #pmenu>\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"patternChange(p)\">\r\n <span>{{p.title}}</span>\r\n </button>\r\n </mat-menu>\r\n <button mat-icon-button [matMenuTriggerFor]=\"menu\" [bizdocTooltip]=\"'Download' | translate\" data-help=\"download\"><mat-icon>save_alt</mat-icon></button>\r\n <mat-menu #menu>\r\n <button mat-menu-item (click)=\"viewPane.exportToExcel()\">{{'DownloadExcel' | translate}}</button>\r\n <ng-container *ngIf=\"mode === 'explore'\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"explorePane.exportExcel()\">{{'DownloadExplore' | translate}}</button>\r\n </ng-container>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"clearFilter()\" [bizdocTooltip]=\"'Clear' | translate\" [disabled]=\"!anyFilters\"><mat-icon>clear_all</mat-icon></button>\r\n <button mat-icon-button (click)=\"toggleFilter()\" [bizdocTooltip]=\"'Filter' | translate\" [disabled]=\"!anyAxes\" data-help=\"filter\"><mat-icon>filter_list</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-sidenav-container class=\"page-container\" autosize>\r\n <mat-sidenav mode=\"over\" position=\"end\" [opened]=\"false\">\r\n <ng-container [ngSwitch]=\"mode\">\r\n <bizdoc-cube-explore *ngSwitchCase=\"'explore'\" [cube]=\"cube.name\" [index]=\"index\" [scope]=\"scope\"\r\n (explore)=\"exploreItem($event)\" #explorePane [(loading)]=\"loading\"></bizdoc-cube-explore>\r\n <bizdoc-cube-item *ngSwitchCase=\"'item'\" [template]=\"template\" [model]=\"item\"></bizdoc-cube-item>\r\n <bizdoc-cube-filter *ngSwitchDefault [cube]=\"cube.name\" [axes]=\"axes\" [exclude]=\"exclude\" (axesChange)=\"filterChange($event)\"></bizdoc-cube-filter>\r\n </ng-container>\r\n </mat-sidenav>\r\n <mat-sidenav-content>\r\n <bizdoc-cube-view [
|
18990
|
+
CubeMobileViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeMobileViewComponent, selector: "ng-component", viewQueries: [{ propertyName: "viewPane", first: true, predicate: CubeViewComponent, descendants: true, static: true }, { propertyName: "drawer", first: true, predicate: MatSidenav, descendants: true, static: true }, { propertyName: "explorePane", first: true, predicate: ExploreItemsComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\" *ngIf=\"view.guide\"><mat-icon>help_outline</mat-icon></button>\r\n <button mat-icon-button (click)=\"viewPane.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]=\"pmenu\" [bizdocTooltip]=\"'Patterns' | translate\" [disabled]=\"!patterns?.length\" data-help=\"pattern\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #pmenu>\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"patternChange(p)\">\r\n <span>{{p.title}}</span>\r\n </button>\r\n </mat-menu>\r\n <button mat-icon-button [matMenuTriggerFor]=\"menu\" [bizdocTooltip]=\"'Download' | translate\" data-help=\"download\"><mat-icon>save_alt</mat-icon></button>\r\n <mat-menu #menu>\r\n <button mat-menu-item (click)=\"viewPane.exportToExcel()\">{{'DownloadExcel' | translate}}</button>\r\n <ng-container *ngIf=\"mode === 'explore'\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"explorePane.exportExcel()\">{{'DownloadExplore' | translate}}</button>\r\n </ng-container>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"clearFilter()\" [bizdocTooltip]=\"'Clear' | translate\" [disabled]=\"!anyFilters\"><mat-icon>clear_all</mat-icon></button>\r\n <button mat-icon-button (click)=\"toggleFilter()\" [bizdocTooltip]=\"'Filter' | translate\" [disabled]=\"!anyAxes\" data-help=\"filter\"><mat-icon>filter_list</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-sidenav-container class=\"page-container\" autosize>\r\n <mat-sidenav mode=\"over\" position=\"end\" [opened]=\"false\">\r\n <ng-container [ngSwitch]=\"mode\">\r\n <bizdoc-cube-explore *ngSwitchCase=\"'explore'\" [cube]=\"cube.name\" [index]=\"index\" [scope]=\"scope\"\r\n (explore)=\"exploreItem($event)\" #explorePane [(loading)]=\"loading\"></bizdoc-cube-explore>\r\n <bizdoc-cube-item *ngSwitchCase=\"'item'\" [template]=\"template\" [model]=\"item\"></bizdoc-cube-item>\r\n <bizdoc-cube-filter *ngSwitchDefault [cube]=\"cube.name\" [axes]=\"axes\" [exclude]=\"exclude\" (axesChange)=\"filterChange($event)\"></bizdoc-cube-filter>\r\n </ng-container>\r\n </mat-sidenav>\r\n <mat-sidenav-content>\r\n <bizdoc-cube-view [filters]=\"axes\" #viewPane\r\n (explore)=\"explore($event)\"\r\n [cube]=\"cube\"\r\n [view]=\"view\"\r\n [(loading)]=\"loading\"></bizdoc-cube-view>\r\n </mat-sidenav-content>\r\n</mat-sidenav-container>\r\n", styles: [":host ::ng-deep .mat-sidenav-container .mat-sidenav-content{overflow:hidden}:host ::ng-deep .e-pivot-context-menu{display:none}\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: i12.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { type: i9$3.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { type: i9$3.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { type: ExploreItemsComponent, selector: "bizdoc-cube-explore", inputs: ["cube", "index", "scope", "axes", "loading"], outputs: ["explore", "load", "loadingChange"] }, { type: ExploreItemImplComponent, selector: "bizdoc-cube-item", inputs: ["template", "model"] }, { type: CubeFilterComponent, selector: "bizdoc-cube-filter", inputs: ["cube", "exclude", "include", "axes"], outputs: ["axesChange"] }, { type: i9$3.MatSidenavContent, selector: "mat-sidenav-content" }, { type: CubeViewComponent, selector: "bizdoc-cube-view", inputs: ["filters", "cube", "view", "loading"], outputs: ["explore", "loadingChange"] }], directives: [{ type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: MatIconAnimate, selector: "[matAnimate]" }, { type: i8$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i10$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i10$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i10$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i10$1.NgSwitchDefault, selector: "[ngSwitchDefault]" }], pipes: { "translate": TranslatePipe } });
|
18939
18991
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeMobileViewComponent, decorators: [{
|
18940
18992
|
type: Component,
|
18941
|
-
args: [{ template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\" *ngIf=\"view.guide\"><mat-icon>help_outline</mat-icon></button>\r\n <button mat-icon-button (click)=\"viewPane.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]=\"pmenu\" [bizdocTooltip]=\"'Patterns' | translate\" [disabled]=\"!patterns?.length\" data-help=\"pattern\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #pmenu>\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"patternChange(p)\">\r\n <span>{{p.title}}</span>\r\n </button>\r\n </mat-menu>\r\n <button mat-icon-button [matMenuTriggerFor]=\"menu\" [bizdocTooltip]=\"'Download' | translate\" data-help=\"download\"><mat-icon>save_alt</mat-icon></button>\r\n <mat-menu #menu>\r\n <button mat-menu-item (click)=\"viewPane.exportToExcel()\">{{'DownloadExcel' | translate}}</button>\r\n <ng-container *ngIf=\"mode === 'explore'\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"explorePane.exportExcel()\">{{'DownloadExplore' | translate}}</button>\r\n </ng-container>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"clearFilter()\" [bizdocTooltip]=\"'Clear' | translate\" [disabled]=\"!anyFilters\"><mat-icon>clear_all</mat-icon></button>\r\n <button mat-icon-button (click)=\"toggleFilter()\" [bizdocTooltip]=\"'Filter' | translate\" [disabled]=\"!anyAxes\" data-help=\"filter\"><mat-icon>filter_list</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-sidenav-container class=\"page-container\" autosize>\r\n <mat-sidenav mode=\"over\" position=\"end\" [opened]=\"false\">\r\n <ng-container [ngSwitch]=\"mode\">\r\n <bizdoc-cube-explore *ngSwitchCase=\"'explore'\" [cube]=\"cube.name\" [index]=\"index\" [scope]=\"scope\"\r\n (explore)=\"exploreItem($event)\" #explorePane [(loading)]=\"loading\"></bizdoc-cube-explore>\r\n <bizdoc-cube-item *ngSwitchCase=\"'item'\" [template]=\"template\" [model]=\"item\"></bizdoc-cube-item>\r\n <bizdoc-cube-filter *ngSwitchDefault [cube]=\"cube.name\" [axes]=\"axes\" [exclude]=\"exclude\" (axesChange)=\"filterChange($event)\"></bizdoc-cube-filter>\r\n </ng-container>\r\n </mat-sidenav>\r\n <mat-sidenav-content>\r\n <bizdoc-cube-view [
|
18993
|
+
args: [{ template: "<mat-toolbar class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\" *ngIf=\"view.guide\"><mat-icon>help_outline</mat-icon></button>\r\n <button mat-icon-button (click)=\"viewPane.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]=\"pmenu\" [bizdocTooltip]=\"'Patterns' | translate\" [disabled]=\"!patterns?.length\" data-help=\"pattern\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #pmenu>\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"patternChange(p)\">\r\n <span>{{p.title}}</span>\r\n </button>\r\n </mat-menu>\r\n <button mat-icon-button [matMenuTriggerFor]=\"menu\" [bizdocTooltip]=\"'Download' | translate\" data-help=\"download\"><mat-icon>save_alt</mat-icon></button>\r\n <mat-menu #menu>\r\n <button mat-menu-item (click)=\"viewPane.exportToExcel()\">{{'DownloadExcel' | translate}}</button>\r\n <ng-container *ngIf=\"mode === 'explore'\">\r\n <mat-divider></mat-divider>\r\n <button mat-menu-item (click)=\"explorePane.exportExcel()\">{{'DownloadExplore' | translate}}</button>\r\n </ng-container>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"clearFilter()\" [bizdocTooltip]=\"'Clear' | translate\" [disabled]=\"!anyFilters\"><mat-icon>clear_all</mat-icon></button>\r\n <button mat-icon-button (click)=\"toggleFilter()\" [bizdocTooltip]=\"'Filter' | translate\" [disabled]=\"!anyAxes\" data-help=\"filter\"><mat-icon>filter_list</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-sidenav-container class=\"page-container\" autosize>\r\n <mat-sidenav mode=\"over\" position=\"end\" [opened]=\"false\">\r\n <ng-container [ngSwitch]=\"mode\">\r\n <bizdoc-cube-explore *ngSwitchCase=\"'explore'\" [cube]=\"cube.name\" [index]=\"index\" [scope]=\"scope\"\r\n (explore)=\"exploreItem($event)\" #explorePane [(loading)]=\"loading\"></bizdoc-cube-explore>\r\n <bizdoc-cube-item *ngSwitchCase=\"'item'\" [template]=\"template\" [model]=\"item\"></bizdoc-cube-item>\r\n <bizdoc-cube-filter *ngSwitchDefault [cube]=\"cube.name\" [axes]=\"axes\" [exclude]=\"exclude\" (axesChange)=\"filterChange($event)\"></bizdoc-cube-filter>\r\n </ng-container>\r\n </mat-sidenav>\r\n <mat-sidenav-content>\r\n <bizdoc-cube-view [filters]=\"axes\" #viewPane\r\n (explore)=\"explore($event)\"\r\n [cube]=\"cube\"\r\n [view]=\"view\"\r\n [(loading)]=\"loading\"></bizdoc-cube-view>\r\n </mat-sidenav-content>\r\n</mat-sidenav-container>\r\n", styles: [":host ::ng-deep .mat-sidenav-container .mat-sidenav-content{overflow:hidden}:host ::ng-deep .e-pivot-context-menu{display:none}\n"] }]
|
18942
18994
|
}], ctorParameters: function () { return [{ type: SessionService }, { type: RouterImpl }, { type: CubeService }, { type: GuideService }, { type: PromptService }, { type: WindowTitleService }, { type: i1$7.ActivatedRoute }]; }, propDecorators: { viewPane: [{
|
18943
18995
|
type: ViewChild,
|
18944
18996
|
args: [CubeViewComponent, { static: true }]
|
@@ -19056,7 +19108,7 @@ class CubeMatrixMobileComponent extends CubeMatrixBase {
|
|
19056
19108
|
this._route.params.subscribe(p => {
|
19057
19109
|
this.cube = p['id'];
|
19058
19110
|
this.xAxis = p['xAxis'];
|
19059
|
-
this.
|
19111
|
+
this.series = p['series'];
|
19060
19112
|
this._title.set(this.configuration.title);
|
19061
19113
|
});
|
19062
19114
|
this._route.data.subscribe(d => {
|
@@ -19079,10 +19131,10 @@ class CubeMatrixMobileComponent extends CubeMatrixBase {
|
|
19079
19131
|
}
|
19080
19132
|
}
|
19081
19133
|
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 });
|
19082
|
-
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\" [
|
19134
|
+
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 } });
|
19083
19135
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeMatrixMobileComponent, decorators: [{
|
19084
19136
|
type: Component,
|
19085
|
-
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\" [
|
19137
|
+
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"] }]
|
19086
19138
|
}], ctorParameters: function () { return [{ type: WindowTitleService }, { type: i1$7.ActivatedRoute }, { type: i1$7.Router }, { type: CubeService }, { type: DatasourceService }, { type: SessionService }]; } });
|
19087
19139
|
|
19088
19140
|
class DocumentInfoPageComponent {
|
@@ -19103,37 +19155,34 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
|
|
19103
19155
|
}], ctorParameters: function () { return [{ type: i1$7.ActivatedRoute }, { type: WindowTitleService }]; } });
|
19104
19156
|
|
19105
19157
|
class DocumentViewMobileComponent {
|
19106
|
-
constructor(
|
19107
|
-
|
19108
|
-
this._route = _route;
|
19109
|
-
this._title = _title;
|
19110
|
-
_route.data.subscribe(d => {
|
19158
|
+
constructor(route, title) {
|
19159
|
+
route.data.subscribe(d => {
|
19111
19160
|
this.model = d['item'];
|
19112
|
-
|
19161
|
+
title.set(`#${this.model.number}`);
|
19113
19162
|
});
|
19114
19163
|
}
|
19115
19164
|
}
|
19116
|
-
DocumentViewMobileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: DocumentViewMobileComponent, deps: [{ token:
|
19165
|
+
DocumentViewMobileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: DocumentViewMobileComponent, deps: [{ token: i1$7.ActivatedRoute }, { token: WindowTitleService }], target: i0.ɵɵFactoryTarget.Component });
|
19117
19166
|
DocumentViewMobileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: DocumentViewMobileComponent, selector: "ng-component", ngImport: i0, template: '<bizdoc-document-views [model]=model></bizdoc-document-views>', isInline: true, components: [{ type: DocumentViewsComponent, selector: "bizdoc-document-views", inputs: ["model"] }] });
|
19118
19167
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: DocumentViewMobileComponent, decorators: [{
|
19119
19168
|
type: Component,
|
19120
19169
|
args: [{ template: '<bizdoc-document-views [model]=model></bizdoc-document-views>' }]
|
19121
|
-
}], ctorParameters: function () { return [{ type:
|
19170
|
+
}], ctorParameters: function () { return [{ type: i1$7.ActivatedRoute }, { type: WindowTitleService }]; } });
|
19122
19171
|
|
19123
19172
|
const ROUTES = [
|
19124
19173
|
{
|
19125
19174
|
path: 'mailbox',
|
19126
19175
|
children: [
|
19127
19176
|
{
|
19128
|
-
path: 'i/:id',
|
19177
|
+
path: 'i/:id/views',
|
19178
|
+
resolve: { item: RecipientResolveService },
|
19179
|
+
component: DocumentViewMobileComponent
|
19180
|
+
},
|
19181
|
+
{
|
19182
|
+
path: 'i/:id',
|
19183
|
+
component: ComposeComponent,
|
19129
19184
|
resolve: { item: RecipientResolveService },
|
19130
19185
|
canDeactivate: [CanDeactivateCompose],
|
19131
|
-
children: [
|
19132
|
-
{
|
19133
|
-
path: 'views',
|
19134
|
-
component: DocumentViewMobileComponent
|
19135
|
-
}
|
19136
|
-
]
|
19137
19186
|
},
|
19138
19187
|
{
|
19139
19188
|
path: 'd/:id', component: DocumentInfoPageComponent,
|
@@ -19155,7 +19204,7 @@ const ROUTES = [
|
|
19155
19204
|
component: CubeMobileViewComponent
|
19156
19205
|
},
|
19157
19206
|
{
|
19158
|
-
path: 'i/:xAxis/:
|
19207
|
+
path: 'i/:xAxis/:series',
|
19159
19208
|
component: CubeMatrixMobileComponent,
|
19160
19209
|
}]
|
19161
19210
|
}, {
|
@@ -19651,7 +19700,7 @@ class CubeMatrixPageComponent extends CubeMatrixBase {
|
|
19651
19700
|
throw 'no data options';
|
19652
19701
|
const { axes: base, options: { indices, xAxis, serie, filters, cube, sum } } = data;
|
19653
19702
|
this.cube = cube;
|
19654
|
-
this.
|
19703
|
+
this.series = serie;
|
19655
19704
|
this.xAxis = xAxis;
|
19656
19705
|
this.sum = sum;
|
19657
19706
|
this.indices = indices;
|
@@ -19668,10 +19717,10 @@ class CubeMatrixPageComponent extends CubeMatrixBase {
|
|
19668
19717
|
}
|
19669
19718
|
}
|
19670
19719
|
CubeMatrixPageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeMatrixPageComponent, deps: [{ token: PopupRef }, { token: POPUP_DATA }, { token: CubeService }, { token: DatasourceService }, { token: SessionService }, { token: PromptService }], target: i0.ɵɵFactoryTarget.Component });
|
19671
|
-
CubeMatrixPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeMatrixPageComponent, 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\" [
|
19720
|
+
CubeMatrixPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeMatrixPageComponent, 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 } });
|
19672
19721
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeMatrixPageComponent, decorators: [{
|
19673
19722
|
type: Component,
|
19674
|
-
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\" [
|
19723
|
+
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"] }]
|
19675
19724
|
}], ctorParameters: function () {
|
19676
19725
|
return [{ type: PopupRef, decorators: [{
|
19677
19726
|
type: Inject,
|
@@ -20113,7 +20162,7 @@ class CubeChartAnalysisWidget extends CubeAnalysisBase {
|
|
20113
20162
|
this._elementRef = _elementRef;
|
20114
20163
|
this._translate = _translate;
|
20115
20164
|
this.type = this._options.chartType || 'Column';
|
20116
|
-
this.indexType = this._options.
|
20165
|
+
this.indexType = this._options.indicesChartType || 'Line';
|
20117
20166
|
this.marker = {
|
20118
20167
|
visible: true,
|
20119
20168
|
width: 10,
|
@@ -23809,11 +23858,11 @@ let CubeDocumentMatrixComponent = class CubeDocumentMatrixComponent extends Cube
|
|
23809
23858
|
this.sources = {};
|
23810
23859
|
}
|
23811
23860
|
onViewBind() {
|
23812
|
-
const { xAxis,
|
23813
|
-
if (!xAxis || !
|
23861
|
+
const { xAxis, series, indices, sum, scope, filters } = this._viewRef.options;
|
23862
|
+
if (!xAxis || !series)
|
23814
23863
|
throw 'xAxis and serie required';
|
23815
23864
|
this.xAxis = isArray(xAxis) ? xAxis[0] : xAxis;
|
23816
|
-
this.serie = isArray(
|
23865
|
+
this.serie = isArray(series) ? series[0] : series;
|
23817
23866
|
this.indices = indices;
|
23818
23867
|
this.sum = sum;
|
23819
23868
|
this.scope = scope;
|
@@ -23860,7 +23909,7 @@ let CubeDocumentMatrixComponent = class CubeDocumentMatrixComponent extends Cube
|
|
23860
23909
|
}
|
23861
23910
|
};
|
23862
23911
|
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 });
|
23863
|
-
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\" [
|
23912
|
+
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 } });
|
23864
23913
|
CubeDocumentMatrixComponent = __decorate([
|
23865
23914
|
BizDoc({
|
23866
23915
|
selector: 'bizdoc-cube-matrix'
|
@@ -23868,7 +23917,7 @@ CubeDocumentMatrixComponent = __decorate([
|
|
23868
23917
|
], CubeDocumentMatrixComponent);
|
23869
23918
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeDocumentMatrixComponent, decorators: [{
|
23870
23919
|
type: Component,
|
23871
|
-
args: [{ host: { class: 'view' }, 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\" [
|
23920
|
+
args: [{ host: { class: 'view' }, 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"] }]
|
23872
23921
|
}], ctorParameters: function () { return [{ type: DocumentViewRef }, { type: RouterImpl }, { type: CubeService }, { type: DatasourceService }, { type: SessionService }]; }, propDecorators: { table: [{
|
23873
23922
|
type: ViewChild,
|
23874
23923
|
args: [CubeMatrixComponent, { static: true }]
|
@@ -23936,7 +23985,7 @@ let CubeDocumentViewComponent = class CubeDocumentViewComponent extends CubeBase
|
|
23936
23985
|
}
|
23937
23986
|
};
|
23938
23987
|
CubeDocumentViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeDocumentViewComponent, deps: [{ token: SessionService }, { token: DocumentViewRef }, { token: CubeService }, { token: Popup }, { token: RouterImpl }, { token: GuideService }], target: i0.ɵɵFactoryTarget.Component });
|
23939
|
-
CubeDocumentViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeDocumentViewComponent, selector: "ng-component", host: { classAttribute: "view" }, viewQueries: [{ propertyName: "viewPane", first: true, predicate: CubeViewComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"hasdata; else none\">\r\n <div class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\" *ngIf=\"view.guide\"><mat-icon>help_outline</mat-icon></button>\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 <button mat-icon-button [matMenuTriggerFor]=\"pmenu\" [bizdocTooltip]=\"'Patterns' | translate\" [disabled]=\"!patterns?.length\" data-help=\"pattern\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #pmenu>\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"patternChange(p)\">\r\n {{p.title}}\r\n </button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"clearFilter()\" [bizdocTooltip]=\"'Clear' | translate\" [disabled]=\"!anyFilters\"><mat-icon>clear_all</mat-icon></button>\r\n <button mat-icon-button (click)=\"filterToggle($event)\" [bizdocTooltip]=\"'Filter' | translate\" [disabled]=\"!anyAxes\" data-help=\"filter\"><mat-icon>filter_list</mat-icon></button>\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-view [
|
23988
|
+
CubeDocumentViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeDocumentViewComponent, selector: "ng-component", host: { classAttribute: "view" }, viewQueries: [{ propertyName: "viewPane", first: true, predicate: CubeViewComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"hasdata; else none\">\r\n <div class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\" *ngIf=\"view.guide\"><mat-icon>help_outline</mat-icon></button>\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 <button mat-icon-button [matMenuTriggerFor]=\"pmenu\" [bizdocTooltip]=\"'Patterns' | translate\" [disabled]=\"!patterns?.length\" data-help=\"pattern\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #pmenu>\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"patternChange(p)\">\r\n {{p.title}}\r\n </button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"clearFilter()\" [bizdocTooltip]=\"'Clear' | translate\" [disabled]=\"!anyFilters\"><mat-icon>clear_all</mat-icon></button>\r\n <button mat-icon-button (click)=\"filterToggle($event)\" [bizdocTooltip]=\"'Filter' | translate\" [disabled]=\"!anyAxes\" data-help=\"filter\"><mat-icon>filter_list</mat-icon></button>\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-view [filters]=\"axes\" #vp\r\n (explore)=\"explore($event)\"\r\n [cube]=\"cube\"\r\n [view]=\"view\"\r\n (loading)=\"loading = $event\"></bizdoc-cube-view>\r\n</ng-container>\r\n<ng-template #none>\r\n <bizdoc-none icon=\"equalizer\" subtitle=\"NothingHere\"></bizdoc-none>\r\n</ng-template>\r\n", styles: [":host{display:flex;flex-direction:column;height:100%;min-height:220px}:host ::ng-deep .cube-view{flex:1 auto}\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: CubeViewComponent, selector: "bizdoc-cube-view", inputs: ["filters", "cube", "view", "loading"], outputs: ["explore", "loadingChange"] }, { type: NoneComponent, selector: "bizdoc-none", inputs: ["title", "subtitle", "icon"] }], directives: [{ type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "translate": TranslatePipe } });
|
23940
23989
|
CubeDocumentViewComponent = __decorate([
|
23941
23990
|
BizDoc({
|
23942
23991
|
selector: 'bizdoc-cube-view'
|
@@ -23944,7 +23993,7 @@ CubeDocumentViewComponent = __decorate([
|
|
23944
23993
|
], CubeDocumentViewComponent);
|
23945
23994
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeDocumentViewComponent, decorators: [{
|
23946
23995
|
type: Component,
|
23947
|
-
args: [{ host: { class: 'view' }, template: "<ng-container *ngIf=\"hasdata; else none\">\r\n <div class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\" *ngIf=\"view.guide\"><mat-icon>help_outline</mat-icon></button>\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 <button mat-icon-button [matMenuTriggerFor]=\"pmenu\" [bizdocTooltip]=\"'Patterns' | translate\" [disabled]=\"!patterns?.length\" data-help=\"pattern\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #pmenu>\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"patternChange(p)\">\r\n {{p.title}}\r\n </button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"clearFilter()\" [bizdocTooltip]=\"'Clear' | translate\" [disabled]=\"!anyFilters\"><mat-icon>clear_all</mat-icon></button>\r\n <button mat-icon-button (click)=\"filterToggle($event)\" [bizdocTooltip]=\"'Filter' | translate\" [disabled]=\"!anyAxes\" data-help=\"filter\"><mat-icon>filter_list</mat-icon></button>\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-view [
|
23996
|
+
args: [{ host: { class: 'view' }, template: "<ng-container *ngIf=\"hasdata; else none\">\r\n <div class=\"nav-toolbar\">\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\" *ngIf=\"view.guide\"><mat-icon>help_outline</mat-icon></button>\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 <button mat-icon-button [matMenuTriggerFor]=\"pmenu\" [bizdocTooltip]=\"'Patterns' | translate\" [disabled]=\"!patterns?.length\" data-help=\"pattern\"><mat-icon [class.filled]=\"pattern\">filter_alt</mat-icon></button>\r\n <mat-menu #pmenu>\r\n <button mat-menu-item *ngFor=\"let p of patterns\" (click)=\"patternChange(p)\">\r\n {{p.title}}\r\n </button>\r\n </mat-menu>\r\n <button mat-icon-button (click)=\"clearFilter()\" [bizdocTooltip]=\"'Clear' | translate\" [disabled]=\"!anyFilters\"><mat-icon>clear_all</mat-icon></button>\r\n <button mat-icon-button (click)=\"filterToggle($event)\" [bizdocTooltip]=\"'Filter' | translate\" [disabled]=\"!anyAxes\" data-help=\"filter\"><mat-icon>filter_list</mat-icon></button>\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-view [filters]=\"axes\" #vp\r\n (explore)=\"explore($event)\"\r\n [cube]=\"cube\"\r\n [view]=\"view\"\r\n (loading)=\"loading = $event\"></bizdoc-cube-view>\r\n</ng-container>\r\n<ng-template #none>\r\n <bizdoc-none icon=\"equalizer\" subtitle=\"NothingHere\"></bizdoc-none>\r\n</ng-template>\r\n", styles: [":host{display:flex;flex-direction:column;height:100%;min-height:220px}:host ::ng-deep .cube-view{flex:1 auto}\n"] }]
|
23948
23997
|
}], ctorParameters: function () { return [{ type: SessionService }, { type: DocumentViewRef }, { type: CubeService }, { type: Popup }, { type: RouterImpl }, { type: GuideService }]; }, propDecorators: { viewPane: [{
|
23949
23998
|
type: ViewChild,
|
23950
23999
|
args: [CubeViewComponent]
|
@@ -24276,7 +24325,7 @@ let CubePivotViewComponent = class CubePivotViewComponent extends CubeBase {
|
|
24276
24325
|
}
|
24277
24326
|
};
|
24278
24327
|
CubePivotViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubePivotViewComponent, deps: [{ token: SessionService }, { token: DocumentViewRef }, { token: CubeService }, { token: RouterImpl }], target: i0.ɵɵFactoryTarget.Component });
|
24279
|
-
CubePivotViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubePivotViewComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-cube-pivot [xAxis]=\"xAxis\"
|
24328
|
+
CubePivotViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubePivotViewComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-cube-pivot [xAxis]=\"xAxis\"\r\n [series]=\"series\"\r\n [cube]=\"cube.name\" *ngIf=\"hasdata\"\r\n [filters]=\"axes\"\r\n [chartType]=\"chartType\"\r\n [width]=\"width\"\r\n (explore)=\"explore($event)\"></bizdoc-cube-pivot>\r\n", components: [{ type: CubePivotComponent, selector: "bizdoc-cube-pivot", inputs: ["width", "height", "cube", "xAxis", "yAxis", "series", "indices", "filters", "chartType", "indicesChartType", "currencyCode", "loading"], outputs: ["explore", "loadingChange"] }], directives: [{ type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
24280
24329
|
CubePivotViewComponent = __decorate([
|
24281
24330
|
BizDoc({
|
24282
24331
|
selector: 'bizdoc-pivot-view'
|
@@ -24284,7 +24333,7 @@ CubePivotViewComponent = __decorate([
|
|
24284
24333
|
], CubePivotViewComponent);
|
24285
24334
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubePivotViewComponent, decorators: [{
|
24286
24335
|
type: Component,
|
24287
|
-
args: [{ template: "<bizdoc-cube-pivot [xAxis]=\"xAxis\"
|
24336
|
+
args: [{ template: "<bizdoc-cube-pivot [xAxis]=\"xAxis\"\r\n [series]=\"series\"\r\n [cube]=\"cube.name\" *ngIf=\"hasdata\"\r\n [filters]=\"axes\"\r\n [chartType]=\"chartType\"\r\n [width]=\"width\"\r\n (explore)=\"explore($event)\"></bizdoc-cube-pivot>\r\n" }]
|
24288
24337
|
}], ctorParameters: function () { return [{ type: SessionService }, { type: DocumentViewRef }, { type: CubeService }, { type: RouterImpl }]; } });
|
24289
24338
|
|
24290
24339
|
class CubeSumComponent {
|
@@ -24310,9 +24359,9 @@ class CubeSumComponent {
|
|
24310
24359
|
this.indices = this._cube.indices.map(i => i.name);
|
24311
24360
|
else if (!isArray(this.indices))
|
24312
24361
|
this.indices = [this.indices];
|
24313
|
-
const originalValue = this.
|
24362
|
+
const originalValue = this.filters[this.xAxis];
|
24314
24363
|
const axis = isArray(originalValue) ? originalValue[0] : originalValue;
|
24315
|
-
if (this.periodPolicy === '
|
24364
|
+
if (this.periodPolicy === 'Strict')
|
24316
24365
|
this._strict(axis);
|
24317
24366
|
else
|
24318
24367
|
this._fish(axis);
|
@@ -24320,7 +24369,7 @@ class CubeSumComponent {
|
|
24320
24369
|
_strict(axis) {
|
24321
24370
|
return __awaiter(this, void 0, void 0, function* () {
|
24322
24371
|
const keys = yield this._ds.keys(this.primaryAxis.dataType).toPromise(), keyIndex = keys.indexOf(axis);
|
24323
|
-
const filters = Object.assign({}, this.
|
24372
|
+
const filters = Object.assign({}, this.filters);
|
24324
24373
|
const axes = [axis];
|
24325
24374
|
if (keyIndex > 0)
|
24326
24375
|
axes.push(keys[keyIndex - 1]);
|
@@ -24367,7 +24416,7 @@ class CubeSumComponent {
|
|
24367
24416
|
}
|
24368
24417
|
}
|
24369
24418
|
const parallel = (direction) => __awaiter(this, void 0, void 0, function* () {
|
24370
|
-
const parentKey = this.
|
24419
|
+
const parentKey = this.filters[this.parentAxis];
|
24371
24420
|
const parentKeys = yield this._ds.keys(this._parentAxis.dataType).toPromise();
|
24372
24421
|
const index = parentKeys.indexOf((isArray(parentKey) ? parentKey[0] : parentKey)), scope = parentKeys[index + direction];
|
24373
24422
|
if (!scope)
|
@@ -24403,7 +24452,7 @@ class CubeSumComponent {
|
|
24403
24452
|
return __awaiter(this, void 0, void 0, function* () {
|
24404
24453
|
this.loading = true;
|
24405
24454
|
try {
|
24406
|
-
const filters = Object.assign({}, this.
|
24455
|
+
const filters = Object.assign({}, this.filters);
|
24407
24456
|
delete filters[this.xAxis];
|
24408
24457
|
const results = this._results = yield this._service.series(this._cube.name, this.xAxis, {
|
24409
24458
|
indices: this.indices, filters,
|
@@ -24478,9 +24527,9 @@ class CubeSumComponent {
|
|
24478
24527
|
this.current.chain = this.prev;
|
24479
24528
|
this.help = yield this.getAggregateLabel();
|
24480
24529
|
if (!this.prev)
|
24481
|
-
this.prev = yield this._parallel(-1, this.
|
24530
|
+
this.prev = yield this._parallel(-1, this.filters[this.parentAxis]);
|
24482
24531
|
if (!this.next)
|
24483
|
-
this.next = yield this._parallel(1, this.
|
24532
|
+
this.next = yield this._parallel(1, this.filters[this.parentAxis]);
|
24484
24533
|
this.next && this._calculate(this.next);
|
24485
24534
|
this.prev && this._calculate(this.prev);
|
24486
24535
|
}
|
@@ -24494,7 +24543,7 @@ class CubeSumComponent {
|
|
24494
24543
|
}
|
24495
24544
|
getAggregateLabel() {
|
24496
24545
|
return __awaiter(this, void 0, void 0, function* () {
|
24497
|
-
const axes = Object.assign({}, this.
|
24546
|
+
const axes = Object.assign({}, this.filters);
|
24498
24547
|
delete axes[this.xAxis];
|
24499
24548
|
return yield this._service.nameOf(axes, this._cube.name).
|
24500
24549
|
toPromise();
|
@@ -24600,7 +24649,7 @@ class CubeSumComponent {
|
|
24600
24649
|
const keyIndex = parentKeys.indexOf((isArray(parentKey) ? parentKey[0] : parentKey)), scope = parentKeys[keyIndex + direction];
|
24601
24650
|
if (!scope)
|
24602
24651
|
return;
|
24603
|
-
const filters = Object.assign({}, this.
|
24652
|
+
const filters = Object.assign({}, this.filters);
|
24604
24653
|
filters[this.parentAxis] = scope;
|
24605
24654
|
delete filters[this.xAxis];
|
24606
24655
|
const results = this._scoperesults = yield this._service.series(this._cube.name, this.xAxis, {
|
@@ -24653,7 +24702,7 @@ class CubeSumComponent {
|
|
24653
24702
|
if ((!index && level.value === 0) ||
|
24654
24703
|
(index && level.indices.find(i => i.name === index).value === 0))
|
24655
24704
|
return;
|
24656
|
-
const axes = Object.assign({}, this.
|
24705
|
+
const axes = Object.assign({}, this.filters);
|
24657
24706
|
axes[this.xAxis] = level.axis;
|
24658
24707
|
if (level.scope)
|
24659
24708
|
axes[this.parentAxis] = level.scope;
|
@@ -24661,7 +24710,7 @@ class CubeSumComponent {
|
|
24661
24710
|
}
|
24662
24711
|
}
|
24663
24712
|
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 });
|
24664
|
-
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",
|
24713
|
+
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{margin:0}.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', [
|
24665
24714
|
transition('*<=>*', [style({
|
24666
24715
|
flexBasis: '{{startWidth}}%'
|
24667
24716
|
}), animate('500ms ease')], { params: { startWidth: 100 } }),
|
@@ -24679,7 +24728,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
|
|
24679
24728
|
type: Input
|
24680
24729
|
}], parentAxis: [{
|
24681
24730
|
type: Input
|
24682
|
-
}],
|
24731
|
+
}], filters: [{
|
24683
24732
|
type: Input
|
24684
24733
|
}], cube: [{
|
24685
24734
|
type: Input
|
@@ -24734,7 +24783,7 @@ let CubeDocumentSumComponent = class CubeDocumentSumComponent extends CubeBase {
|
|
24734
24783
|
}
|
24735
24784
|
};
|
24736
24785
|
CubeDocumentSumComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeDocumentSumComponent, deps: [{ token: DocumentViewRef }, { token: RouterImpl }, { token: CubeService }, { token: SessionService }], target: i0.ɵɵFactoryTarget.Component });
|
24737
|
-
CubeDocumentSumComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeDocumentSumComponent, selector: "ng-component", host: { classAttribute: "view" }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"hasdata\">\r\n <div class=\"nav-toolbar\" *ngIf=\"alternate || selectedAxis\">\r\n <span class=\"divider\"></span>\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 <ng-container *ngIf=\"selectedAxis\">\r\n <button mat-button [matMenuTriggerFor]=\"amenu\">{{selectedAxis| typeValue: primaryAxis.dataType}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #amenu>\r\n <button mat-menu-item *ngFor=\"let a of originalAxes[primaryAxis.name]\"\r\n (click)=\"switchAxis(a)\">\r\n {{a | typeValue: primaryAxis.dataType}}\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-sum [xAxis]=\"primaryAxis.name\" [
|
24786
|
+
CubeDocumentSumComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeDocumentSumComponent, selector: "ng-component", host: { classAttribute: "view" }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"hasdata\">\r\n <div class=\"nav-toolbar\" *ngIf=\"alternate || selectedAxis\">\r\n <span class=\"divider\"></span>\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 <ng-container *ngIf=\"selectedAxis\">\r\n <button mat-button [matMenuTriggerFor]=\"amenu\">{{selectedAxis| typeValue: primaryAxis.dataType}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #amenu>\r\n <button mat-menu-item *ngFor=\"let a of originalAxes[primaryAxis.name]\"\r\n (click)=\"switchAxis(a)\">\r\n {{a | typeValue: primaryAxis.dataType}}\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-sum [xAxis]=\"primaryAxis.name\" [filters]=\"axes\" [parentAxis]=\"parentAxis\"\r\n [scope]=\"scope\" [periodPolicy]=\"periodPolicy\"\r\n [indices]=\"indices\" [cube]=\"cube.name\"\r\n (explore)=\"explore($event)\"></bizdoc-cube-sum>\r\n</ng-container>\r\n", styles: [":host{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: CubeSumComponent, selector: "bizdoc-cube-sum", inputs: ["xAxis", "periodPolicy", "parentAxis", "filters", "cube", "indices", "scope"], outputs: ["explore"] }], 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"] }], pipes: { "typeValue": TypeValuePipe } });
|
24738
24787
|
CubeDocumentSumComponent = __decorate([
|
24739
24788
|
BizDoc({
|
24740
24789
|
selector: 'bizdoc-cube-sum'
|
@@ -24742,7 +24791,7 @@ CubeDocumentSumComponent = __decorate([
|
|
24742
24791
|
], CubeDocumentSumComponent);
|
24743
24792
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeDocumentSumComponent, decorators: [{
|
24744
24793
|
type: Component,
|
24745
|
-
args: [{ host: { class: 'view' }, template: "<ng-container *ngIf=\"hasdata\">\r\n <div class=\"nav-toolbar\" *ngIf=\"alternate || selectedAxis\">\r\n <span class=\"divider\"></span>\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 <ng-container *ngIf=\"selectedAxis\">\r\n <button mat-button [matMenuTriggerFor]=\"amenu\">{{selectedAxis| typeValue: primaryAxis.dataType}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #amenu>\r\n <button mat-menu-item *ngFor=\"let a of originalAxes[primaryAxis.name]\"\r\n (click)=\"switchAxis(a)\">\r\n {{a | typeValue: primaryAxis.dataType}}\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-sum [xAxis]=\"primaryAxis.name\" [
|
24794
|
+
args: [{ host: { class: 'view' }, template: "<ng-container *ngIf=\"hasdata\">\r\n <div class=\"nav-toolbar\" *ngIf=\"alternate || selectedAxis\">\r\n <span class=\"divider\"></span>\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 <ng-container *ngIf=\"selectedAxis\">\r\n <button mat-button [matMenuTriggerFor]=\"amenu\">{{selectedAxis| typeValue: primaryAxis.dataType}} <mat-icon>arrow_drop_down</mat-icon></button>\r\n <mat-menu #amenu>\r\n <button mat-menu-item *ngFor=\"let a of originalAxes[primaryAxis.name]\"\r\n (click)=\"switchAxis(a)\">\r\n {{a | typeValue: primaryAxis.dataType}}\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-sum [xAxis]=\"primaryAxis.name\" [filters]=\"axes\" [parentAxis]=\"parentAxis\"\r\n [scope]=\"scope\" [periodPolicy]=\"periodPolicy\"\r\n [indices]=\"indices\" [cube]=\"cube.name\"\r\n (explore)=\"explore($event)\"></bizdoc-cube-sum>\r\n</ng-container>\r\n", styles: [":host{padding:0 8px}\n"] }]
|
24746
24795
|
}], ctorParameters: function () { return [{ type: DocumentViewRef }, { type: RouterImpl }, { type: CubeService }, { type: SessionService }]; } });
|
24747
24796
|
|
24748
24797
|
let CubeChartViewComponent = class CubeChartViewComponent extends CubeBase {
|
@@ -24752,12 +24801,12 @@ let CubeChartViewComponent = class CubeChartViewComponent extends CubeBase {
|
|
24752
24801
|
viewRef.resize.subscribe(d => this.width = d.width);
|
24753
24802
|
}
|
24754
24803
|
onViewBind() {
|
24755
|
-
const { scope, xAxis, series, indices, chartType,
|
24804
|
+
const { scope, xAxis, series, indices, chartType, indicesChartType } = this._viewRef.options;
|
24756
24805
|
if (!xAxis)
|
24757
24806
|
throw 'chart view reqires xAxis';
|
24758
24807
|
this.xAxis = xAxis,
|
24759
24808
|
this.chartType = chartType,
|
24760
|
-
this.
|
24809
|
+
this.indicesChartType = indicesChartType,
|
24761
24810
|
this.indices = indices,
|
24762
24811
|
this.series = series,
|
24763
24812
|
this.scope = scope;
|
@@ -24794,7 +24843,7 @@ let CubeChartViewComponent = class CubeChartViewComponent extends CubeBase {
|
|
24794
24843
|
}
|
24795
24844
|
};
|
24796
24845
|
CubeChartViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeChartViewComponent, deps: [{ token: SessionService }, { token: DocumentViewRef }, { token: CubeService }, { token: RouterImpl }], target: i0.ɵɵFactoryTarget.Component });
|
24797
|
-
CubeChartViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeChartViewComponent, selector: "ng-component", host: { classAttribute: "view" }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"hasdata; \">\r\n <!--else none-->\r\n <ng-container [ngSwitch]=\"isAccum\">\r\n <bizdoc-cube-accum *ngSwitchCase=\"true\" [chartType]=\"chartType\" [width]=\"width\" [scope]=\"scope\"\r\n (explore)=\"explore($event)\"\r\n [cube]=\"cube.name\"\r\n [filters]=\"filters\"\r\n [xAxis]=\"xAxis\"></bizdoc-cube-accum>\r\n <bizdoc-cube-chart *ngSwitchDefault
|
24846
|
+
CubeChartViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeChartViewComponent, selector: "ng-component", host: { classAttribute: "view" }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"hasdata; \">\r\n <!--else none-->\r\n <ng-container [ngSwitch]=\"isAccum\">\r\n <bizdoc-cube-accum *ngSwitchCase=\"true\" [chartType]=\"chartType\" [width]=\"width\" [scope]=\"scope\"\r\n (explore)=\"explore($event)\"\r\n [cube]=\"cube.name\"\r\n [filters]=\"filters\"\r\n [xAxis]=\"xAxis\"></bizdoc-cube-accum>\r\n <bizdoc-cube-chart *ngSwitchDefault\r\n [cube]=\"cube.name\"\r\n [xAxis]=\"xAxis\"\r\n [series]=\"series\"\r\n [indices]=\"indices\"\r\n [filters]=\"filters\"\r\n [chartType]=\"chartType\"\r\n [indicesChartType]=\"indicesChartType\"\r\n [width]=\"width\"\r\n [scope]=\"scope\"\r\n (explore)=\"explore($event)\"></bizdoc-cube-chart>\r\n </ng-container>\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", components: [{ type: CubeAccumulationChartComponent, selector: "bizdoc-cube-accum", inputs: ["height", "width", "cube", "xAxis", "indices", "filters", "chartType", "scope", "loading"], outputs: ["loadingChange", "explore"] }, { type: CubeChartComponent, selector: "bizdoc-cube-chart", inputs: ["width", "height", "cube", "xAxis", "series", "indices", "filters", "yAxis", "chartType", "indicesChartType", "scope", "currencyCode", "loading"], outputs: ["explore", "loadingChange"] }, { type: NoneComponent, selector: "bizdoc-none", inputs: ["title", "subtitle", "icon"] }], directives: [{ type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i10$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i10$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i10$1.NgSwitchDefault, selector: "[ngSwitchDefault]" }] });
|
24798
24847
|
CubeChartViewComponent = __decorate([
|
24799
24848
|
BizDoc({
|
24800
24849
|
selector: 'bizdoc-chart-view'
|
@@ -24802,7 +24851,7 @@ CubeChartViewComponent = __decorate([
|
|
24802
24851
|
], CubeChartViewComponent);
|
24803
24852
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeChartViewComponent, decorators: [{
|
24804
24853
|
type: Component,
|
24805
|
-
args: [{ host: { class: 'view' }, template: "<ng-container *ngIf=\"hasdata; \">\r\n <!--else none-->\r\n <ng-container [ngSwitch]=\"isAccum\">\r\n <bizdoc-cube-accum *ngSwitchCase=\"true\" [chartType]=\"chartType\" [width]=\"width\" [scope]=\"scope\"\r\n (explore)=\"explore($event)\"\r\n [cube]=\"cube.name\"\r\n [filters]=\"filters\"\r\n [xAxis]=\"xAxis\"></bizdoc-cube-accum>\r\n <bizdoc-cube-chart *ngSwitchDefault
|
24854
|
+
args: [{ host: { class: 'view' }, template: "<ng-container *ngIf=\"hasdata; \">\r\n <!--else none-->\r\n <ng-container [ngSwitch]=\"isAccum\">\r\n <bizdoc-cube-accum *ngSwitchCase=\"true\" [chartType]=\"chartType\" [width]=\"width\" [scope]=\"scope\"\r\n (explore)=\"explore($event)\"\r\n [cube]=\"cube.name\"\r\n [filters]=\"filters\"\r\n [xAxis]=\"xAxis\"></bizdoc-cube-accum>\r\n <bizdoc-cube-chart *ngSwitchDefault\r\n [cube]=\"cube.name\"\r\n [xAxis]=\"xAxis\"\r\n [series]=\"series\"\r\n [indices]=\"indices\"\r\n [filters]=\"filters\"\r\n [chartType]=\"chartType\"\r\n [indicesChartType]=\"indicesChartType\"\r\n [width]=\"width\"\r\n [scope]=\"scope\"\r\n (explore)=\"explore($event)\"></bizdoc-cube-chart>\r\n </ng-container>\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" }]
|
24806
24855
|
}], ctorParameters: function () { return [{ type: SessionService }, { type: DocumentViewRef }, { type: CubeService }, { type: RouterImpl }]; } });
|
24807
24856
|
|
24808
24857
|
let CubeExploreViewComponent = class CubeExploreViewComponent extends CubeBase {
|
@@ -24924,10 +24973,10 @@ class CubeParallelComponent {
|
|
24924
24973
|
this._loading.pipe(debounceTime$1(200)).subscribe(ok => this.loading = ok);
|
24925
24974
|
}
|
24926
24975
|
ngOnChanges(changes) {
|
24927
|
-
delete this.
|
24976
|
+
delete this.filters[this.xAxis];
|
24928
24977
|
this._cube = this._session.profile.cubes.find(c => c.name === this.cube) || this._session.profile.cubes[0];
|
24929
24978
|
this.format = (this._cube.currencyCode ? 'c' : 'n') + this._service.fractionDigits;
|
24930
|
-
if (changes['
|
24979
|
+
if (changes['filters'])
|
24931
24980
|
this._initialize();
|
24932
24981
|
else if (changes['size'] && this.items.length)
|
24933
24982
|
this.width = Math.round(this.size / this.items.length) + 'px';
|
@@ -24943,7 +24992,7 @@ class CubeParallelComponent {
|
|
24943
24992
|
}
|
24944
24993
|
_initialize() {
|
24945
24994
|
this._loading.next(true);
|
24946
|
-
const filters = Object.assign({}, this.
|
24995
|
+
const filters = Object.assign({}, this.filters);
|
24947
24996
|
this._service.series(this._cube.name, this.xAxis, {
|
24948
24997
|
series: this.series,
|
24949
24998
|
filters,
|
@@ -24965,7 +25014,7 @@ class CubeParallelComponent {
|
|
24965
25014
|
this.items = [];
|
24966
25015
|
const colorMap = {};
|
24967
25016
|
let colorIndex = 0;
|
24968
|
-
let originalXAxis = this.
|
25017
|
+
let originalXAxis = this.filters[isArray(this.xAxis) ? this.xAxis[0] : this.xAxis], originalSeries = this.filters[isArray(this.series) ? this.series[0] : this.series];
|
24969
25018
|
if (!isArray(originalXAxis))
|
24970
25019
|
originalXAxis = [originalXAxis];
|
24971
25020
|
if (!isArray(originalSeries))
|
@@ -25008,7 +25057,7 @@ class CubeParallelComponent {
|
|
25008
25057
|
axes[xAxis[i]] = x.split(AXES_CODE_DIVIDER)[i];
|
25009
25058
|
}
|
25010
25059
|
this.onExplore.emit({
|
25011
|
-
axes: Object.assign(Object.assign({}, this.
|
25060
|
+
axes: Object.assign(Object.assign({}, this.filters), axes),
|
25012
25061
|
index
|
25013
25062
|
});
|
25014
25063
|
}
|
@@ -25019,11 +25068,11 @@ class CubeParallelComponent {
|
|
25019
25068
|
}
|
25020
25069
|
}
|
25021
25070
|
CubeParallelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeParallelComponent, deps: [{ token: PromptService }, { token: CubeService }, { token: SessionService }], target: i0.ɵɵFactoryTarget.Component });
|
25022
|
-
CubeParallelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeParallelComponent, selector: "bizdoc-cube-parallel", inputs: {
|
25071
|
+
CubeParallelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeParallelComponent, selector: "bizdoc-cube-parallel", inputs: { filters: "filters", xAxis: "xAxis", series: "series", indices: "indices", cube: "cube", size: "size", chartType: "chartType", scope: "scope" }, outputs: { onExplore: "explore" }, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"items.length\" class=\"row\">\r\n <div *ngFor=\"let s of items\" class=\"element\">\r\n <ejs-sparkline [width]='width' height='100px' [type]='s.chartType' [id]=\"s.data.name\"\r\n [dataSource]=\"s.data.points\" xName=\"name\"\r\n yName=\"y\" [palette]=\"s.palette\" [format]=\"format\"\r\n valueType=\"Category\"\r\n [enableRtl]=\"enableRtl\"\r\n [border]=\"s.border\"\r\n [fill]=\"s.fill\"\r\n [axisSettings]=\"axisSettings\"\r\n [markerSettings]=\"s.markerSettings\"\r\n (pointRegionMouseClick)=\"sprklineClick(s, $event)\"\r\n [tooltipSettings]=\"s.tooltipSettings\">\r\n </ejs-sparkline>\r\n <h4 class=\"mat-h4\">{{s.data.title}}</h4>\r\n </div>\r\n</div>\r\n", styles: [":host{padding:8px}.element{display:flex;flex-direction:column;align-items:center;flex:1 1 auto}\n"], components: [{ type: i8$2.SparklineComponent, selector: "ejs-sparkline", inputs: ["axisSettings", "border", "containerArea", "dataLabelSettings", "dataSource", "enablePersistence", "enableRtl", "endPointColor", "fill", "format", "height", "highPointColor", "lineWidth", "locale", "lowPointColor", "markerSettings", "negativePointColor", "opacity", "padding", "palette", "query", "rangeBandSettings", "rangePadding", "startPointColor", "theme", "tiePointColor", "tooltipSettings", "type", "useGroupingSeparator", "valueType", "width", "xName", "yName"], outputs: ["axisRendering", "dataLabelRendering", "load", "loaded", "markerRendering", "pointRegionMouseClick", "pointRegionMouseMove", "pointRendering", "resize", "seriesRendering", "sparklineMouseClick", "sparklineMouseMove", "tooltipInitialize"] }], directives: [{ type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i10$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
25023
25072
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeParallelComponent, decorators: [{
|
25024
25073
|
type: Component,
|
25025
25074
|
args: [{ selector: 'bizdoc-cube-parallel', template: "<div *ngIf=\"items.length\" class=\"row\">\r\n <div *ngFor=\"let s of items\" class=\"element\">\r\n <ejs-sparkline [width]='width' height='100px' [type]='s.chartType' [id]=\"s.data.name\"\r\n [dataSource]=\"s.data.points\" xName=\"name\"\r\n yName=\"y\" [palette]=\"s.palette\" [format]=\"format\"\r\n valueType=\"Category\"\r\n [enableRtl]=\"enableRtl\"\r\n [border]=\"s.border\"\r\n [fill]=\"s.fill\"\r\n [axisSettings]=\"axisSettings\"\r\n [markerSettings]=\"s.markerSettings\"\r\n (pointRegionMouseClick)=\"sprklineClick(s, $event)\"\r\n [tooltipSettings]=\"s.tooltipSettings\">\r\n </ejs-sparkline>\r\n <h4 class=\"mat-h4\">{{s.data.title}}</h4>\r\n </div>\r\n</div>\r\n", styles: [":host{padding:8px}.element{display:flex;flex-direction:column;align-items:center;flex:1 1 auto}\n"] }]
|
25026
|
-
}], ctorParameters: function () { return [{ type: PromptService }, { type: CubeService }, { type: SessionService }]; }, propDecorators: {
|
25075
|
+
}], ctorParameters: function () { return [{ type: PromptService }, { type: CubeService }, { type: SessionService }]; }, propDecorators: { filters: [{
|
25027
25076
|
type: Input
|
25028
25077
|
}], xAxis: [{
|
25029
25078
|
type: Input
|
@@ -25075,7 +25124,7 @@ let CubeParallelViewComponent = class CubeParallelViewComponent extends CubeBase
|
|
25075
25124
|
}
|
25076
25125
|
};
|
25077
25126
|
CubeParallelViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeParallelViewComponent, deps: [{ token: DocumentViewRef }, { token: RouterImpl }, { token: CubeService }, { token: SessionService }], target: i0.ɵɵFactoryTarget.Component });
|
25078
|
-
CubeParallelViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeParallelViewComponent, selector: "ng-component", host: { classAttribute: "view" }, usesInheritance: true, ngImport: i0, template: "<bizdoc-cube-parallel *ngIf=hasdata
|
25127
|
+
CubeParallelViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: CubeParallelViewComponent, selector: "ng-component", host: { classAttribute: "view" }, usesInheritance: true, ngImport: i0, template: "<bizdoc-cube-parallel *ngIf=hasdata\r\n [cube]=\"cube.name\"\r\n [xAxis]=\"xAxis\"\r\n [series]=\"series\"\r\n [indices]=\"indices\"\r\n [filters]=\"axes\"\r\n [chartType]=\"chartType\"\r\n [scope]=\"scope\"\r\n [size]=\"size\"\r\n (explore)=\"explore($event)\"></bizdoc-cube-parallel>\r\n", styles: [":host{padding:8px}.element{display:flex;flex-direction:column;align-items:center;flex:1 1 auto}\n"], components: [{ type: CubeParallelComponent, selector: "bizdoc-cube-parallel", inputs: ["filters", "xAxis", "series", "indices", "cube", "size", "chartType", "scope"], outputs: ["explore"] }], directives: [{ type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
25079
25128
|
CubeParallelViewComponent = __decorate([
|
25080
25129
|
BizDoc({
|
25081
25130
|
selector: 'bizdoc-parallel-view'
|
@@ -25083,7 +25132,7 @@ CubeParallelViewComponent = __decorate([
|
|
25083
25132
|
], CubeParallelViewComponent);
|
25084
25133
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: CubeParallelViewComponent, decorators: [{
|
25085
25134
|
type: Component,
|
25086
|
-
args: [{ host: { class: 'view' }, template: "<bizdoc-cube-parallel *ngIf=hasdata
|
25135
|
+
args: [{ host: { class: 'view' }, template: "<bizdoc-cube-parallel *ngIf=hasdata\r\n [cube]=\"cube.name\"\r\n [xAxis]=\"xAxis\"\r\n [series]=\"series\"\r\n [indices]=\"indices\"\r\n [filters]=\"axes\"\r\n [chartType]=\"chartType\"\r\n [scope]=\"scope\"\r\n [size]=\"size\"\r\n (explore)=\"explore($event)\"></bizdoc-cube-parallel>\r\n", styles: [":host{padding:8px}.element{display:flex;flex-direction:column;align-items:center;flex:1 1 auto}\n"] }]
|
25087
25136
|
}], ctorParameters: function () { return [{ type: DocumentViewRef }, { type: RouterImpl }, { type: CubeService }, { type: SessionService }]; } });
|
25088
25137
|
|
25089
25138
|
/** */
|