@skyux/tiles 9.20.0 → 9.20.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/documentation.json +264 -261
- package/esm2022/lib/modules/tiles/tile-dashboard/tile-dashboard.component.mjs +28 -6
- package/fesm2022/skyux-tiles.mjs +27 -5
- package/fesm2022/skyux-tiles.mjs.map +1 -1
- package/lib/modules/tiles/tile-dashboard/tile-dashboard.component.d.ts +1 -0
- package/package.json +6 -6
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Optional, Output, ViewChild, ViewChildren, } from '@angular/core';
|
|
1
|
+
import { Component, EventEmitter, HostBinding, Input, Optional, Output, ViewChild, ViewChildren, } from '@angular/core';
|
|
2
2
|
import { SkyMediaBreakpoints } from '@skyux/core';
|
|
3
|
-
import { Subject } from 'rxjs';
|
|
3
|
+
import { Subject, Subscription } from 'rxjs';
|
|
4
4
|
import { take, takeUntil } from 'rxjs/operators';
|
|
5
5
|
import { SkyTileDashboardColumnComponent } from '../tile-dashboard-column/tile-dashboard-column.component';
|
|
6
6
|
import { SkyTileDashboardMessageType } from './tile-dashboard-message-type';
|
|
@@ -33,10 +33,12 @@ export class SkyTileDashboardComponent {
|
|
|
33
33
|
#dashboardService;
|
|
34
34
|
#mediaQueryService;
|
|
35
35
|
#ngUnsubscribe;
|
|
36
|
+
#subscriptions;
|
|
36
37
|
#resourcesService;
|
|
37
38
|
#viewReady;
|
|
38
39
|
#_config;
|
|
39
40
|
constructor(dashboardService, mediaQueryService, resourcesService) {
|
|
41
|
+
this.layoutClassName = 'sky-tile-dashboard-multi-column sky-tile-dashboard-gt-xs';
|
|
40
42
|
/**
|
|
41
43
|
* The observable to send commands to the tile dashboard. The commands must respect the
|
|
42
44
|
* `SkyTileDashboardMessage` type.
|
|
@@ -51,12 +53,28 @@ export class SkyTileDashboardComponent {
|
|
|
51
53
|
this.tileMovedReport = '';
|
|
52
54
|
this.#configSet = false;
|
|
53
55
|
this.#ngUnsubscribe = new Subject();
|
|
56
|
+
this.#subscriptions = new Subscription();
|
|
54
57
|
this.#viewReady = false;
|
|
55
58
|
this.#dashboardService = dashboardService;
|
|
56
59
|
this.#mediaQueryService = mediaQueryService;
|
|
57
60
|
this.#resourcesService = resourcesService;
|
|
58
61
|
this.moveInstructionsId =
|
|
59
62
|
this.#dashboardService.bagId + '-move-instructions';
|
|
63
|
+
this.#subscriptions.add(this.#mediaQueryService.subscribe((args) => {
|
|
64
|
+
if (args === SkyMediaBreakpoints.xs ||
|
|
65
|
+
args === SkyMediaBreakpoints.sm) {
|
|
66
|
+
this.layoutClassName = 'sky-tile-dashboard-single-column';
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
this.layoutClassName = 'sky-tile-dashboard-multi-column';
|
|
70
|
+
}
|
|
71
|
+
if (args === SkyMediaBreakpoints.xs) {
|
|
72
|
+
this.layoutClassName += ' sky-tile-dashboard-xs';
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
this.layoutClassName += ' sky-tile-dashboard-gt-xs';
|
|
76
|
+
}
|
|
77
|
+
}));
|
|
60
78
|
this.#dashboardService.configChange.subscribe((config) => {
|
|
61
79
|
this.configChange.emit(config);
|
|
62
80
|
// Update aria live region with tile drag info
|
|
@@ -87,6 +105,7 @@ export class SkyTileDashboardComponent {
|
|
|
87
105
|
ngOnDestroy() {
|
|
88
106
|
this.#ngUnsubscribe.next();
|
|
89
107
|
this.#ngUnsubscribe.complete();
|
|
108
|
+
this.#subscriptions.unsubscribe();
|
|
90
109
|
this.#dashboardService.destroy();
|
|
91
110
|
}
|
|
92
111
|
#checkReady() {
|
|
@@ -109,14 +128,17 @@ export class SkyTileDashboardComponent {
|
|
|
109
128
|
}
|
|
110
129
|
}
|
|
111
130
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SkyTileDashboardComponent, deps: [{ token: i1.SkyTileDashboardService }, { token: i2.SkyMediaQueryService }, { token: i3.SkyLibResourcesService, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
112
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SkyTileDashboardComponent, selector: "sky-tile-dashboard", inputs: { config: "config", messageStream: "messageStream", settingsKey: "settingsKey" }, outputs: { configChange: "configChange" }, providers: [SkyTileDashboardService], viewQueries: [{ propertyName: "singleColumn", first: true, predicate: ["singleColumn"], descendants: true, read: SkyTileDashboardColumnComponent }, { propertyName: "columns", predicate: SkyTileDashboardColumnComponent, descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"config\">\n <span aria-live=\"assertive\" class=\"sky-assistive-text\">\n {{ tileMovedReport }}\n </span>\n <sky-tile-dashboard-column\n *ngFor=\"let column of config.layout.multiColumn\"\n class=\"sky-tile-dashboard-layout-multi\"\n [ngStyle]=\"{\n 'flex-basis': 100 / config.layout.multiColumn.length + '%'\n }\"\n >\n </sky-tile-dashboard-column>\n <sky-tile-dashboard-column\n class=\"sky-tile-dashboard-layout-single\"\n #singleColumn\n >\n </sky-tile-dashboard-column>\n <span class=\"sky-screen-reader-only\" [id]=\"moveInstructionsId\">{{\n 'skyux_tile_move_instructions' | skyLibResources\n }}</span>\n <ng-content />\n</ng-container>\n", styles: [":host{display:block;padding:0}:host .sky-tile-dashboard-layout-multi{display:none}:host .sky-tile-dashboard-layout-single{display:block}:host .sky-tile-dashboard-layout-single ::ng-deep .sky-tile,:host .sky-tile-dashboard-layout-multi ::ng-deep .sky-tile{margin-bottom:0}:host-context(.sky-
|
|
131
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SkyTileDashboardComponent, selector: "sky-tile-dashboard", inputs: { config: "config", messageStream: "messageStream", settingsKey: "settingsKey" }, outputs: { configChange: "configChange" }, host: { properties: { "class": "this.layoutClassName" } }, providers: [SkyTileDashboardService], viewQueries: [{ propertyName: "singleColumn", first: true, predicate: ["singleColumn"], descendants: true, read: SkyTileDashboardColumnComponent }, { propertyName: "columns", predicate: SkyTileDashboardColumnComponent, descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"config\">\n <span aria-live=\"assertive\" class=\"sky-assistive-text\">\n {{ tileMovedReport }}\n </span>\n <sky-tile-dashboard-column\n *ngFor=\"let column of config.layout.multiColumn\"\n class=\"sky-tile-dashboard-layout-multi\"\n [ngStyle]=\"{\n 'flex-basis': 100 / config.layout.multiColumn.length + '%'\n }\"\n >\n </sky-tile-dashboard-column>\n <sky-tile-dashboard-column\n class=\"sky-tile-dashboard-layout-single\"\n #singleColumn\n >\n </sky-tile-dashboard-column>\n <span class=\"sky-screen-reader-only\" [id]=\"moveInstructionsId\">{{\n 'skyux_tile_move_instructions' | skyLibResources\n }}</span>\n <ng-content />\n</ng-container>\n", styles: [":host{display:block;padding:0}:host .sky-tile-dashboard-layout-multi{display:none}:host .sky-tile-dashboard-layout-single{display:block}:host .sky-tile-dashboard-layout-single ::ng-deep .sky-tile,:host .sky-tile-dashboard-layout-multi ::ng-deep .sky-tile{margin-bottom:0}:host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-single ::ng-deep .sky-tile,:host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-multi ::ng-deep .sky-tile{margin-bottom:20px}:host-context(.sky-tile-dashboard-gt-xs) :host-context(.sky-theme-default){padding-top:20px}:host-context(.sky-tile-dashboard-multi-column){display:flex;padding:0 10px}:host-context(.sky-tile-dashboard-multi-column) .sky-tile-dashboard-layout-multi{display:block}:host-context(.sky-tile-dashboard-multi-column) .sky-tile-dashboard-layout-single{display:none}@media screen{.sky-assistive-text{width:0;height:0;padding:0;opacity:0;position:absolute;margin:-1px;border:0;overflow:hidden;clip:rect(0,0,0,0);outline:none;white-space:nowrap}}:host-context(.sky-theme-default){background-color:#eeeeef}:host-context(.sky-theme-modern) :host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-single ::ng-deep .sky-tile,:host-context(.sky-theme-modern) :host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-multi ::ng-deep .sky-tile{margin-bottom:30px}.sky-theme-modern :host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-single ::ng-deep .sky-tile,.sky-theme-modern :host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-multi ::ng-deep .sky-tile{margin-bottom:30px}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i5.SkyTileDashboardColumnComponent, selector: "sky-tile-dashboard-column" }, { kind: "pipe", type: i3.SkyLibResourcesPipe, name: "skyLibResources" }] }); }
|
|
113
132
|
}
|
|
114
133
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SkyTileDashboardComponent, decorators: [{
|
|
115
134
|
type: Component,
|
|
116
|
-
args: [{ selector: 'sky-tile-dashboard', providers: [SkyTileDashboardService], template: "<ng-container *ngIf=\"config\">\n <span aria-live=\"assertive\" class=\"sky-assistive-text\">\n {{ tileMovedReport }}\n </span>\n <sky-tile-dashboard-column\n *ngFor=\"let column of config.layout.multiColumn\"\n class=\"sky-tile-dashboard-layout-multi\"\n [ngStyle]=\"{\n 'flex-basis': 100 / config.layout.multiColumn.length + '%'\n }\"\n >\n </sky-tile-dashboard-column>\n <sky-tile-dashboard-column\n class=\"sky-tile-dashboard-layout-single\"\n #singleColumn\n >\n </sky-tile-dashboard-column>\n <span class=\"sky-screen-reader-only\" [id]=\"moveInstructionsId\">{{\n 'skyux_tile_move_instructions' | skyLibResources\n }}</span>\n <ng-content />\n</ng-container>\n", styles: [":host{display:block;padding:0}:host .sky-tile-dashboard-layout-multi{display:none}:host .sky-tile-dashboard-layout-single{display:block}:host .sky-tile-dashboard-layout-single ::ng-deep .sky-tile,:host .sky-tile-dashboard-layout-multi ::ng-deep .sky-tile{margin-bottom:0}:host-context(.sky-
|
|
135
|
+
args: [{ selector: 'sky-tile-dashboard', providers: [SkyTileDashboardService], template: "<ng-container *ngIf=\"config\">\n <span aria-live=\"assertive\" class=\"sky-assistive-text\">\n {{ tileMovedReport }}\n </span>\n <sky-tile-dashboard-column\n *ngFor=\"let column of config.layout.multiColumn\"\n class=\"sky-tile-dashboard-layout-multi\"\n [ngStyle]=\"{\n 'flex-basis': 100 / config.layout.multiColumn.length + '%'\n }\"\n >\n </sky-tile-dashboard-column>\n <sky-tile-dashboard-column\n class=\"sky-tile-dashboard-layout-single\"\n #singleColumn\n >\n </sky-tile-dashboard-column>\n <span class=\"sky-screen-reader-only\" [id]=\"moveInstructionsId\">{{\n 'skyux_tile_move_instructions' | skyLibResources\n }}</span>\n <ng-content />\n</ng-container>\n", styles: [":host{display:block;padding:0}:host .sky-tile-dashboard-layout-multi{display:none}:host .sky-tile-dashboard-layout-single{display:block}:host .sky-tile-dashboard-layout-single ::ng-deep .sky-tile,:host .sky-tile-dashboard-layout-multi ::ng-deep .sky-tile{margin-bottom:0}:host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-single ::ng-deep .sky-tile,:host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-multi ::ng-deep .sky-tile{margin-bottom:20px}:host-context(.sky-tile-dashboard-gt-xs) :host-context(.sky-theme-default){padding-top:20px}:host-context(.sky-tile-dashboard-multi-column){display:flex;padding:0 10px}:host-context(.sky-tile-dashboard-multi-column) .sky-tile-dashboard-layout-multi{display:block}:host-context(.sky-tile-dashboard-multi-column) .sky-tile-dashboard-layout-single{display:none}@media screen{.sky-assistive-text{width:0;height:0;padding:0;opacity:0;position:absolute;margin:-1px;border:0;overflow:hidden;clip:rect(0,0,0,0);outline:none;white-space:nowrap}}:host-context(.sky-theme-default){background-color:#eeeeef}:host-context(.sky-theme-modern) :host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-single ::ng-deep .sky-tile,:host-context(.sky-theme-modern) :host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-multi ::ng-deep .sky-tile{margin-bottom:30px}.sky-theme-modern :host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-single ::ng-deep .sky-tile,.sky-theme-modern :host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-multi ::ng-deep .sky-tile{margin-bottom:30px}\n"] }]
|
|
117
136
|
}], ctorParameters: function () { return [{ type: i1.SkyTileDashboardService }, { type: i2.SkyMediaQueryService }, { type: i3.SkyLibResourcesService, decorators: [{
|
|
118
137
|
type: Optional
|
|
119
|
-
}] }]; }, propDecorators: {
|
|
138
|
+
}] }]; }, propDecorators: { layoutClassName: [{
|
|
139
|
+
type: HostBinding,
|
|
140
|
+
args: ['class']
|
|
141
|
+
}], config: [{
|
|
120
142
|
type: Input
|
|
121
143
|
}], messageStream: [{
|
|
122
144
|
type: Input
|
|
@@ -134,4 +156,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
134
156
|
static: false,
|
|
135
157
|
}]
|
|
136
158
|
}] } });
|
|
137
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZS1kYXNoYm9hcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3RpbGVzL3NyYy9saWIvbW9kdWxlcy90aWxlcy90aWxlLWRhc2hib2FyZC90aWxlLWRhc2hib2FyZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvdGlsZXMvc3JjL2xpYi9tb2R1bGVzL3RpbGVzL3RpbGUtZGFzaGJvYXJkL3RpbGUtZGFzaGJvYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFFTCxRQUFRLEVBQ1IsTUFBTSxFQUVOLFNBQVMsRUFDVCxZQUFZLEdBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLG1CQUFtQixFQUF3QixNQUFNLGFBQWEsQ0FBQztBQUd4RSxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFakQsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sMERBQTBELENBQUM7QUFJM0csT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDNUUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7Ozs7QUFFbkU7O0dBRUc7QUFPSCxNQUFNLE9BQU8seUJBQXlCO0lBQ3BDOzs7T0FHRztJQUNILElBQ1csTUFBTSxDQUFDLEtBQXlDO1FBQ3pELElBQUksS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUM3QixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztZQUN0QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUks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QU07WUFFUixLQUFLLDJCQUEyQixDQUFDLFdBQVc7Z0JBQzFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDbEQsTUFBTTtTQUNUO0lBQ0gsQ0FBQzs4R0E1SlUseUJBQXlCO2tHQUF6Qix5QkFBeUIsa0xBRnpCLENBQUMsdUJBQXVCLENBQUMsbUhBaUQ1QiwrQkFBK0IsMENBSnpCLCtCQUErQixnREM3RS9DLHFzQkFzQkE7OzJGRFlhLHlCQUF5QjtrQkFOckMsU0FBUzsrQkFDRSxvQkFBb0IsYUFHbkIsQ0FBQyx1QkFBdUIsQ0FBQzs7MEJBcUVqQyxRQUFROzRDQTdEQSxNQUFNO3NCQURoQixLQUFLO2dCQWtCQyxhQUFhO3NCQURuQixLQUFLO2dCQVdDLFdBQVc7c0JBRGpCLEtBQUs7Z0JBU0MsWUFBWTtzQkFEbEIsTUFBTTtnQkFJQSxPQUFPO3NCQURiLFlBQVk7dUJBQUMsK0JBQStCO2dCQU90QyxZQUFZO3NCQUpsQixTQUFTO3VCQUFDLGNBQWMsRUFBRTt3QkFDekIsSUFBSSxFQUFFLCtCQUErQjt3QkFDckMsTUFBTSxFQUFFLEtBQUs7cUJBQ2QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT3B0aW9uYWwsXG4gIE91dHB1dCxcbiAgUXVlcnlMaXN0LFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdDaGlsZHJlbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lNZWRpYUJyZWFrcG9pbnRzLCBTa3lNZWRpYVF1ZXJ5U2VydmljZSB9IGZyb20gJ0Bza3l1eC9jb3JlJztcbmltcG9ydCB7IFNreUxpYlJlc291cmNlc1NlcnZpY2UgfSBmcm9tICdAc2t5dXgvaTE4bic7XG5cbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5VGlsZURhc2hib2FyZENvbHVtbkNvbXBvbmVudCB9IGZyb20gJy4uL3RpbGUtZGFzaGJvYXJkLWNvbHVtbi90aWxlLWRhc2hib2FyZC1jb2x1bW4uY29tcG9uZW50JztcbmltcG9ydCB7IFNreVRpbGVEYXNoYm9hcmRDb25maWcgfSBmcm9tICcuLi90aWxlLWRhc2hib2FyZC1jb25maWcvdGlsZS1kYXNoYm9hcmQtY29uZmlnJztcblxuaW1wb3J0IHsgU2t5VGlsZURhc2hib2FyZE1lc3NhZ2UgfSBmcm9tICcuL3RpbGUtZGFzaGJvYXJkLW1lc3NhZ2UnO1xuaW1wb3J0IHsgU2t5VGlsZURhc2hib2FyZE1lc3NhZ2VUeXBlIH0gZnJvbSAnLi90aWxlLWRhc2hib2FyZC1tZXNzYWdlLXR5cGUnO1xuaW1wb3J0IHsgU2t5VGlsZURhc2hib2FyZFNlcnZpY2UgfSBmcm9tICcuL3RpbGUtZGFzaGJvYXJkLnNlcnZpY2UnO1xuXG4vKipcbiAqIFNwZWNpZmllcyBhIGNvbnRhaW5lciB0byBncm91cCBtdWx0aXBsZSB0aWxlcy5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LXRpbGUtZGFzaGJvYXJkJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGlsZS1kYXNoYm9hcmQuY29tcG9uZW50LnNjc3MnXSxcbiAgdGVtcGxhdGVVcmw6ICcuL3RpbGUtZGFzaGJvYXJkLmNvbXBvbmVudC5odG1sJyxcbiAgcHJvdmlkZXJzOiBbU2t5VGlsZURhc2hib2FyZFNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lUaWxlRGFzaGJvYXJkQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgLyoqXG4gICAqIFBvcHVsYXRlcyB0aGUgdGlsZSBkYXNoYm9hcmQgYmFzZWQgb24gdGhlIGBTa3lUaWxlRGFzaGJvYXJkQ29uZmlnYCBvYmplY3QuXG4gICAqIEByZXF1aXJlZFxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBjb25maWcodmFsdWU6IFNreVRpbGVEYXNoYm9hcmRDb25maWcgfCB1bmRlZmluZWQpIHtcbiAgICBpZiAodmFsdWUgJiYgIXRoaXMuI2NvbmZpZ1NldCkge1xuICAgICAgdGhpcy4jX2NvbmZpZyA9IHZhbHVlO1xuICAgICAgdGhpcy4jY29uZmlnU2V0ID0gdHJ1ZTtcbiAgICAgIHRoaXMuI2NoZWNrUmVhZHkoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNvbmZpZygpOiBTa3lUaWxlRGFzaGJvYXJkQ29uZmlnIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy4jX2NvbmZpZztcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgb2JzZXJ2YWJsZSB0byBzZW5kIGNvbW1hbmRzIHRvIHRoZSB0aWxlIGRhc2hib2FyZC4gVGhlIGNvbW1hbmRzIG11c3QgcmVzcGVjdCB0aGVcbiAgICogYFNreVRpbGVEYXNoYm9hcmRNZXNzYWdlYCB0eXBlLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIG1lc3NhZ2VTdHJlYW0gPSBuZXcgU3ViamVjdDxTa3lUaWxlRGFzaGJvYXJkTWVzc2FnZT4oKTtcblxuICAvKipcbiAgICogVGhlIHVuaXF1ZSBrZXkgZm9yIHRoZSBVSSBDb25maWcgU2VydmljZSB0byByZXRyaWV2ZSBzdG9yZWQgc2V0dGluZ3NcbiAgICogZnJvbSBhIGRhdGFiYXNlLiBUaGUgVUkgQ29uZmlnIFNlcnZpY2Ugc2F2ZXMgY29uZmlndXJhdGlvbiBzZXR0aW5ncyBmb3IgdXNlcnNcbiAgICogdG8gcHJlc2VydmUgdGhlIGxheW91dCBhbmQgY29sbGFwc2VkIHN0YXRlIG9mIHRpbGUgZGFzaGJvYXJkcy4gVGhlIFVJIENvbmZpZyBTZXJ2aWNlIHJlbGllcyBvbiBgaWRgIHZhbHVlcyBmcm9tIHRoZSBgY29uZmlnYCBwcm9wZXJ0eSB0byBtYWludGFpbiB1c2VyIHNldHRpbmdzLiBGb3IgbW9yZSBpbmZvcm1hdGlvblxuICAgKiBhYm91dCB0aGUgVUkgQ29uZmlnIFNlcnZpY2UsIHNlZSB0aGVcbiAgICogW3N0aWNreSBzZXR0aW5ncyBkb2N1bWVudGF0aW9uXShodHRwczovL2RldmVsb3Blci5ibGFja2JhdWQuY29tL3NreXV4L2xlYXJuL2RldmVsb3Avc3RpY2t5LXNldHRpbmdzKS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXR0aW5nc0tleTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBGaXJlcyB3aGVuIHRoZSB0aWxlIGRhc2hib2FyZCBjaGFuZ2VzIHN0YXRlIGFuZCBlbWl0cyBhIFNreVRpbGVEYXNoYm9hcmRDb25maWdcbiAgICogb2JqZWN0LiBUaGlzIG9jY3VycyB3aGVuIHRpbGVzIGNvbGxhcHNlIG9yIGV4cGFuZCBhbmQgd2hlbiB1c2VycyBkcmFnIGFuZCBkcm9wXG4gICAqIHRpbGVzIHRvIHJlYXJyYW5nZSB0aGVtLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBjb25maWdDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFNreVRpbGVEYXNoYm9hcmRDb25maWc+KCk7XG5cbiAgQFZpZXdDaGlsZHJlbihTa3lUaWxlRGFzaGJvYXJkQ29sdW1uQ29tcG9uZW50KVxuICBwdWJsaWMgY29sdW1uczogUXVlcnlMaXN0PFNreVRpbGVEYXNoYm9hcmRDb2x1bW5Db21wb25lbnQ+IHwgdW5kZWZpbmVkO1xuXG4gIEBWaWV3Q2hpbGQoJ3NpbmdsZUNvbHVtbicsIHtcbiAgICByZWFkOiBTa3lUaWxlRGFzaGJvYXJkQ29sdW1uQ29tcG9uZW50LFxuICAgIHN0YXRpYzogZmFsc2UsXG4gIH0pXG4gIHB1YmxpYyBzaW5nbGVDb2x1bW46IFNreVRpbGVEYXNoYm9hcmRDb2x1bW5Db21wb25lbnQgfCB1bmRlZmluZWQ7XG5cbiAgcHVibGljIHRpbGVNb3ZlZFJlcG9ydCA9ICcnO1xuXG4gIHB1YmxpYyBtb3ZlSW5zdHJ1Y3Rpb25zSWQ6IHN0cmluZztcblxuICAjY29uZmlnU2V0ID0gZmFsc2U7XG4gICNkYXNoYm9hcmRTZXJ2aWNlOiBTa3lUaWxlRGFzaGJvYXJkU2VydmljZTtcbiAgI21lZGlhUXVlcnlTZXJ2aWNlOiBTa3lNZWRpYVF1ZXJ5U2VydmljZTtcbiAgI25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAjcmVzb3VyY2VzU2VydmljZTogU2t5TGliUmVzb3VyY2VzU2VydmljZSB8IHVuZGVmaW5lZDtcbiAgI3ZpZXdSZWFkeSA9IGZhbHNlO1xuICAjX2NvbmZpZzogU2t5VGlsZURhc2hib2FyZENvbmZpZyB8IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBkYXNoYm9hcmRTZXJ2aWNlOiBTa3lUaWxlRGFzaGJvYXJkU2VydmljZSxcbiAgICBtZWRpYVF1ZXJ5U2VydmljZTogU2t5TWVkaWFRdWVyeVNlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgcmVzb3VyY2VzU2VydmljZT86IFNreUxpYlJlc291cmNlc1NlcnZpY2UsXG4gICkge1xuICAgIHRoaXMuI2Rhc2hib2FyZFNlcnZpY2UgPSBkYXNoYm9hcmRTZXJ2aWNlO1xuICAgIHRoaXMuI21lZGlhUXVlcnlTZXJ2aWNlID0gbWVkaWFRdWVyeVNlcnZpY2U7XG4gICAgdGhpcy4jcmVzb3VyY2VzU2VydmljZSA9IHJlc291cmNlc1NlcnZpY2U7XG4gICAgdGhpcy5tb3ZlSW5zdHJ1Y3Rpb25zSWQgPVxuICAgICAgdGhpcy4jZGFzaGJvYXJkU2VydmljZS5iYWdJZCArICctbW92ZS1pbnN0cnVjdGlvbnMnO1xuXG4gICAgdGhpcy4jZGFzaGJvYXJkU2VydmljZS5jb25maWdDaGFuZ2Uuc3Vic2NyaWJlKFxuICAgICAgKGNvbmZpZzogU2t5VGlsZURhc2hib2FyZENvbmZpZykgPT4ge1xuICAgICAgICB0aGlzLmNvbmZpZ0NoYW5nZS5lbWl0KGNvbmZpZyk7XG5cbiAgICAgICAgLy8gVXBkYXRlIGFyaWEgbGl2ZSByZWdpb24gd2l0aCB0aWxlIGRyYWcgaW5mb1xuICAgICAgICBpZiAoY29uZmlnLm1vdmVkVGlsZSAmJiB0aGlzLiNyZXNvdXJjZXNTZXJ2aWNlKSB7XG4gICAgICAgICAgbGV0IG1lc3NhZ2VPYnNlcnZhYmxlOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgdGhpcy4jbWVkaWFRdWVyeVNlcnZpY2UuY3VycmVudCA9PT0gU2t5TWVkaWFCcmVha3BvaW50cy54cyB8fFxuICAgICAgICAgICAgdGhpcy4jbWVkaWFRdWVyeVNlcnZpY2UuY3VycmVudCA9PT0gU2t5TWVkaWFCcmVha3BvaW50cy5zbVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgbWVzc2FnZU9ic2VydmFibGUgPSB0aGlzLiNyZXNvdXJjZXNTZXJ2aWNlLmdldFN0cmluZyhcbiAgICAgICAgICAgICAgJ3NreXV4X3RpbGVfbW92ZWRfYXNzaXN0aXZlX3RleHQnLFxuICAgICAgICAgICAgICBjb25maWcubW92ZWRUaWxlLnRpbGVEZXNjcmlwdGlvbixcbiAgICAgICAgICAgICAgJzEnLFxuICAgICAgICAgICAgICAnMScsXG4gICAgICAgICAgICAgIGNvbmZpZy5tb3ZlZFRpbGUucG9zaXRpb24udG9TdHJpbmcoKSxcbiAgICAgICAgICAgICAgY29uZmlnLmxheW91dC5zaW5nbGVDb2x1bW4udGlsZXMubGVuZ3RoLnRvU3RyaW5nKCksXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBtZXNzYWdlT2JzZXJ2YWJsZSA9IHRoaXMuI3Jlc291cmNlc1NlcnZpY2UuZ2V0U3RyaW5nKFxuICAgICAgICAgICAgICAnc2t5dXhfdGlsZV9tb3ZlZF9hc3Npc3RpdmVfdGV4dCcsXG4gICAgICAgICAgICAgIGNvbmZpZy5tb3ZlZFRpbGUudGlsZURlc2NyaXB0aW9uLFxuICAgICAgICAgICAgICBjb25maWcubW92ZWRUaWxlLmNvbHVtbi50b1N0cmluZygpLFxuICAgICAgICAgICAgICBjb25maWcubGF5b3V0Lm11bHRpQ29sdW1uLmxlbmd0aC50b1N0cmluZygpLFxuICAgICAgICAgICAgICBjb25maWcubW92ZWRUaWxlLnBvc2l0aW9uLnRvU3RyaW5nKCksXG4gICAgICAgICAgICAgIGNvbmZpZy5sYXlvdXQubXVsdGlDb2x1bW5bXG4gICAgICAgICAgICAgICAgY29uZmlnLm1vdmVkVGlsZS5jb2x1bW4gLSAxXG4gICAgICAgICAgICAgIF0udGlsZXMubGVuZ3RoLnRvU3RyaW5nKCksXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cbiAgICAgICAgICBtZXNzYWdlT2JzZXJ2YWJsZS5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgobWVzc2FnZTogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnRpbGVNb3ZlZFJlcG9ydCA9IG1lc3NhZ2U7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5tZXNzYWdlU3RyZWFtXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChtZXNzYWdlOiBTa3lUaWxlRGFzaGJvYXJkTWVzc2FnZSkgPT4ge1xuICAgICAgICB0aGlzLiNoYW5kbGVJbmNvbWluZ01lc3NhZ2VzKG1lc3NhZ2UpO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLiN2aWV3UmVhZHkgPSB0cnVlO1xuICAgIHRoaXMuI2NoZWNrUmVhZHkoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gICAgdGhpcy4jZGFzaGJvYXJkU2VydmljZS5kZXN0cm95KCk7XG4gIH1cblxuICAjY2hlY2tSZWFkeSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy4jdmlld1JlYWR5ICYmIHRoaXMuY29uZmlnKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuY29uZmlnICYmIHRoaXMuY29sdW1ucyAmJiB0aGlzLnNpbmdsZUNvbHVtbikge1xuICAgICAgICAgIHRoaXMuI2Rhc2hib2FyZFNlcnZpY2UuaW5pdChcbiAgICAgICAgICAgIHRoaXMuY29uZmlnLFxuICAgICAgICAgICAgdGhpcy5jb2x1bW5zLFxuICAgICAgICAgICAgdGhpcy5zaW5nbGVDb2x1bW4sXG4gICAgICAgICAgICB0aGlzLnNldHRpbmdzS2V5LFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH0sIDApO1xuICAgIH1cbiAgfVxuXG4gICNoYW5kbGVJbmNvbWluZ01lc3NhZ2VzKG1lc3NhZ2U6IFNreVRpbGVEYXNoYm9hcmRNZXNzYWdlKTogdm9pZCB7XG4gICAgc3dpdGNoIChtZXNzYWdlLnR5cGUpIHtcbiAgICAgIGNhc2UgU2t5VGlsZURhc2hib2FyZE1lc3NhZ2VUeXBlLkV4cGFuZEFsbDpcbiAgICAgICAgdGhpcy4jZGFzaGJvYXJkU2VydmljZS5zZXRBbGxUaWxlc0NvbGxhcHNlZChmYWxzZSk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIFNreVRpbGVEYXNoYm9hcmRNZXNzYWdlVHlwZS5Db2xsYXBzZUFsbDpcbiAgICAgICAgdGhpcy4jZGFzaGJvYXJkU2VydmljZS5zZXRBbGxUaWxlc0NvbGxhcHNlZCh0cnVlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiY29uZmlnXCI+XG4gIDxzcGFuIGFyaWEtbGl2ZT1cImFzc2VydGl2ZVwiIGNsYXNzPVwic2t5LWFzc2lzdGl2ZS10ZXh0XCI+XG4gICAge3sgdGlsZU1vdmVkUmVwb3J0IH19XG4gIDwvc3Bhbj5cbiAgPHNreS10aWxlLWRhc2hib2FyZC1jb2x1bW5cbiAgICAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbmZpZy5sYXlvdXQubXVsdGlDb2x1bW5cIlxuICAgIGNsYXNzPVwic2t5LXRpbGUtZGFzaGJvYXJkLWxheW91dC1tdWx0aVwiXG4gICAgW25nU3R5bGVdPVwie1xuICAgICAgJ2ZsZXgtYmFzaXMnOiAxMDAgLyBjb25maWcubGF5b3V0Lm11bHRpQ29sdW1uLmxlbmd0aCArICclJ1xuICAgIH1cIlxuICA+XG4gIDwvc2t5LXRpbGUtZGFzaGJvYXJkLWNvbHVtbj5cbiAgPHNreS10aWxlLWRhc2hib2FyZC1jb2x1bW5cbiAgICBjbGFzcz1cInNreS10aWxlLWRhc2hib2FyZC1sYXlvdXQtc2luZ2xlXCJcbiAgICAjc2luZ2xlQ29sdW1uXG4gID5cbiAgPC9za3ktdGlsZS1kYXNoYm9hcmQtY29sdW1uPlxuICA8c3BhbiBjbGFzcz1cInNreS1zY3JlZW4tcmVhZGVyLW9ubHlcIiBbaWRdPVwibW92ZUluc3RydWN0aW9uc0lkXCI+e3tcbiAgICAnc2t5dXhfdGlsZV9tb3ZlX2luc3RydWN0aW9ucycgfCBza3lMaWJSZXNvdXJjZXNcbiAgfX08L3NwYW4+XG4gIDxuZy1jb250ZW50IC8+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
159
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZS1kYXNoYm9hcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3RpbGVzL3NyYy9saWIvbW9kdWxlcy90aWxlcy90aWxlLWRhc2hib2FyZC90aWxlLWRhc2hib2FyZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvdGlsZXMvc3JjL2xpYi9tb2R1bGVzL3RpbGVzL3RpbGUtZGFzaGJvYXJkL3RpbGUtZGFzaGJvYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBRUwsUUFBUSxFQUNSLE1BQU0sRUFFTixTQUFTLEVBQ1QsWUFBWSxHQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxtQkFBbUIsRUFBd0IsTUFBTSxhQUFhLENBQUM7QUFHeEUsT0FBTyxFQUFjLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDekQsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUkzRyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM1RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7OztBQUVuRTs7R0FFRztBQU9ILE1BQU0sT0FBTyx5QkFBeUI7SUFLcEM7OztPQUdHO0lBQ0gsSUFDVyxNQUFNLENBQUMsS0FBeUM7UUFDekQsSUFBSSxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQzdCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1lBQ3RCLElBQUks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O3NCQURoQixLQUFLO2dCQWtCQyxhQUFhO3NCQURuQixLQUFLO2dCQVdDLFdBQVc7c0JBRGpCLEtBQUs7Z0JBU0MsWUFBWTtzQkFEbEIsTUFBTTtnQkFJQSxPQUFPO3NCQURiLFlBQVk7dUJBQUMsK0JBQStCO2dCQU90QyxZQUFZO3NCQUpsQixTQUFTO3VCQUFDLGNBQWMsRUFBRTt3QkFDekIsSUFBSSxFQUFFLCtCQUErQjt3QkFDckMsTUFBTSxFQUFFLEtBQUs7cUJBQ2QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9wdGlvbmFsLFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgVmlld0NoaWxkLFxuICBWaWV3Q2hpbGRyZW4sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5TWVkaWFCcmVha3BvaW50cywgU2t5TWVkaWFRdWVyeVNlcnZpY2UgfSBmcm9tICdAc2t5dXgvY29yZSc7XG5pbXBvcnQgeyBTa3lMaWJSZXNvdXJjZXNTZXJ2aWNlIH0gZnJvbSAnQHNreXV4L2kxOG4nO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5VGlsZURhc2hib2FyZENvbHVtbkNvbXBvbmVudCB9IGZyb20gJy4uL3RpbGUtZGFzaGJvYXJkLWNvbHVtbi90aWxlLWRhc2hib2FyZC1jb2x1bW4uY29tcG9uZW50JztcbmltcG9ydCB7IFNreVRpbGVEYXNoYm9hcmRDb25maWcgfSBmcm9tICcuLi90aWxlLWRhc2hib2FyZC1jb25maWcvdGlsZS1kYXNoYm9hcmQtY29uZmlnJztcblxuaW1wb3J0IHsgU2t5VGlsZURhc2hib2FyZE1lc3NhZ2UgfSBmcm9tICcuL3RpbGUtZGFzaGJvYXJkLW1lc3NhZ2UnO1xuaW1wb3J0IHsgU2t5VGlsZURhc2hib2FyZE1lc3NhZ2VUeXBlIH0gZnJvbSAnLi90aWxlLWRhc2hib2FyZC1tZXNzYWdlLXR5cGUnO1xuaW1wb3J0IHsgU2t5VGlsZURhc2hib2FyZFNlcnZpY2UgfSBmcm9tICcuL3RpbGUtZGFzaGJvYXJkLnNlcnZpY2UnO1xuXG4vKipcbiAqIFNwZWNpZmllcyBhIGNvbnRhaW5lciB0byBncm91cCBtdWx0aXBsZSB0aWxlcy5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LXRpbGUtZGFzaGJvYXJkJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGlsZS1kYXNoYm9hcmQuY29tcG9uZW50LnNjc3MnXSxcbiAgdGVtcGxhdGVVcmw6ICcuL3RpbGUtZGFzaGJvYXJkLmNvbXBvbmVudC5odG1sJyxcbiAgcHJvdmlkZXJzOiBbU2t5VGlsZURhc2hib2FyZFNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lUaWxlRGFzaGJvYXJkQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIHByb3RlY3RlZCBsYXlvdXRDbGFzc05hbWUgPVxuICAgICdza3ktdGlsZS1kYXNoYm9hcmQtbXVsdGktY29sdW1uIHNreS10aWxlLWRhc2hib2FyZC1ndC14cyc7XG5cbiAgLyoqXG4gICAqIFBvcHVsYXRlcyB0aGUgdGlsZSBkYXNoYm9hcmQgYmFzZWQgb24gdGhlIGBTa3lUaWxlRGFzaGJvYXJkQ29uZmlnYCBvYmplY3QuXG4gICAqIEByZXF1aXJlZFxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBjb25maWcodmFsdWU6IFNreVRpbGVEYXNoYm9hcmRDb25maWcgfCB1bmRlZmluZWQpIHtcbiAgICBpZiAodmFsdWUgJiYgIXRoaXMuI2NvbmZpZ1NldCkge1xuICAgICAgdGhpcy4jX2NvbmZpZyA9IHZhbHVlO1xuICAgICAgdGhpcy4jY29uZmlnU2V0ID0gdHJ1ZTtcbiAgICAgIHRoaXMuI2NoZWNrUmVhZHkoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNvbmZpZygpOiBTa3lUaWxlRGFzaGJvYXJkQ29uZmlnIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy4jX2NvbmZpZztcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgb2JzZXJ2YWJsZSB0byBzZW5kIGNvbW1hbmRzIHRvIHRoZSB0aWxlIGRhc2hib2FyZC4gVGhlIGNvbW1hbmRzIG11c3QgcmVzcGVjdCB0aGVcbiAgICogYFNreVRpbGVEYXNoYm9hcmRNZXNzYWdlYCB0eXBlLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIG1lc3NhZ2VTdHJlYW0gPSBuZXcgU3ViamVjdDxTa3lUaWxlRGFzaGJvYXJkTWVzc2FnZT4oKTtcblxuICAvKipcbiAgICogVGhlIHVuaXF1ZSBrZXkgZm9yIHRoZSBVSSBDb25maWcgU2VydmljZSB0byByZXRyaWV2ZSBzdG9yZWQgc2V0dGluZ3NcbiAgICogZnJvbSBhIGRhdGFiYXNlLiBUaGUgVUkgQ29uZmlnIFNlcnZpY2Ugc2F2ZXMgY29uZmlndXJhdGlvbiBzZXR0aW5ncyBmb3IgdXNlcnNcbiAgICogdG8gcHJlc2VydmUgdGhlIGxheW91dCBhbmQgY29sbGFwc2VkIHN0YXRlIG9mIHRpbGUgZGFzaGJvYXJkcy4gVGhlIFVJIENvbmZpZyBTZXJ2aWNlIHJlbGllcyBvbiBgaWRgIHZhbHVlcyBmcm9tIHRoZSBgY29uZmlnYCBwcm9wZXJ0eSB0byBtYWludGFpbiB1c2VyIHNldHRpbmdzLiBGb3IgbW9yZSBpbmZvcm1hdGlvblxuICAgKiBhYm91dCB0aGUgVUkgQ29uZmlnIFNlcnZpY2UsIHNlZSB0aGVcbiAgICogW3N0aWNreSBzZXR0aW5ncyBkb2N1bWVudGF0aW9uXShodHRwczovL2RldmVsb3Blci5ibGFja2JhdWQuY29tL3NreXV4L2xlYXJuL2RldmVsb3Avc3RpY2t5LXNldHRpbmdzKS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXR0aW5nc0tleTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBGaXJlcyB3aGVuIHRoZSB0aWxlIGRhc2hib2FyZCBjaGFuZ2VzIHN0YXRlIGFuZCBlbWl0cyBhIFNreVRpbGVEYXNoYm9hcmRDb25maWdcbiAgICogb2JqZWN0LiBUaGlzIG9jY3VycyB3aGVuIHRpbGVzIGNvbGxhcHNlIG9yIGV4cGFuZCBhbmQgd2hlbiB1c2VycyBkcmFnIGFuZCBkcm9wXG4gICAqIHRpbGVzIHRvIHJlYXJyYW5nZSB0aGVtLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBjb25maWdDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFNreVRpbGVEYXNoYm9hcmRDb25maWc+KCk7XG5cbiAgQFZpZXdDaGlsZHJlbihTa3lUaWxlRGFzaGJvYXJkQ29sdW1uQ29tcG9uZW50KVxuICBwdWJsaWMgY29sdW1uczogUXVlcnlMaXN0PFNreVRpbGVEYXNoYm9hcmRDb2x1bW5Db21wb25lbnQ+IHwgdW5kZWZpbmVkO1xuXG4gIEBWaWV3Q2hpbGQoJ3NpbmdsZUNvbHVtbicsIHtcbiAgICByZWFkOiBTa3lUaWxlRGFzaGJvYXJkQ29sdW1uQ29tcG9uZW50LFxuICAgIHN0YXRpYzogZmFsc2UsXG4gIH0pXG4gIHB1YmxpYyBzaW5nbGVDb2x1bW46IFNreVRpbGVEYXNoYm9hcmRDb2x1bW5Db21wb25lbnQgfCB1bmRlZmluZWQ7XG5cbiAgcHVibGljIHRpbGVNb3ZlZFJlcG9ydCA9ICcnO1xuXG4gIHB1YmxpYyBtb3ZlSW5zdHJ1Y3Rpb25zSWQ6IHN0cmluZztcblxuICAjY29uZmlnU2V0ID0gZmFsc2U7XG4gICNkYXNoYm9hcmRTZXJ2aWNlOiBTa3lUaWxlRGFzaGJvYXJkU2VydmljZTtcbiAgI21lZGlhUXVlcnlTZXJ2aWNlOiBTa3lNZWRpYVF1ZXJ5U2VydmljZTtcbiAgI25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAjc3Vic2NyaXB0aW9ucyA9IG5ldyBTdWJzY3JpcHRpb24oKTtcbiAgI3Jlc291cmNlc1NlcnZpY2U6IFNreUxpYlJlc291cmNlc1NlcnZpY2UgfCB1bmRlZmluZWQ7XG4gICN2aWV3UmVhZHkgPSBmYWxzZTtcbiAgI19jb25maWc6IFNreVRpbGVEYXNoYm9hcmRDb25maWcgfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgZGFzaGJvYXJkU2VydmljZTogU2t5VGlsZURhc2hib2FyZFNlcnZpY2UsXG4gICAgbWVkaWFRdWVyeVNlcnZpY2U6IFNreU1lZGlhUXVlcnlTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIHJlc291cmNlc1NlcnZpY2U/OiBTa3lMaWJSZXNvdXJjZXNTZXJ2aWNlLFxuICApIHtcbiAgICB0aGlzLiNkYXNoYm9hcmRTZXJ2aWNlID0gZGFzaGJvYXJkU2VydmljZTtcbiAgICB0aGlzLiNtZWRpYVF1ZXJ5U2VydmljZSA9IG1lZGlhUXVlcnlTZXJ2aWNlO1xuICAgIHRoaXMuI3Jlc291cmNlc1NlcnZpY2UgPSByZXNvdXJjZXNTZXJ2aWNlO1xuICAgIHRoaXMubW92ZUluc3RydWN0aW9uc0lkID1cbiAgICAgIHRoaXMuI2Rhc2hib2FyZFNlcnZpY2UuYmFnSWQgKyAnLW1vdmUtaW5zdHJ1Y3Rpb25zJztcblxuICAgIHRoaXMuI3N1YnNjcmlwdGlvbnMuYWRkKFxuICAgICAgdGhpcy4jbWVkaWFRdWVyeVNlcnZpY2Uuc3Vic2NyaWJlKChhcmdzOiBTa3lNZWRpYUJyZWFrcG9pbnRzKSA9PiB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBhcmdzID09PSBTa3lNZWRpYUJyZWFrcG9pbnRzLnhzIHx8XG4gICAgICAgICAgYXJncyA9PT0gU2t5TWVkaWFCcmVha3BvaW50cy5zbVxuICAgICAgICApIHtcbiAgICAgICAgICB0aGlzLmxheW91dENsYXNzTmFtZSA9ICdza3ktdGlsZS1kYXNoYm9hcmQtc2luZ2xlLWNvbHVtbic7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5sYXlvdXRDbGFzc05hbWUgPSAnc2t5LXRpbGUtZGFzaGJvYXJkLW11bHRpLWNvbHVtbic7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGFyZ3MgPT09IFNreU1lZGlhQnJlYWtwb2ludHMueHMpIHtcbiAgICAgICAgICB0aGlzLmxheW91dENsYXNzTmFtZSArPSAnIHNreS10aWxlLWRhc2hib2FyZC14cyc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5sYXlvdXRDbGFzc05hbWUgKz0gJyBza3ktdGlsZS1kYXNoYm9hcmQtZ3QteHMnO1xuICAgICAgICB9XG4gICAgICB9KSxcbiAgICApO1xuXG4gICAgdGhpcy4jZGFzaGJvYXJkU2VydmljZS5jb25maWdDaGFuZ2Uuc3Vic2NyaWJlKFxuICAgICAgKGNvbmZpZzogU2t5VGlsZURhc2hib2FyZENvbmZpZykgPT4ge1xuICAgICAgICB0aGlzLmNvbmZpZ0NoYW5nZS5lbWl0KGNvbmZpZyk7XG5cbiAgICAgICAgLy8gVXBkYXRlIGFyaWEgbGl2ZSByZWdpb24gd2l0aCB0aWxlIGRyYWcgaW5mb1xuICAgICAgICBpZiAoY29uZmlnLm1vdmVkVGlsZSAmJiB0aGlzLiNyZXNvdXJjZXNTZXJ2aWNlKSB7XG4gICAgICAgICAgbGV0IG1lc3NhZ2VPYnNlcnZhYmxlOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgdGhpcy4jbWVkaWFRdWVyeVNlcnZpY2UuY3VycmVudCA9PT0gU2t5TWVkaWFCcmVha3BvaW50cy54cyB8fFxuICAgICAgICAgICAgdGhpcy4jbWVkaWFRdWVyeVNlcnZpY2UuY3VycmVudCA9PT0gU2t5TWVkaWFCcmVha3BvaW50cy5zbVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgbWVzc2FnZU9ic2VydmFibGUgPSB0aGlzLiNyZXNvdXJjZXNTZXJ2aWNlLmdldFN0cmluZyhcbiAgICAgICAgICAgICAgJ3NreXV4X3RpbGVfbW92ZWRfYXNzaXN0aXZlX3RleHQnLFxuICAgICAgICAgICAgICBjb25maWcubW92ZWRUaWxlLnRpbGVEZXNjcmlwdGlvbixcbiAgICAgICAgICAgICAgJzEnLFxuICAgICAgICAgICAgICAnMScsXG4gICAgICAgICAgICAgIGNvbmZpZy5tb3ZlZFRpbGUucG9zaXRpb24udG9TdHJpbmcoKSxcbiAgICAgICAgICAgICAgY29uZmlnLmxheW91dC5zaW5nbGVDb2x1bW4udGlsZXMubGVuZ3RoLnRvU3RyaW5nKCksXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBtZXNzYWdlT2JzZXJ2YWJsZSA9IHRoaXMuI3Jlc291cmNlc1NlcnZpY2UuZ2V0U3RyaW5nKFxuICAgICAgICAgICAgICAnc2t5dXhfdGlsZV9tb3ZlZF9hc3Npc3RpdmVfdGV4dCcsXG4gICAgICAgICAgICAgIGNvbmZpZy5tb3ZlZFRpbGUudGlsZURlc2NyaXB0aW9uLFxuICAgICAgICAgICAgICBjb25maWcubW92ZWRUaWxlLmNvbHVtbi50b1N0cmluZygpLFxuICAgICAgICAgICAgICBjb25maWcubGF5b3V0Lm11bHRpQ29sdW1uLmxlbmd0aC50b1N0cmluZygpLFxuICAgICAgICAgICAgICBjb25maWcubW92ZWRUaWxlLnBvc2l0aW9uLnRvU3RyaW5nKCksXG4gICAgICAgICAgICAgIGNvbmZpZy5sYXlvdXQubXVsdGlDb2x1bW5bXG4gICAgICAgICAgICAgICAgY29uZmlnLm1vdmVkVGlsZS5jb2x1bW4gLSAxXG4gICAgICAgICAgICAgIF0udGlsZXMubGVuZ3RoLnRvU3RyaW5nKCksXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cbiAgICAgICAgICBtZXNzYWdlT2JzZXJ2YWJsZS5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgobWVzc2FnZTogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnRpbGVNb3ZlZFJlcG9ydCA9IG1lc3NhZ2U7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5tZXNzYWdlU3RyZWFtXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChtZXNzYWdlOiBTa3lUaWxlRGFzaGJvYXJkTWVzc2FnZSkgPT4ge1xuICAgICAgICB0aGlzLiNoYW5kbGVJbmNvbWluZ01lc3NhZ2VzKG1lc3NhZ2UpO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLiN2aWV3UmVhZHkgPSB0cnVlO1xuICAgIHRoaXMuI2NoZWNrUmVhZHkoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gICAgdGhpcy4jc3Vic2NyaXB0aW9ucy51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMuI2Rhc2hib2FyZFNlcnZpY2UuZGVzdHJveSgpO1xuICB9XG5cbiAgI2NoZWNrUmVhZHkoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuI3ZpZXdSZWFkeSAmJiB0aGlzLmNvbmZpZykge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLmNvbmZpZyAmJiB0aGlzLmNvbHVtbnMgJiYgdGhpcy5zaW5nbGVDb2x1bW4pIHtcbiAgICAgICAgICB0aGlzLiNkYXNoYm9hcmRTZXJ2aWNlLmluaXQoXG4gICAgICAgICAgICB0aGlzLmNvbmZpZyxcbiAgICAgICAgICAgIHRoaXMuY29sdW1ucyxcbiAgICAgICAgICAgIHRoaXMuc2luZ2xlQ29sdW1uLFxuICAgICAgICAgICAgdGhpcy5zZXR0aW5nc0tleSxcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9LCAwKTtcbiAgICB9XG4gIH1cblxuICAjaGFuZGxlSW5jb21pbmdNZXNzYWdlcyhtZXNzYWdlOiBTa3lUaWxlRGFzaGJvYXJkTWVzc2FnZSk6IHZvaWQge1xuICAgIHN3aXRjaCAobWVzc2FnZS50eXBlKSB7XG4gICAgICBjYXNlIFNreVRpbGVEYXNoYm9hcmRNZXNzYWdlVHlwZS5FeHBhbmRBbGw6XG4gICAgICAgIHRoaXMuI2Rhc2hib2FyZFNlcnZpY2Uuc2V0QWxsVGlsZXNDb2xsYXBzZWQoZmFsc2UpO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSBTa3lUaWxlRGFzaGJvYXJkTWVzc2FnZVR5cGUuQ29sbGFwc2VBbGw6XG4gICAgICAgIHRoaXMuI2Rhc2hib2FyZFNlcnZpY2Uuc2V0QWxsVGlsZXNDb2xsYXBzZWQodHJ1ZSk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbmZpZ1wiPlxuICA8c3BhbiBhcmlhLWxpdmU9XCJhc3NlcnRpdmVcIiBjbGFzcz1cInNreS1hc3Npc3RpdmUtdGV4dFwiPlxuICAgIHt7IHRpbGVNb3ZlZFJlcG9ydCB9fVxuICA8L3NwYW4+XG4gIDxza3ktdGlsZS1kYXNoYm9hcmQtY29sdW1uXG4gICAgKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBjb25maWcubGF5b3V0Lm11bHRpQ29sdW1uXCJcbiAgICBjbGFzcz1cInNreS10aWxlLWRhc2hib2FyZC1sYXlvdXQtbXVsdGlcIlxuICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgICdmbGV4LWJhc2lzJzogMTAwIC8gY29uZmlnLmxheW91dC5tdWx0aUNvbHVtbi5sZW5ndGggKyAnJSdcbiAgICB9XCJcbiAgPlxuICA8L3NreS10aWxlLWRhc2hib2FyZC1jb2x1bW4+XG4gIDxza3ktdGlsZS1kYXNoYm9hcmQtY29sdW1uXG4gICAgY2xhc3M9XCJza3ktdGlsZS1kYXNoYm9hcmQtbGF5b3V0LXNpbmdsZVwiXG4gICAgI3NpbmdsZUNvbHVtblxuICA+XG4gIDwvc2t5LXRpbGUtZGFzaGJvYXJkLWNvbHVtbj5cbiAgPHNwYW4gY2xhc3M9XCJza3ktc2NyZWVuLXJlYWRlci1vbmx5XCIgW2lkXT1cIm1vdmVJbnN0cnVjdGlvbnNJZFwiPnt7XG4gICAgJ3NreXV4X3RpbGVfbW92ZV9pbnN0cnVjdGlvbnMnIHwgc2t5TGliUmVzb3VyY2VzXG4gIH19PC9zcGFuPlxuICA8bmctY29udGVudCAvPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
package/fesm2022/skyux-tiles.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Component, NgModule, EventEmitter, inject, Injectable, Output, ElementRef, Optional, Input, ViewChild, ViewContainerRef, ViewChildren } from '@angular/core';
|
|
2
|
+
import { Component, NgModule, EventEmitter, inject, Injectable, Output, ElementRef, Optional, Input, ViewChild, ViewContainerRef, HostBinding, ViewChildren } from '@angular/core';
|
|
3
3
|
import * as i2 from '@skyux/core';
|
|
4
4
|
import { SkyTrimModule, SkyDynamicComponentService, SkyMediaQueryService, SkyUIConfigService, SkyMediaBreakpoints, SkyDynamicComponentLocation, SkyIdModule } from '@skyux/core';
|
|
5
5
|
import * as i4 from '@angular/common';
|
|
@@ -9,7 +9,7 @@ import * as i3 from '@skyux/indicators';
|
|
|
9
9
|
import { SkyChevronModule, SkyIconModule } from '@skyux/indicators';
|
|
10
10
|
import * as i5 from '@skyux/theme';
|
|
11
11
|
import { SkyThemeModule } from '@skyux/theme';
|
|
12
|
-
import { Subject } from 'rxjs';
|
|
12
|
+
import { Subject, Subscription } from 'rxjs';
|
|
13
13
|
import { take, takeUntil } from 'rxjs/operators';
|
|
14
14
|
import * as i3$1 from '@skyux/i18n';
|
|
15
15
|
import { SkyLibResourcesService, getLibStringForLocale, SkyI18nModule, SKY_LIB_RESOURCES_PROVIDERS } from '@skyux/i18n';
|
|
@@ -927,10 +927,12 @@ class SkyTileDashboardComponent {
|
|
|
927
927
|
#dashboardService;
|
|
928
928
|
#mediaQueryService;
|
|
929
929
|
#ngUnsubscribe;
|
|
930
|
+
#subscriptions;
|
|
930
931
|
#resourcesService;
|
|
931
932
|
#viewReady;
|
|
932
933
|
#_config;
|
|
933
934
|
constructor(dashboardService, mediaQueryService, resourcesService) {
|
|
935
|
+
this.layoutClassName = 'sky-tile-dashboard-multi-column sky-tile-dashboard-gt-xs';
|
|
934
936
|
/**
|
|
935
937
|
* The observable to send commands to the tile dashboard. The commands must respect the
|
|
936
938
|
* `SkyTileDashboardMessage` type.
|
|
@@ -945,12 +947,28 @@ class SkyTileDashboardComponent {
|
|
|
945
947
|
this.tileMovedReport = '';
|
|
946
948
|
this.#configSet = false;
|
|
947
949
|
this.#ngUnsubscribe = new Subject();
|
|
950
|
+
this.#subscriptions = new Subscription();
|
|
948
951
|
this.#viewReady = false;
|
|
949
952
|
this.#dashboardService = dashboardService;
|
|
950
953
|
this.#mediaQueryService = mediaQueryService;
|
|
951
954
|
this.#resourcesService = resourcesService;
|
|
952
955
|
this.moveInstructionsId =
|
|
953
956
|
this.#dashboardService.bagId + '-move-instructions';
|
|
957
|
+
this.#subscriptions.add(this.#mediaQueryService.subscribe((args) => {
|
|
958
|
+
if (args === SkyMediaBreakpoints.xs ||
|
|
959
|
+
args === SkyMediaBreakpoints.sm) {
|
|
960
|
+
this.layoutClassName = 'sky-tile-dashboard-single-column';
|
|
961
|
+
}
|
|
962
|
+
else {
|
|
963
|
+
this.layoutClassName = 'sky-tile-dashboard-multi-column';
|
|
964
|
+
}
|
|
965
|
+
if (args === SkyMediaBreakpoints.xs) {
|
|
966
|
+
this.layoutClassName += ' sky-tile-dashboard-xs';
|
|
967
|
+
}
|
|
968
|
+
else {
|
|
969
|
+
this.layoutClassName += ' sky-tile-dashboard-gt-xs';
|
|
970
|
+
}
|
|
971
|
+
}));
|
|
954
972
|
this.#dashboardService.configChange.subscribe((config) => {
|
|
955
973
|
this.configChange.emit(config);
|
|
956
974
|
// Update aria live region with tile drag info
|
|
@@ -981,6 +999,7 @@ class SkyTileDashboardComponent {
|
|
|
981
999
|
ngOnDestroy() {
|
|
982
1000
|
this.#ngUnsubscribe.next();
|
|
983
1001
|
this.#ngUnsubscribe.complete();
|
|
1002
|
+
this.#subscriptions.unsubscribe();
|
|
984
1003
|
this.#dashboardService.destroy();
|
|
985
1004
|
}
|
|
986
1005
|
#checkReady() {
|
|
@@ -1003,14 +1022,17 @@ class SkyTileDashboardComponent {
|
|
|
1003
1022
|
}
|
|
1004
1023
|
}
|
|
1005
1024
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SkyTileDashboardComponent, deps: [{ token: SkyTileDashboardService }, { token: i2.SkyMediaQueryService }, { token: i3$1.SkyLibResourcesService, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1006
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SkyTileDashboardComponent, selector: "sky-tile-dashboard", inputs: { config: "config", messageStream: "messageStream", settingsKey: "settingsKey" }, outputs: { configChange: "configChange" }, providers: [SkyTileDashboardService], viewQueries: [{ propertyName: "singleColumn", first: true, predicate: ["singleColumn"], descendants: true, read: SkyTileDashboardColumnComponent }, { propertyName: "columns", predicate: SkyTileDashboardColumnComponent, descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"config\">\n <span aria-live=\"assertive\" class=\"sky-assistive-text\">\n {{ tileMovedReport }}\n </span>\n <sky-tile-dashboard-column\n *ngFor=\"let column of config.layout.multiColumn\"\n class=\"sky-tile-dashboard-layout-multi\"\n [ngStyle]=\"{\n 'flex-basis': 100 / config.layout.multiColumn.length + '%'\n }\"\n >\n </sky-tile-dashboard-column>\n <sky-tile-dashboard-column\n class=\"sky-tile-dashboard-layout-single\"\n #singleColumn\n >\n </sky-tile-dashboard-column>\n <span class=\"sky-screen-reader-only\" [id]=\"moveInstructionsId\">{{\n 'skyux_tile_move_instructions' | skyLibResources\n }}</span>\n <ng-content />\n</ng-container>\n", styles: [":host{display:block;padding:0}:host .sky-tile-dashboard-layout-multi{display:none}:host .sky-tile-dashboard-layout-single{display:block}:host .sky-tile-dashboard-layout-single ::ng-deep .sky-tile,:host .sky-tile-dashboard-layout-multi ::ng-deep .sky-tile{margin-bottom:0}:host-context(.sky-
|
|
1025
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SkyTileDashboardComponent, selector: "sky-tile-dashboard", inputs: { config: "config", messageStream: "messageStream", settingsKey: "settingsKey" }, outputs: { configChange: "configChange" }, host: { properties: { "class": "this.layoutClassName" } }, providers: [SkyTileDashboardService], viewQueries: [{ propertyName: "singleColumn", first: true, predicate: ["singleColumn"], descendants: true, read: SkyTileDashboardColumnComponent }, { propertyName: "columns", predicate: SkyTileDashboardColumnComponent, descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"config\">\n <span aria-live=\"assertive\" class=\"sky-assistive-text\">\n {{ tileMovedReport }}\n </span>\n <sky-tile-dashboard-column\n *ngFor=\"let column of config.layout.multiColumn\"\n class=\"sky-tile-dashboard-layout-multi\"\n [ngStyle]=\"{\n 'flex-basis': 100 / config.layout.multiColumn.length + '%'\n }\"\n >\n </sky-tile-dashboard-column>\n <sky-tile-dashboard-column\n class=\"sky-tile-dashboard-layout-single\"\n #singleColumn\n >\n </sky-tile-dashboard-column>\n <span class=\"sky-screen-reader-only\" [id]=\"moveInstructionsId\">{{\n 'skyux_tile_move_instructions' | skyLibResources\n }}</span>\n <ng-content />\n</ng-container>\n", styles: [":host{display:block;padding:0}:host .sky-tile-dashboard-layout-multi{display:none}:host .sky-tile-dashboard-layout-single{display:block}:host .sky-tile-dashboard-layout-single ::ng-deep .sky-tile,:host .sky-tile-dashboard-layout-multi ::ng-deep .sky-tile{margin-bottom:0}:host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-single ::ng-deep .sky-tile,:host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-multi ::ng-deep .sky-tile{margin-bottom:20px}:host-context(.sky-tile-dashboard-gt-xs) :host-context(.sky-theme-default){padding-top:20px}:host-context(.sky-tile-dashboard-multi-column){display:flex;padding:0 10px}:host-context(.sky-tile-dashboard-multi-column) .sky-tile-dashboard-layout-multi{display:block}:host-context(.sky-tile-dashboard-multi-column) .sky-tile-dashboard-layout-single{display:none}@media screen{.sky-assistive-text{width:0;height:0;padding:0;opacity:0;position:absolute;margin:-1px;border:0;overflow:hidden;clip:rect(0,0,0,0);outline:none;white-space:nowrap}}:host-context(.sky-theme-default){background-color:#eeeeef}:host-context(.sky-theme-modern) :host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-single ::ng-deep .sky-tile,:host-context(.sky-theme-modern) :host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-multi ::ng-deep .sky-tile{margin-bottom:30px}.sky-theme-modern :host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-single ::ng-deep .sky-tile,.sky-theme-modern :host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-multi ::ng-deep .sky-tile{margin-bottom:30px}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: SkyTileDashboardColumnComponent, selector: "sky-tile-dashboard-column" }, { kind: "pipe", type: i3$1.SkyLibResourcesPipe, name: "skyLibResources" }] }); }
|
|
1007
1026
|
}
|
|
1008
1027
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SkyTileDashboardComponent, decorators: [{
|
|
1009
1028
|
type: Component,
|
|
1010
|
-
args: [{ selector: 'sky-tile-dashboard', providers: [SkyTileDashboardService], template: "<ng-container *ngIf=\"config\">\n <span aria-live=\"assertive\" class=\"sky-assistive-text\">\n {{ tileMovedReport }}\n </span>\n <sky-tile-dashboard-column\n *ngFor=\"let column of config.layout.multiColumn\"\n class=\"sky-tile-dashboard-layout-multi\"\n [ngStyle]=\"{\n 'flex-basis': 100 / config.layout.multiColumn.length + '%'\n }\"\n >\n </sky-tile-dashboard-column>\n <sky-tile-dashboard-column\n class=\"sky-tile-dashboard-layout-single\"\n #singleColumn\n >\n </sky-tile-dashboard-column>\n <span class=\"sky-screen-reader-only\" [id]=\"moveInstructionsId\">{{\n 'skyux_tile_move_instructions' | skyLibResources\n }}</span>\n <ng-content />\n</ng-container>\n", styles: [":host{display:block;padding:0}:host .sky-tile-dashboard-layout-multi{display:none}:host .sky-tile-dashboard-layout-single{display:block}:host .sky-tile-dashboard-layout-single ::ng-deep .sky-tile,:host .sky-tile-dashboard-layout-multi ::ng-deep .sky-tile{margin-bottom:0}:host-context(.sky-
|
|
1029
|
+
args: [{ selector: 'sky-tile-dashboard', providers: [SkyTileDashboardService], template: "<ng-container *ngIf=\"config\">\n <span aria-live=\"assertive\" class=\"sky-assistive-text\">\n {{ tileMovedReport }}\n </span>\n <sky-tile-dashboard-column\n *ngFor=\"let column of config.layout.multiColumn\"\n class=\"sky-tile-dashboard-layout-multi\"\n [ngStyle]=\"{\n 'flex-basis': 100 / config.layout.multiColumn.length + '%'\n }\"\n >\n </sky-tile-dashboard-column>\n <sky-tile-dashboard-column\n class=\"sky-tile-dashboard-layout-single\"\n #singleColumn\n >\n </sky-tile-dashboard-column>\n <span class=\"sky-screen-reader-only\" [id]=\"moveInstructionsId\">{{\n 'skyux_tile_move_instructions' | skyLibResources\n }}</span>\n <ng-content />\n</ng-container>\n", styles: [":host{display:block;padding:0}:host .sky-tile-dashboard-layout-multi{display:none}:host .sky-tile-dashboard-layout-single{display:block}:host .sky-tile-dashboard-layout-single ::ng-deep .sky-tile,:host .sky-tile-dashboard-layout-multi ::ng-deep .sky-tile{margin-bottom:0}:host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-single ::ng-deep .sky-tile,:host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-multi ::ng-deep .sky-tile{margin-bottom:20px}:host-context(.sky-tile-dashboard-gt-xs) :host-context(.sky-theme-default){padding-top:20px}:host-context(.sky-tile-dashboard-multi-column){display:flex;padding:0 10px}:host-context(.sky-tile-dashboard-multi-column) .sky-tile-dashboard-layout-multi{display:block}:host-context(.sky-tile-dashboard-multi-column) .sky-tile-dashboard-layout-single{display:none}@media screen{.sky-assistive-text{width:0;height:0;padding:0;opacity:0;position:absolute;margin:-1px;border:0;overflow:hidden;clip:rect(0,0,0,0);outline:none;white-space:nowrap}}:host-context(.sky-theme-default){background-color:#eeeeef}:host-context(.sky-theme-modern) :host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-single ::ng-deep .sky-tile,:host-context(.sky-theme-modern) :host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-multi ::ng-deep .sky-tile{margin-bottom:30px}.sky-theme-modern :host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-single ::ng-deep .sky-tile,.sky-theme-modern :host-context(.sky-tile-dashboard-gt-xs) .sky-tile-dashboard-layout-multi ::ng-deep .sky-tile{margin-bottom:30px}\n"] }]
|
|
1011
1030
|
}], ctorParameters: function () { return [{ type: SkyTileDashboardService }, { type: i2.SkyMediaQueryService }, { type: i3$1.SkyLibResourcesService, decorators: [{
|
|
1012
1031
|
type: Optional
|
|
1013
|
-
}] }]; }, propDecorators: {
|
|
1032
|
+
}] }]; }, propDecorators: { layoutClassName: [{
|
|
1033
|
+
type: HostBinding,
|
|
1034
|
+
args: ['class']
|
|
1035
|
+
}], config: [{
|
|
1014
1036
|
type: Input
|
|
1015
1037
|
}], messageStream: [{
|
|
1016
1038
|
type: Input
|