@bizdoc/core 1.11.1 → 1.12.0-next.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/admin/positions/positions.component.mjs +16 -3
- package/esm2020/lib/compose/action/return-action.component.mjs +11 -5
- package/esm2020/lib/compose/compose.pane.component.mjs +3 -3
- package/esm2020/lib/compose/trace/flow.component.mjs +29 -10
- package/esm2020/lib/compose/trace/people.component.mjs +3 -2
- package/esm2020/lib/compose/trace/trace.component.mjs +12 -1
- package/esm2020/lib/core/controls/combination-picker.mjs +3 -3
- package/esm2020/lib/core/controls/file.input.mjs +7 -4
- package/esm2020/lib/core/mailbox.service.mjs +4 -6
- package/esm2020/lib/core/models.mjs +1 -1
- package/esm2020/lib/core/slots/slots.component.mjs +4 -4
- package/esm2020/lib/core/translations.mjs +7 -5
- package/esm2020/lib/cube/accum/accum.component.mjs +2 -2
- package/esm2020/lib/cube/chart/chart.component.mjs +2 -2
- package/esm2020/lib/cube/explore/explore-items.component.mjs +4 -4
- package/esm2020/lib/cube/explore/explore.pane.component.mjs +6 -5
- package/esm2020/lib/cube/grid/grid.component.mjs +2 -2
- package/esm2020/lib/cube/grid/spreadsheet.component.mjs +6 -6
- package/esm2020/lib/cube/matrix/matrix.base.mjs +2 -5
- package/esm2020/lib/cube/matrix/matrix.pane.component.mjs +6 -3
- package/esm2020/lib/cube/matrix/popup.component.mjs +5 -5
- package/esm2020/lib/cube/matrix/table.component.mjs +8 -7
- package/esm2020/lib/cube/parallel/parallel.component.mjs +2 -2
- package/esm2020/lib/cube/pivot/pivot.component.mjs +2 -2
- package/esm2020/lib/cube/view.mobile.component.mjs +2 -2
- package/esm2020/lib/dashboard/recents/recents.widget.mjs +24 -26
- package/esm2020/lib/home/options/options.component.mjs +4 -3
- package/esm2020/lib/views/cube/explore.component.mjs +8 -5
- package/fesm2015/bizdoc-core.mjs +168 -112
- package/fesm2015/bizdoc-core.mjs.map +1 -1
- package/fesm2020/bizdoc-core.mjs +167 -112
- package/fesm2020/bizdoc-core.mjs.map +1 -1
- package/lib/admin/positions/positions.component.d.ts +5 -0
- package/lib/compose/action/return-action.component.d.ts +3 -1
- package/lib/core/models.d.ts +1 -0
- package/lib/core/translations.d.ts +2 -0
- package/lib/cube/explore/explore-items.component.d.ts +1 -1
- package/lib/cube/matrix/matrix.base.d.ts +0 -1
- package/lib/dashboard/recents/recents.widget.d.ts +10 -9
- package/lib/home/options/options.component.d.ts +2 -1
- package/lib/views/cube/explore.component.d.ts +2 -0
- package/package.json +1 -1
@@ -41,6 +41,7 @@ export class QuickOptionsComponent {
|
|
41
41
|
this.available = this._session.state;
|
42
42
|
this.theme = this._session.theme.name;
|
43
43
|
this.name = this._session.profile.name;
|
44
|
+
this.by = this._session.profile.byName;
|
44
45
|
}
|
45
46
|
ngOnInit() {
|
46
47
|
this._hub.state$.pipe(startWith(this._hub.state), takeUntil(this._destroy)).subscribe(s => this.online = s === HubConnectionState.Connected);
|
@@ -85,9 +86,9 @@ export class QuickOptionsComponent {
|
|
85
86
|
}
|
86
87
|
}
|
87
88
|
QuickOptionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: QuickOptionsComponent, deps: [{ token: i1.PromptService }, { token: i2.GuideService }, { token: i3.OptionsService }, { token: i4.PopupRef }, { token: i5.HubService }, { token: i6.SessionService }, { token: i7.MatDialog }], target: i0.ɵɵFactoryTarget.Component });
|
88
|
-
QuickOptionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: QuickOptionsComponent, selector: "bizdoc-quick-options", ngImport: i0, template: "<div fxLayout=\"column\">\r\n <div class=\"profile-name\">\r\n <span class=\"mat-title\">{{name}}</span>\r\n </div>\r\n <div fxLayoutAlign=\"center center\" *ngIf=\"themes.length > 1\">\r\n <button *ngFor=\"let t of themes\" (click)=\"changeTheme(t)\" mat-icon-button class=\"theme\" [style.background]=\"t.color\" [class.active]=\"t.name === theme\" [class.dark]=\"t.dark\"></button>\r\n </div>\r\n</div>\r\n<mat-nav-list role=\"list\">\r\n <mat-list-item role=\"listitem\" *ngIf=\"!online\" (click)=\"revive()\">\r\n <mat-icon [bizdocTooltip]=\"'Connect'|translate\">wifi_off</mat-icon>\r\n </mat-list-item>\r\n <mat-list-item role=\"listitem\" *ngIf=\"online\" [matMenuTriggerFor]=\"availability\">\r\n {{'ShowAs' | translate : (available | translate | lowercase)}}\r\n </mat-list-item>\r\n <mat-menu #availability>\r\n <button mat-menu-item *ngFor=\"let m of modes\" (click)=\"setAvailable(m)\">{{m | translate}}</button>\r\n </mat-menu>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" (click)=\"options()\">\r\n {{'Options' | translate}}\r\n </mat-list-item>\r\n <mat-list-item role=\"listitem\" [matMenuTriggerFor]=\"language\">\r\n {{'ChangeLanguage' | translate}}\r\n </mat-list-item>\r\n <mat-menu #language>\r\n <button mat-menu-item *ngFor=\"let l of languages\" (click)=\"changeLanguage(l)\">{{l | translate}}</button>\r\n </mat-menu>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" [matMenuTriggerFor]=\"help\">\r\n {{'Help' | translate}}\r\n <span [matBadge]=\"guidesCount\" matBadgeColor=\"accent\" matBadgeOverlap=\"false\" matBadgeSize=\"small\"></span>\r\n </mat-list-item>\r\n <mat-menu #help>\r\n <button mat-menu-item *ngFor=\"let g of guides\" (click)=\"guide(g.name)\">{{g.title}}</button>\r\n </mat-menu>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" (click)=\"about()\">{{ 'About' | translate}}</mat-list-item>\r\n</mat-nav-list>\r\n", styles: [".profile-name{margin:8px}.theme{height:22px;width:22px;border-radius:13px;margin:4px}.theme.active.dark{border:2px solid #f4f4f4}\n"], components: [{ type: i8.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i9.MatNavList, selector: "mat-nav-list", inputs: ["disableRipple", "disabled"], exportAs: ["matNavList"] }, { type: i9.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["disableRipple", "disabled"], exportAs: ["matListItem"] }, { type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i11.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i11.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i12.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }], directives: [{ type: i13.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: i14.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i13.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { type: i14.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i15.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i11.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i16.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }], pipes: { "translate": i17.TranslatePipe, "lowercase": i14.LowerCasePipe } });
|
89
|
+
QuickOptionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: QuickOptionsComponent, selector: "bizdoc-quick-options", ngImport: i0, template: "<div fxLayout=\"column\">\r\n <div class=\"profile-name\">\r\n <span class=\"mat-title\">\r\n <ng-container *ngIf=\"by\">{{by}} \\ </ng-container>\r\n {{name}}</span>\r\n </div>\r\n <div fxLayoutAlign=\"center center\" *ngIf=\"themes.length > 1\">\r\n <button *ngFor=\"let t of themes\" (click)=\"changeTheme(t)\" mat-icon-button class=\"theme\" [style.background]=\"t.color\" [class.active]=\"t.name === theme\" [class.dark]=\"t.dark\"></button>\r\n </div>\r\n</div>\r\n<mat-nav-list role=\"list\">\r\n <mat-list-item role=\"listitem\" *ngIf=\"!online\" (click)=\"revive()\">\r\n <mat-icon [bizdocTooltip]=\"'Connect'|translate\">wifi_off</mat-icon>\r\n </mat-list-item>\r\n <mat-list-item role=\"listitem\" *ngIf=\"online\" [matMenuTriggerFor]=\"availability\">\r\n {{'ShowAs' | translate : (available | translate | lowercase)}}\r\n </mat-list-item>\r\n <mat-menu #availability>\r\n <button mat-menu-item *ngFor=\"let m of modes\" (click)=\"setAvailable(m)\">{{m | translate}}</button>\r\n </mat-menu>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" (click)=\"options()\">\r\n {{'Options' | translate}}\r\n </mat-list-item>\r\n <mat-list-item role=\"listitem\" [matMenuTriggerFor]=\"language\">\r\n {{'ChangeLanguage' | translate}}\r\n </mat-list-item>\r\n <mat-menu #language>\r\n <button mat-menu-item *ngFor=\"let l of languages\" (click)=\"changeLanguage(l)\">{{l | translate}}</button>\r\n </mat-menu>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" [matMenuTriggerFor]=\"help\">\r\n {{'Help' | translate}}\r\n <span [matBadge]=\"guidesCount\" matBadgeColor=\"accent\" matBadgeOverlap=\"false\" matBadgeSize=\"small\"></span>\r\n </mat-list-item>\r\n <mat-menu #help>\r\n <button mat-menu-item *ngFor=\"let g of guides\" (click)=\"guide(g.name)\">{{g.title}}</button>\r\n </mat-menu>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" (click)=\"about()\">{{ 'About' | translate}}</mat-list-item>\r\n</mat-nav-list>\r\n", styles: [".profile-name{margin:8px}.theme{height:22px;width:22px;border-radius:13px;margin:4px}.theme.active.dark{border:2px solid #f4f4f4}\n"], components: [{ type: i8.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i9.MatNavList, selector: "mat-nav-list", inputs: ["disableRipple", "disabled"], exportAs: ["matNavList"] }, { type: i9.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["disableRipple", "disabled"], exportAs: ["matListItem"] }, { type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i11.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i11.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i12.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }], directives: [{ type: i13.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: i14.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i13.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { type: i14.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i15.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i11.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i16.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }], pipes: { "translate": i17.TranslatePipe, "lowercase": i14.LowerCasePipe } });
|
89
90
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: QuickOptionsComponent, decorators: [{
|
90
91
|
type: Component,
|
91
|
-
args: [{ selector: 'bizdoc-quick-options', template: "<div fxLayout=\"column\">\r\n <div class=\"profile-name\">\r\n <span class=\"mat-title\">{{name}}</span>\r\n </div>\r\n <div fxLayoutAlign=\"center center\" *ngIf=\"themes.length > 1\">\r\n <button *ngFor=\"let t of themes\" (click)=\"changeTheme(t)\" mat-icon-button class=\"theme\" [style.background]=\"t.color\" [class.active]=\"t.name === theme\" [class.dark]=\"t.dark\"></button>\r\n </div>\r\n</div>\r\n<mat-nav-list role=\"list\">\r\n <mat-list-item role=\"listitem\" *ngIf=\"!online\" (click)=\"revive()\">\r\n <mat-icon [bizdocTooltip]=\"'Connect'|translate\">wifi_off</mat-icon>\r\n </mat-list-item>\r\n <mat-list-item role=\"listitem\" *ngIf=\"online\" [matMenuTriggerFor]=\"availability\">\r\n {{'ShowAs' | translate : (available | translate | lowercase)}}\r\n </mat-list-item>\r\n <mat-menu #availability>\r\n <button mat-menu-item *ngFor=\"let m of modes\" (click)=\"setAvailable(m)\">{{m | translate}}</button>\r\n </mat-menu>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" (click)=\"options()\">\r\n {{'Options' | translate}}\r\n </mat-list-item>\r\n <mat-list-item role=\"listitem\" [matMenuTriggerFor]=\"language\">\r\n {{'ChangeLanguage' | translate}}\r\n </mat-list-item>\r\n <mat-menu #language>\r\n <button mat-menu-item *ngFor=\"let l of languages\" (click)=\"changeLanguage(l)\">{{l | translate}}</button>\r\n </mat-menu>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" [matMenuTriggerFor]=\"help\">\r\n {{'Help' | translate}}\r\n <span [matBadge]=\"guidesCount\" matBadgeColor=\"accent\" matBadgeOverlap=\"false\" matBadgeSize=\"small\"></span>\r\n </mat-list-item>\r\n <mat-menu #help>\r\n <button mat-menu-item *ngFor=\"let g of guides\" (click)=\"guide(g.name)\">{{g.title}}</button>\r\n </mat-menu>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" (click)=\"about()\">{{ 'About' | translate}}</mat-list-item>\r\n</mat-nav-list>\r\n", styles: [".profile-name{margin:8px}.theme{height:22px;width:22px;border-radius:13px;margin:4px}.theme.active.dark{border:2px solid #f4f4f4}\n"] }]
|
92
|
+
args: [{ selector: 'bizdoc-quick-options', template: "<div fxLayout=\"column\">\r\n <div class=\"profile-name\">\r\n <span class=\"mat-title\">\r\n <ng-container *ngIf=\"by\">{{by}} \\ </ng-container>\r\n {{name}}</span>\r\n </div>\r\n <div fxLayoutAlign=\"center center\" *ngIf=\"themes.length > 1\">\r\n <button *ngFor=\"let t of themes\" (click)=\"changeTheme(t)\" mat-icon-button class=\"theme\" [style.background]=\"t.color\" [class.active]=\"t.name === theme\" [class.dark]=\"t.dark\"></button>\r\n </div>\r\n</div>\r\n<mat-nav-list role=\"list\">\r\n <mat-list-item role=\"listitem\" *ngIf=\"!online\" (click)=\"revive()\">\r\n <mat-icon [bizdocTooltip]=\"'Connect'|translate\">wifi_off</mat-icon>\r\n </mat-list-item>\r\n <mat-list-item role=\"listitem\" *ngIf=\"online\" [matMenuTriggerFor]=\"availability\">\r\n {{'ShowAs' | translate : (available | translate | lowercase)}}\r\n </mat-list-item>\r\n <mat-menu #availability>\r\n <button mat-menu-item *ngFor=\"let m of modes\" (click)=\"setAvailable(m)\">{{m | translate}}</button>\r\n </mat-menu>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" (click)=\"options()\">\r\n {{'Options' | translate}}\r\n </mat-list-item>\r\n <mat-list-item role=\"listitem\" [matMenuTriggerFor]=\"language\">\r\n {{'ChangeLanguage' | translate}}\r\n </mat-list-item>\r\n <mat-menu #language>\r\n <button mat-menu-item *ngFor=\"let l of languages\" (click)=\"changeLanguage(l)\">{{l | translate}}</button>\r\n </mat-menu>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" [matMenuTriggerFor]=\"help\">\r\n {{'Help' | translate}}\r\n <span [matBadge]=\"guidesCount\" matBadgeColor=\"accent\" matBadgeOverlap=\"false\" matBadgeSize=\"small\"></span>\r\n </mat-list-item>\r\n <mat-menu #help>\r\n <button mat-menu-item *ngFor=\"let g of guides\" (click)=\"guide(g.name)\">{{g.title}}</button>\r\n </mat-menu>\r\n <mat-divider></mat-divider>\r\n <mat-list-item role=\"listitem\" (click)=\"about()\">{{ 'About' | translate}}</mat-list-item>\r\n</mat-nav-list>\r\n", styles: [".profile-name{margin:8px}.theme{height:22px;width:22px;border-radius:13px;margin:4px}.theme.active.dark{border:2px solid #f4f4f4}\n"] }]
|
92
93
|
}], ctorParameters: function () { return [{ type: i1.PromptService }, { type: i2.GuideService }, { type: i3.OptionsService }, { type: i4.PopupRef }, { type: i5.HubService }, { type: i6.SessionService }, { type: i7.MatDialog }]; } });
|
93
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL2hvbWUvb3B0aW9ucy9vcHRpb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvaG9tZS9vcHRpb25zL29wdGlvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFHN0QsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBS3hELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVVwRCx1QkFBdUI7QUFDdkIsTUFBTSxPQUFPLHFCQUFxQjtJQVloQyxtQkFBbUI7SUFDbkIsWUFBb0IsR0FBa0IsRUFDNUIsTUFBb0IsRUFDcEIsUUFBd0IsRUFDeEIsU0FBMEMsRUFDMUMsSUFBZ0IsRUFDaEIsUUFBd0IsRUFDeEIsT0FBa0I7UUFOUixRQUFHLEdBQUgsR0FBRyxDQUFlO1FBQzVCLFdBQU0sR0FBTixNQUFNLENBQWM7UUFDcEIsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFDeEIsY0FBUyxHQUFULFNBQVMsQ0FBaUM7UUFDMUMsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixhQUFRLEdBQVIsUUFBUSxDQUFnQjtRQUN4QixZQUFPLEdBQVAsT0FBTyxDQUFXO1FBYm5CLFdBQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztRQUU5QixVQUFLLEdBQUcsQ0FBQyxTQUFTLEVBQUUsUUFBUSxFQUFF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QUMsUUFBUSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs7a0hBdEVVLHFCQUFxQjtzR0FBckIscUJBQXFCLDREQ3JCbEMsODdEQXVDQTsyRkRsQmEscUJBQXFCO2tCQU5qQyxTQUFTOytCQUNFLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU2Vzc2lvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL3Nlc3Npb24uc2VydmljZSc7XHJcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgdGFrZVVudGlsLCBzdGFydFdpdGggfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEh1YkNvbm5lY3Rpb25TdGF0ZSB9IGZyb20gJ0BtaWNyb3NvZnQvc2lnbmFscic7XHJcbmltcG9ydCB7IEF2YWlsYWJpbGl0eVN0YXRlLCBHdWlkZSB9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWxzJztcclxuaW1wb3J0IHsgT3B0aW9uc1NlcnZpY2UgfSBmcm9tIFwiLi4vLi4vb3B0aW9ucy9vcHRpb25zLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgUHJvbXB0U2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvcHJvbXB0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBHdWlkZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL2d1aWRlL2d1aWRlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBYm91dERpYWxvZyB9IGZyb20gJy4uL2Fib3V0L2Fib3V0LmRpYWxvZyc7XHJcbmltcG9ydCB7IEh1YlNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL2h1Yi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUG9wdXBSZWYgfSBmcm9tIFwiLi4vLi4vY29yZS9wb3B1cC9wb3B1cC1yZWZcIjtcclxuaW1wb3J0IHsgVGhlbWUgfSBmcm9tICcuLi8uLi9jb3JlL2NvbmZpZ3VyYXRpb24nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdiaXpkb2MtcXVpY2stb3B0aW9ucycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL29wdGlvbnMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL29wdGlvbnMuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuLyoqIG9wdGlvbnMgY29tcG9uZW50Ki9cclxuZXhwb3J0IGNsYXNzIFF1aWNrT3B0aW9uc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XHJcbiAgYXZhaWxhYmxlOiBBdmFpbGFiaWxpdHlTdGF0ZTtcclxuICBvbmxpbmU6IGJvb2xlYW47XHJcbiAgdGhlbWU6IHN0cmluZztcclxuICByZWFkb25seSBsYW5ndWFnZXM6IHN0cmluZ1tdO1xyXG4gIHJlYWRvbmx5IHRoZW1lcyA9IHRoaXMuX3Nlc3Npb24uVGhlbWVzO1xyXG4gIHJlYWRvbmx5IGd1aWRlczogR3VpZGVbXTtcclxuICByZWFkb25seSBtb2RlcyA9IFsnT2ZmbGluZScsICdPbmxpbmUnLCAnT3V0T2ZPZmZpY2UnLCAnVmFjYXRpb24nLCAnV29ya2luZ0hvbWUnXSBhcyBBdmFpbGFiaWxpdHlTdGF0ZVtdO1xyXG4gIGd1aWRlc0NvdW50OiBudW1iZXI7XHJcbiAgY3VycmVudExhbmd1YWdlOiBzdHJpbmc7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgLyoqIG9wdGlvbnMgY3RvciAqL1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX3BzOiBQcm9tcHRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfZ3VpZGU6IEd1aWRlU2VydmljZSxcclxuICAgIHByaXZhdGUgX29wdGlvbnM6IE9wdGlvbnNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfcG9wdXBSZWY6IFBvcHVwUmVmPFF1aWNrT3B0aW9uc0NvbXBvbmVudD4sXHJcbiAgICBwcml2YXRlIF9odWI6IEh1YlNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9zZXNzaW9uOiBTZXNzaW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgX2RpYWxvZzogTWF0RGlhbG9nKSB7XHJcbiAgICB0aGlzLmd1aWRlcyA9IHRoaXMuX2d1aWRlLmd1aWRlcy5maWx0ZXIoZyA9PiBnLm1vZGUgIT09ICdQcml2YXRlJyk7XHJcbiAgICB0aGlzLmxhbmd1YWdlcyA9IHRoaXMuX3Nlc3Npb24ubGFuZ3VhZ2VzO1xyXG4gICAgdGhpcy5jdXJyZW50TGFuZ3VhZ2UgPSB0aGlzLl9zZXNzaW9uLmxhbmd1YWdlO1xyXG4gICAgdGhpcy5hdmFpbGFibGUgPSB0aGlzLl9zZXNzaW9uLnN0YXRlO1xyXG4gICAgdGhpcy50aGVtZSA9IHRoaXMuX3Nlc3Npb24udGhlbWUubmFtZTtcclxuICAgIHRoaXMubmFtZSA9IHRoaXMuX3Nlc3Npb24ucHJvZmlsZS5uYW1lO1xyXG4gIH1cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX2h1Yi5zdGF0ZSQucGlwZShzdGFydFdpdGgodGhpcy5faHViLnN0YXRlKSwgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kpKS5zdWJzY3JpYmUocyA9PlxyXG4gICAgICB0aGlzLm9ubGluZSA9IHMgPT09IEh1YkNvbm5lY3Rpb25TdGF0ZS5Db25uZWN0ZWRcclxuICAgICk7XHJcbiAgICBpZiAoIXRoaXMuX3Nlc3Npb24uaXNJbXBlcnNvbmF0aW5nKSB7XHJcbiAgICAgIHRoaXMuZ3VpZGVzQ291bnQgPSB0aGlzLmd1aWRlcy5maWx0ZXIodyA9PiB3Lm1vZGUgPT09ICdFYWdlcicpLmxlbmd0aCB8fCBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuICByZXZpdmUoKSB7XHJcbiAgICB0aGlzLl9odWIuc3RhcnQoKTtcclxuICB9XHJcbiAgYWJvdXQoKSB7XHJcbiAgICB0aGlzLl9jbG9zZSgpO1xyXG4gICAgdGhpcy5fZGlhbG9nLm9wZW4oQWJvdXREaWFsb2cpO1xyXG4gIH1cclxuICBndWlkZShndWlkZTogc3RyaW5nKSB7XHJcbiAgICB0aGlzLl9jbG9zZSgpO1xyXG4gICAgdGhpcy5fZ3VpZGUuc3RhcnQoZ3VpZGUpO1xyXG4gIH1cclxuICBwcml2YXRlIF9jbG9zZSgpIHtcclxuICAgIHRoaXMuX3BvcHVwUmVmLmNsb3NlKCk7XHJcbiAgfVxyXG5cclxuICBzZXRBdmFpbGFibGUodmFsOiBBdmFpbGFiaWxpdHlTdGF0ZSkge1xyXG4gICAgdGhpcy5fY2xvc2UoKTtcclxuICAgIHRoaXMuX3Nlc3Npb24uc3RhdGUgPSB2YWw7XHJcbiAgfVxyXG4gIGNoYW5nZVRoZW1lKG5hbWU6IFRoZW1lKSB7XHJcbiAgICB0aGlzLl9zZXNzaW9uLnRoZW1lID0gbmFtZTtcclxuICAgIHRoaXMuX2Nsb3NlKCk7XHJcbiAgfVxyXG4gIGNoYW5nZUxhbmd1YWdlKGNvZGU6IHN0cmluZykge1xyXG4gICAgdGhpcy5fc2Vzc2lvbi5sYW5ndWFnZSA9IGNvZGU7XHJcbiAgICB0aGlzLl9wcy5tYXNrKCdSZWZyZXNoaW5nJyk7XHJcbiAgICBsb2NhdGlvbi5yZWxvYWQoKTtcclxuICB9XHJcbiAgb3B0aW9ucygpIHtcclxuICAgIHRoaXMuX2Nsb3NlKCk7XHJcbiAgICB0aGlzLl9vcHRpb25zLm9wZW4oKTtcclxuICB9XHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLl9kZXN0cm95Lm5leHQoKTtcclxuICAgIHRoaXMuX2Rlc3Ryb3kuY29tcGxldGUoKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBmeExheW91dD1cImNvbHVtblwiPlxyXG4gIDxkaXYgY2xhc3M9XCJwcm9maWxlLW5hbWVcIj5cclxuICAgIDxzcGFuIGNsYXNzPVwibWF0LXRpdGxlXCI+e3tuYW1lfX08L3NwYW4+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBmeExheW91dEFsaWduPVwiY2VudGVyIGNlbnRlclwiICpuZ0lmPVwidGhlbWVzLmxlbmd0aCA+IDFcIj5cclxuICAgIDxidXR0b24gKm5nRm9yPVwibGV0IHQgb2YgdGhlbWVzXCIgKGNsaWNrKT1cImNoYW5nZVRoZW1lKHQpXCIgbWF0LWljb24tYnV0dG9uIGNsYXNzPVwidGhlbWVcIiBbc3R5bGUuYmFja2dyb3VuZF09XCJ0LmNvbG9yXCIgW2NsYXNzLmFjdGl2ZV09XCJ0Lm5hbWUgPT09IHRoZW1lXCIgW2NsYXNzLmRhcmtdPVwidC5kYXJrXCI+PC9idXR0b24+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG48bWF0LW5hdi1saXN0IHJvbGU9XCJsaXN0XCI+XHJcbiAgPG1hdC1saXN0LWl0ZW0gcm9sZT1cImxpc3RpdGVtXCIgKm5nSWY9XCIhb25saW5lXCIgKGNsaWNrKT1cInJldml2ZSgpXCI+XHJcbiAgICA8bWF0LWljb24gW2JpemRvY1Rvb2x0aXBdPVwiJ0Nvbm5lY3QnfHRyYW5zbGF0ZVwiPndpZmlfb2ZmPC9tYXQtaWNvbj5cclxuICA8L21hdC1saXN0LWl0ZW0+XHJcbiAgPG1hdC1saXN0LWl0ZW0gcm9sZT1cImxpc3RpdGVtXCIgKm5nSWY9XCJvbmxpbmVcIiBbbWF0TWVudVRyaWdnZXJGb3JdPVwiYXZhaWxhYmlsaXR5XCI+XHJcbiAgICB7eydTaG93QXMnIHwgdHJhbnNsYXRlIDogKGF2YWlsYWJsZSB8IHRyYW5zbGF0ZSB8IGxvd2VyY2FzZSl9fVxyXG4gIDwvbWF0LWxpc3QtaXRlbT5cclxuICA8bWF0LW1lbnUgI2F2YWlsYWJpbGl0eT5cclxuICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAqbmdGb3I9XCJsZXQgbSBvZiBtb2Rlc1wiIChjbGljayk9XCJzZXRBdmFpbGFibGUobSlcIj57e20gfCB0cmFuc2xhdGV9fTwvYnV0dG9uPlxyXG4gIDwvbWF0LW1lbnU+XHJcbiAgPG1hdC1kaXZpZGVyPjwvbWF0LWRpdmlkZXI+XHJcbiAgPG1hdC1saXN0LWl0ZW0gcm9sZT1cImxpc3RpdGVtXCIgKGNsaWNrKT1cIm9wdGlvbnMoKVwiPlxyXG4gICAge3snT3B0aW9ucycgfCB0cmFuc2xhdGV9fVxyXG4gIDwvbWF0LWxpc3QtaXRlbT5cclxuICA8bWF0LWxpc3QtaXRlbSByb2xlPVwibGlzdGl0ZW1cIiBbbWF0TWVudVRyaWdnZXJGb3JdPVwibGFuZ3VhZ2VcIj5cclxuICAgIHt7J0NoYW5nZUxhbmd1YWdlJyB8IHRyYW5zbGF0ZX19XHJcbiAgPC9tYXQtbGlzdC1pdGVtPlxyXG4gIDxtYXQtbWVudSAjbGFuZ3VhZ2U+XHJcbiAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKm5nRm9yPVwibGV0IGwgb2YgbGFuZ3VhZ2VzXCIgKGNsaWNrKT1cImNoYW5nZUxhbmd1YWdlKGwpXCI+e3tsIHwgdHJhbnNsYXRlfX08L2J1dHRvbj5cclxuICA8L21hdC1tZW51PlxyXG4gIDxtYXQtZGl2aWRlcj48L21hdC1kaXZpZGVyPlxyXG4gIDxtYXQtbGlzdC1pdGVtIHJvbGU9XCJsaXN0aXRlbVwiIFttYXRNZW51VHJpZ2dlckZvcl09XCJoZWxwXCI+XHJcbiAgICB7eydIZWxwJyB8IHRyYW5zbGF0ZX19XHJcbiAgICA8c3BhbiBbbWF0QmFkZ2VdPVwiZ3VpZGVzQ291bnRcIiBtYXRCYWRnZUNvbG9yPVwiYWNjZW50XCIgbWF0QmFkZ2VPdmVybGFwPVwiZmFsc2VcIiBtYXRCYWRnZVNpemU9XCJzbWFsbFwiPjwvc3Bhbj5cclxuICA8L21hdC1saXN0LWl0ZW0+XHJcbiAgPG1hdC1tZW51ICNoZWxwPlxyXG4gICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtICpuZ0Zvcj1cImxldCBnIG9mIGd1aWRlc1wiIChjbGljayk9XCJndWlkZShnLm5hbWUpXCI+e3tnLnRpdGxlfX08L2J1dHRvbj5cclxuICA8L21hdC1tZW51PlxyXG4gIDxtYXQtZGl2aWRlcj48L21hdC1kaXZpZGVyPlxyXG4gIDxtYXQtbGlzdC1pdGVtIHJvbGU9XCJsaXN0aXRlbVwiIChjbGljayk9XCJhYm91dCgpXCI+e3sgJ0Fib3V0JyB8IHRyYW5zbGF0ZX19PC9tYXQtbGlzdC1pdGVtPlxyXG48L21hdC1uYXYtbGlzdD5cclxuIl19
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL2hvbWUvb3B0aW9ucy9vcHRpb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvaG9tZS9vcHRpb25zL29wdGlvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFHN0QsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBS3hELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVVwRCx1QkFBdUI7QUFDdkIsTUFBTSxPQUFPLHFCQUFxQjtJQWFoQyxtQkFBbUI7SUFDbkIsWUFBb0IsR0FBa0IsRUFDNUIsTUFBb0IsRUFDcEIsUUFBd0IsRUFDeEIsU0FBMEMsRUFDMUMsSUFBZ0IsRUFDaEIsUUFBd0IsRUFDeEIsT0FBa0I7UUFOUixRQUFHLEdBQUgsR0FBRyxDQUFlO1FBQzVCLFdBQU0sR0FBTixNQUFNLENBQWM7UUFDcEIsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFDeEIsY0FBUyxHQUFULFNBQVMsQ0FBaUM7UUFDMUMsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixhQUFRLEdBQVIsUUFBUSxDQUFnQjtRQUN4QixZQUFPLEdBQVAsT0FBTyxDQUFXO1FBYm5CLFdBQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztRQUU5QixVQUFLLEdBQUcsQ0FBQyxTQUFTLEVBQUUsUUFBUSxFQUFF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QVc7UUFDVCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs7a0hBeEVVLHFCQUFxQjtzR0FBckIscUJBQXFCLDREQ3JCbEMsa2dFQXlDQTsyRkRwQmEscUJBQXFCO2tCQU5qQyxTQUFTOytCQUNFLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU2Vzc2lvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL3Nlc3Npb24uc2VydmljZSc7XHJcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgdGFrZVVudGlsLCBzdGFydFdpdGggfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEh1YkNvbm5lY3Rpb25TdGF0ZSB9IGZyb20gJ0BtaWNyb3NvZnQvc2lnbmFscic7XHJcbmltcG9ydCB7IEF2YWlsYWJpbGl0eVN0YXRlLCBHdWlkZSB9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWxzJztcclxuaW1wb3J0IHsgT3B0aW9uc1NlcnZpY2UgfSBmcm9tIFwiLi4vLi4vb3B0aW9ucy9vcHRpb25zLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgUHJvbXB0U2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvcHJvbXB0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBHdWlkZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL2d1aWRlL2d1aWRlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBYm91dERpYWxvZyB9IGZyb20gJy4uL2Fib3V0L2Fib3V0LmRpYWxvZyc7XHJcbmltcG9ydCB7IEh1YlNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL2h1Yi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUG9wdXBSZWYgfSBmcm9tIFwiLi4vLi4vY29yZS9wb3B1cC9wb3B1cC1yZWZcIjtcclxuaW1wb3J0IHsgVGhlbWUgfSBmcm9tICcuLi8uLi9jb3JlL2NvbmZpZ3VyYXRpb24nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdiaXpkb2MtcXVpY2stb3B0aW9ucycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL29wdGlvbnMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL29wdGlvbnMuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuLyoqIG9wdGlvbnMgY29tcG9uZW50Ki9cclxuZXhwb3J0IGNsYXNzIFF1aWNrT3B0aW9uc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgYnk6IHN0cmluZztcclxuICBvbmxpbmU6IGJvb2xlYW47XHJcbiAgdGhlbWU6IHN0cmluZztcclxuICBhdmFpbGFibGU6IEF2YWlsYWJpbGl0eVN0YXRlO1xyXG4gIHJlYWRvbmx5IGxhbmd1YWdlczogc3RyaW5nW107XHJcbiAgcmVhZG9ubHkgdGhlbWVzID0gdGhpcy5fc2Vzc2lvbi5UaGVtZXM7XHJcbiAgcmVhZG9ubHkgZ3VpZGVzOiBHdWlkZVtdO1xyXG4gIHJlYWRvbmx5IG1vZGVzID0gWydPZmZsaW5lJywgJ09ubGluZScsICdPdXRPZk9mZmljZScsICdWYWNhdGlvbicsICdXb3JraW5nSG9tZSddIGFzIEF2YWlsYWJpbGl0eVN0YXRlW107XHJcbiAgZ3VpZGVzQ291bnQ6IG51bWJlcjtcclxuICBjdXJyZW50TGFuZ3VhZ2U6IHN0cmluZztcclxuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICAvKiogb3B0aW9ucyBjdG9yICovXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfcHM6IFByb21wdFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9ndWlkZTogR3VpZGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfb3B0aW9uczogT3B0aW9uc1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9wb3B1cFJlZjogUG9wdXBSZWY8UXVpY2tPcHRpb25zQ29tcG9uZW50PixcclxuICAgIHByaXZhdGUgX2h1YjogSHViU2VydmljZSxcclxuICAgIHByaXZhdGUgX3Nlc3Npb246IFNlc3Npb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfZGlhbG9nOiBNYXREaWFsb2cpIHtcclxuICAgIHRoaXMuZ3VpZGVzID0gdGhpcy5fZ3VpZGUuZ3VpZGVzLmZpbHRlcihnID0+IGcubW9kZSAhPT0gJ1ByaXZhdGUnKTtcclxuICAgIHRoaXMubGFuZ3VhZ2VzID0gdGhpcy5fc2Vzc2lvbi5sYW5ndWFnZXM7XHJcbiAgICB0aGlzLmN1cnJlbnRMYW5ndWFnZSA9IHRoaXMuX3Nlc3Npb24ubGFuZ3VhZ2U7XHJcbiAgICB0aGlzLmF2YWlsYWJsZSA9IHRoaXMuX3Nlc3Npb24uc3RhdGU7XHJcbiAgICB0aGlzLnRoZW1lID0gdGhpcy5fc2Vzc2lvbi50aGVtZS5uYW1lO1xyXG4gICAgdGhpcy5uYW1lID0gdGhpcy5fc2Vzc2lvbi5wcm9maWxlLm5hbWU7XHJcbiAgICB0aGlzLmJ5ID0gdGhpcy5fc2Vzc2lvbi5wcm9maWxlLmJ5TmFtZTtcclxuICB9XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9odWIuc3RhdGUkLnBpcGUoc3RhcnRXaXRoKHRoaXMuX2h1Yi5zdGF0ZSksIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95KSkuc3Vic2NyaWJlKHMgPT5cclxuICAgICAgdGhpcy5vbmxpbmUgPSBzID09PSBIdWJDb25uZWN0aW9uU3RhdGUuQ29ubmVjdGVkXHJcbiAgICApO1xyXG4gICAgaWYgKCF0aGlzLl9zZXNzaW9uLmlzSW1wZXJzb25hdGluZykge1xyXG4gICAgICB0aGlzLmd1aWRlc0NvdW50ID0gdGhpcy5ndWlkZXMuZmlsdGVyKHcgPT4gdy5tb2RlID09PSAnRWFnZXInKS5sZW5ndGggfHwgbnVsbDtcclxuICAgIH1cclxuICB9XHJcbiAgcmV2aXZlKCkge1xyXG4gICAgdGhpcy5faHViLnN0YXJ0KCk7XHJcbiAgfVxyXG4gIGFib3V0KCkge1xyXG4gICAgdGhpcy5fY2xvc2UoKTtcclxuICAgIHRoaXMuX2RpYWxvZy5vcGVuKEFib3V0RGlhbG9nKTtcclxuICB9XHJcbiAgZ3VpZGUoZ3VpZGU6IHN0cmluZykge1xyXG4gICAgdGhpcy5fY2xvc2UoKTtcclxuICAgIHRoaXMuX2d1aWRlLnN0YXJ0KGd1aWRlKTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfY2xvc2UoKSB7XHJcbiAgICB0aGlzLl9wb3B1cFJlZi5jbG9zZSgpO1xyXG4gIH1cclxuXHJcbiAgc2V0QXZhaWxhYmxlKHZhbDogQXZhaWxhYmlsaXR5U3RhdGUpIHtcclxuICAgIHRoaXMuX2Nsb3NlKCk7XHJcbiAgICB0aGlzLl9zZXNzaW9uLnN0YXRlID0gdmFsO1xyXG4gIH1cclxuICBjaGFuZ2VUaGVtZShuYW1lOiBUaGVtZSkge1xyXG4gICAgdGhpcy5fc2Vzc2lvbi50aGVtZSA9IG5hbWU7XHJcbiAgICB0aGlzLl9jbG9zZSgpO1xyXG4gIH1cclxuICBjaGFuZ2VMYW5ndWFnZShjb2RlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX3Nlc3Npb24ubGFuZ3VhZ2UgPSBjb2RlO1xyXG4gICAgdGhpcy5fcHMubWFzaygnUmVmcmVzaGluZycpO1xyXG4gICAgbG9jYXRpb24ucmVsb2FkKCk7XHJcbiAgfVxyXG4gIG9wdGlvbnMoKSB7XHJcbiAgICB0aGlzLl9jbG9zZSgpO1xyXG4gICAgdGhpcy5fb3B0aW9ucy5vcGVuKCk7XHJcbiAgfVxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fZGVzdHJveS5uZXh0KCk7XHJcbiAgICB0aGlzLl9kZXN0cm95LmNvbXBsZXRlKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgZnhMYXlvdXQ9XCJjb2x1bW5cIj5cclxuICA8ZGl2IGNsYXNzPVwicHJvZmlsZS1uYW1lXCI+XHJcbiAgICA8c3BhbiBjbGFzcz1cIm1hdC10aXRsZVwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImJ5XCI+e3tieX19IFxcIDwvbmctY29udGFpbmVyPlxyXG4gICAge3tuYW1lfX08L3NwYW4+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBmeExheW91dEFsaWduPVwiY2VudGVyIGNlbnRlclwiICpuZ0lmPVwidGhlbWVzLmxlbmd0aCA+IDFcIj5cclxuICAgIDxidXR0b24gKm5nRm9yPVwibGV0IHQgb2YgdGhlbWVzXCIgKGNsaWNrKT1cImNoYW5nZVRoZW1lKHQpXCIgbWF0LWljb24tYnV0dG9uIGNsYXNzPVwidGhlbWVcIiBbc3R5bGUuYmFja2dyb3VuZF09XCJ0LmNvbG9yXCIgW2NsYXNzLmFjdGl2ZV09XCJ0Lm5hbWUgPT09IHRoZW1lXCIgW2NsYXNzLmRhcmtdPVwidC5kYXJrXCI+PC9idXR0b24+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG48bWF0LW5hdi1saXN0IHJvbGU9XCJsaXN0XCI+XHJcbiAgPG1hdC1saXN0LWl0ZW0gcm9sZT1cImxpc3RpdGVtXCIgKm5nSWY9XCIhb25saW5lXCIgKGNsaWNrKT1cInJldml2ZSgpXCI+XHJcbiAgICA8bWF0LWljb24gW2JpemRvY1Rvb2x0aXBdPVwiJ0Nvbm5lY3QnfHRyYW5zbGF0ZVwiPndpZmlfb2ZmPC9tYXQtaWNvbj5cclxuICA8L21hdC1saXN0LWl0ZW0+XHJcbiAgPG1hdC1saXN0LWl0ZW0gcm9sZT1cImxpc3RpdGVtXCIgKm5nSWY9XCJvbmxpbmVcIiBbbWF0TWVudVRyaWdnZXJGb3JdPVwiYXZhaWxhYmlsaXR5XCI+XHJcbiAgICB7eydTaG93QXMnIHwgdHJhbnNsYXRlIDogKGF2YWlsYWJsZSB8IHRyYW5zbGF0ZSB8IGxvd2VyY2FzZSl9fVxyXG4gIDwvbWF0LWxpc3QtaXRlbT5cclxuICA8bWF0LW1lbnUgI2F2YWlsYWJpbGl0eT5cclxuICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAqbmdGb3I9XCJsZXQgbSBvZiBtb2Rlc1wiIChjbGljayk9XCJzZXRBdmFpbGFibGUobSlcIj57e20gfCB0cmFuc2xhdGV9fTwvYnV0dG9uPlxyXG4gIDwvbWF0LW1lbnU+XHJcbiAgPG1hdC1kaXZpZGVyPjwvbWF0LWRpdmlkZXI+XHJcbiAgPG1hdC1saXN0LWl0ZW0gcm9sZT1cImxpc3RpdGVtXCIgKGNsaWNrKT1cIm9wdGlvbnMoKVwiPlxyXG4gICAge3snT3B0aW9ucycgfCB0cmFuc2xhdGV9fVxyXG4gIDwvbWF0LWxpc3QtaXRlbT5cclxuICA8bWF0LWxpc3QtaXRlbSByb2xlPVwibGlzdGl0ZW1cIiBbbWF0TWVudVRyaWdnZXJGb3JdPVwibGFuZ3VhZ2VcIj5cclxuICAgIHt7J0NoYW5nZUxhbmd1YWdlJyB8IHRyYW5zbGF0ZX19XHJcbiAgPC9tYXQtbGlzdC1pdGVtPlxyXG4gIDxtYXQtbWVudSAjbGFuZ3VhZ2U+XHJcbiAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKm5nRm9yPVwibGV0IGwgb2YgbGFuZ3VhZ2VzXCIgKGNsaWNrKT1cImNoYW5nZUxhbmd1YWdlKGwpXCI+e3tsIHwgdHJhbnNsYXRlfX08L2J1dHRvbj5cclxuICA8L21hdC1tZW51PlxyXG4gIDxtYXQtZGl2aWRlcj48L21hdC1kaXZpZGVyPlxyXG4gIDxtYXQtbGlzdC1pdGVtIHJvbGU9XCJsaXN0aXRlbVwiIFttYXRNZW51VHJpZ2dlckZvcl09XCJoZWxwXCI+XHJcbiAgICB7eydIZWxwJyB8IHRyYW5zbGF0ZX19XHJcbiAgICA8c3BhbiBbbWF0QmFkZ2VdPVwiZ3VpZGVzQ291bnRcIiBtYXRCYWRnZUNvbG9yPVwiYWNjZW50XCIgbWF0QmFkZ2VPdmVybGFwPVwiZmFsc2VcIiBtYXRCYWRnZVNpemU9XCJzbWFsbFwiPjwvc3Bhbj5cclxuICA8L21hdC1saXN0LWl0ZW0+XHJcbiAgPG1hdC1tZW51ICNoZWxwPlxyXG4gICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtICpuZ0Zvcj1cImxldCBnIG9mIGd1aWRlc1wiIChjbGljayk9XCJndWlkZShnLm5hbWUpXCI+e3tnLnRpdGxlfX08L2J1dHRvbj5cclxuICA8L21hdC1tZW51PlxyXG4gIDxtYXQtZGl2aWRlcj48L21hdC1kaXZpZGVyPlxyXG4gIDxtYXQtbGlzdC1pdGVtIHJvbGU9XCJsaXN0aXRlbVwiIChjbGljayk9XCJhYm91dCgpXCI+e3sgJ0Fib3V0JyB8IHRyYW5zbGF0ZX19PC9tYXQtbGlzdC1pdGVtPlxyXG48L21hdC1uYXYtbGlzdD5cclxuIl19
|
@@ -26,10 +26,13 @@ let CubeExploreViewComponent = class CubeExploreViewComponent extends CubeBase {
|
|
26
26
|
this._router = _router;
|
27
27
|
this._ds = _ds;
|
28
28
|
this.sources = {};
|
29
|
+
this.pageSize = 5;
|
29
30
|
}
|
30
31
|
onViewBind() {
|
31
|
-
const { scope, filters } = this._viewRef.options;
|
32
|
+
const { scope, filters, pageSize } = this._viewRef.options;
|
32
33
|
this.scope = scope;
|
34
|
+
if (pageSize)
|
35
|
+
this.pageSize = pageSize;
|
33
36
|
this.filters = this.cube.axes.filter(a => isArray(filters) ?
|
34
37
|
filters.indexOf(a.name) > -1 :
|
35
38
|
a.name === filters);
|
@@ -61,12 +64,12 @@ let CubeExploreViewComponent = class CubeExploreViewComponent extends CubeBase {
|
|
61
64
|
this.loading = false;
|
62
65
|
}, e => {
|
63
66
|
this.loading = false;
|
64
|
-
this._sb.error(e.status ===
|
67
|
+
this._sb.error(e.status === 406 ? 'Unauthorized' : null);
|
65
68
|
});
|
66
69
|
}
|
67
70
|
};
|
68
71
|
CubeExploreViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: CubeExploreViewComponent, deps: [{ token: i1.DocumentViewRef }, { token: i2.PromptService }, { token: i3.RouterImpl }, { token: i4.CubeService }, { token: i5.DatasourceService }, { token: i6.SessionService }], target: i0.ɵɵFactoryTarget.Component });
|
69
|
-
CubeExploreViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: CubeExploreViewComponent, selector: "ng-component", host: { classAttribute: "view" }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"hasdata\">\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 <!-- 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 <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"items.paginator.previousPage()\" [bizdocTooltip]=\"'PrevPage' | translate\" [attr.aria-label]=\"'PrevPage' | translate\" [disabled]=\"!items.paginator.hasPreviousPage()\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_left</mat-icon></button>\r\n <button mat-icon-button (click)=\"items.paginator.nextPage()\" [bizdocTooltip]=\"'NextPage' | translate\" [attr.aria-label]=\"'NextPage' | translate\" [disabled]=\"!items.paginator.hasNextPage()\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_right</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-explore #items [cube]=\"cube.name\" [axes]=axes\r\n (explore)=\"item($event)\"\r\n (loadingChange)=\"loading = $event\"\r\n [scope]=\"scope\"></bizdoc-cube-explore>\r\n</ng-container>\r\n", components: [{ type: i7.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: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i9.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i9.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i10.MatSpinner, selector: "mat-spinner", inputs: ["color"] }, { type: i11.ExploreItemsComponent, selector: "bizdoc-cube-explore", inputs: ["pageSize", "cube", "index", "scope", "axes", "loading"], outputs: ["explore", "load", "loadingChange"] }], directives: [{ type: i12.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i12.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i13.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }], pipes: { "async": i12.AsyncPipe, "typeValue": i14.TypeValuePipe, "translate": i15.TranslatePipe } });
|
72
|
+
CubeExploreViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: CubeExploreViewComponent, selector: "ng-component", host: { classAttribute: "view" }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"hasdata\">\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 <!-- 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 <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"items.paginator.previousPage()\" [bizdocTooltip]=\"'PrevPage' | translate\" [attr.aria-label]=\"'PrevPage' | translate\" [disabled]=\"!items.paginator.hasPreviousPage()\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_left</mat-icon></button>\r\n <button mat-icon-button (click)=\"items.paginator.nextPage()\" [bizdocTooltip]=\"'NextPage' | translate\" [attr.aria-label]=\"'NextPage' | translate\" [disabled]=\"!items.paginator.hasNextPage()\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_right</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-explore #items [cube]=\"cube.name\" [axes]=axes\r\n (explore)=\"item($event)\"\r\n (loadingChange)=\"loading = $event\" [pageSize]=\"pageSize\"\r\n [scope]=\"scope\"></bizdoc-cube-explore>\r\n</ng-container>\r\n", components: [{ type: i7.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: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i9.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i9.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i10.MatSpinner, selector: "mat-spinner", inputs: ["color"] }, { type: i11.ExploreItemsComponent, selector: "bizdoc-cube-explore", inputs: ["pageSize", "cube", "index", "scope", "axes", "loading"], outputs: ["explore", "load", "loadingChange"] }], directives: [{ type: i12.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i12.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i13.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }], pipes: { "async": i12.AsyncPipe, "typeValue": i14.TypeValuePipe, "translate": i15.TranslatePipe } });
|
70
73
|
CubeExploreViewComponent = __decorate([
|
71
74
|
BizDoc({
|
72
75
|
selector: 'bizdoc-explore-view'
|
@@ -75,6 +78,6 @@ CubeExploreViewComponent = __decorate([
|
|
75
78
|
export { CubeExploreViewComponent };
|
76
79
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: CubeExploreViewComponent, decorators: [{
|
77
80
|
type: Component,
|
78
|
-
args: [{ host: { class: 'view' }, template: "<ng-container *ngIf=\"hasdata\">\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 <!-- 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 <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"items.paginator.previousPage()\" [bizdocTooltip]=\"'PrevPage' | translate\" [attr.aria-label]=\"'PrevPage' | translate\" [disabled]=\"!items.paginator.hasPreviousPage()\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_left</mat-icon></button>\r\n <button mat-icon-button (click)=\"items.paginator.nextPage()\" [bizdocTooltip]=\"'NextPage' | translate\" [attr.aria-label]=\"'NextPage' | translate\" [disabled]=\"!items.paginator.hasNextPage()\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_right</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-explore #items [cube]=\"cube.name\" [axes]=axes\r\n (explore)=\"item($event)\"\r\n (loadingChange)=\"loading = $event\"\r\n [scope]=\"scope\"></bizdoc-cube-explore>\r\n</ng-container>\r\n" }]
|
81
|
+
args: [{ host: { class: 'view' }, template: "<ng-container *ngIf=\"hasdata\">\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 <!-- 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 <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"items.paginator.previousPage()\" [bizdocTooltip]=\"'PrevPage' | translate\" [attr.aria-label]=\"'PrevPage' | translate\" [disabled]=\"!items.paginator.hasPreviousPage()\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_left</mat-icon></button>\r\n <button mat-icon-button (click)=\"items.paginator.nextPage()\" [bizdocTooltip]=\"'NextPage' | translate\" [attr.aria-label]=\"'NextPage' | translate\" [disabled]=\"!items.paginator.hasNextPage()\"><mat-icon class=\"mat-icon-rtl-mirror\">keyboard_arrow_right</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-explore #items [cube]=\"cube.name\" [axes]=axes\r\n (explore)=\"item($event)\"\r\n (loadingChange)=\"loading = $event\" [pageSize]=\"pageSize\"\r\n [scope]=\"scope\"></bizdoc-cube-explore>\r\n</ng-container>\r\n" }]
|
79
82
|
}], ctorParameters: function () { return [{ type: i1.DocumentViewRef }, { type: i2.PromptService }, { type: i3.RouterImpl }, { type: i4.CubeService }, { type: i5.DatasourceService }, { type: i6.SessionService }]; } });
|
80
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwbG9yZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL3ZpZXdzL2N1YmUvZXhwbG9yZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL3ZpZXdzL2N1YmUvZXhwbG9yZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkxQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDL0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBUS9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBVS9CLHdCQUF3QixTQUF4Qix3QkFBeUIsU0FBUSxRQUFpQjtJQUd4RCxZQUFZLE9BQWlDLEVBQ25DLEdBQWtCLEVBQ2xCLE9BQW1CLEVBQzNCLE9BQW9CLEVBQ1osR0FBc0IsRUFDOUIsT0FBdUI7UUFDdkIsS0FBSyxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFMekIsUUFBRyxHQUFILEdBQUcsQ0FBZTtRQUNsQixZQUFPLEdBQVAsT0FBTyxDQUFZO1FBRW5CLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBTnZCLFlBQU8sR0FBb0UsRUFBRSxDQUFDO0lBU3ZGLENBQUM7SUFDRCxVQUFVO1FBQ1IsTUFBTSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQztRQUNqRCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1lBQzFELE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDOUIsQ0FBQyxDQUFDLElBQUksS0FBSyxPQUFPLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQ2hELENBQUM7SUFDSixDQUFDO0lBQ0Q7OztLQUdDO0lBQ0QsTUFBTSxDQUFDLElBQVksRUFBRSxLQUFzQixFQUFFLEtBQWE7UUFDeEQsTUFBTSxJQUFJLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ25CLENBQUM7SUFDRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBQ0QsSUFBSSxDQUFDLEdBQXFCO1FBQ3hCLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxHQUFHLENBQUM7UUFDckIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDbkUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO2dCQUNyRixXQUFXLEVBQUUsSUFBSSxDQUFDLElBQUk7Z0JBQ3RCLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRTtnQkFDZixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7YUFDbEIsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDdkIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFO1lBQ0wsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7WUFDckIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0QsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YsQ0FBQTtxSEFsRE8sd0JBQXdCO3lHQUF4Qix3QkFBd0IsNkdDdkJoQywwN0RBaUNBO0FEVlEsd0JBQXdCO0lBSi9CLE1BQU0sQ0FBQztRQUNOLFFBQVEsRUFBRSxxQkFBcUI7S0FDaEMsQ0FBQztHQUVNLHdCQUF3QixDQWtEL0I7U0FsRE8sd0JBQXdCOzJGQUF4Qix3QkFBd0I7a0JBUi9CLFNBQVM7MkJBRUYsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgU2NvcGVUeXBlIH0gZnJvbSAnLi4vLi4vY29yZS9jb25maWd1cmF0aW9uJztcclxuaW1wb3J0IHsgRGF0YXNvdXJjZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL2RhdGFzb3VyY2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IEJpekRvYyB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycyc7XHJcbmltcG9ydCB7IGlzQXJyYXkgfSBmcm9tICcuLi8uLi9jb3JlL2Z1bmN0aW9ucyc7XHJcbmltcG9ydCB7IEN1YmVBeGlzIH0gZnJvbSAnLi4vLi4vY29yZS9tb2RlbHMnO1xyXG5pbXBvcnQgeyBQcm9tcHRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9wcm9tcHQuc2VydmljZSc7XHJcbmltcG9ydCB7IFJvdXRlckltcGwgfSBmcm9tICcuLi8uLi9jb3JlL3JvdXRlcic7XHJcbmltcG9ydCB7IFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9zZXNzaW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDdWJlU2VydmljZSB9IGZyb20gJy4uLy4uL2N1YmUvY3ViZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRXhwbG9yZUl0ZW1FdmVudCB9IGZyb20gJy4uLy4uL2N1YmUvZXhwbG9yZS9leHBsb3JlLWl0ZW1zLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERvY3VtZW50Vmlld1JlZiB9IGZyb20gJy4uL2RvY3VtZW50LXZpZXctcmVmJztcclxuaW1wb3J0IHsgQ3ViZUJhc2UgfSBmcm9tICcuL2N1YmUtYmFzZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZVVybDogJy4vZXhwbG9yZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgaG9zdDogeyBjbGFzczogJ3ZpZXcnIH1cclxufSlcclxuQEJpekRvYyh7XHJcbiAgc2VsZWN0b3I6ICdiaXpkb2MtZXhwbG9yZS12aWV3J1xyXG59KVxyXG5leHBvcnRcclxuICBjbGFzcyBDdWJlRXhwbG9yZVZpZXdDb21wb25lbnQgZXh0ZW5kcyBDdWJlQmFzZTxPcHRpb25zPiB7XHJcbiAgcmVhZG9ubHkgc291cmNlczogeyBbYXhpczogc3RyaW5nXTogT2JzZXJ2YWJsZTx7IGtleTogc3RyaW5nOyB2YWx1ZTogYW55OyB9W10+OyB9ID0ge307XHJcbiAgZmlsdGVyczogQ3ViZUF4aXNbXTtcclxuICBjb25zdHJ1Y3Rvcih2aWV3UmVmOiBEb2N1bWVudFZpZXdSZWY8T3B0aW9ucz4sXHJcbiAgICBwcml2YXRlIF9zYjogUHJvbXB0U2VydmljZSxcclxuICAgIHByaXZhdGUgX3JvdXRlcjogUm91dGVySW1wbCxcclxuICAgIHNlcnZpY2U6IEN1YmVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfZHM6IERhdGFzb3VyY2VTZXJ2aWNlLFxyXG4gICAgc2Vzc2lvbjogU2Vzc2lvblNlcnZpY2UpIHtcclxuICAgIHN1cGVyKHZpZXdSZWYsIHNlcnZpY2UsIHNlc3Npb24pO1xyXG4gIH1cclxuICBvblZpZXdCaW5kKCkge1xyXG4gICAgY29uc3QgeyBzY29wZSwgZmlsdGVycyB9ID0gdGhpcy5fdmlld1JlZi5vcHRpb25zO1xyXG4gICAgdGhpcy5zY29wZSA9IHNjb3BlO1xyXG4gICAgdGhpcy5maWx0ZXJzID0gdGhpcy5jdWJlLmF4ZXMuZmlsdGVyKGEgPT4gaXNBcnJheShmaWx0ZXJzKSA/XHJcbiAgICAgIGZpbHRlcnMuaW5kZXhPZihhLm5hbWUpID4gLTEgOlxyXG4gICAgICBhLm5hbWUgPT09IGZpbHRlcnMpO1xyXG4gICAgdGhpcy5maWx0ZXJzLmZvckVhY2goZiA9PlxyXG4gICAgICB0aGlzLnNvdXJjZXNbZi5uYW1lXSA9IHRoaXMuX2RzLmFsbChmLmRhdGFUeXBlKVxyXG4gICAgKTtcclxuICB9XHJcbiAgLyoqXHJcbiAqXHJcbiAqIEBwYXJhbSB2YWx1ZVxyXG4gKi9cclxuICBmaWx0ZXIobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyLCB0aXRsZTogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBheGVzID0geyAuLi50aGlzLmF4ZXMgfTtcclxuICAgIGF4ZXNbbmFtZV0gPSB2YWx1ZTtcclxuICAgIHRoaXMuYW55RmlsdGVycyA9IHRydWU7XHJcbiAgICB0aGlzLmF4ZXMgPSBheGVzO1xyXG4gIH1cclxuICByZXNldCgpIHtcclxuICAgIHRoaXMuYXhlcyA9IHN1cGVyLmFnZ3JlZ2F0ZSh0aGlzLm9yaWdpbmFsQXhlcyk7XHJcbiAgICB0aGlzLmFueUZpbHRlcnMgPSBmYWxzZTtcclxuICB9XHJcbiAgaXRlbShldnQ6IEV4cGxvcmVJdGVtRXZlbnQpIHtcclxuICAgIGNvbnN0IHsga2V5cyB9ID0gZXZ0O1xyXG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgIHRoaXMuX3NlcnZpY2UuaXRlbSh0aGlzLmN1YmUubmFtZSwgdGhpcy5heGVzLCBrZXlzKS5zdWJzY3JpYmUoaXRlbSA9PiB7XHJcbiAgICAgIHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShbJ2N1YmUnLCB0aGlzLmN1YmUubmFtZSwgJ2V4cGxvcmUnLCAnaScsIGV2dC50ZW1wbGF0ZSwga2V5c1swXV0sIHtcclxuICAgICAgICBxdWVyeVBhcmFtczogdGhpcy5heGVzLFxyXG4gICAgICAgIHN0YXRlOiB7IGl0ZW0gfSxcclxuICAgICAgICBncm91cDogdGhpcy5ncm91cCxcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgfSwgZSA9PiB7XHJcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB0aGlzLl9zYi5lcnJvcihlLnN0YXR1cyA9PT0gNDAxID8gJ1VuYXV0aG9yaXplZCcgOiBudWxsKTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG5pbnRlcmZhY2UgT3B0aW9ucyB7XHJcbiAgYWdncmVnYXRlPzogc3RyaW5nW107XHJcbiAgZmlsdGVyczogc3RyaW5nW107XHJcbiAgc2NvcGU/OiBTY29wZVR5cGU7XHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImhhc2RhdGFcIj5cclxuICA8ZGl2IGNsYXNzPVwibmF2LXRvb2xiYXJcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhbHRlcm5hdGVcIj5cclxuICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIFttYXRNZW51VHJpZ2dlckZvcl09XCJjbWVudVwiPnt7Y3ViZS50aXRsZX19IDxtYXQtaWNvbj5hcnJvd19kcm9wX2Rvd248L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgICA8bWF0LW1lbnUgI2NtZW51PlxyXG4gICAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAqbmdGb3I9XCJsZXQgYSBvZiBhbHRlcm5hdGVcIlxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cInN3aXRjaFRvKGEpXCI+XHJcbiAgICAgICAgICB7e2EudGl0bGV9fVxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8L21hdC1tZW51PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8IS0tIGZpbHRlcnMgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBmIG9mIGZpbHRlcnNcIj5cclxuICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIFttYXRNZW51VHJpZ2dlckZvcl09XCJmbWVudVwiPnt7YXhlc1tmLm5hbWVdIHwgdHlwZVZhbHVlIDogZi5kYXRhVHlwZSB8IGFzeW5jfX0gPG1hdC1pY29uPmFycm93X2Ryb3BfZG93bjwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgICAgIDxtYXQtbWVudSAjZm1lbnUgeFBvc2l0aW9uPVwiYmVmb3JlXCI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtICpuZ0Zvcj1cImxldCBrdiBvZiBzb3VyY2VzW2YubmFtZV0gfCBhc3luY1wiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiZmlsdGVyKGYubmFtZSwga3Yua2V5LCBrdi52YWx1ZSlcIj5cclxuICAgICAgICAgIHt7a3YudmFsdWV9fVxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8L21hdC1tZW51PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8c3BhbiBjbGFzcz1cImRpdmlkZXJcIj48L3NwYW4+XHJcbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiaXRlbXMucGFnaW5hdG9yLnByZXZpb3VzUGFnZSgpXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ1ByZXZQYWdlJyB8IHRyYW5zbGF0ZVwiIFthdHRyLmFyaWEtbGFiZWxdPVwiJ1ByZXZQYWdlJyB8IHRyYW5zbGF0ZVwiIFtkaXNhYmxlZF09XCIhaXRlbXMucGFnaW5hdG9yLmhhc1ByZXZpb3VzUGFnZSgpXCI+PG1hdC1pY29uIGNsYXNzPVwibWF0LWljb24tcnRsLW1pcnJvclwiPmtleWJvYXJkX2Fycm93X2xlZnQ8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cIml0ZW1zLnBhZ2luYXRvci5uZXh0UGFnZSgpXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ05leHRQYWdlJyB8IHRyYW5zbGF0ZVwiIFthdHRyLmFyaWEtbGFiZWxdPVwiJ05leHRQYWdlJyB8IHRyYW5zbGF0ZVwiIFtkaXNhYmxlZF09XCIhaXRlbXMucGFnaW5hdG9yLmhhc05leHRQYWdlKClcIj48bWF0LWljb24gY2xhc3M9XCJtYXQtaWNvbi1ydGwtbWlycm9yXCI+a2V5Ym9hcmRfYXJyb3dfcmlnaHQ8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJsb2FkaW5nLXZpZXdcIiAqbmdJZj1cImxvYWRpbmdcIj5cclxuICAgIDxtYXQtc3Bpbm5lciBjb2xvcj1cImFjY2VudFwiPjwvbWF0LXNwaW5uZXI+XHJcbiAgPC9kaXY+XHJcbiAgPGJpemRvYy1jdWJlLWV4cGxvcmUgI2l0ZW1zIFtjdWJlXT1cImN1YmUubmFtZVwiIFtheGVzXT1heGVzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgKGV4cGxvcmUpPVwiaXRlbSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAobG9hZGluZ0NoYW5nZSk9XCJsb2FkaW5nID0gJGV2ZW50XCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbc2NvcGVdPVwic2NvcGVcIj48L2JpemRvYy1jdWJlLWV4cGxvcmU+XHJcbjwvbmctY29udGFpbmVyPlxyXG4iXX0=
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwbG9yZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL3ZpZXdzL2N1YmUvZXhwbG9yZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL3ZpZXdzL2N1YmUvZXhwbG9yZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkxQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDL0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBUS9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBVS9CLHdCQUF3QixTQUF4Qix3QkFBeUIsU0FBUSxRQUFpQjtJQUl4RCxZQUFZLE9BQWlDLEVBQ25DLEdBQWtCLEVBQ2xCLE9BQW1CLEVBQzNCLE9BQW9CLEVBQ1osR0FBc0IsRUFDOUIsT0FBdUI7UUFDdkIsS0FBSyxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFMekIsUUFBRyxHQUFILEdBQUcsQ0FBZTtRQUNsQixZQUFPLEdBQVAsT0FBTyxDQUFZO1FBRW5CLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBUHZCLFlBQU8sR0FBb0UsRUFBRSxDQUFDO1FBRXZGLGFBQVEsR0FBVyxDQUFDLENBQUM7SUFRckIsQ0FBQztJQUNELFVBQVU7UUFDUixNQUFNLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQztRQUMzRCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLFFBQVE7WUFBRSxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN2QyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1lBQzFELE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDOUIsQ0FBQyxDQUFDLElBQUksS0FBSyxPQUFPLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQ2hELENBQUM7SUFDSixDQUFDO0lBQ0Q7OztLQUdDO0lBQ0QsTUFBTSxDQUFDLElBQVksRUFBRSxLQUFzQixFQUFFLEtBQWE7UUFDeEQsTUFBTSxJQUFJLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ25CLENBQUM7SUFDRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBQ0QsSUFBSSxDQUFDLEdBQXFCO1FBQ3hCLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxHQUFHLENBQUM7UUFDckIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDbkUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO2dCQUNyRixXQUFXLEVBQUUsSUFBSSxDQUFDLElBQUk7Z0JBQ3RCLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRTtnQkFDZixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7YUFDbEIsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDdkIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFO1lBQ0wsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7WUFDckIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0QsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YsQ0FBQTtxSEFwRE8sd0JBQXdCO3lHQUF4Qix3QkFBd0IsNkdDdkJoQyxrOURBaUNBO0FEVlEsd0JBQXdCO0lBSi9CLE1BQU0sQ0FBQztRQUNOLFFBQVEsRUFBRSxxQkFBcUI7S0FDaEMsQ0FBQztHQUVNLHdCQUF3QixDQW9EL0I7U0FwRE8sd0JBQXdCOzJGQUF4Qix3QkFBd0I7a0JBUi9CLFNBQVM7MkJBRUYsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgU2NvcGVUeXBlIH0gZnJvbSAnLi4vLi4vY29yZS9jb25maWd1cmF0aW9uJztcclxuaW1wb3J0IHsgRGF0YXNvdXJjZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL2RhdGFzb3VyY2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IEJpekRvYyB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycyc7XHJcbmltcG9ydCB7IGlzQXJyYXkgfSBmcm9tICcuLi8uLi9jb3JlL2Z1bmN0aW9ucyc7XHJcbmltcG9ydCB7IEN1YmVBeGlzIH0gZnJvbSAnLi4vLi4vY29yZS9tb2RlbHMnO1xyXG5pbXBvcnQgeyBQcm9tcHRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9wcm9tcHQuc2VydmljZSc7XHJcbmltcG9ydCB7IFJvdXRlckltcGwgfSBmcm9tICcuLi8uLi9jb3JlL3JvdXRlcic7XHJcbmltcG9ydCB7IFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9zZXNzaW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDdWJlU2VydmljZSB9IGZyb20gJy4uLy4uL2N1YmUvY3ViZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRXhwbG9yZUl0ZW1FdmVudCB9IGZyb20gJy4uLy4uL2N1YmUvZXhwbG9yZS9leHBsb3JlLWl0ZW1zLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERvY3VtZW50Vmlld1JlZiB9IGZyb20gJy4uL2RvY3VtZW50LXZpZXctcmVmJztcclxuaW1wb3J0IHsgQ3ViZUJhc2UgfSBmcm9tICcuL2N1YmUtYmFzZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICB0ZW1wbGF0ZVVybDogJy4vZXhwbG9yZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgaG9zdDogeyBjbGFzczogJ3ZpZXcnIH1cclxufSlcclxuQEJpekRvYyh7XHJcbiAgc2VsZWN0b3I6ICdiaXpkb2MtZXhwbG9yZS12aWV3J1xyXG59KVxyXG5leHBvcnRcclxuICBjbGFzcyBDdWJlRXhwbG9yZVZpZXdDb21wb25lbnQgZXh0ZW5kcyBDdWJlQmFzZTxPcHRpb25zPiB7XHJcbiAgcmVhZG9ubHkgc291cmNlczogeyBbYXhpczogc3RyaW5nXTogT2JzZXJ2YWJsZTx7IGtleTogc3RyaW5nOyB2YWx1ZTogYW55OyB9W10+OyB9ID0ge307XHJcbiAgZmlsdGVyczogQ3ViZUF4aXNbXTtcclxuICBwYWdlU2l6ZTogbnVtYmVyID0gNTtcclxuICBjb25zdHJ1Y3Rvcih2aWV3UmVmOiBEb2N1bWVudFZpZXdSZWY8T3B0aW9ucz4sXHJcbiAgICBwcml2YXRlIF9zYjogUHJvbXB0U2VydmljZSxcclxuICAgIHByaXZhdGUgX3JvdXRlcjogUm91dGVySW1wbCxcclxuICAgIHNlcnZpY2U6IEN1YmVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfZHM6IERhdGFzb3VyY2VTZXJ2aWNlLFxyXG4gICAgc2Vzc2lvbjogU2Vzc2lvblNlcnZpY2UpIHtcclxuICAgIHN1cGVyKHZpZXdSZWYsIHNlcnZpY2UsIHNlc3Npb24pO1xyXG4gIH1cclxuICBvblZpZXdCaW5kKCkge1xyXG4gICAgY29uc3QgeyBzY29wZSwgZmlsdGVycywgcGFnZVNpemUgfSA9IHRoaXMuX3ZpZXdSZWYub3B0aW9ucztcclxuICAgIHRoaXMuc2NvcGUgPSBzY29wZTtcclxuICAgIGlmIChwYWdlU2l6ZSkgdGhpcy5wYWdlU2l6ZSA9IHBhZ2VTaXplO1xyXG4gICAgdGhpcy5maWx0ZXJzID0gdGhpcy5jdWJlLmF4ZXMuZmlsdGVyKGEgPT4gaXNBcnJheShmaWx0ZXJzKSA/XHJcbiAgICAgIGZpbHRlcnMuaW5kZXhPZihhLm5hbWUpID4gLTEgOlxyXG4gICAgICBhLm5hbWUgPT09IGZpbHRlcnMpO1xyXG4gICAgdGhpcy5maWx0ZXJzLmZvckVhY2goZiA9PlxyXG4gICAgICB0aGlzLnNvdXJjZXNbZi5uYW1lXSA9IHRoaXMuX2RzLmFsbChmLmRhdGFUeXBlKVxyXG4gICAgKTtcclxuICB9XHJcbiAgLyoqXHJcbiAqXHJcbiAqIEBwYXJhbSB2YWx1ZVxyXG4gKi9cclxuICBmaWx0ZXIobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyLCB0aXRsZTogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBheGVzID0geyAuLi50aGlzLmF4ZXMgfTtcclxuICAgIGF4ZXNbbmFtZV0gPSB2YWx1ZTtcclxuICAgIHRoaXMuYW55RmlsdGVycyA9IHRydWU7XHJcbiAgICB0aGlzLmF4ZXMgPSBheGVzO1xyXG4gIH1cclxuICByZXNldCgpIHtcclxuICAgIHRoaXMuYXhlcyA9IHN1cGVyLmFnZ3JlZ2F0ZSh0aGlzLm9yaWdpbmFsQXhlcyk7XHJcbiAgICB0aGlzLmFueUZpbHRlcnMgPSBmYWxzZTtcclxuICB9XHJcbiAgaXRlbShldnQ6IEV4cGxvcmVJdGVtRXZlbnQpIHtcclxuICAgIGNvbnN0IHsga2V5cyB9ID0gZXZ0O1xyXG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgIHRoaXMuX3NlcnZpY2UuaXRlbSh0aGlzLmN1YmUubmFtZSwgdGhpcy5heGVzLCBrZXlzKS5zdWJzY3JpYmUoaXRlbSA9PiB7XHJcbiAgICAgIHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShbJ2N1YmUnLCB0aGlzLmN1YmUubmFtZSwgJ2V4cGxvcmUnLCAnaScsIGV2dC50ZW1wbGF0ZSwga2V5c1swXV0sIHtcclxuICAgICAgICBxdWVyeVBhcmFtczogdGhpcy5heGVzLFxyXG4gICAgICAgIHN0YXRlOiB7IGl0ZW0gfSxcclxuICAgICAgICBncm91cDogdGhpcy5ncm91cCxcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgfSwgZSA9PiB7XHJcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB0aGlzLl9zYi5lcnJvcihlLnN0YXR1cyA9PT0gNDA2ID8gJ1VuYXV0aG9yaXplZCcgOiBudWxsKTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG5pbnRlcmZhY2UgT3B0aW9ucyB7XHJcbiAgYWdncmVnYXRlPzogc3RyaW5nW107XHJcbiAgZmlsdGVyczogc3RyaW5nW107XHJcbiAgc2NvcGU/OiBTY29wZVR5cGU7XHJcbiAgcGFnZVNpemU/OiBudW1iZXI7XHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImhhc2RhdGFcIj5cclxuICA8ZGl2IGNsYXNzPVwibmF2LXRvb2xiYXJcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhbHRlcm5hdGVcIj5cclxuICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIFttYXRNZW51VHJpZ2dlckZvcl09XCJjbWVudVwiPnt7Y3ViZS50aXRsZX19IDxtYXQtaWNvbj5hcnJvd19kcm9wX2Rvd248L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgICA8bWF0LW1lbnUgI2NtZW51PlxyXG4gICAgICAgIDxidXR0b24gbWF0LW1lbnUtaXRlbSAqbmdGb3I9XCJsZXQgYSBvZiBhbHRlcm5hdGVcIlxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cInN3aXRjaFRvKGEpXCI+XHJcbiAgICAgICAgICB7e2EudGl0bGV9fVxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8L21hdC1tZW51PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8IS0tIGZpbHRlcnMgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBmIG9mIGZpbHRlcnNcIj5cclxuICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIFttYXRNZW51VHJpZ2dlckZvcl09XCJmbWVudVwiPnt7YXhlc1tmLm5hbWVdIHwgdHlwZVZhbHVlIDogZi5kYXRhVHlwZSB8IGFzeW5jfX0gPG1hdC1pY29uPmFycm93X2Ryb3BfZG93bjwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgICAgIDxtYXQtbWVudSAjZm1lbnUgeFBvc2l0aW9uPVwiYmVmb3JlXCI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtICpuZ0Zvcj1cImxldCBrdiBvZiBzb3VyY2VzW2YubmFtZV0gfCBhc3luY1wiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiZmlsdGVyKGYubmFtZSwga3Yua2V5LCBrdi52YWx1ZSlcIj5cclxuICAgICAgICAgIHt7a3YudmFsdWV9fVxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8L21hdC1tZW51PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8c3BhbiBjbGFzcz1cImRpdmlkZXJcIj48L3NwYW4+XHJcbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiaXRlbXMucGFnaW5hdG9yLnByZXZpb3VzUGFnZSgpXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ1ByZXZQYWdlJyB8IHRyYW5zbGF0ZVwiIFthdHRyLmFyaWEtbGFiZWxdPVwiJ1ByZXZQYWdlJyB8IHRyYW5zbGF0ZVwiIFtkaXNhYmxlZF09XCIhaXRlbXMucGFnaW5hdG9yLmhhc1ByZXZpb3VzUGFnZSgpXCI+PG1hdC1pY29uIGNsYXNzPVwibWF0LWljb24tcnRsLW1pcnJvclwiPmtleWJvYXJkX2Fycm93X2xlZnQ8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cIml0ZW1zLnBhZ2luYXRvci5uZXh0UGFnZSgpXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ05leHRQYWdlJyB8IHRyYW5zbGF0ZVwiIFthdHRyLmFyaWEtbGFiZWxdPVwiJ05leHRQYWdlJyB8IHRyYW5zbGF0ZVwiIFtkaXNhYmxlZF09XCIhaXRlbXMucGFnaW5hdG9yLmhhc05leHRQYWdlKClcIj48bWF0LWljb24gY2xhc3M9XCJtYXQtaWNvbi1ydGwtbWlycm9yXCI+a2V5Ym9hcmRfYXJyb3dfcmlnaHQ8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJsb2FkaW5nLXZpZXdcIiAqbmdJZj1cImxvYWRpbmdcIj5cclxuICAgIDxtYXQtc3Bpbm5lciBjb2xvcj1cImFjY2VudFwiPjwvbWF0LXNwaW5uZXI+XHJcbiAgPC9kaXY+XHJcbiAgPGJpemRvYy1jdWJlLWV4cGxvcmUgI2l0ZW1zIFtjdWJlXT1cImN1YmUubmFtZVwiIFtheGVzXT1heGVzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgKGV4cGxvcmUpPVwiaXRlbSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAobG9hZGluZ0NoYW5nZSk9XCJsb2FkaW5nID0gJGV2ZW50XCIgW3BhZ2VTaXplXT1cInBhZ2VTaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbc2NvcGVdPVwic2NvcGVcIj48L2JpemRvYy1jdWJlLWV4cGxvcmU+XHJcbjwvbmctY29udGFpbmVyPlxyXG4iXX0=
|