@bizdoc/core 1.9.12 → 1.9.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/compose/attachments/preview/attachment-preview.component.mjs +18 -16
- package/esm2020/lib/cube/grid/spreadsheet.component.mjs +35 -31
- package/esm2020/lib/views/cube/matrix.component.mjs +6 -6
- package/fesm2015/bizdoc-core.mjs +48 -43
- package/fesm2015/bizdoc-core.mjs.map +1 -1
- package/fesm2020/bizdoc-core.mjs +48 -43
- package/fesm2020/bizdoc-core.mjs.map +1 -1
- package/lib/compose/attachments/preview/attachment-preview.component.d.ts +3 -1
- package/lib/cube/grid/spreadsheet.component.d.ts +2 -0
- package/lib/views/cube/matrix.component.d.ts +2 -2
- package/package.json +1 -1
package/fesm2020/bizdoc-core.mjs
CHANGED
@@ -795,6 +795,9 @@ function getParameterByName(name, url = window.location.href) {
|
|
795
795
|
return decodeURIComponent(results[2].replace(/\+/g, ' '));
|
796
796
|
}
|
797
797
|
|
798
|
+
class AuthenticationImpl {
|
799
|
+
}
|
800
|
+
|
798
801
|
class PopupRef {
|
799
802
|
constructor(_data) {
|
800
803
|
this._data = _data;
|
@@ -911,9 +914,6 @@ class FirebaseService {
|
|
911
914
|
}
|
912
915
|
}
|
913
916
|
|
914
|
-
class AuthenticationImpl {
|
915
|
-
}
|
916
|
-
|
917
917
|
/** Listen to hub contracts */
|
918
918
|
class HubService {
|
919
919
|
constructor(_auth) {
|
@@ -2688,16 +2688,17 @@ const IMAGE_TYPE = ['image/png', 'image/jpeg', 'image/jpg', 'image/gif'];
|
|
2688
2688
|
function isImage(contentType) {
|
2689
2689
|
return IMAGE_TYPE.indexOf(contentType) > -1;
|
2690
2690
|
}
|
2691
|
-
function formatUrl(documentId, fileId) {
|
2692
|
-
return `/api/mailbox/download/${documentId}?fileId=${fileId}`;
|
2691
|
+
function formatUrl(documentId, fileId, token) {
|
2692
|
+
return `/api/mailbox/download/${documentId}?fileId=${fileId}&access_token=${token}`;
|
2693
2693
|
}
|
2694
2694
|
const ANIMATION_TIMINGS = '400ms cubic-bezier(0.25, 0.8, 0.25, 1)';
|
2695
2695
|
/** attachment-preview component*/
|
2696
2696
|
class AttachmentPreview {
|
2697
2697
|
/** attachment-preview ctor */
|
2698
|
-
constructor(_directionality, _renderer, data, sanitizer, _overlayRef) {
|
2698
|
+
constructor(_directionality, _renderer, data, sanitizer, _auth, _overlayRef) {
|
2699
2699
|
this._renderer = _renderer;
|
2700
2700
|
this.data = data;
|
2701
|
+
this._auth = _auth;
|
2701
2702
|
this._overlayRef = _overlayRef;
|
2702
2703
|
this.loading = true;
|
2703
2704
|
this.animationState = 'enter';
|
@@ -2727,7 +2728,7 @@ class AttachmentPreview {
|
|
2727
2728
|
location.assign(this._url());
|
2728
2729
|
}
|
2729
2730
|
_url() {
|
2730
|
-
return formatUrl(this.data.documentId, this.data.file.id);
|
2731
|
+
return formatUrl(this.data.documentId, this.data.file.id, this._auth.getAccessToken());
|
2731
2732
|
}
|
2732
2733
|
rotate() {
|
2733
2734
|
const elem = (this.isImage ? this.img : this.obj).nativeElement;
|
@@ -2769,7 +2770,7 @@ class AttachmentPreview {
|
|
2769
2770
|
this.animationState = 'leave';
|
2770
2771
|
}
|
2771
2772
|
}
|
2772
|
-
AttachmentPreview.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: AttachmentPreview, deps: [{ token: i7.Directionality }, { token: i0.Renderer2 }, { token: FILE_PREVIEW_DIALOG_DATA }, { token: i1$2.DomSanitizer }, { token: i1$1.OverlayRef }], target: i0.ɵɵFactoryTarget.Component });
|
2773
|
+
AttachmentPreview.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: AttachmentPreview, deps: [{ token: i7.Directionality }, { token: i0.Renderer2 }, { token: FILE_PREVIEW_DIALOG_DATA }, { token: i1$2.DomSanitizer }, { token: AuthenticationImpl }, { token: i1$1.OverlayRef }], target: i0.ɵɵFactoryTarget.Component });
|
2773
2774
|
AttachmentPreview.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: AttachmentPreview, selector: "bizdoc-attachment-preview", host: { listeners: { "document:resize": "resize()", "document:keydown.escape": "close()" } }, viewQueries: [{ propertyName: "obj", first: true, predicate: ["obj"], descendants: true }, { propertyName: "img", first: true, predicate: ["img"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"overlay-content\" [@slideContent]=\"animationState\" (@slideContent.start)=\"onAnimationStart($event)\"\r\n [dir]=\"dir\" (@slideContent.done)=\"onAnimationDone($event)\">\r\n <div class=\"toolbar-wrapper\" fxLayout=\"row\" [@slideDown]=\"slideDown\" *ngIf=\"!loading\">\r\n <button mat-icon-button (click)=\"close()\" bizdocTooltip=\"{{'Back' | translate}}\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_left</mat-icon></button>\r\n <span class=\"mat-body-1\">{{data.file.fileName}}</span>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"rotate()\" bizdocTooltip=\"{{'Rotate' | translate }}\"><mat-icon>screen_rotation</mat-icon></button>\r\n <button mat-icon-button (click)=\"download()\" bizdocTooltip=\"{{'Download' | translate}}\"><mat-icon>save_alt</mat-icon></button>\r\n </div>\r\n <div class=\"spinner-wrapper\" *ngIf=\"loading\">\r\n <mat-spinner></mat-spinner>\r\n </div>\r\n <object (load)=\"onLoad($event)\" [data]=\"objectData\" [type]=\"data.file.contentType\" *ngIf=\"!isImage\" #obj></object>\r\n <img *ngIf=\"isImage\" (load)=\"onLoad($event)\" [style.opacity]=\"loading ? 0 : 1\" [@fade]=\"loading ? 'fadeOut' : 'fadeIn'\" [src]=\"objectData\" #img>\r\n</div>\r\n", styles: [":host{display:flex;flex-direction:column;align-items:center}.spinner-wrapper{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:-1}img{width:100%;max-width:500px;height:auto}.overlay-content{padding:1em}.overlay-content .toolbar-wrapper{align-items:center;color:#f5f5f5}.divider{flex:1 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: i10.MatSpinner, selector: "mat-spinner", inputs: ["color"] }], directives: [{ type: i7.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { type: i10$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }], pipes: { "translate": TranslatePipe }, animations: [
|
2774
2775
|
trigger('fade', [
|
2775
2776
|
state('fadeOut', style({ opacity: 0 })),
|
@@ -2813,7 +2814,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImpor
|
|
2813
2814
|
}], ctorParameters: function () { return [{ type: i7.Directionality }, { type: i0.Renderer2 }, { type: undefined, decorators: [{
|
2814
2815
|
type: Inject,
|
2815
2816
|
args: [FILE_PREVIEW_DIALOG_DATA]
|
2816
|
-
}] }, { type: i1$2.DomSanitizer }, { type: i1$1.OverlayRef }]; }, propDecorators: { obj: [{
|
2817
|
+
}] }, { type: i1$2.DomSanitizer }, { type: AuthenticationImpl }, { type: i1$1.OverlayRef }]; }, propDecorators: { obj: [{
|
2817
2818
|
type: ViewChild,
|
2818
2819
|
args: ['obj', { static: false }]
|
2819
2820
|
}], img: [{
|
@@ -10675,18 +10676,14 @@ class CubeSpreadsheetComponent {
|
|
10675
10676
|
}
|
10676
10677
|
else {
|
10677
10678
|
if (y === 0) {
|
10678
|
-
if (y < y1)
|
10679
|
-
|
10680
|
-
axes[xName] = key;
|
10681
|
-
}
|
10679
|
+
if (y < y1)
|
10680
|
+
this._fillx(x, x1, axes);
|
10682
10681
|
else
|
10683
10682
|
return;
|
10684
10683
|
}
|
10685
10684
|
else if (x === 0) {
|
10686
|
-
if (x < x1)
|
10687
|
-
|
10688
|
-
axes[yName] = key;
|
10689
|
-
}
|
10685
|
+
if (x < x1)
|
10686
|
+
this._filly(y, y1, axes);
|
10690
10687
|
else
|
10691
10688
|
return;
|
10692
10689
|
}
|
@@ -10695,32 +10692,40 @@ class CubeSpreadsheetComponent {
|
|
10695
10692
|
else if (y > this.dataSource.length - 1 || x > this.dataSource[y].cells.length - 1)
|
10696
10693
|
return;
|
10697
10694
|
else {
|
10698
|
-
|
10699
|
-
|
10700
|
-
while (j < x1) {
|
10701
|
-
let { key } = this._xcolumns[j];
|
10702
|
-
if (!axes[xName])
|
10703
|
-
axes[xName] = key;
|
10704
|
-
else if (isString(axes[xName]))
|
10705
|
-
axes[xName] = [axes[xName], key];
|
10706
|
-
else if (axes[xName].indexOf(key) < 0)
|
10707
|
-
axes[xName].push(key);
|
10708
|
-
j++;
|
10709
|
-
}
|
10710
|
-
while (i < y1) {
|
10711
|
-
let { key } = this._yrows[i];
|
10712
|
-
if (!axes[yName])
|
10713
|
-
axes[yName] = key;
|
10714
|
-
else if (isString(axes[yName]))
|
10715
|
-
axes[yName] = [axes[yName], key];
|
10716
|
-
else if (axes[yName].indexOf(key) < 0)
|
10717
|
-
axes[yName].push(key);
|
10718
|
-
i++;
|
10719
|
-
}
|
10695
|
+
this._fillx(x, x1, axes);
|
10696
|
+
this._filly(y, y1, axes);
|
10720
10697
|
}
|
10721
10698
|
this.explore.emit({ axes });
|
10722
10699
|
}
|
10723
10700
|
}
|
10701
|
+
_filly(y, y1, axes) {
|
10702
|
+
const yName = this._series[0];
|
10703
|
+
let i = y - 1;
|
10704
|
+
while (i < y1) {
|
10705
|
+
let { key } = this._yrows[i];
|
10706
|
+
if (!axes[yName])
|
10707
|
+
axes[yName] = key;
|
10708
|
+
else if (isString(axes[yName]))
|
10709
|
+
axes[yName] = [axes[yName], key];
|
10710
|
+
else if (axes[yName].indexOf(key) < 0)
|
10711
|
+
axes[yName].push(key);
|
10712
|
+
i++;
|
10713
|
+
}
|
10714
|
+
}
|
10715
|
+
_fillx(x, x1, axes) {
|
10716
|
+
const xName = this._xAxis[0];
|
10717
|
+
let i = x - 1;
|
10718
|
+
while (i < x1) {
|
10719
|
+
let { key } = this._xcolumns[i];
|
10720
|
+
if (!axes[xName])
|
10721
|
+
axes[xName] = key;
|
10722
|
+
else if (isString(axes[xName]))
|
10723
|
+
axes[xName] = [axes[xName], key];
|
10724
|
+
else if (axes[xName].indexOf(key) < 0)
|
10725
|
+
axes[xName].push(key);
|
10726
|
+
i++;
|
10727
|
+
}
|
10728
|
+
}
|
10724
10729
|
exportToExcel(title) {
|
10725
10730
|
const wb = XLSX.utils.book_new();
|
10726
10731
|
const rows = this.spreadsheet.sheets[0].rows.map(r => r.cells.map(c => c.value));
|
@@ -23414,8 +23419,8 @@ let CubeDocumentMatrixComponent = class CubeDocumentMatrixComponent extends Cube
|
|
23414
23419
|
const { xAxis, serie, indices, sum, scope, filters } = this._viewRef.options;
|
23415
23420
|
if (!xAxis || !serie)
|
23416
23421
|
throw 'xAxis and serie required';
|
23417
|
-
this.xAxis = xAxis;
|
23418
|
-
this.serie = serie;
|
23422
|
+
this.xAxis = isArray(xAxis) ? xAxis[0] : xAxis;
|
23423
|
+
this.serie = isArray(serie) ? serie[0] : serie;
|
23419
23424
|
this.indices = indices;
|
23420
23425
|
this.sum = sum;
|
23421
23426
|
this.scope = scope;
|
@@ -23462,7 +23467,7 @@ let CubeDocumentMatrixComponent = class CubeDocumentMatrixComponent extends Cube
|
|
23462
23467
|
}
|
23463
23468
|
};
|
23464
23469
|
CubeDocumentMatrixComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: CubeDocumentMatrixComponent, deps: [{ token: DocumentViewRef }, { token: RouterImpl }, { token: CubeService }, { token: DatasourceService }, { token: SessionService }], target: i0.ɵɵFactoryTarget.Component });
|
23465
|
-
CubeDocumentMatrixComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", 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]=\"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)=\"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\" [serie]=\"serie\" [indices]=\"indices\" [sum]
|
23470
|
+
CubeDocumentMatrixComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", 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]=\"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)=\"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\" [serie]=\"serie\" [indices]=\"indices\" [sum]=\"sum\"\r\n [axes]=\"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", "serie", "indices", "scope", "sum", "axes", "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 } });
|
23466
23471
|
CubeDocumentMatrixComponent = __decorate([
|
23467
23472
|
BizDoc({
|
23468
23473
|
selector: 'bizdoc-cube-matrix'
|
@@ -23470,7 +23475,7 @@ CubeDocumentMatrixComponent = __decorate([
|
|
23470
23475
|
], CubeDocumentMatrixComponent);
|
23471
23476
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: CubeDocumentMatrixComponent, decorators: [{
|
23472
23477
|
type: Component,
|
23473
|
-
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]=\"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)=\"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\" [serie]=\"serie\" [indices]=\"indices\" [sum]
|
23478
|
+
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]=\"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)=\"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\" [serie]=\"serie\" [indices]=\"indices\" [sum]=\"sum\"\r\n [axes]=\"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"] }]
|
23474
23479
|
}], ctorParameters: function () { return [{ type: DocumentViewRef }, { type: RouterImpl }, { type: CubeService }, { type: DatasourceService }, { type: SessionService }]; }, propDecorators: { table: [{
|
23475
23480
|
type: ViewChild,
|
23476
23481
|
args: [CubeMatrixComponent, { static: true }]
|