@skyux/tiles 6.21.0 → 6.22.0
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 +2 -2
- package/esm2020/lib/modules/tiles/tile/tile-title.component.mjs +4 -3
- package/esm2020/lib/modules/tiles/tile/tile.module.mjs +6 -3
- package/fesm2015/skyux-tiles.mjs +7 -4
- package/fesm2015/skyux-tiles.mjs.map +1 -1
- package/fesm2020/skyux-tiles.mjs +7 -4
- package/fesm2020/skyux-tiles.mjs.map +1 -1
- package/lib/modules/tiles/tile/tile-title.component.d.ts +1 -1
- package/lib/modules/tiles/tile/tile.module.d.ts +1 -1
- package/package.json +6 -6
package/documentation.json
CHANGED
|
@@ -618,7 +618,7 @@
|
|
|
618
618
|
"name": "NgModule"
|
|
619
619
|
},
|
|
620
620
|
"arguments": {
|
|
621
|
-
"obj": "{\n declarations: [\n SkyTileComponent,\n SkyTileSummaryComponent,\n SkyTileTitleComponent,\n ],\n imports: [\n CommonModule,\n SkyChevronModule,\n SkyIdModule,\n SkyI18nModule,\n SkyIconModule,\n SkyThemeModule,\n SkyTilesResourcesModule,\n ],\n exports: [SkyTileComponent, SkyTileSummaryComponent, SkyTileTitleComponent],\n}"
|
|
621
|
+
"obj": "{\n declarations: [\n SkyTileComponent,\n SkyTileSummaryComponent,\n SkyTileTitleComponent,\n ],\n imports: [\n CommonModule,\n SkyChevronModule,\n SkyIdModule,\n SkyI18nModule,\n SkyIconModule,\n SkyThemeModule,\n SkyTilesResourcesModule,\n SkyTrimModule,\n ],\n exports: [SkyTileComponent, SkyTileSummaryComponent, SkyTileTitleComponent],\n}"
|
|
622
622
|
}
|
|
623
623
|
}
|
|
624
624
|
],
|
|
@@ -635,7 +635,7 @@
|
|
|
635
635
|
"sources": [
|
|
636
636
|
{
|
|
637
637
|
"fileName": "projects/tiles/src/modules/tiles/tile/tile.module.ts",
|
|
638
|
-
"line":
|
|
638
|
+
"line": 32,
|
|
639
639
|
"character": 13
|
|
640
640
|
}
|
|
641
641
|
]
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
import { Component } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
import * as i1 from "@skyux/theme";
|
|
4
|
+
import * as i2 from "@skyux/core";
|
|
4
5
|
/**
|
|
5
6
|
* Specifies content to display in the tile's title.
|
|
6
7
|
*/
|
|
7
8
|
export class SkyTileTitleComponent {
|
|
8
9
|
}
|
|
9
10
|
SkyTileTitleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyTileTitleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10
|
-
SkyTileTitleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: SkyTileTitleComponent, selector: "sky-tile-title", ngImport: i0, template: "<h2\n class=\"sky-tile-title\"\n [skyThemeClass]=\"{\n 'sky-font-heading-2': 'modern',\n 'sky-section-heading': 'default'\n }\"\n>\n <ng-content></ng-content>\n</h2>\n", styles: [".sky-tile-title{margin:0;padding:10px 15px}:host-context(.sky-theme-modern) .sky-tile-title{margin:0 30px 0 0;padding:0}.sky-theme-modern .sky-tile-title{margin:0 30px 0 0;padding:0}\n"], directives: [{ type: i1.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }] });
|
|
11
|
+
SkyTileTitleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: SkyTileTitleComponent, selector: "sky-tile-title", ngImport: i0, template: "<h2\n class=\"sky-tile-title\"\n [skyThemeClass]=\"{\n 'sky-font-heading-2': 'modern',\n 'sky-section-heading': 'default'\n }\"\n>\n <span skyTrim><ng-content></ng-content></span\n ><span class=\"sky-control-help-container\"\n ><ng-content select=\".sky-control-help\"></ng-content\n ></span>\n</h2>\n", styles: [".sky-tile-title{margin:0;padding:10px 15px}:host-context(.sky-theme-modern) .sky-tile-title{margin:0 30px 0 0;padding:0}.sky-theme-modern .sky-tile-title{margin:0 30px 0 0;padding:0}\n"], directives: [{ type: i1.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }, { type: i2.λ4, selector: "[skyTrim]" }] });
|
|
11
12
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyTileTitleComponent, decorators: [{
|
|
12
13
|
type: Component,
|
|
13
|
-
args: [{ selector: 'sky-tile-title', template: "<h2\n class=\"sky-tile-title\"\n [skyThemeClass]=\"{\n 'sky-font-heading-2': 'modern',\n 'sky-section-heading': 'default'\n }\"\n>\n <ng-content></ng-content>\n</h2>\n", styles: [".sky-tile-title{margin:0;padding:10px 15px}:host-context(.sky-theme-modern) .sky-tile-title{margin:0 30px 0 0;padding:0}.sky-theme-modern .sky-tile-title{margin:0 30px 0 0;padding:0}\n"] }]
|
|
14
|
+
args: [{ selector: 'sky-tile-title', template: "<h2\n class=\"sky-tile-title\"\n [skyThemeClass]=\"{\n 'sky-font-heading-2': 'modern',\n 'sky-section-heading': 'default'\n }\"\n>\n <span skyTrim><ng-content></ng-content></span\n ><span class=\"sky-control-help-container\"\n ><ng-content select=\".sky-control-help\"></ng-content\n ></span>\n</h2>\n", styles: [".sky-tile-title{margin:0;padding:10px 15px}:host-context(.sky-theme-modern) .sky-tile-title{margin:0 30px 0 0;padding:0}.sky-theme-modern .sky-tile-title{margin:0 30px 0 0;padding:0}\n"] }]
|
|
14
15
|
}] });
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZS10aXRsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvdGlsZXMvc3JjL2xpYi9tb2R1bGVzL3RpbGVzL3RpbGUvdGlsZS10aXRsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvdGlsZXMvc3JjL2xpYi9tb2R1bGVzL3RpbGVzL3RpbGUvdGlsZS10aXRsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBRTFDOztHQUVHO0FBTUgsTUFBTSxPQUFPLHFCQUFxQjs7a0hBQXJCLHFCQUFxQjtzR0FBckIscUJBQXFCLHNEQ1ZsQyw4VEFZQTsyRkRGYSxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0UsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogU3BlY2lmaWVzIGNvbnRlbnQgdG8gZGlzcGxheSBpbiB0aGUgdGlsZSdzIHRpdGxlLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktdGlsZS10aXRsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi90aWxlLXRpdGxlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGlsZS10aXRsZS5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lUaWxlVGl0bGVDb21wb25lbnQge31cbiIsIjxoMlxuICBjbGFzcz1cInNreS10aWxlLXRpdGxlXCJcbiAgW3NreVRoZW1lQ2xhc3NdPVwie1xuICAgICdza3ktZm9udC1oZWFkaW5nLTInOiAnbW9kZXJuJyxcbiAgICAnc2t5LXNlY3Rpb24taGVhZGluZyc6ICdkZWZhdWx0J1xuICB9XCJcbj5cbiAgPHNwYW4gc2t5VHJpbT48bmctY29udGVudD48L25nLWNvbnRlbnQ+PC9zcGFuXG4gID48c3BhbiBjbGFzcz1cInNreS1jb250cm9sLWhlbHAtY29udGFpbmVyXCJcbiAgICA+PG5nLWNvbnRlbnQgc2VsZWN0PVwiLnNreS1jb250cm9sLWhlbHBcIj48L25nLWNvbnRlbnRcbiAgPjwvc3Bhbj5cbjwvaDI+XG4iXX0=
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CommonModule } from '@angular/common';
|
|
2
2
|
import { NgModule } from '@angular/core';
|
|
3
|
-
import { SkyIdModule } from '@skyux/core';
|
|
3
|
+
import { SkyIdModule, SkyTrimModule } from '@skyux/core';
|
|
4
4
|
import { SkyI18nModule } from '@skyux/i18n';
|
|
5
5
|
import { SkyChevronModule, SkyIconModule } from '@skyux/indicators';
|
|
6
6
|
import { SkyThemeModule } from '@skyux/theme';
|
|
@@ -20,7 +20,8 @@ SkyTileModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
|
|
|
20
20
|
SkyI18nModule,
|
|
21
21
|
SkyIconModule,
|
|
22
22
|
SkyThemeModule,
|
|
23
|
-
SkyTilesResourcesModule
|
|
23
|
+
SkyTilesResourcesModule,
|
|
24
|
+
SkyTrimModule], exports: [SkyTileComponent, SkyTileSummaryComponent, SkyTileTitleComponent] });
|
|
24
25
|
SkyTileModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyTileModule, imports: [[
|
|
25
26
|
CommonModule,
|
|
26
27
|
SkyChevronModule,
|
|
@@ -29,6 +30,7 @@ SkyTileModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version:
|
|
|
29
30
|
SkyIconModule,
|
|
30
31
|
SkyThemeModule,
|
|
31
32
|
SkyTilesResourcesModule,
|
|
33
|
+
SkyTrimModule,
|
|
32
34
|
]] });
|
|
33
35
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyTileModule, decorators: [{
|
|
34
36
|
type: NgModule,
|
|
@@ -46,8 +48,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
|
|
|
46
48
|
SkyIconModule,
|
|
47
49
|
SkyThemeModule,
|
|
48
50
|
SkyTilesResourcesModule,
|
|
51
|
+
SkyTrimModule,
|
|
49
52
|
],
|
|
50
53
|
exports: [SkyTileComponent, SkyTileSummaryComponent, SkyTileTitleComponent],
|
|
51
54
|
}]
|
|
52
55
|
}] });
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvdGlsZXMvc3JjL2xpYi9tb2R1bGVzL3RpbGVzL3RpbGUvdGlsZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUU5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUVsRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFvQnBELE1BQU0sT0FBTyxhQUFhOzswR0FBYixhQUFhOzJHQUFiLGFBQWEsaUJBaEJ0QixnQkFBZ0I7UUFDaEIsdUJBQXVCO1FBQ3ZCLHFCQUFxQixhQUdyQixZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLFdBQVc7UUFDWCxhQUFhO1FBQ2IsYUFBYTtRQUNiLGNBQWM7UUFDZCx1QkFBdUI7UUFDdkIsYUFBYSxhQUVMLGdCQUFnQixFQUFFLHVCQUF1QixFQUFFLHFCQUFxQjsyR0FFL0QsYUFBYSxZQVpmO1lBQ1AsWUFBWTtZQUNaLGdCQUFnQjtZQUNoQixXQUFXO1lBQ1gsYUFBYTtZQUNiLGFBQWE7WUFDYixjQUFjO1lBQ2QsdUJBQXVCO1lBQ3ZCLGFBQWE7U0FDZDsyRkFHVSxhQUFhO2tCQWxCekIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osZ0JBQWdCO3dCQUNoQix1QkFBdUI7d0JBQ3ZCLHFCQUFxQjtxQkFDdEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osZ0JBQWdCO3dCQUNoQixXQUFXO3dCQUNYLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixjQUFjO3dCQUNkLHVCQUF1Qjt3QkFDdkIsYUFBYTtxQkFDZDtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSx1QkFBdUIsRUFBRSxxQkFBcUIsQ0FBQztpQkFDNUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreUlkTW9kdWxlLCBTa3lUcmltTW9kdWxlIH0gZnJvbSAnQHNreXV4L2NvcmUnO1xuaW1wb3J0IHsgU2t5STE4bk1vZHVsZSB9IGZyb20gJ0Bza3l1eC9pMThuJztcbmltcG9ydCB7IFNreUNoZXZyb25Nb2R1bGUsIFNreUljb25Nb2R1bGUgfSBmcm9tICdAc2t5dXgvaW5kaWNhdG9ycyc7XG5pbXBvcnQgeyBTa3lUaGVtZU1vZHVsZSB9IGZyb20gJ0Bza3l1eC90aGVtZSc7XG5cbmltcG9ydCB7IFNreVRpbGVzUmVzb3VyY2VzTW9kdWxlIH0gZnJvbSAnLi4vLi4vc2hhcmVkL3NreS10aWxlcy1yZXNvdXJjZXMubW9kdWxlJztcblxuaW1wb3J0IHsgU2t5VGlsZVN1bW1hcnlDb21wb25lbnQgfSBmcm9tICcuL3RpbGUtc3VtbWFyeS5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2t5VGlsZVRpdGxlQ29tcG9uZW50IH0gZnJvbSAnLi90aWxlLXRpdGxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTa3lUaWxlQ29tcG9uZW50IH0gZnJvbSAnLi90aWxlLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFNreVRpbGVDb21wb25lbnQsXG4gICAgU2t5VGlsZVN1bW1hcnlDb21wb25lbnQsXG4gICAgU2t5VGlsZVRpdGxlQ29tcG9uZW50LFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFNreUNoZXZyb25Nb2R1bGUsXG4gICAgU2t5SWRNb2R1bGUsXG4gICAgU2t5STE4bk1vZHVsZSxcbiAgICBTa3lJY29uTW9kdWxlLFxuICAgIFNreVRoZW1lTW9kdWxlLFxuICAgIFNreVRpbGVzUmVzb3VyY2VzTW9kdWxlLFxuICAgIFNreVRyaW1Nb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtTa3lUaWxlQ29tcG9uZW50LCBTa3lUaWxlU3VtbWFyeUNvbXBvbmVudCwgU2t5VGlsZVRpdGxlQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5VGlsZU1vZHVsZSB7fVxuIl19
|
package/fesm2015/skyux-tiles.mjs
CHANGED
|
@@ -3,7 +3,7 @@ import { CommonModule } from '@angular/common';
|
|
|
3
3
|
import * as i0 from '@angular/core';
|
|
4
4
|
import { NgModule, Component, EventEmitter, Injector, Injectable, Output, ElementRef, Optional, Input, ViewChild, ViewContainerRef, ViewChildren } from '@angular/core';
|
|
5
5
|
import * as i2 from '@skyux/core';
|
|
6
|
-
import { SkyMediaBreakpoints, SkyIdModule } from '@skyux/core';
|
|
6
|
+
import { SkyMediaBreakpoints, SkyIdModule, SkyTrimModule } from '@skyux/core';
|
|
7
7
|
import * as i3$1 from '@skyux/i18n';
|
|
8
8
|
import { getLibStringForLocale, SkyI18nModule, SKY_LIB_RESOURCES_PROVIDERS } from '@skyux/i18n';
|
|
9
9
|
import * as i2$1 from '@skyux/indicators';
|
|
@@ -93,10 +93,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
|
|
|
93
93
|
class SkyTileTitleComponent {
|
|
94
94
|
}
|
|
95
95
|
SkyTileTitleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyTileTitleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
96
|
-
SkyTileTitleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: SkyTileTitleComponent, selector: "sky-tile-title", ngImport: i0, template: "<h2\n class=\"sky-tile-title\"\n [skyThemeClass]=\"{\n 'sky-font-heading-2': 'modern',\n 'sky-section-heading': 'default'\n }\"\n>\n <ng-content></ng-content>\n</h2>\n", styles: [".sky-tile-title{margin:0;padding:10px 15px}:host-context(.sky-theme-modern) .sky-tile-title{margin:0 30px 0 0;padding:0}.sky-theme-modern .sky-tile-title{margin:0 30px 0 0;padding:0}\n"], directives: [{ type: i4.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }] });
|
|
96
|
+
SkyTileTitleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: SkyTileTitleComponent, selector: "sky-tile-title", ngImport: i0, template: "<h2\n class=\"sky-tile-title\"\n [skyThemeClass]=\"{\n 'sky-font-heading-2': 'modern',\n 'sky-section-heading': 'default'\n }\"\n>\n <span skyTrim><ng-content></ng-content></span\n ><span class=\"sky-control-help-container\"\n ><ng-content select=\".sky-control-help\"></ng-content\n ></span>\n</h2>\n", styles: [".sky-tile-title{margin:0;padding:10px 15px}:host-context(.sky-theme-modern) .sky-tile-title{margin:0 30px 0 0;padding:0}.sky-theme-modern .sky-tile-title{margin:0 30px 0 0;padding:0}\n"], directives: [{ type: i4.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }, { type: i2.λ4, selector: "[skyTrim]" }] });
|
|
97
97
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyTileTitleComponent, decorators: [{
|
|
98
98
|
type: Component,
|
|
99
|
-
args: [{ selector: 'sky-tile-title', template: "<h2\n class=\"sky-tile-title\"\n [skyThemeClass]=\"{\n 'sky-font-heading-2': 'modern',\n 'sky-section-heading': 'default'\n }\"\n>\n <ng-content></ng-content>\n</h2>\n", styles: [".sky-tile-title{margin:0;padding:10px 15px}:host-context(.sky-theme-modern) .sky-tile-title{margin:0 30px 0 0;padding:0}.sky-theme-modern .sky-tile-title{margin:0 30px 0 0;padding:0}\n"] }]
|
|
99
|
+
args: [{ selector: 'sky-tile-title', template: "<h2\n class=\"sky-tile-title\"\n [skyThemeClass]=\"{\n 'sky-font-heading-2': 'modern',\n 'sky-section-heading': 'default'\n }\"\n>\n <span skyTrim><ng-content></ng-content></span\n ><span class=\"sky-control-help-container\"\n ><ng-content select=\".sky-control-help\"></ng-content\n ></span>\n</h2>\n", styles: [".sky-tile-title{margin:0;padding:10px 15px}:host-context(.sky-theme-modern) .sky-tile-title{margin:0 30px 0 0;padding:0}.sky-theme-modern .sky-tile-title{margin:0 30px 0 0;padding:0}\n"] }]
|
|
100
100
|
}] });
|
|
101
101
|
|
|
102
102
|
const ATTR_TILE_ID = '_sky-tile-dashboard-tile-id';
|
|
@@ -779,7 +779,8 @@ SkyTileModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
|
|
|
779
779
|
SkyI18nModule,
|
|
780
780
|
SkyIconModule,
|
|
781
781
|
SkyThemeModule,
|
|
782
|
-
SkyTilesResourcesModule
|
|
782
|
+
SkyTilesResourcesModule,
|
|
783
|
+
SkyTrimModule], exports: [SkyTileComponent, SkyTileSummaryComponent, SkyTileTitleComponent] });
|
|
783
784
|
SkyTileModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyTileModule, imports: [[
|
|
784
785
|
CommonModule,
|
|
785
786
|
SkyChevronModule,
|
|
@@ -788,6 +789,7 @@ SkyTileModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version:
|
|
|
788
789
|
SkyIconModule,
|
|
789
790
|
SkyThemeModule,
|
|
790
791
|
SkyTilesResourcesModule,
|
|
792
|
+
SkyTrimModule,
|
|
791
793
|
]] });
|
|
792
794
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyTileModule, decorators: [{
|
|
793
795
|
type: NgModule,
|
|
@@ -805,6 +807,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
|
|
|
805
807
|
SkyIconModule,
|
|
806
808
|
SkyThemeModule,
|
|
807
809
|
SkyTilesResourcesModule,
|
|
810
|
+
SkyTrimModule,
|
|
808
811
|
],
|
|
809
812
|
exports: [SkyTileComponent, SkyTileSummaryComponent, SkyTileTitleComponent],
|
|
810
813
|
}]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skyux-tiles.mjs","sources":["../../../../../libs/components/tiles/src/lib/modules/shared/sky-tiles-resources.module.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile-summary.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile-summary.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile-title.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile-title.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard/tile-dashboard.service.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile.module.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-content/tile-content-section.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-content/tile-content-section.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-content/tile-content.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-content/tile-content.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-content/tile-content.module.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard/tile-dashboard-message-type.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard-column/tile-dashboard-column.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard-column/tile-dashboard-column.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard-column/tile-dashboard-column.module.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard/tile-dashboard.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard/tile-dashboard.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard/tile-dashboard.module.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tiles.module.ts","../../../../../libs/components/tiles/src/skyux-tiles.ts"],"sourcesContent":["/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module lib/modules/shared/sky-tiles' schematic.\n * To update this file, simply rerun the command.\n */\nimport { NgModule } from '@angular/core';\nimport {\n SKY_LIB_RESOURCES_PROVIDERS,\n SkyAppLocaleInfo,\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesProvider,\n getLibStringForLocale,\n} from '@skyux/i18n';\n\nconst RESOURCES: { [locale: string]: SkyLibResources } = {\n 'EN-US': {\n skyux_tile_expand: { message: 'Expand or collapse {0}' },\n skyux_tile_expand_default: { message: 'Expand or collapse' },\n skyux_tile_help: { message: '{0} help' },\n skyux_tile_help_default: { message: 'Help' },\n skyux_tile_settings: { message: '{0} settings' },\n skyux_tile_settings_default: { message: 'Settings' },\n skyux_tile_move: { message: 'Move {0}' },\n skyux_tile_move_default: { message: 'Move' },\n skyux_tile_move_instructions: {\n message:\n \"When focus is placed on a tile's move button, use the arrow keys to move it. The up and down keys change its position within a column. The left and right keys move it between columns.\",\n },\n skyux_tile_moved_assistive_text: {\n message:\n '{0} moved. Current column: {1} of {2}. Current position in column: {3} of {4}',\n },\n },\n};\n\nexport class SkyTilesResourcesProvider implements SkyLibResourcesProvider {\n public getString(\n localeInfo: SkyAppLocaleInfo,\n name: string\n ): string | undefined {\n return getLibStringForLocale(RESOURCES, localeInfo.locale, name);\n }\n}\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n providers: [\n {\n provide: SKY_LIB_RESOURCES_PROVIDERS,\n useClass: SkyTilesResourcesProvider,\n multi: true,\n },\n ],\n})\nexport class SkyTilesResourcesModule {}\n","import { Component } from '@angular/core';\n\n/**\n * Specifies content to display in the tile's summary.\n */\n@Component({\n selector: 'sky-tile-summary',\n templateUrl: 'tile-summary.component.html',\n})\n/* istanbul ignore next */\n/* Code coverage having problems with no statements in classes */\nexport class SkyTileSummaryComponent {}\n","<ng-content></ng-content>\n","import { Component } from '@angular/core';\n\n/**\n * Specifies content to display in the tile's title.\n */\n@Component({\n selector: 'sky-tile-title',\n templateUrl: './tile-title.component.html',\n styleUrls: ['./tile-title.component.scss'],\n})\nexport class SkyTileTitleComponent {}\n","<h2\n class=\"sky-tile-title\"\n [skyThemeClass]=\"{\n 'sky-font-heading-2': 'modern',\n 'sky-section-heading': 'default'\n }\"\n>\n <ng-content></ng-content>\n</h2>\n","import {\n ComponentRef,\n EventEmitter,\n Injectable,\n Injector,\n Output,\n QueryList,\n} from '@angular/core';\nimport {\n SkyMediaBreakpoints,\n SkyMediaQueryService,\n SkyUIConfigService,\n} from '@skyux/core';\n\nimport { DragulaService } from 'ng2-dragula';\nimport { Subscription } from 'rxjs';\nimport { take } from 'rxjs/operators';\n\nimport { SkyTileDashboardColumnComponent } from '../tile-dashboard-column/tile-dashboard-column.component';\nimport { SkyTileDashboardConfig } from '../tile-dashboard-config/tile-dashboard-config';\nimport { SkyTileDashboardConfigLayoutColumn } from '../tile-dashboard-config/tile-dashboard-config-layout-column';\nimport { SkyTileDashboardConfigLayoutTile } from '../tile-dashboard-config/tile-dashboard-config-layout-tile';\nimport { SkyTileDashboardConfigTile } from '../tile-dashboard-config/tile-dashboard-config-tile';\nimport { SkyTileComponent } from '../tile/tile.component';\n\nconst ATTR_TILE_ID = '_sky-tile-dashboard-tile-id';\n\nlet bagIdIndex = 0;\n\n@Injectable()\nexport class SkyTileDashboardService {\n /**\n * @internal\n */\n public bagId: string;\n\n /**\n * @internal\n */\n public configChange = new EventEmitter<SkyTileDashboardConfig>();\n\n /**\n * Fires when the tile dashboard's initialization is complete.\n */\n @Output()\n public dashboardInitialized = new EventEmitter<void>();\n\n private tileComponents: ComponentRef<any>[];\n\n private config: SkyTileDashboardConfig;\n\n private defaultConfig: SkyTileDashboardConfig;\n\n private columns: QueryList<SkyTileDashboardColumnComponent>;\n\n private singleColumn: SkyTileDashboardColumnComponent;\n\n private mediaSubscription: Subscription;\n\n private settingsKey: string;\n\n constructor(\n private dragulaService: DragulaService,\n private mediaQuery: SkyMediaQueryService,\n private uiConfigService: SkyUIConfigService\n ) {\n this.bagId = 'sky-tile-dashboard-bag-' + ++bagIdIndex;\n\n this.initDragula();\n }\n\n /**\n * @internal\n */\n public init(\n config: SkyTileDashboardConfig,\n columns?: QueryList<SkyTileDashboardColumnComponent>,\n singleColumn?: SkyTileDashboardColumnComponent,\n settingsKey?: string\n ) {\n if (settingsKey) {\n // Clone this so changes to the config object outside of this class don't modify\n // the config used inside and vice versa.\n this.defaultConfig = this.config = Object.assign({}, config);\n\n this.settingsKey = settingsKey;\n\n this.uiConfigService\n .getConfig(settingsKey, config)\n .pipe(take(1))\n .subscribe(\n (value: any) => {\n if (value.persisted) {\n this.config.layout = value.layout;\n this.checkForNewTiles(value.tileIds);\n this.configChange.emit(this.config);\n\n this.columns = columns;\n this.singleColumn = singleColumn;\n this.checkReadyAndLoadTiles();\n } else {\n // Bad data, or config is the default config.\n this.initToDefaults(config, columns, singleColumn);\n }\n },\n (error: any) => {\n // Config setting key doesn't exist or other config service error\n this.initToDefaults(config, columns, singleColumn);\n }\n );\n } else {\n this.initToDefaults(config, columns, singleColumn);\n }\n }\n\n /**\n * Adds a new tile to the tile dashboard.\n * @param tile Specifies the tile configuration.\n * @param component Specifies the tile component to add.\n */\n public addTileComponent(\n tile: SkyTileDashboardConfigLayoutTile,\n component: ComponentRef<any>\n ) {\n this.tileComponents = this.tileComponents || [];\n\n this.tileComponents.push(component);\n\n component.location.nativeElement.setAttribute(ATTR_TILE_ID, tile.id);\n }\n\n /**\n * Checks whether a specified tile is collapsed.\n * @param tile Specifies the tile component to check.\n */\n public tileIsCollapsed(tile: SkyTileComponent): boolean {\n const tileConfig = this.findTile(this.getTileId(tile));\n\n if (tileConfig) {\n return tileConfig.isCollapsed;\n }\n\n return undefined;\n }\n\n /**\n * Sets the collapsed state of all tiles.\n * @param isCollapsed Indicates whether tiles are collapsed.\n */\n public setAllTilesCollapsed(isCollapsed: boolean): void {\n /*istanbul ignore else */\n if (this.config && this.config.layout.multiColumn) {\n for (const column of this.config.layout.multiColumn) {\n for (const tile of column.tiles) {\n tile.isCollapsed = isCollapsed;\n }\n }\n for (const tile of this.config.layout.singleColumn.tiles) {\n tile.isCollapsed = isCollapsed;\n }\n }\n\n if (this.settingsKey) {\n this.setUserConfig(this.config);\n }\n\n this.configChange.emit(this.config);\n }\n\n /**\n * Sets the collapsed state of a specified tile.\n * @param tile Specifies the tile component.\n * @param isCollapsed Indicates whether the tile is collapsed.\n */\n public setTileCollapsed(tile: SkyTileComponent, isCollapsed: boolean) {\n const tileConfig = this.findTile(this.getTileId(tile));\n\n if (tileConfig) {\n tileConfig.isCollapsed = isCollapsed;\n\n if (this.settingsKey) {\n this.setUserConfig(this.config);\n }\n\n this.configChange.emit(this.config);\n }\n }\n\n /**\n * @internal\n */\n public getTileComponentType(\n layoutTile: SkyTileDashboardConfigLayoutTile\n ): any {\n if (layoutTile) {\n for (const tile of this.config.tiles) {\n if (tile.id === layoutTile.id) {\n return tile.componentType;\n }\n }\n }\n\n return undefined;\n }\n\n /**\n * @internal\n */\n public changeColumnMode(isSingleColumn: boolean) {\n /*istanbul ignore else */\n if (this.config) {\n if (isSingleColumn) {\n this.moveTilesToSingleColumn();\n } else {\n this.moveTilesToMultiColumn();\n }\n }\n }\n\n /**\n * @internal\n */\n public getTileComponent(tileId: string): ComponentRef<any> {\n for (const tileComponent of this.tileComponents) {\n if (\n tileComponent.location.nativeElement.getAttribute(ATTR_TILE_ID) ===\n tileId\n ) {\n return tileComponent;\n }\n }\n\n /*istanbul ignore next */\n return undefined;\n }\n\n /**\n * @internal\n */\n public destroy() {\n /*istanbul ignore else */\n if (this.mediaSubscription) {\n this.mediaSubscription.unsubscribe();\n }\n }\n\n /**\n * @internal\n */\n public moveTileOnKeyDown(\n tileCmp: SkyTileComponent,\n direction: string,\n tileDescription: string\n ) {\n const isSingleColumnMode =\n this.mediaQuery.current === SkyMediaBreakpoints.xs ||\n this.mediaQuery.current === SkyMediaBreakpoints.sm;\n\n const tileId = this.getTileId(tileCmp);\n const tile = this.findTile(tileId);\n\n let column: SkyTileDashboardConfigLayoutColumn;\n let colIndex: number;\n if (isSingleColumnMode) {\n column = this.config.layout.singleColumn;\n } else {\n column = this.findTileColumn(tileId);\n colIndex = this.config.layout.multiColumn.findIndex(\n (value) => value === column\n );\n }\n\n if (\n (direction === 'left' || direction === 'right') &&\n !isSingleColumnMode\n ) {\n const operator = direction === 'left' ? -1 : 1;\n const newColumn = this.config.layout.multiColumn[colIndex + operator];\n\n if (newColumn) {\n // Move the tile to the end of the new column\n newColumn.tiles.push(tile);\n column.tiles = column.tiles.filter((item) => item !== tile);\n this.moveTilesToColumn(this.columns.toArray()[colIndex + operator], [\n tile,\n ]);\n\n // Report the change in configuration\n const reportConfig = this.config;\n reportConfig.movedTile = {\n tileDescription:\n tileDescription || /* istanbul ignore next */ tile.id,\n column: colIndex + operator + 1,\n position: newColumn.tiles.length,\n };\n this.configChange.emit(reportConfig);\n }\n } else {\n const operator = direction === 'up' ? -1 : 1;\n const curIndex = column.tiles.findIndex((value) => value.id === tile.id);\n const tileComponentInstance = this.getTileComponent(tileId);\n\n if (tileComponentInstance && column.tiles[curIndex + operator]) {\n const temp = column.tiles[curIndex + operator];\n column.tiles[curIndex + operator] = tile;\n column.tiles[curIndex] = temp;\n\n // Get the column element\n let columnEl: Element;\n if (isSingleColumnMode) {\n columnEl = this.getColumnEl(this.singleColumn);\n } else {\n columnEl = this.getColumnEl(this.columns.toArray()[colIndex]);\n }\n\n // Move the tile element in the document\n if (curIndex + operator === column.tiles.length - 1) {\n columnEl.appendChild(tileComponentInstance.location.nativeElement);\n } else {\n columnEl.insertBefore(\n tileComponentInstance.location.nativeElement,\n this.getTileComponent(column.tiles[curIndex + operator + 1].id)\n .location.nativeElement\n );\n }\n\n // Report the change in configuration\n const reportConfig = this.config;\n reportConfig.movedTile = {\n tileDescription:\n tileDescription || /* istanbul ignore next */ tile.id,\n column: isSingleColumnMode ? undefined : colIndex + 1,\n position: curIndex + operator + 1,\n };\n this.configChange.emit(reportConfig);\n }\n }\n }\n\n private getTileId(tile: SkyTileComponent): string {\n if (tile) {\n let el = tile.elementRef.nativeElement;\n let tileId: string;\n\n while (el) {\n tileId = el.getAttribute(ATTR_TILE_ID);\n\n if (tileId) {\n return tileId;\n }\n\n el = el.parentElement;\n }\n }\n\n return undefined;\n }\n\n private getTileOrRemoveFromLayout(\n layoutTile: SkyTileDashboardConfigLayoutTile\n ): SkyTileDashboardConfigTile {\n /*istanbul ignore else */\n if (layoutTile) {\n for (const tile of this.config.tiles) {\n if (tile.id === layoutTile.id) {\n return tile;\n }\n }\n\n // If the layout tile was not found in the list of tiles, it was removed since last the user updated settings\n /*istanbul ignore else */\n if (this.config.layout.singleColumn) {\n this.config.layout.singleColumn.tiles =\n this.config.layout.singleColumn.tiles.filter(\n (elem) => elem.id !== layoutTile.id\n );\n }\n\n /*istanbul ignore else */\n if (this.config.layout.multiColumn) {\n this.config.layout.multiColumn.forEach((elem) => {\n elem.tiles = elem.tiles.filter((res) => res.id !== layoutTile.id);\n });\n }\n }\n\n /*istanbul ignore next */\n return undefined;\n }\n\n private checkReadyAndLoadTiles() {\n if (this.config && this.columns) {\n this.loadTiles();\n this.initMediaQueries();\n this.dashboardInitialized.emit();\n }\n }\n\n private loadTiles() {\n const layout = this.config.layout;\n\n if (\n this.mediaQuery.current === SkyMediaBreakpoints.xs ||\n this.mediaQuery.current === SkyMediaBreakpoints.sm\n ) {\n for (const tile of layout.singleColumn.tiles) {\n this.loadTileIntoColumn(this.singleColumn, tile);\n }\n } else {\n const columns = this.columns.toArray();\n\n for (let i = 0, n = layout.multiColumn.length; i < n; i++) {\n const column = columns[i];\n\n for (const tile of layout.multiColumn[i].tiles) {\n this.loadTileIntoColumn(column, tile);\n }\n }\n }\n }\n\n private loadTileIntoColumn(\n column: SkyTileDashboardColumnComponent,\n layoutTile: SkyTileDashboardConfigLayoutTile\n ) {\n const tile = this.getTileOrRemoveFromLayout(layoutTile);\n\n /*istanbul ignore else */\n if (tile) {\n const componentType = tile.componentType;\n const providers = tile.providers /* istanbul ignore next */ || [];\n\n const injector = Injector.create({\n providers,\n parent: column.injector,\n });\n\n const factory = column.resolver.resolveComponentFactory(componentType);\n const componentRef = column.content.createComponent(\n factory,\n undefined,\n injector\n );\n\n this.addTileComponent(layoutTile, componentRef);\n\n // Make sure the component is marked for changes in case the parent component uses\n // the OnPush change detection strategy.\n componentRef.changeDetectorRef.markForCheck();\n }\n }\n\n private moveTilesToSingleColumn() {\n this.moveTilesToColumn(\n this.singleColumn,\n this.config.layout.singleColumn.tiles\n );\n }\n\n private moveTilesToMultiColumn() {\n const layoutColumns = this.config.layout.multiColumn;\n const columns = this.columns.toArray();\n\n for (let i = 0, n = layoutColumns.length; i < n; i++) {\n this.moveTilesToColumn(columns[i], layoutColumns[i].tiles);\n }\n }\n\n private moveTilesToColumn(\n column: SkyTileDashboardColumnComponent,\n layoutTiles: SkyTileDashboardConfigLayoutTile[]\n ) {\n const columnEl = this.getColumnEl(column);\n\n for (const layoutTile of layoutTiles) {\n const tileComponentInstance = this.getTileComponent(layoutTile.id);\n\n /*istanbul ignore else */\n if (tileComponentInstance) {\n columnEl.appendChild(tileComponentInstance.location.nativeElement);\n }\n }\n }\n\n private getConfigForUIState(): SkyTileDashboardConfig {\n /*istanbul ignore else */\n if (this.config) {\n this.config = {\n tiles: this.config.tiles,\n layout: {\n singleColumn: this.getSingleColumnLayoutForUIState(),\n multiColumn: this.getMultiColumnLayoutForUIState(),\n },\n };\n }\n\n return this.config;\n }\n\n private getSingleColumnLayoutForUIState(): SkyTileDashboardConfigLayoutColumn {\n if (\n this.mediaQuery.current === SkyMediaBreakpoints.xs ||\n this.mediaQuery.current === SkyMediaBreakpoints.sm\n ) {\n return {\n tiles: this.getTilesInEl(this.getColumnEl(this.singleColumn)),\n };\n }\n\n return this.config.layout.singleColumn;\n }\n\n private getMultiColumnLayoutForUIState(): SkyTileDashboardConfigLayoutColumn[] {\n if (\n !(\n this.mediaQuery.current === SkyMediaBreakpoints.xs ||\n this.mediaQuery.current === SkyMediaBreakpoints.sm\n )\n ) {\n const layoutColumns: SkyTileDashboardConfigLayoutColumn[] = [];\n const columns = this.columns.toArray();\n\n for (const column of columns) {\n if (column !== this.singleColumn) {\n const layoutColumn: SkyTileDashboardConfigLayoutColumn = {\n tiles: this.getTilesInEl(this.getColumnEl(column)),\n };\n\n layoutColumns.push(layoutColumn);\n }\n }\n\n return layoutColumns;\n }\n\n return this.config.layout.multiColumn;\n }\n\n private getTilesInEl(el: Element): SkyTileDashboardConfigLayoutTile[] {\n const tileEls: any = el.querySelectorAll('[' + ATTR_TILE_ID + ']');\n const layoutTiles: SkyTileDashboardConfigLayoutTile[] = [];\n\n /*istanbul ignore else */\n if (tileEls) {\n for (let i = 0, n = tileEls.length; i < n; i++) {\n const tileEl = tileEls[i];\n const tileId = tileEl.getAttribute(ATTR_TILE_ID);\n const tile = this.findTile(tileId);\n\n /*istanbul ignore else */\n if (tile) {\n layoutTiles.push(tile);\n }\n }\n }\n\n return layoutTiles;\n }\n\n private initMediaQueries() {\n /*istanbul ignore else */\n if (!this.mediaSubscription) {\n this.mediaSubscription = this.mediaQuery.subscribe(\n (args: SkyMediaBreakpoints) => {\n this.changeColumnMode(\n args === SkyMediaBreakpoints.xs || args === SkyMediaBreakpoints.sm\n );\n }\n );\n }\n }\n\n private initDragula() {\n this.dragulaService.createGroup(this.bagId, {\n moves: (el: HTMLElement, container: HTMLElement, handle: HTMLElement) => {\n const target = el.querySelector('.sky-tile-grab-handle');\n return target.contains(handle);\n },\n });\n\n this.dragulaService.drop(this.bagId).subscribe(() => {\n const config = this.getConfigForUIState();\n\n /*istanbul ignore else */\n if (config) {\n if (this.settingsKey) {\n this.setUserConfig(config);\n }\n\n this.configChange.emit(config);\n }\n });\n }\n\n private getColumnEl(column: SkyTileDashboardColumnComponent): Element {\n return column.content.element.nativeElement.parentNode;\n }\n\n private findTile(tileId: string): SkyTileDashboardConfigLayoutTile {\n /*istanbul ignore else */\n if (this.config && this.config.layout.multiColumn) {\n for (const column of this.config.layout.multiColumn) {\n /*istanbul ignore else */\n if (column.tiles) {\n for (const tile of column.tiles) {\n if (tile.id === tileId) {\n return tile;\n }\n }\n }\n }\n }\n\n return undefined;\n }\n\n private findTileColumn(tileId: string): SkyTileDashboardConfigLayoutColumn {\n /*istanbul ignore else */\n if (this.config && this.config.layout.multiColumn) {\n return this.config.layout.multiColumn.find(\n (col) => col.tiles && !!col.tiles.find((tile) => tile.id === tileId)\n );\n }\n\n /*istanbul ignore next */\n return undefined;\n }\n\n private initToDefaults(\n config: SkyTileDashboardConfig,\n columns: QueryList<SkyTileDashboardColumnComponent>,\n singleColumn: SkyTileDashboardColumnComponent\n ) {\n this.config = config;\n this.columns = columns;\n this.singleColumn = singleColumn;\n this.checkReadyAndLoadTiles();\n }\n\n private setUserConfig(config: SkyTileDashboardConfig) {\n this.uiConfigService\n .setConfig(this.settingsKey, {\n layout: this.config.layout,\n persisted: true,\n tileIds: this.defaultConfig.tiles.map((elem) => elem.id),\n })\n .subscribe(\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n () => {},\n (err) => {\n console.warn('Could not save tile dashboard settings.');\n console.warn(err);\n }\n );\n }\n\n private checkForNewTiles(oldUserTiles: string[]) {\n // Get a list of tiles that are in the config's default list but not in the user's settings\n const newTiles = this.config.tiles.filter((elem) => {\n return oldUserTiles.indexOf(elem.id) === -1;\n });\n\n const { multiColumn, singleColumn } = this.config.layout;\n\n // Append new tiles to the end of the layouts\n /*istanbul ignore else */\n if (newTiles.length > 0) {\n /*istanbul ignore else */\n if (multiColumn) {\n newTiles.forEach((elem) => {\n let locationToAdd = 0;\n let smallest = multiColumn[0].tiles.length;\n multiColumn.forEach((item, index) => {\n if (item.tiles.length < smallest) {\n locationToAdd = index;\n smallest = item.tiles.length;\n }\n });\n multiColumn[locationToAdd].tiles.push({\n id: elem.id,\n isCollapsed: false,\n });\n });\n }\n\n /*istanbul ignore else */\n if (singleColumn) {\n newTiles.forEach((elem) => {\n singleColumn.tiles.push({ id: elem.id, isCollapsed: false });\n });\n }\n }\n\n /*istanbul ignore else */\n if (singleColumn) {\n for (const tile of singleColumn.tiles) {\n this.getTileOrRemoveFromLayout(tile);\n }\n }\n\n /*istanbul ignore else */\n if (multiColumn) {\n for (let i = 0, n = multiColumn.length; i < n; i++) {\n for (const tile of multiColumn[i].tiles) {\n this.getTileOrRemoveFromLayout(tile);\n }\n }\n }\n }\n}\n","import {\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n Optional,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { skyAnimationSlide } from '@skyux/animations';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyTileDashboardService } from '../tile-dashboard/tile-dashboard.service';\n\n/**\n * Provides a common look-and-feel for tab content.\n */\n@Component({\n selector: 'sky-tile',\n styleUrls: ['./tile.component.scss'],\n templateUrl: './tile.component.html',\n animations: [skyAnimationSlide],\n})\nexport class SkyTileComponent implements OnDestroy {\n /**\n * Indicates whether to display a settings button in the tile header. To display the\n * button, you must also listen for the `settingsClick` event.\n * @default true\n */\n @Input()\n public showSettings = true;\n\n /**\n * Indicates whether to display a help button in the tile header. To display the\n * button, you must also listen for the `helpClick` event.\n * @default true\n */\n @Input()\n public showHelp = true;\n\n /**\n * Specifies a human-readable name for the tile that is available for multiple purposes, such as accessibility and instrumentation. For example, the component uses the name to construct ARIA labels for tile controls to [support accessibility](https://developer.blackbaud.com/skyux/learn/accessibility).\n */\n @Input()\n public tileName;\n\n /**\n * Fires when users select the settings button in the tile header. The settings\n * button only appears when the `showSettings` property is set to `true`.\n */\n @Output()\n public settingsClick = new EventEmitter();\n\n /**\n * Fires when the tile's collapsed state changes. Returns `true` when the tile\n * collapses and `false` when it expands.\n */\n @Output()\n public isCollapsedChange = new EventEmitter<boolean>();\n\n /**\n * Fires when users select the help button in the tile header. The help\n * button only appears when the `showHelp` property is set to `true`.\n */\n @Output()\n public helpClick = new EventEmitter();\n\n public get isCollapsed(): boolean {\n if (this.dashboardService) {\n const configCollapsedState = this.dashboardService.tileIsCollapsed(this);\n this._isCollapsed = configCollapsedState;\n }\n\n return this._isCollapsed;\n }\n\n /**\n * Indicates whether the tile is in a collapsed state.\n * @default false\n */\n @Input()\n public set isCollapsed(value: boolean) {\n if (this.dashboardService) {\n this.dashboardService.setTileCollapsed(this, value);\n }\n\n this._isCollapsed = value;\n\n this.isCollapsedChange.emit(value);\n }\n\n public ariaDescribedBy: string | undefined;\n\n public isInDashboardColumn = false;\n\n @ViewChild('grabHandle', {\n read: ElementRef,\n static: false,\n })\n private grabHandle: ElementRef;\n\n @ViewChild('titleContainer', {\n read: ElementRef,\n static: false,\n })\n private title: ElementRef;\n\n private ngUnsubscribe = new Subject<void>();\n\n private _isCollapsed = false;\n\n constructor(\n public elementRef: ElementRef,\n private changeDetector: ChangeDetectorRef,\n @Optional() private dashboardService?: SkyTileDashboardService\n ) {\n this.isInDashboardColumn = !!dashboardService;\n\n if (this.dashboardService) {\n this.ariaDescribedBy = `${this.dashboardService.bagId}-move-instructions`;\n\n /**\n * This subscription ensures that if any values which come in from the dashboard service are\n * updated that the component will update if the tile's parent component utilizes OnPush\n * change detection.\n */\n this.dashboardService.configChange\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe(() => {\n this.changeDetector.markForCheck();\n });\n }\n }\n\n public ngOnDestroy(): void {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n public settingsButtonClicked(): void {\n this.settingsClick.emit(undefined);\n }\n\n public helpButtonClicked(): void {\n this.helpClick.emit(undefined);\n }\n\n public get hasSettings(): boolean {\n return this.settingsClick.observers.length > 0 && this.showSettings;\n }\n\n public get hasHelp(): boolean {\n return this.helpClick.observers.length > 0 && this.showHelp;\n }\n\n public titleClick(): void {\n this.isCollapsed = !this.isCollapsed;\n }\n\n public chevronDirectionChange(direction: string): void {\n this.isCollapsed = direction === 'down';\n }\n\n public moveTile(event: KeyboardEvent): void {\n /* istanbul ignore else */\n if (this.isInDashboardColumn) {\n const direction = event.key.toLowerCase().replace('arrow', '');\n /* istanbul ignore else */\n if (\n direction === 'up' ||\n direction === 'down' ||\n direction === 'left' ||\n direction === 'right'\n ) {\n this.dashboardService.moveTileOnKeyDown(\n this,\n direction,\n this.title\n ? this.title.nativeElement.innerText\n : /* istanbul ignore next */\n undefined\n );\n this.focusHandle();\n }\n }\n }\n\n private focusHandle(): void {\n this.grabHandle.nativeElement.focus();\n }\n}\n","<section\n class=\"sky-tile\"\n [ngClass]=\"{\n 'sky-tile-collapsed': isCollapsed\n }\"\n [skyThemeClass]=\"{\n 'sky-box sky-elevation-1-bordered sky-padding-even-xl': 'modern'\n }\"\n>\n <header class=\"sky-tile-header\">\n <div class=\"sky-tile-header-content\" (click)=\"titleClick()\">\n <div class=\"sky-tile-header-title\" #titleContainer>\n <ng-content select=\"sky-tile-title\"></ng-content>\n </div>\n <div\n class=\"sky-tile-summary\"\n [skyThemeClass]=\"{\n 'sky-font-display-3': 'modern',\n 'sky-headline': 'default'\n }\"\n >\n <ng-content select=\"sky-tile-summary\"></ng-content>\n </div>\n </div>\n <div class=\"sky-tile-header-column-tools\">\n <div class=\"sky-tile-tools\">\n <ng-container *skyThemeIf=\"'default'\">\n <button\n *ngIf=\"hasHelp\"\n class=\"sky-btn sky-tile-tools-control sky-tile-help\"\n type=\"button\"\n [attr.aria-label]=\"\n tileName\n ? ('skyux_tile_help' | skyLibResources: tileName)\n : ('skyux_tile_help_default' | skyLibResources)\n \"\n [skyThemeClass]=\"{\n 'sky-btn-icon-borderless': 'modern'\n }\"\n (click)=\"helpButtonClicked()\"\n >\n <sky-icon icon=\"question-circle\"></sky-icon>\n </button>\n </ng-container>\n <sky-chevron\n [ariaControls]=\"tileContent.id\"\n [ariaLabel]=\"\n tileName\n ? ('skyux_tile_expand' | skyLibResources: tileName)\n : ('skyux_tile_expand_default' | skyLibResources)\n \"\n [direction]=\"isCollapsed ? 'down' : 'up'\"\n [skyThemeClass]=\"{\n 'sky-tile-tools-control': 'default',\n 'sky-margin-inline-default': 'modern'\n }\"\n (directionChange)=\"chevronDirectionChange($event)\"\n >\n </sky-chevron>\n <button\n *ngIf=\"hasSettings\"\n class=\"sky-btn sky-tile-settings\"\n type=\"button\"\n [attr.aria-label]=\"\n tileName\n ? ('skyux_tile_settings' | skyLibResources: tileName)\n : ('skyux_tile_settings_default' | skyLibResources)\n \"\n [skyThemeClass]=\"{\n 'sky-tile-tools-control': 'default',\n 'sky-btn-icon-borderless sky-margin-inline-default': 'modern'\n }\"\n (click)=\"settingsButtonClicked()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"cog\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"cog-line\"\n iconType=\"skyux\"\n ></sky-icon>\n </button>\n <button\n *ngIf=\"isInDashboardColumn\"\n class=\"sky-btn sky-tile-grab-handle\"\n [attr.aria-label]=\"\n tileName\n ? ('skyux_tile_move' | skyLibResources: tileName)\n : ('skyux_tile_move_default' | skyLibResources)\n \"\n [attr.aria-describedby]=\"ariaDescribedBy\"\n [skyThemeClass]=\"{\n 'sky-tile-tools-control': 'default',\n 'sky-btn-icon-borderless': 'modern'\n }\"\n (click)=\"$event.stopPropagation()\"\n (keydown)=\"moveTile($event)\"\n #grabHandle\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"th\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"tile-drag\"\n iconType=\"skyux\"\n ></sky-icon>\n </button>\n </div>\n </div>\n </header>\n <div\n class=\"sky-tile-content\"\n role=\"region\"\n skyId\n [attr.aria-label]=\"tileName\"\n [@skyAnimationSlide]=\"isCollapsed ? 'up' : 'down'\"\n #tileContent=\"skyId\"\n >\n <ng-content select=\"sky-tile-content\"></ng-content>\n </div>\n</section>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyIdModule } from '@skyux/core';\nimport { SkyI18nModule } from '@skyux/i18n';\nimport { SkyChevronModule, SkyIconModule } from '@skyux/indicators';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyTilesResourcesModule } from '../../shared/sky-tiles-resources.module';\n\nimport { SkyTileSummaryComponent } from './tile-summary.component';\nimport { SkyTileTitleComponent } from './tile-title.component';\nimport { SkyTileComponent } from './tile.component';\n\n@NgModule({\n declarations: [\n SkyTileComponent,\n SkyTileSummaryComponent,\n SkyTileTitleComponent,\n ],\n imports: [\n CommonModule,\n SkyChevronModule,\n SkyIdModule,\n SkyI18nModule,\n SkyIconModule,\n SkyThemeModule,\n SkyTilesResourcesModule,\n ],\n exports: [SkyTileComponent, SkyTileSummaryComponent, SkyTileTitleComponent],\n})\nexport class SkyTileModule {}\n","import { Component } from '@angular/core';\n\n/**\n * Specifies content to display inside a padded section of a SkyTileContentComponent.\n */\n@Component({\n selector: 'sky-tile-content-section',\n styleUrls: ['./tile-content-section.component.scss'],\n templateUrl: './tile-content-section.component.html',\n})\nexport class SkyTileContentSectionComponent {}\n","<div\n class=\"sky-tile-content-section\"\n [skyThemeClass]=\"{\n 'sky-padding-even-large': 'default'\n }\"\n>\n <ng-content></ng-content>\n</div>\n","import { Component } from '@angular/core';\n\n/**\n * Specifies content to display in the tile's body.\n */\n@Component({\n selector: 'sky-tile-content',\n styleUrls: ['./tile-content.component.scss'],\n templateUrl: 'tile-content.component.html',\n})\nexport class SkyTileContentComponent {}\n","<ng-content></ng-content>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyTileContentSectionComponent } from './tile-content-section.component';\nimport { SkyTileContentComponent } from './tile-content.component';\n\n@NgModule({\n declarations: [SkyTileContentComponent, SkyTileContentSectionComponent],\n imports: [CommonModule, SkyThemeModule],\n exports: [SkyTileContentComponent, SkyTileContentSectionComponent],\n})\nexport class SkyTileContentModule {}\n","/**\n * Specifies the type of message to send to the tile dashboard component.\n */\nexport enum SkyTileDashboardMessageType {\n /**\n * Expands all tiles within the tile dashboard.\n */\n ExpandAll = 0,\n\n /**\n * Collapses all tiles within the tile dashboard.\n */\n CollapseAll = 1,\n}\n","import {\n Component,\n ComponentFactoryResolver,\n Injector,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { SkyTileDashboardService } from '../tile-dashboard/tile-dashboard.service';\n\nlet columnIdIndex = 0;\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-tile-dashboard-column',\n styleUrls: ['./tile-dashboard-column.component.scss'],\n templateUrl: './tile-dashboard-column.component.html',\n})\nexport class SkyTileDashboardColumnComponent {\n public bagId: string;\n\n public columnId: string;\n\n @ViewChild('content', {\n read: ViewContainerRef,\n static: false,\n })\n public content: ViewContainerRef;\n\n constructor(\n public resolver: ComponentFactoryResolver,\n public injector: Injector,\n private dashboardService: SkyTileDashboardService\n ) {\n columnIdIndex++;\n\n this.columnId = 'tile-dashboard-column-' + columnIdIndex;\n\n this.bagId = this.dashboardService.bagId;\n }\n}\n","<div class=\"sky-tile-dashboard-column\" [dragula]=\"bagId\">\n <div #content></div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DragulaModule } from 'ng2-dragula';\n\nimport { SkyTileDashboardColumnComponent } from './tile-dashboard-column.component';\n\n@NgModule({\n declarations: [SkyTileDashboardColumnComponent],\n imports: [CommonModule, DragulaModule],\n exports: [SkyTileDashboardColumnComponent],\n})\nexport class SkyTileDashboardColumnModule {}\n","import {\n AfterViewInit,\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n Optional,\n Output,\n QueryList,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { SkyMediaBreakpoints, SkyMediaQueryService } from '@skyux/core';\nimport { SkyLibResourcesService } from '@skyux/i18n';\n\nimport { Observable, Subject } from 'rxjs';\nimport { take, takeUntil } from 'rxjs/operators';\n\nimport { SkyTileDashboardColumnComponent } from '../tile-dashboard-column/tile-dashboard-column.component';\nimport { SkyTileDashboardConfig } from '../tile-dashboard-config/tile-dashboard-config';\n\nimport { SkyTileDashboardMessage } from './tile-dashboard-message';\nimport { SkyTileDashboardMessageType } from './tile-dashboard-message-type';\nimport { SkyTileDashboardService } from './tile-dashboard.service';\n\n/**\n * Specifies a container to group multiple tiles.\n */\n@Component({\n selector: 'sky-tile-dashboard',\n styleUrls: ['./tile-dashboard.component.scss'],\n templateUrl: './tile-dashboard.component.html',\n providers: [SkyTileDashboardService],\n})\nexport class SkyTileDashboardComponent implements AfterViewInit, OnDestroy {\n /**\n * Populates the tile dashboard based on the `SkyTileDashboardConfig` object.\n * @required\n */\n @Input()\n public set config(value: SkyTileDashboardConfig) {\n if (value && !this.configSet) {\n this._config = value;\n this.configSet = true;\n this.checkReady();\n }\n }\n\n public get config(): SkyTileDashboardConfig {\n return this._config;\n }\n\n /**\n * Provides an observable to send commands to the tile dashboard. The commands should respect the\n * `SkyTileDashboardMessage` type.\n */\n @Input()\n public messageStream = new Subject<SkyTileDashboardMessage>();\n\n /**\n * Specifies a unique key for the UI Config Service to retrieve stored settings\n * from a database. The UI Config Service saves configuration settings for users\n * to preserve the layout and collapsed state of tile dashboards. The UI Config Service relies on `id` values from the `config` property to maintain user settings. For more information\n * about the UI Config Service, see the\n * [sticky settings documentation](https://developer.blackbaud.com/skyux/learn/get-started/sticky-settings).\n */\n @Input()\n public settingsKey: string;\n\n /**\n * Fires when the tile dashboard changes state and emits a SkyTileDashboardConfig\n * object. This occurs when tiles collapse or expand and when users drag and drop\n * tiles to rearrange them.\n */\n @Output()\n public configChange = new EventEmitter<SkyTileDashboardConfig>();\n\n @ViewChildren(SkyTileDashboardColumnComponent)\n private columns: QueryList<SkyTileDashboardColumnComponent>;\n\n @ViewChild('singleColumn', {\n read: SkyTileDashboardColumnComponent,\n static: false,\n })\n public singleColumn: SkyTileDashboardColumnComponent;\n\n public tileMovedReport: string;\n\n public moveInstructionsId =\n this.dashboardService.bagId + '-move-instructions';\n\n private _config: SkyTileDashboardConfig;\n\n private configSet = false;\n\n private ngUnsubscribe = new Subject<void>();\n\n private viewReady = false;\n\n constructor(\n private dashboardService: SkyTileDashboardService,\n private mediaQuery: SkyMediaQueryService,\n @Optional() private resourcesService?: SkyLibResourcesService\n ) {\n this.dashboardService.configChange.subscribe(\n (config: SkyTileDashboardConfig) => {\n this.configChange.emit(config);\n\n // Update aria live region with tile drag info\n if (config.movedTile && this.resourcesService) {\n let messageObservable: Observable<string>;\n if (\n this.mediaQuery.current === SkyMediaBreakpoints.xs ||\n this.mediaQuery.current === SkyMediaBreakpoints.sm\n ) {\n messageObservable = this.resourcesService.getString(\n 'skyux_tile_moved_assistive_text',\n config.movedTile.tileDescription,\n '1',\n '1',\n config.movedTile.position.toString(),\n config.layout.singleColumn.tiles.length.toString()\n );\n } else {\n messageObservable = this.resourcesService.getString(\n 'skyux_tile_moved_assistive_text',\n config.movedTile.tileDescription,\n config.movedTile.column.toString(),\n config.layout.multiColumn.length.toString(),\n config.movedTile.position.toString(),\n config.layout.multiColumn[\n config.movedTile.column - 1\n ].tiles.length.toString()\n );\n }\n messageObservable.pipe(take(1)).subscribe((message: string) => {\n this.tileMovedReport = message;\n });\n }\n }\n );\n }\n\n public ngAfterViewInit(): void {\n this.messageStream\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((message: SkyTileDashboardMessage) => {\n this.handleIncomingMessages(message);\n });\n\n this.viewReady = true;\n this.checkReady();\n }\n\n public ngOnDestroy(): void {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n this.dashboardService.destroy();\n }\n\n private checkReady(): void {\n if (this.viewReady && this.config) {\n setTimeout(() => {\n this.dashboardService.init(\n this.config,\n this.columns,\n this.singleColumn,\n this.settingsKey\n );\n }, 0);\n }\n }\n\n private handleIncomingMessages(message: SkyTileDashboardMessage): void {\n switch (message.type) {\n case SkyTileDashboardMessageType.ExpandAll:\n this.dashboardService.setAllTilesCollapsed(false);\n break;\n\n case SkyTileDashboardMessageType.CollapseAll:\n this.dashboardService.setAllTilesCollapsed(true);\n break;\n }\n }\n}\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></ng-content>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DragulaService } from 'ng2-dragula';\n\nimport { SkyTilesResourcesModule } from '../../shared/sky-tiles-resources.module';\nimport { SkyTileDashboardColumnModule } from '../tile-dashboard-column/tile-dashboard-column.module';\n\nimport { SkyTileDashboardComponent } from './tile-dashboard.component';\n\n@NgModule({\n declarations: [SkyTileDashboardComponent],\n providers: [DragulaService],\n imports: [\n CommonModule,\n SkyTileDashboardColumnModule,\n SkyTilesResourcesModule,\n ],\n exports: [SkyTileDashboardComponent],\n})\nexport class SkyTileDashboardModule {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DragulaService } from 'ng2-dragula';\n\nimport { SkyTileContentModule } from './tile-content/tile-content.module';\nimport { SkyTileDashboardColumnModule } from './tile-dashboard-column/tile-dashboard-column.module';\nimport { SkyTileDashboardModule } from './tile-dashboard/tile-dashboard.module';\nimport { SkyTileModule } from './tile/tile.module';\n\n@NgModule({\n imports: [CommonModule],\n exports: [\n SkyTileContentModule,\n SkyTileModule,\n SkyTileDashboardColumnModule,\n SkyTileDashboardModule,\n ],\n providers: [DragulaService],\n})\nexport class SkyTilesModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i1.SkyTileDashboardService","i2","i5","i6","i3","i4.SkyTileDashboardColumnComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"skyux-tiles.mjs","sources":["../../../../../libs/components/tiles/src/lib/modules/shared/sky-tiles-resources.module.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile-summary.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile-summary.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile-title.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile-title.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard/tile-dashboard.service.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile.module.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-content/tile-content-section.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-content/tile-content-section.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-content/tile-content.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-content/tile-content.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-content/tile-content.module.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard/tile-dashboard-message-type.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard-column/tile-dashboard-column.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard-column/tile-dashboard-column.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard-column/tile-dashboard-column.module.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard/tile-dashboard.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard/tile-dashboard.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard/tile-dashboard.module.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tiles.module.ts","../../../../../libs/components/tiles/src/skyux-tiles.ts"],"sourcesContent":["/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module lib/modules/shared/sky-tiles' schematic.\n * To update this file, simply rerun the command.\n */\nimport { NgModule } from '@angular/core';\nimport {\n SKY_LIB_RESOURCES_PROVIDERS,\n SkyAppLocaleInfo,\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesProvider,\n getLibStringForLocale,\n} from '@skyux/i18n';\n\nconst RESOURCES: { [locale: string]: SkyLibResources } = {\n 'EN-US': {\n skyux_tile_expand: { message: 'Expand or collapse {0}' },\n skyux_tile_expand_default: { message: 'Expand or collapse' },\n skyux_tile_help: { message: '{0} help' },\n skyux_tile_help_default: { message: 'Help' },\n skyux_tile_settings: { message: '{0} settings' },\n skyux_tile_settings_default: { message: 'Settings' },\n skyux_tile_move: { message: 'Move {0}' },\n skyux_tile_move_default: { message: 'Move' },\n skyux_tile_move_instructions: {\n message:\n \"When focus is placed on a tile's move button, use the arrow keys to move it. The up and down keys change its position within a column. The left and right keys move it between columns.\",\n },\n skyux_tile_moved_assistive_text: {\n message:\n '{0} moved. Current column: {1} of {2}. Current position in column: {3} of {4}',\n },\n },\n};\n\nexport class SkyTilesResourcesProvider implements SkyLibResourcesProvider {\n public getString(\n localeInfo: SkyAppLocaleInfo,\n name: string\n ): string | undefined {\n return getLibStringForLocale(RESOURCES, localeInfo.locale, name);\n }\n}\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n providers: [\n {\n provide: SKY_LIB_RESOURCES_PROVIDERS,\n useClass: SkyTilesResourcesProvider,\n multi: true,\n },\n ],\n})\nexport class SkyTilesResourcesModule {}\n","import { Component } from '@angular/core';\n\n/**\n * Specifies content to display in the tile's summary.\n */\n@Component({\n selector: 'sky-tile-summary',\n templateUrl: 'tile-summary.component.html',\n})\n/* istanbul ignore next */\n/* Code coverage having problems with no statements in classes */\nexport class SkyTileSummaryComponent {}\n","<ng-content></ng-content>\n","import { Component } from '@angular/core';\n\n/**\n * Specifies content to display in the tile's title.\n */\n@Component({\n selector: 'sky-tile-title',\n templateUrl: './tile-title.component.html',\n styleUrls: ['./tile-title.component.scss'],\n})\nexport class SkyTileTitleComponent {}\n","<h2\n class=\"sky-tile-title\"\n [skyThemeClass]=\"{\n 'sky-font-heading-2': 'modern',\n 'sky-section-heading': 'default'\n }\"\n>\n <span skyTrim><ng-content></ng-content></span\n ><span class=\"sky-control-help-container\"\n ><ng-content select=\".sky-control-help\"></ng-content\n ></span>\n</h2>\n","import {\n ComponentRef,\n EventEmitter,\n Injectable,\n Injector,\n Output,\n QueryList,\n} from '@angular/core';\nimport {\n SkyMediaBreakpoints,\n SkyMediaQueryService,\n SkyUIConfigService,\n} from '@skyux/core';\n\nimport { DragulaService } from 'ng2-dragula';\nimport { Subscription } from 'rxjs';\nimport { take } from 'rxjs/operators';\n\nimport { SkyTileDashboardColumnComponent } from '../tile-dashboard-column/tile-dashboard-column.component';\nimport { SkyTileDashboardConfig } from '../tile-dashboard-config/tile-dashboard-config';\nimport { SkyTileDashboardConfigLayoutColumn } from '../tile-dashboard-config/tile-dashboard-config-layout-column';\nimport { SkyTileDashboardConfigLayoutTile } from '../tile-dashboard-config/tile-dashboard-config-layout-tile';\nimport { SkyTileDashboardConfigTile } from '../tile-dashboard-config/tile-dashboard-config-tile';\nimport { SkyTileComponent } from '../tile/tile.component';\n\nconst ATTR_TILE_ID = '_sky-tile-dashboard-tile-id';\n\nlet bagIdIndex = 0;\n\n@Injectable()\nexport class SkyTileDashboardService {\n /**\n * @internal\n */\n public bagId: string;\n\n /**\n * @internal\n */\n public configChange = new EventEmitter<SkyTileDashboardConfig>();\n\n /**\n * Fires when the tile dashboard's initialization is complete.\n */\n @Output()\n public dashboardInitialized = new EventEmitter<void>();\n\n private tileComponents: ComponentRef<any>[];\n\n private config: SkyTileDashboardConfig;\n\n private defaultConfig: SkyTileDashboardConfig;\n\n private columns: QueryList<SkyTileDashboardColumnComponent>;\n\n private singleColumn: SkyTileDashboardColumnComponent;\n\n private mediaSubscription: Subscription;\n\n private settingsKey: string;\n\n constructor(\n private dragulaService: DragulaService,\n private mediaQuery: SkyMediaQueryService,\n private uiConfigService: SkyUIConfigService\n ) {\n this.bagId = 'sky-tile-dashboard-bag-' + ++bagIdIndex;\n\n this.initDragula();\n }\n\n /**\n * @internal\n */\n public init(\n config: SkyTileDashboardConfig,\n columns?: QueryList<SkyTileDashboardColumnComponent>,\n singleColumn?: SkyTileDashboardColumnComponent,\n settingsKey?: string\n ) {\n if (settingsKey) {\n // Clone this so changes to the config object outside of this class don't modify\n // the config used inside and vice versa.\n this.defaultConfig = this.config = Object.assign({}, config);\n\n this.settingsKey = settingsKey;\n\n this.uiConfigService\n .getConfig(settingsKey, config)\n .pipe(take(1))\n .subscribe(\n (value: any) => {\n if (value.persisted) {\n this.config.layout = value.layout;\n this.checkForNewTiles(value.tileIds);\n this.configChange.emit(this.config);\n\n this.columns = columns;\n this.singleColumn = singleColumn;\n this.checkReadyAndLoadTiles();\n } else {\n // Bad data, or config is the default config.\n this.initToDefaults(config, columns, singleColumn);\n }\n },\n (error: any) => {\n // Config setting key doesn't exist or other config service error\n this.initToDefaults(config, columns, singleColumn);\n }\n );\n } else {\n this.initToDefaults(config, columns, singleColumn);\n }\n }\n\n /**\n * Adds a new tile to the tile dashboard.\n * @param tile Specifies the tile configuration.\n * @param component Specifies the tile component to add.\n */\n public addTileComponent(\n tile: SkyTileDashboardConfigLayoutTile,\n component: ComponentRef<any>\n ) {\n this.tileComponents = this.tileComponents || [];\n\n this.tileComponents.push(component);\n\n component.location.nativeElement.setAttribute(ATTR_TILE_ID, tile.id);\n }\n\n /**\n * Checks whether a specified tile is collapsed.\n * @param tile Specifies the tile component to check.\n */\n public tileIsCollapsed(tile: SkyTileComponent): boolean {\n const tileConfig = this.findTile(this.getTileId(tile));\n\n if (tileConfig) {\n return tileConfig.isCollapsed;\n }\n\n return undefined;\n }\n\n /**\n * Sets the collapsed state of all tiles.\n * @param isCollapsed Indicates whether tiles are collapsed.\n */\n public setAllTilesCollapsed(isCollapsed: boolean): void {\n /*istanbul ignore else */\n if (this.config && this.config.layout.multiColumn) {\n for (const column of this.config.layout.multiColumn) {\n for (const tile of column.tiles) {\n tile.isCollapsed = isCollapsed;\n }\n }\n for (const tile of this.config.layout.singleColumn.tiles) {\n tile.isCollapsed = isCollapsed;\n }\n }\n\n if (this.settingsKey) {\n this.setUserConfig(this.config);\n }\n\n this.configChange.emit(this.config);\n }\n\n /**\n * Sets the collapsed state of a specified tile.\n * @param tile Specifies the tile component.\n * @param isCollapsed Indicates whether the tile is collapsed.\n */\n public setTileCollapsed(tile: SkyTileComponent, isCollapsed: boolean) {\n const tileConfig = this.findTile(this.getTileId(tile));\n\n if (tileConfig) {\n tileConfig.isCollapsed = isCollapsed;\n\n if (this.settingsKey) {\n this.setUserConfig(this.config);\n }\n\n this.configChange.emit(this.config);\n }\n }\n\n /**\n * @internal\n */\n public getTileComponentType(\n layoutTile: SkyTileDashboardConfigLayoutTile\n ): any {\n if (layoutTile) {\n for (const tile of this.config.tiles) {\n if (tile.id === layoutTile.id) {\n return tile.componentType;\n }\n }\n }\n\n return undefined;\n }\n\n /**\n * @internal\n */\n public changeColumnMode(isSingleColumn: boolean) {\n /*istanbul ignore else */\n if (this.config) {\n if (isSingleColumn) {\n this.moveTilesToSingleColumn();\n } else {\n this.moveTilesToMultiColumn();\n }\n }\n }\n\n /**\n * @internal\n */\n public getTileComponent(tileId: string): ComponentRef<any> {\n for (const tileComponent of this.tileComponents) {\n if (\n tileComponent.location.nativeElement.getAttribute(ATTR_TILE_ID) ===\n tileId\n ) {\n return tileComponent;\n }\n }\n\n /*istanbul ignore next */\n return undefined;\n }\n\n /**\n * @internal\n */\n public destroy() {\n /*istanbul ignore else */\n if (this.mediaSubscription) {\n this.mediaSubscription.unsubscribe();\n }\n }\n\n /**\n * @internal\n */\n public moveTileOnKeyDown(\n tileCmp: SkyTileComponent,\n direction: string,\n tileDescription: string\n ) {\n const isSingleColumnMode =\n this.mediaQuery.current === SkyMediaBreakpoints.xs ||\n this.mediaQuery.current === SkyMediaBreakpoints.sm;\n\n const tileId = this.getTileId(tileCmp);\n const tile = this.findTile(tileId);\n\n let column: SkyTileDashboardConfigLayoutColumn;\n let colIndex: number;\n if (isSingleColumnMode) {\n column = this.config.layout.singleColumn;\n } else {\n column = this.findTileColumn(tileId);\n colIndex = this.config.layout.multiColumn.findIndex(\n (value) => value === column\n );\n }\n\n if (\n (direction === 'left' || direction === 'right') &&\n !isSingleColumnMode\n ) {\n const operator = direction === 'left' ? -1 : 1;\n const newColumn = this.config.layout.multiColumn[colIndex + operator];\n\n if (newColumn) {\n // Move the tile to the end of the new column\n newColumn.tiles.push(tile);\n column.tiles = column.tiles.filter((item) => item !== tile);\n this.moveTilesToColumn(this.columns.toArray()[colIndex + operator], [\n tile,\n ]);\n\n // Report the change in configuration\n const reportConfig = this.config;\n reportConfig.movedTile = {\n tileDescription:\n tileDescription || /* istanbul ignore next */ tile.id,\n column: colIndex + operator + 1,\n position: newColumn.tiles.length,\n };\n this.configChange.emit(reportConfig);\n }\n } else {\n const operator = direction === 'up' ? -1 : 1;\n const curIndex = column.tiles.findIndex((value) => value.id === tile.id);\n const tileComponentInstance = this.getTileComponent(tileId);\n\n if (tileComponentInstance && column.tiles[curIndex + operator]) {\n const temp = column.tiles[curIndex + operator];\n column.tiles[curIndex + operator] = tile;\n column.tiles[curIndex] = temp;\n\n // Get the column element\n let columnEl: Element;\n if (isSingleColumnMode) {\n columnEl = this.getColumnEl(this.singleColumn);\n } else {\n columnEl = this.getColumnEl(this.columns.toArray()[colIndex]);\n }\n\n // Move the tile element in the document\n if (curIndex + operator === column.tiles.length - 1) {\n columnEl.appendChild(tileComponentInstance.location.nativeElement);\n } else {\n columnEl.insertBefore(\n tileComponentInstance.location.nativeElement,\n this.getTileComponent(column.tiles[curIndex + operator + 1].id)\n .location.nativeElement\n );\n }\n\n // Report the change in configuration\n const reportConfig = this.config;\n reportConfig.movedTile = {\n tileDescription:\n tileDescription || /* istanbul ignore next */ tile.id,\n column: isSingleColumnMode ? undefined : colIndex + 1,\n position: curIndex + operator + 1,\n };\n this.configChange.emit(reportConfig);\n }\n }\n }\n\n private getTileId(tile: SkyTileComponent): string {\n if (tile) {\n let el = tile.elementRef.nativeElement;\n let tileId: string;\n\n while (el) {\n tileId = el.getAttribute(ATTR_TILE_ID);\n\n if (tileId) {\n return tileId;\n }\n\n el = el.parentElement;\n }\n }\n\n return undefined;\n }\n\n private getTileOrRemoveFromLayout(\n layoutTile: SkyTileDashboardConfigLayoutTile\n ): SkyTileDashboardConfigTile {\n /*istanbul ignore else */\n if (layoutTile) {\n for (const tile of this.config.tiles) {\n if (tile.id === layoutTile.id) {\n return tile;\n }\n }\n\n // If the layout tile was not found in the list of tiles, it was removed since last the user updated settings\n /*istanbul ignore else */\n if (this.config.layout.singleColumn) {\n this.config.layout.singleColumn.tiles =\n this.config.layout.singleColumn.tiles.filter(\n (elem) => elem.id !== layoutTile.id\n );\n }\n\n /*istanbul ignore else */\n if (this.config.layout.multiColumn) {\n this.config.layout.multiColumn.forEach((elem) => {\n elem.tiles = elem.tiles.filter((res) => res.id !== layoutTile.id);\n });\n }\n }\n\n /*istanbul ignore next */\n return undefined;\n }\n\n private checkReadyAndLoadTiles() {\n if (this.config && this.columns) {\n this.loadTiles();\n this.initMediaQueries();\n this.dashboardInitialized.emit();\n }\n }\n\n private loadTiles() {\n const layout = this.config.layout;\n\n if (\n this.mediaQuery.current === SkyMediaBreakpoints.xs ||\n this.mediaQuery.current === SkyMediaBreakpoints.sm\n ) {\n for (const tile of layout.singleColumn.tiles) {\n this.loadTileIntoColumn(this.singleColumn, tile);\n }\n } else {\n const columns = this.columns.toArray();\n\n for (let i = 0, n = layout.multiColumn.length; i < n; i++) {\n const column = columns[i];\n\n for (const tile of layout.multiColumn[i].tiles) {\n this.loadTileIntoColumn(column, tile);\n }\n }\n }\n }\n\n private loadTileIntoColumn(\n column: SkyTileDashboardColumnComponent,\n layoutTile: SkyTileDashboardConfigLayoutTile\n ) {\n const tile = this.getTileOrRemoveFromLayout(layoutTile);\n\n /*istanbul ignore else */\n if (tile) {\n const componentType = tile.componentType;\n const providers = tile.providers /* istanbul ignore next */ || [];\n\n const injector = Injector.create({\n providers,\n parent: column.injector,\n });\n\n const factory = column.resolver.resolveComponentFactory(componentType);\n const componentRef = column.content.createComponent(\n factory,\n undefined,\n injector\n );\n\n this.addTileComponent(layoutTile, componentRef);\n\n // Make sure the component is marked for changes in case the parent component uses\n // the OnPush change detection strategy.\n componentRef.changeDetectorRef.markForCheck();\n }\n }\n\n private moveTilesToSingleColumn() {\n this.moveTilesToColumn(\n this.singleColumn,\n this.config.layout.singleColumn.tiles\n );\n }\n\n private moveTilesToMultiColumn() {\n const layoutColumns = this.config.layout.multiColumn;\n const columns = this.columns.toArray();\n\n for (let i = 0, n = layoutColumns.length; i < n; i++) {\n this.moveTilesToColumn(columns[i], layoutColumns[i].tiles);\n }\n }\n\n private moveTilesToColumn(\n column: SkyTileDashboardColumnComponent,\n layoutTiles: SkyTileDashboardConfigLayoutTile[]\n ) {\n const columnEl = this.getColumnEl(column);\n\n for (const layoutTile of layoutTiles) {\n const tileComponentInstance = this.getTileComponent(layoutTile.id);\n\n /*istanbul ignore else */\n if (tileComponentInstance) {\n columnEl.appendChild(tileComponentInstance.location.nativeElement);\n }\n }\n }\n\n private getConfigForUIState(): SkyTileDashboardConfig {\n /*istanbul ignore else */\n if (this.config) {\n this.config = {\n tiles: this.config.tiles,\n layout: {\n singleColumn: this.getSingleColumnLayoutForUIState(),\n multiColumn: this.getMultiColumnLayoutForUIState(),\n },\n };\n }\n\n return this.config;\n }\n\n private getSingleColumnLayoutForUIState(): SkyTileDashboardConfigLayoutColumn {\n if (\n this.mediaQuery.current === SkyMediaBreakpoints.xs ||\n this.mediaQuery.current === SkyMediaBreakpoints.sm\n ) {\n return {\n tiles: this.getTilesInEl(this.getColumnEl(this.singleColumn)),\n };\n }\n\n return this.config.layout.singleColumn;\n }\n\n private getMultiColumnLayoutForUIState(): SkyTileDashboardConfigLayoutColumn[] {\n if (\n !(\n this.mediaQuery.current === SkyMediaBreakpoints.xs ||\n this.mediaQuery.current === SkyMediaBreakpoints.sm\n )\n ) {\n const layoutColumns: SkyTileDashboardConfigLayoutColumn[] = [];\n const columns = this.columns.toArray();\n\n for (const column of columns) {\n if (column !== this.singleColumn) {\n const layoutColumn: SkyTileDashboardConfigLayoutColumn = {\n tiles: this.getTilesInEl(this.getColumnEl(column)),\n };\n\n layoutColumns.push(layoutColumn);\n }\n }\n\n return layoutColumns;\n }\n\n return this.config.layout.multiColumn;\n }\n\n private getTilesInEl(el: Element): SkyTileDashboardConfigLayoutTile[] {\n const tileEls: any = el.querySelectorAll('[' + ATTR_TILE_ID + ']');\n const layoutTiles: SkyTileDashboardConfigLayoutTile[] = [];\n\n /*istanbul ignore else */\n if (tileEls) {\n for (let i = 0, n = tileEls.length; i < n; i++) {\n const tileEl = tileEls[i];\n const tileId = tileEl.getAttribute(ATTR_TILE_ID);\n const tile = this.findTile(tileId);\n\n /*istanbul ignore else */\n if (tile) {\n layoutTiles.push(tile);\n }\n }\n }\n\n return layoutTiles;\n }\n\n private initMediaQueries() {\n /*istanbul ignore else */\n if (!this.mediaSubscription) {\n this.mediaSubscription = this.mediaQuery.subscribe(\n (args: SkyMediaBreakpoints) => {\n this.changeColumnMode(\n args === SkyMediaBreakpoints.xs || args === SkyMediaBreakpoints.sm\n );\n }\n );\n }\n }\n\n private initDragula() {\n this.dragulaService.createGroup(this.bagId, {\n moves: (el: HTMLElement, container: HTMLElement, handle: HTMLElement) => {\n const target = el.querySelector('.sky-tile-grab-handle');\n return target.contains(handle);\n },\n });\n\n this.dragulaService.drop(this.bagId).subscribe(() => {\n const config = this.getConfigForUIState();\n\n /*istanbul ignore else */\n if (config) {\n if (this.settingsKey) {\n this.setUserConfig(config);\n }\n\n this.configChange.emit(config);\n }\n });\n }\n\n private getColumnEl(column: SkyTileDashboardColumnComponent): Element {\n return column.content.element.nativeElement.parentNode;\n }\n\n private findTile(tileId: string): SkyTileDashboardConfigLayoutTile {\n /*istanbul ignore else */\n if (this.config && this.config.layout.multiColumn) {\n for (const column of this.config.layout.multiColumn) {\n /*istanbul ignore else */\n if (column.tiles) {\n for (const tile of column.tiles) {\n if (tile.id === tileId) {\n return tile;\n }\n }\n }\n }\n }\n\n return undefined;\n }\n\n private findTileColumn(tileId: string): SkyTileDashboardConfigLayoutColumn {\n /*istanbul ignore else */\n if (this.config && this.config.layout.multiColumn) {\n return this.config.layout.multiColumn.find(\n (col) => col.tiles && !!col.tiles.find((tile) => tile.id === tileId)\n );\n }\n\n /*istanbul ignore next */\n return undefined;\n }\n\n private initToDefaults(\n config: SkyTileDashboardConfig,\n columns: QueryList<SkyTileDashboardColumnComponent>,\n singleColumn: SkyTileDashboardColumnComponent\n ) {\n this.config = config;\n this.columns = columns;\n this.singleColumn = singleColumn;\n this.checkReadyAndLoadTiles();\n }\n\n private setUserConfig(config: SkyTileDashboardConfig) {\n this.uiConfigService\n .setConfig(this.settingsKey, {\n layout: this.config.layout,\n persisted: true,\n tileIds: this.defaultConfig.tiles.map((elem) => elem.id),\n })\n .subscribe(\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n () => {},\n (err) => {\n console.warn('Could not save tile dashboard settings.');\n console.warn(err);\n }\n );\n }\n\n private checkForNewTiles(oldUserTiles: string[]) {\n // Get a list of tiles that are in the config's default list but not in the user's settings\n const newTiles = this.config.tiles.filter((elem) => {\n return oldUserTiles.indexOf(elem.id) === -1;\n });\n\n const { multiColumn, singleColumn } = this.config.layout;\n\n // Append new tiles to the end of the layouts\n /*istanbul ignore else */\n if (newTiles.length > 0) {\n /*istanbul ignore else */\n if (multiColumn) {\n newTiles.forEach((elem) => {\n let locationToAdd = 0;\n let smallest = multiColumn[0].tiles.length;\n multiColumn.forEach((item, index) => {\n if (item.tiles.length < smallest) {\n locationToAdd = index;\n smallest = item.tiles.length;\n }\n });\n multiColumn[locationToAdd].tiles.push({\n id: elem.id,\n isCollapsed: false,\n });\n });\n }\n\n /*istanbul ignore else */\n if (singleColumn) {\n newTiles.forEach((elem) => {\n singleColumn.tiles.push({ id: elem.id, isCollapsed: false });\n });\n }\n }\n\n /*istanbul ignore else */\n if (singleColumn) {\n for (const tile of singleColumn.tiles) {\n this.getTileOrRemoveFromLayout(tile);\n }\n }\n\n /*istanbul ignore else */\n if (multiColumn) {\n for (let i = 0, n = multiColumn.length; i < n; i++) {\n for (const tile of multiColumn[i].tiles) {\n this.getTileOrRemoveFromLayout(tile);\n }\n }\n }\n }\n}\n","import {\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n Optional,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { skyAnimationSlide } from '@skyux/animations';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyTileDashboardService } from '../tile-dashboard/tile-dashboard.service';\n\n/**\n * Provides a common look-and-feel for tab content.\n */\n@Component({\n selector: 'sky-tile',\n styleUrls: ['./tile.component.scss'],\n templateUrl: './tile.component.html',\n animations: [skyAnimationSlide],\n})\nexport class SkyTileComponent implements OnDestroy {\n /**\n * Indicates whether to display a settings button in the tile header. To display the\n * button, you must also listen for the `settingsClick` event.\n * @default true\n */\n @Input()\n public showSettings = true;\n\n /**\n * Indicates whether to display a help button in the tile header. To display the\n * button, you must also listen for the `helpClick` event.\n * @default true\n */\n @Input()\n public showHelp = true;\n\n /**\n * Specifies a human-readable name for the tile that is available for multiple purposes, such as accessibility and instrumentation. For example, the component uses the name to construct ARIA labels for tile controls to [support accessibility](https://developer.blackbaud.com/skyux/learn/accessibility).\n */\n @Input()\n public tileName;\n\n /**\n * Fires when users select the settings button in the tile header. The settings\n * button only appears when the `showSettings` property is set to `true`.\n */\n @Output()\n public settingsClick = new EventEmitter();\n\n /**\n * Fires when the tile's collapsed state changes. Returns `true` when the tile\n * collapses and `false` when it expands.\n */\n @Output()\n public isCollapsedChange = new EventEmitter<boolean>();\n\n /**\n * Fires when users select the help button in the tile header. The help\n * button only appears when the `showHelp` property is set to `true`.\n */\n @Output()\n public helpClick = new EventEmitter();\n\n public get isCollapsed(): boolean {\n if (this.dashboardService) {\n const configCollapsedState = this.dashboardService.tileIsCollapsed(this);\n this._isCollapsed = configCollapsedState;\n }\n\n return this._isCollapsed;\n }\n\n /**\n * Indicates whether the tile is in a collapsed state.\n * @default false\n */\n @Input()\n public set isCollapsed(value: boolean) {\n if (this.dashboardService) {\n this.dashboardService.setTileCollapsed(this, value);\n }\n\n this._isCollapsed = value;\n\n this.isCollapsedChange.emit(value);\n }\n\n public ariaDescribedBy: string | undefined;\n\n public isInDashboardColumn = false;\n\n @ViewChild('grabHandle', {\n read: ElementRef,\n static: false,\n })\n private grabHandle: ElementRef;\n\n @ViewChild('titleContainer', {\n read: ElementRef,\n static: false,\n })\n private title: ElementRef;\n\n private ngUnsubscribe = new Subject<void>();\n\n private _isCollapsed = false;\n\n constructor(\n public elementRef: ElementRef,\n private changeDetector: ChangeDetectorRef,\n @Optional() private dashboardService?: SkyTileDashboardService\n ) {\n this.isInDashboardColumn = !!dashboardService;\n\n if (this.dashboardService) {\n this.ariaDescribedBy = `${this.dashboardService.bagId}-move-instructions`;\n\n /**\n * This subscription ensures that if any values which come in from the dashboard service are\n * updated that the component will update if the tile's parent component utilizes OnPush\n * change detection.\n */\n this.dashboardService.configChange\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe(() => {\n this.changeDetector.markForCheck();\n });\n }\n }\n\n public ngOnDestroy(): void {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n public settingsButtonClicked(): void {\n this.settingsClick.emit(undefined);\n }\n\n public helpButtonClicked(): void {\n this.helpClick.emit(undefined);\n }\n\n public get hasSettings(): boolean {\n return this.settingsClick.observers.length > 0 && this.showSettings;\n }\n\n public get hasHelp(): boolean {\n return this.helpClick.observers.length > 0 && this.showHelp;\n }\n\n public titleClick(): void {\n this.isCollapsed = !this.isCollapsed;\n }\n\n public chevronDirectionChange(direction: string): void {\n this.isCollapsed = direction === 'down';\n }\n\n public moveTile(event: KeyboardEvent): void {\n /* istanbul ignore else */\n if (this.isInDashboardColumn) {\n const direction = event.key.toLowerCase().replace('arrow', '');\n /* istanbul ignore else */\n if (\n direction === 'up' ||\n direction === 'down' ||\n direction === 'left' ||\n direction === 'right'\n ) {\n this.dashboardService.moveTileOnKeyDown(\n this,\n direction,\n this.title\n ? this.title.nativeElement.innerText\n : /* istanbul ignore next */\n undefined\n );\n this.focusHandle();\n }\n }\n }\n\n private focusHandle(): void {\n this.grabHandle.nativeElement.focus();\n }\n}\n","<section\n class=\"sky-tile\"\n [ngClass]=\"{\n 'sky-tile-collapsed': isCollapsed\n }\"\n [skyThemeClass]=\"{\n 'sky-box sky-elevation-1-bordered sky-padding-even-xl': 'modern'\n }\"\n>\n <header class=\"sky-tile-header\">\n <div class=\"sky-tile-header-content\" (click)=\"titleClick()\">\n <div class=\"sky-tile-header-title\" #titleContainer>\n <ng-content select=\"sky-tile-title\"></ng-content>\n </div>\n <div\n class=\"sky-tile-summary\"\n [skyThemeClass]=\"{\n 'sky-font-display-3': 'modern',\n 'sky-headline': 'default'\n }\"\n >\n <ng-content select=\"sky-tile-summary\"></ng-content>\n </div>\n </div>\n <div class=\"sky-tile-header-column-tools\">\n <div class=\"sky-tile-tools\">\n <ng-container *skyThemeIf=\"'default'\">\n <button\n *ngIf=\"hasHelp\"\n class=\"sky-btn sky-tile-tools-control sky-tile-help\"\n type=\"button\"\n [attr.aria-label]=\"\n tileName\n ? ('skyux_tile_help' | skyLibResources: tileName)\n : ('skyux_tile_help_default' | skyLibResources)\n \"\n [skyThemeClass]=\"{\n 'sky-btn-icon-borderless': 'modern'\n }\"\n (click)=\"helpButtonClicked()\"\n >\n <sky-icon icon=\"question-circle\"></sky-icon>\n </button>\n </ng-container>\n <sky-chevron\n [ariaControls]=\"tileContent.id\"\n [ariaLabel]=\"\n tileName\n ? ('skyux_tile_expand' | skyLibResources: tileName)\n : ('skyux_tile_expand_default' | skyLibResources)\n \"\n [direction]=\"isCollapsed ? 'down' : 'up'\"\n [skyThemeClass]=\"{\n 'sky-tile-tools-control': 'default',\n 'sky-margin-inline-default': 'modern'\n }\"\n (directionChange)=\"chevronDirectionChange($event)\"\n >\n </sky-chevron>\n <button\n *ngIf=\"hasSettings\"\n class=\"sky-btn sky-tile-settings\"\n type=\"button\"\n [attr.aria-label]=\"\n tileName\n ? ('skyux_tile_settings' | skyLibResources: tileName)\n : ('skyux_tile_settings_default' | skyLibResources)\n \"\n [skyThemeClass]=\"{\n 'sky-tile-tools-control': 'default',\n 'sky-btn-icon-borderless sky-margin-inline-default': 'modern'\n }\"\n (click)=\"settingsButtonClicked()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"cog\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"cog-line\"\n iconType=\"skyux\"\n ></sky-icon>\n </button>\n <button\n *ngIf=\"isInDashboardColumn\"\n class=\"sky-btn sky-tile-grab-handle\"\n [attr.aria-label]=\"\n tileName\n ? ('skyux_tile_move' | skyLibResources: tileName)\n : ('skyux_tile_move_default' | skyLibResources)\n \"\n [attr.aria-describedby]=\"ariaDescribedBy\"\n [skyThemeClass]=\"{\n 'sky-tile-tools-control': 'default',\n 'sky-btn-icon-borderless': 'modern'\n }\"\n (click)=\"$event.stopPropagation()\"\n (keydown)=\"moveTile($event)\"\n #grabHandle\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"th\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"tile-drag\"\n iconType=\"skyux\"\n ></sky-icon>\n </button>\n </div>\n </div>\n </header>\n <div\n class=\"sky-tile-content\"\n role=\"region\"\n skyId\n [attr.aria-label]=\"tileName\"\n [@skyAnimationSlide]=\"isCollapsed ? 'up' : 'down'\"\n #tileContent=\"skyId\"\n >\n <ng-content select=\"sky-tile-content\"></ng-content>\n </div>\n</section>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyIdModule, SkyTrimModule } from '@skyux/core';\nimport { SkyI18nModule } from '@skyux/i18n';\nimport { SkyChevronModule, SkyIconModule } from '@skyux/indicators';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyTilesResourcesModule } from '../../shared/sky-tiles-resources.module';\n\nimport { SkyTileSummaryComponent } from './tile-summary.component';\nimport { SkyTileTitleComponent } from './tile-title.component';\nimport { SkyTileComponent } from './tile.component';\n\n@NgModule({\n declarations: [\n SkyTileComponent,\n SkyTileSummaryComponent,\n SkyTileTitleComponent,\n ],\n imports: [\n CommonModule,\n SkyChevronModule,\n SkyIdModule,\n SkyI18nModule,\n SkyIconModule,\n SkyThemeModule,\n SkyTilesResourcesModule,\n SkyTrimModule,\n ],\n exports: [SkyTileComponent, SkyTileSummaryComponent, SkyTileTitleComponent],\n})\nexport class SkyTileModule {}\n","import { Component } from '@angular/core';\n\n/**\n * Specifies content to display inside a padded section of a SkyTileContentComponent.\n */\n@Component({\n selector: 'sky-tile-content-section',\n styleUrls: ['./tile-content-section.component.scss'],\n templateUrl: './tile-content-section.component.html',\n})\nexport class SkyTileContentSectionComponent {}\n","<div\n class=\"sky-tile-content-section\"\n [skyThemeClass]=\"{\n 'sky-padding-even-large': 'default'\n }\"\n>\n <ng-content></ng-content>\n</div>\n","import { Component } from '@angular/core';\n\n/**\n * Specifies content to display in the tile's body.\n */\n@Component({\n selector: 'sky-tile-content',\n styleUrls: ['./tile-content.component.scss'],\n templateUrl: 'tile-content.component.html',\n})\nexport class SkyTileContentComponent {}\n","<ng-content></ng-content>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyTileContentSectionComponent } from './tile-content-section.component';\nimport { SkyTileContentComponent } from './tile-content.component';\n\n@NgModule({\n declarations: [SkyTileContentComponent, SkyTileContentSectionComponent],\n imports: [CommonModule, SkyThemeModule],\n exports: [SkyTileContentComponent, SkyTileContentSectionComponent],\n})\nexport class SkyTileContentModule {}\n","/**\n * Specifies the type of message to send to the tile dashboard component.\n */\nexport enum SkyTileDashboardMessageType {\n /**\n * Expands all tiles within the tile dashboard.\n */\n ExpandAll = 0,\n\n /**\n * Collapses all tiles within the tile dashboard.\n */\n CollapseAll = 1,\n}\n","import {\n Component,\n ComponentFactoryResolver,\n Injector,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { SkyTileDashboardService } from '../tile-dashboard/tile-dashboard.service';\n\nlet columnIdIndex = 0;\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-tile-dashboard-column',\n styleUrls: ['./tile-dashboard-column.component.scss'],\n templateUrl: './tile-dashboard-column.component.html',\n})\nexport class SkyTileDashboardColumnComponent {\n public bagId: string;\n\n public columnId: string;\n\n @ViewChild('content', {\n read: ViewContainerRef,\n static: false,\n })\n public content: ViewContainerRef;\n\n constructor(\n public resolver: ComponentFactoryResolver,\n public injector: Injector,\n private dashboardService: SkyTileDashboardService\n ) {\n columnIdIndex++;\n\n this.columnId = 'tile-dashboard-column-' + columnIdIndex;\n\n this.bagId = this.dashboardService.bagId;\n }\n}\n","<div class=\"sky-tile-dashboard-column\" [dragula]=\"bagId\">\n <div #content></div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DragulaModule } from 'ng2-dragula';\n\nimport { SkyTileDashboardColumnComponent } from './tile-dashboard-column.component';\n\n@NgModule({\n declarations: [SkyTileDashboardColumnComponent],\n imports: [CommonModule, DragulaModule],\n exports: [SkyTileDashboardColumnComponent],\n})\nexport class SkyTileDashboardColumnModule {}\n","import {\n AfterViewInit,\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n Optional,\n Output,\n QueryList,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { SkyMediaBreakpoints, SkyMediaQueryService } from '@skyux/core';\nimport { SkyLibResourcesService } from '@skyux/i18n';\n\nimport { Observable, Subject } from 'rxjs';\nimport { take, takeUntil } from 'rxjs/operators';\n\nimport { SkyTileDashboardColumnComponent } from '../tile-dashboard-column/tile-dashboard-column.component';\nimport { SkyTileDashboardConfig } from '../tile-dashboard-config/tile-dashboard-config';\n\nimport { SkyTileDashboardMessage } from './tile-dashboard-message';\nimport { SkyTileDashboardMessageType } from './tile-dashboard-message-type';\nimport { SkyTileDashboardService } from './tile-dashboard.service';\n\n/**\n * Specifies a container to group multiple tiles.\n */\n@Component({\n selector: 'sky-tile-dashboard',\n styleUrls: ['./tile-dashboard.component.scss'],\n templateUrl: './tile-dashboard.component.html',\n providers: [SkyTileDashboardService],\n})\nexport class SkyTileDashboardComponent implements AfterViewInit, OnDestroy {\n /**\n * Populates the tile dashboard based on the `SkyTileDashboardConfig` object.\n * @required\n */\n @Input()\n public set config(value: SkyTileDashboardConfig) {\n if (value && !this.configSet) {\n this._config = value;\n this.configSet = true;\n this.checkReady();\n }\n }\n\n public get config(): SkyTileDashboardConfig {\n return this._config;\n }\n\n /**\n * Provides an observable to send commands to the tile dashboard. The commands should respect the\n * `SkyTileDashboardMessage` type.\n */\n @Input()\n public messageStream = new Subject<SkyTileDashboardMessage>();\n\n /**\n * Specifies a unique key for the UI Config Service to retrieve stored settings\n * from a database. The UI Config Service saves configuration settings for users\n * to preserve the layout and collapsed state of tile dashboards. The UI Config Service relies on `id` values from the `config` property to maintain user settings. For more information\n * about the UI Config Service, see the\n * [sticky settings documentation](https://developer.blackbaud.com/skyux/learn/get-started/sticky-settings).\n */\n @Input()\n public settingsKey: string;\n\n /**\n * Fires when the tile dashboard changes state and emits a SkyTileDashboardConfig\n * object. This occurs when tiles collapse or expand and when users drag and drop\n * tiles to rearrange them.\n */\n @Output()\n public configChange = new EventEmitter<SkyTileDashboardConfig>();\n\n @ViewChildren(SkyTileDashboardColumnComponent)\n private columns: QueryList<SkyTileDashboardColumnComponent>;\n\n @ViewChild('singleColumn', {\n read: SkyTileDashboardColumnComponent,\n static: false,\n })\n public singleColumn: SkyTileDashboardColumnComponent;\n\n public tileMovedReport: string;\n\n public moveInstructionsId =\n this.dashboardService.bagId + '-move-instructions';\n\n private _config: SkyTileDashboardConfig;\n\n private configSet = false;\n\n private ngUnsubscribe = new Subject<void>();\n\n private viewReady = false;\n\n constructor(\n private dashboardService: SkyTileDashboardService,\n private mediaQuery: SkyMediaQueryService,\n @Optional() private resourcesService?: SkyLibResourcesService\n ) {\n this.dashboardService.configChange.subscribe(\n (config: SkyTileDashboardConfig) => {\n this.configChange.emit(config);\n\n // Update aria live region with tile drag info\n if (config.movedTile && this.resourcesService) {\n let messageObservable: Observable<string>;\n if (\n this.mediaQuery.current === SkyMediaBreakpoints.xs ||\n this.mediaQuery.current === SkyMediaBreakpoints.sm\n ) {\n messageObservable = this.resourcesService.getString(\n 'skyux_tile_moved_assistive_text',\n config.movedTile.tileDescription,\n '1',\n '1',\n config.movedTile.position.toString(),\n config.layout.singleColumn.tiles.length.toString()\n );\n } else {\n messageObservable = this.resourcesService.getString(\n 'skyux_tile_moved_assistive_text',\n config.movedTile.tileDescription,\n config.movedTile.column.toString(),\n config.layout.multiColumn.length.toString(),\n config.movedTile.position.toString(),\n config.layout.multiColumn[\n config.movedTile.column - 1\n ].tiles.length.toString()\n );\n }\n messageObservable.pipe(take(1)).subscribe((message: string) => {\n this.tileMovedReport = message;\n });\n }\n }\n );\n }\n\n public ngAfterViewInit(): void {\n this.messageStream\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((message: SkyTileDashboardMessage) => {\n this.handleIncomingMessages(message);\n });\n\n this.viewReady = true;\n this.checkReady();\n }\n\n public ngOnDestroy(): void {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n this.dashboardService.destroy();\n }\n\n private checkReady(): void {\n if (this.viewReady && this.config) {\n setTimeout(() => {\n this.dashboardService.init(\n this.config,\n this.columns,\n this.singleColumn,\n this.settingsKey\n );\n }, 0);\n }\n }\n\n private handleIncomingMessages(message: SkyTileDashboardMessage): void {\n switch (message.type) {\n case SkyTileDashboardMessageType.ExpandAll:\n this.dashboardService.setAllTilesCollapsed(false);\n break;\n\n case SkyTileDashboardMessageType.CollapseAll:\n this.dashboardService.setAllTilesCollapsed(true);\n break;\n }\n }\n}\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></ng-content>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DragulaService } from 'ng2-dragula';\n\nimport { SkyTilesResourcesModule } from '../../shared/sky-tiles-resources.module';\nimport { SkyTileDashboardColumnModule } from '../tile-dashboard-column/tile-dashboard-column.module';\n\nimport { SkyTileDashboardComponent } from './tile-dashboard.component';\n\n@NgModule({\n declarations: [SkyTileDashboardComponent],\n providers: [DragulaService],\n imports: [\n CommonModule,\n SkyTileDashboardColumnModule,\n SkyTilesResourcesModule,\n ],\n exports: [SkyTileDashboardComponent],\n})\nexport class SkyTileDashboardModule {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DragulaService } from 'ng2-dragula';\n\nimport { SkyTileContentModule } from './tile-content/tile-content.module';\nimport { SkyTileDashboardColumnModule } from './tile-dashboard-column/tile-dashboard-column.module';\nimport { SkyTileDashboardModule } from './tile-dashboard/tile-dashboard.module';\nimport { SkyTileModule } from './tile/tile.module';\n\n@NgModule({\n imports: [CommonModule],\n exports: [\n SkyTileContentModule,\n SkyTileModule,\n SkyTileDashboardColumnModule,\n SkyTileDashboardModule,\n ],\n providers: [DragulaService],\n})\nexport class SkyTilesModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i1.SkyTileDashboardService","i2","i5","i6","i3","i4.SkyTileDashboardColumnComponent"],"mappings":"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"}
|
package/fesm2020/skyux-tiles.mjs
CHANGED
|
@@ -3,7 +3,7 @@ import { CommonModule } from '@angular/common';
|
|
|
3
3
|
import * as i0 from '@angular/core';
|
|
4
4
|
import { NgModule, Component, EventEmitter, Injector, Injectable, Output, ElementRef, Optional, Input, ViewChild, ViewContainerRef, ViewChildren } from '@angular/core';
|
|
5
5
|
import * as i2 from '@skyux/core';
|
|
6
|
-
import { SkyMediaBreakpoints, SkyIdModule } from '@skyux/core';
|
|
6
|
+
import { SkyMediaBreakpoints, SkyIdModule, SkyTrimModule } from '@skyux/core';
|
|
7
7
|
import * as i3$1 from '@skyux/i18n';
|
|
8
8
|
import { getLibStringForLocale, SkyI18nModule, SKY_LIB_RESOURCES_PROVIDERS } from '@skyux/i18n';
|
|
9
9
|
import * as i2$1 from '@skyux/indicators';
|
|
@@ -93,10 +93,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
|
|
|
93
93
|
class SkyTileTitleComponent {
|
|
94
94
|
}
|
|
95
95
|
SkyTileTitleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyTileTitleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
96
|
-
SkyTileTitleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: SkyTileTitleComponent, selector: "sky-tile-title", ngImport: i0, template: "<h2\n class=\"sky-tile-title\"\n [skyThemeClass]=\"{\n 'sky-font-heading-2': 'modern',\n 'sky-section-heading': 'default'\n }\"\n>\n <ng-content></ng-content>\n</h2>\n", styles: [".sky-tile-title{margin:0;padding:10px 15px}:host-context(.sky-theme-modern) .sky-tile-title{margin:0 30px 0 0;padding:0}.sky-theme-modern .sky-tile-title{margin:0 30px 0 0;padding:0}\n"], directives: [{ type: i4.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }] });
|
|
96
|
+
SkyTileTitleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: SkyTileTitleComponent, selector: "sky-tile-title", ngImport: i0, template: "<h2\n class=\"sky-tile-title\"\n [skyThemeClass]=\"{\n 'sky-font-heading-2': 'modern',\n 'sky-section-heading': 'default'\n }\"\n>\n <span skyTrim><ng-content></ng-content></span\n ><span class=\"sky-control-help-container\"\n ><ng-content select=\".sky-control-help\"></ng-content\n ></span>\n</h2>\n", styles: [".sky-tile-title{margin:0;padding:10px 15px}:host-context(.sky-theme-modern) .sky-tile-title{margin:0 30px 0 0;padding:0}.sky-theme-modern .sky-tile-title{margin:0 30px 0 0;padding:0}\n"], directives: [{ type: i4.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }, { type: i2.λ4, selector: "[skyTrim]" }] });
|
|
97
97
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyTileTitleComponent, decorators: [{
|
|
98
98
|
type: Component,
|
|
99
|
-
args: [{ selector: 'sky-tile-title', template: "<h2\n class=\"sky-tile-title\"\n [skyThemeClass]=\"{\n 'sky-font-heading-2': 'modern',\n 'sky-section-heading': 'default'\n }\"\n>\n <ng-content></ng-content>\n</h2>\n", styles: [".sky-tile-title{margin:0;padding:10px 15px}:host-context(.sky-theme-modern) .sky-tile-title{margin:0 30px 0 0;padding:0}.sky-theme-modern .sky-tile-title{margin:0 30px 0 0;padding:0}\n"] }]
|
|
99
|
+
args: [{ selector: 'sky-tile-title', template: "<h2\n class=\"sky-tile-title\"\n [skyThemeClass]=\"{\n 'sky-font-heading-2': 'modern',\n 'sky-section-heading': 'default'\n }\"\n>\n <span skyTrim><ng-content></ng-content></span\n ><span class=\"sky-control-help-container\"\n ><ng-content select=\".sky-control-help\"></ng-content\n ></span>\n</h2>\n", styles: [".sky-tile-title{margin:0;padding:10px 15px}:host-context(.sky-theme-modern) .sky-tile-title{margin:0 30px 0 0;padding:0}.sky-theme-modern .sky-tile-title{margin:0 30px 0 0;padding:0}\n"] }]
|
|
100
100
|
}] });
|
|
101
101
|
|
|
102
102
|
const ATTR_TILE_ID = '_sky-tile-dashboard-tile-id';
|
|
@@ -777,7 +777,8 @@ SkyTileModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
|
|
|
777
777
|
SkyI18nModule,
|
|
778
778
|
SkyIconModule,
|
|
779
779
|
SkyThemeModule,
|
|
780
|
-
SkyTilesResourcesModule
|
|
780
|
+
SkyTilesResourcesModule,
|
|
781
|
+
SkyTrimModule], exports: [SkyTileComponent, SkyTileSummaryComponent, SkyTileTitleComponent] });
|
|
781
782
|
SkyTileModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyTileModule, imports: [[
|
|
782
783
|
CommonModule,
|
|
783
784
|
SkyChevronModule,
|
|
@@ -786,6 +787,7 @@ SkyTileModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version:
|
|
|
786
787
|
SkyIconModule,
|
|
787
788
|
SkyThemeModule,
|
|
788
789
|
SkyTilesResourcesModule,
|
|
790
|
+
SkyTrimModule,
|
|
789
791
|
]] });
|
|
790
792
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyTileModule, decorators: [{
|
|
791
793
|
type: NgModule,
|
|
@@ -803,6 +805,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
|
|
|
803
805
|
SkyIconModule,
|
|
804
806
|
SkyThemeModule,
|
|
805
807
|
SkyTilesResourcesModule,
|
|
808
|
+
SkyTrimModule,
|
|
806
809
|
],
|
|
807
810
|
exports: [SkyTileComponent, SkyTileSummaryComponent, SkyTileTitleComponent],
|
|
808
811
|
}]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skyux-tiles.mjs","sources":["../../../../../libs/components/tiles/src/lib/modules/shared/sky-tiles-resources.module.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile-summary.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile-summary.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile-title.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile-title.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard/tile-dashboard.service.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile.module.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-content/tile-content-section.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-content/tile-content-section.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-content/tile-content.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-content/tile-content.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-content/tile-content.module.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard/tile-dashboard-message-type.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard-column/tile-dashboard-column.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard-column/tile-dashboard-column.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard-column/tile-dashboard-column.module.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard/tile-dashboard.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard/tile-dashboard.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard/tile-dashboard.module.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tiles.module.ts","../../../../../libs/components/tiles/src/skyux-tiles.ts"],"sourcesContent":["/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module lib/modules/shared/sky-tiles' schematic.\n * To update this file, simply rerun the command.\n */\nimport { NgModule } from '@angular/core';\nimport {\n SKY_LIB_RESOURCES_PROVIDERS,\n SkyAppLocaleInfo,\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesProvider,\n getLibStringForLocale,\n} from '@skyux/i18n';\n\nconst RESOURCES: { [locale: string]: SkyLibResources } = {\n 'EN-US': {\n skyux_tile_expand: { message: 'Expand or collapse {0}' },\n skyux_tile_expand_default: { message: 'Expand or collapse' },\n skyux_tile_help: { message: '{0} help' },\n skyux_tile_help_default: { message: 'Help' },\n skyux_tile_settings: { message: '{0} settings' },\n skyux_tile_settings_default: { message: 'Settings' },\n skyux_tile_move: { message: 'Move {0}' },\n skyux_tile_move_default: { message: 'Move' },\n skyux_tile_move_instructions: {\n message:\n \"When focus is placed on a tile's move button, use the arrow keys to move it. The up and down keys change its position within a column. The left and right keys move it between columns.\",\n },\n skyux_tile_moved_assistive_text: {\n message:\n '{0} moved. Current column: {1} of {2}. Current position in column: {3} of {4}',\n },\n },\n};\n\nexport class SkyTilesResourcesProvider implements SkyLibResourcesProvider {\n public getString(\n localeInfo: SkyAppLocaleInfo,\n name: string\n ): string | undefined {\n return getLibStringForLocale(RESOURCES, localeInfo.locale, name);\n }\n}\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n providers: [\n {\n provide: SKY_LIB_RESOURCES_PROVIDERS,\n useClass: SkyTilesResourcesProvider,\n multi: true,\n },\n ],\n})\nexport class SkyTilesResourcesModule {}\n","import { Component } from '@angular/core';\n\n/**\n * Specifies content to display in the tile's summary.\n */\n@Component({\n selector: 'sky-tile-summary',\n templateUrl: 'tile-summary.component.html',\n})\n/* istanbul ignore next */\n/* Code coverage having problems with no statements in classes */\nexport class SkyTileSummaryComponent {}\n","<ng-content></ng-content>\n","import { Component } from '@angular/core';\n\n/**\n * Specifies content to display in the tile's title.\n */\n@Component({\n selector: 'sky-tile-title',\n templateUrl: './tile-title.component.html',\n styleUrls: ['./tile-title.component.scss'],\n})\nexport class SkyTileTitleComponent {}\n","<h2\n class=\"sky-tile-title\"\n [skyThemeClass]=\"{\n 'sky-font-heading-2': 'modern',\n 'sky-section-heading': 'default'\n }\"\n>\n <ng-content></ng-content>\n</h2>\n","import {\n ComponentRef,\n EventEmitter,\n Injectable,\n Injector,\n Output,\n QueryList,\n} from '@angular/core';\nimport {\n SkyMediaBreakpoints,\n SkyMediaQueryService,\n SkyUIConfigService,\n} from '@skyux/core';\n\nimport { DragulaService } from 'ng2-dragula';\nimport { Subscription } from 'rxjs';\nimport { take } from 'rxjs/operators';\n\nimport { SkyTileDashboardColumnComponent } from '../tile-dashboard-column/tile-dashboard-column.component';\nimport { SkyTileDashboardConfig } from '../tile-dashboard-config/tile-dashboard-config';\nimport { SkyTileDashboardConfigLayoutColumn } from '../tile-dashboard-config/tile-dashboard-config-layout-column';\nimport { SkyTileDashboardConfigLayoutTile } from '../tile-dashboard-config/tile-dashboard-config-layout-tile';\nimport { SkyTileDashboardConfigTile } from '../tile-dashboard-config/tile-dashboard-config-tile';\nimport { SkyTileComponent } from '../tile/tile.component';\n\nconst ATTR_TILE_ID = '_sky-tile-dashboard-tile-id';\n\nlet bagIdIndex = 0;\n\n@Injectable()\nexport class SkyTileDashboardService {\n /**\n * @internal\n */\n public bagId: string;\n\n /**\n * @internal\n */\n public configChange = new EventEmitter<SkyTileDashboardConfig>();\n\n /**\n * Fires when the tile dashboard's initialization is complete.\n */\n @Output()\n public dashboardInitialized = new EventEmitter<void>();\n\n private tileComponents: ComponentRef<any>[];\n\n private config: SkyTileDashboardConfig;\n\n private defaultConfig: SkyTileDashboardConfig;\n\n private columns: QueryList<SkyTileDashboardColumnComponent>;\n\n private singleColumn: SkyTileDashboardColumnComponent;\n\n private mediaSubscription: Subscription;\n\n private settingsKey: string;\n\n constructor(\n private dragulaService: DragulaService,\n private mediaQuery: SkyMediaQueryService,\n private uiConfigService: SkyUIConfigService\n ) {\n this.bagId = 'sky-tile-dashboard-bag-' + ++bagIdIndex;\n\n this.initDragula();\n }\n\n /**\n * @internal\n */\n public init(\n config: SkyTileDashboardConfig,\n columns?: QueryList<SkyTileDashboardColumnComponent>,\n singleColumn?: SkyTileDashboardColumnComponent,\n settingsKey?: string\n ) {\n if (settingsKey) {\n // Clone this so changes to the config object outside of this class don't modify\n // the config used inside and vice versa.\n this.defaultConfig = this.config = Object.assign({}, config);\n\n this.settingsKey = settingsKey;\n\n this.uiConfigService\n .getConfig(settingsKey, config)\n .pipe(take(1))\n .subscribe(\n (value: any) => {\n if (value.persisted) {\n this.config.layout = value.layout;\n this.checkForNewTiles(value.tileIds);\n this.configChange.emit(this.config);\n\n this.columns = columns;\n this.singleColumn = singleColumn;\n this.checkReadyAndLoadTiles();\n } else {\n // Bad data, or config is the default config.\n this.initToDefaults(config, columns, singleColumn);\n }\n },\n (error: any) => {\n // Config setting key doesn't exist or other config service error\n this.initToDefaults(config, columns, singleColumn);\n }\n );\n } else {\n this.initToDefaults(config, columns, singleColumn);\n }\n }\n\n /**\n * Adds a new tile to the tile dashboard.\n * @param tile Specifies the tile configuration.\n * @param component Specifies the tile component to add.\n */\n public addTileComponent(\n tile: SkyTileDashboardConfigLayoutTile,\n component: ComponentRef<any>\n ) {\n this.tileComponents = this.tileComponents || [];\n\n this.tileComponents.push(component);\n\n component.location.nativeElement.setAttribute(ATTR_TILE_ID, tile.id);\n }\n\n /**\n * Checks whether a specified tile is collapsed.\n * @param tile Specifies the tile component to check.\n */\n public tileIsCollapsed(tile: SkyTileComponent): boolean {\n const tileConfig = this.findTile(this.getTileId(tile));\n\n if (tileConfig) {\n return tileConfig.isCollapsed;\n }\n\n return undefined;\n }\n\n /**\n * Sets the collapsed state of all tiles.\n * @param isCollapsed Indicates whether tiles are collapsed.\n */\n public setAllTilesCollapsed(isCollapsed: boolean): void {\n /*istanbul ignore else */\n if (this.config && this.config.layout.multiColumn) {\n for (const column of this.config.layout.multiColumn) {\n for (const tile of column.tiles) {\n tile.isCollapsed = isCollapsed;\n }\n }\n for (const tile of this.config.layout.singleColumn.tiles) {\n tile.isCollapsed = isCollapsed;\n }\n }\n\n if (this.settingsKey) {\n this.setUserConfig(this.config);\n }\n\n this.configChange.emit(this.config);\n }\n\n /**\n * Sets the collapsed state of a specified tile.\n * @param tile Specifies the tile component.\n * @param isCollapsed Indicates whether the tile is collapsed.\n */\n public setTileCollapsed(tile: SkyTileComponent, isCollapsed: boolean) {\n const tileConfig = this.findTile(this.getTileId(tile));\n\n if (tileConfig) {\n tileConfig.isCollapsed = isCollapsed;\n\n if (this.settingsKey) {\n this.setUserConfig(this.config);\n }\n\n this.configChange.emit(this.config);\n }\n }\n\n /**\n * @internal\n */\n public getTileComponentType(\n layoutTile: SkyTileDashboardConfigLayoutTile\n ): any {\n if (layoutTile) {\n for (const tile of this.config.tiles) {\n if (tile.id === layoutTile.id) {\n return tile.componentType;\n }\n }\n }\n\n return undefined;\n }\n\n /**\n * @internal\n */\n public changeColumnMode(isSingleColumn: boolean) {\n /*istanbul ignore else */\n if (this.config) {\n if (isSingleColumn) {\n this.moveTilesToSingleColumn();\n } else {\n this.moveTilesToMultiColumn();\n }\n }\n }\n\n /**\n * @internal\n */\n public getTileComponent(tileId: string): ComponentRef<any> {\n for (const tileComponent of this.tileComponents) {\n if (\n tileComponent.location.nativeElement.getAttribute(ATTR_TILE_ID) ===\n tileId\n ) {\n return tileComponent;\n }\n }\n\n /*istanbul ignore next */\n return undefined;\n }\n\n /**\n * @internal\n */\n public destroy() {\n /*istanbul ignore else */\n if (this.mediaSubscription) {\n this.mediaSubscription.unsubscribe();\n }\n }\n\n /**\n * @internal\n */\n public moveTileOnKeyDown(\n tileCmp: SkyTileComponent,\n direction: string,\n tileDescription: string\n ) {\n const isSingleColumnMode =\n this.mediaQuery.current === SkyMediaBreakpoints.xs ||\n this.mediaQuery.current === SkyMediaBreakpoints.sm;\n\n const tileId = this.getTileId(tileCmp);\n const tile = this.findTile(tileId);\n\n let column: SkyTileDashboardConfigLayoutColumn;\n let colIndex: number;\n if (isSingleColumnMode) {\n column = this.config.layout.singleColumn;\n } else {\n column = this.findTileColumn(tileId);\n colIndex = this.config.layout.multiColumn.findIndex(\n (value) => value === column\n );\n }\n\n if (\n (direction === 'left' || direction === 'right') &&\n !isSingleColumnMode\n ) {\n const operator = direction === 'left' ? -1 : 1;\n const newColumn = this.config.layout.multiColumn[colIndex + operator];\n\n if (newColumn) {\n // Move the tile to the end of the new column\n newColumn.tiles.push(tile);\n column.tiles = column.tiles.filter((item) => item !== tile);\n this.moveTilesToColumn(this.columns.toArray()[colIndex + operator], [\n tile,\n ]);\n\n // Report the change in configuration\n const reportConfig = this.config;\n reportConfig.movedTile = {\n tileDescription:\n tileDescription || /* istanbul ignore next */ tile.id,\n column: colIndex + operator + 1,\n position: newColumn.tiles.length,\n };\n this.configChange.emit(reportConfig);\n }\n } else {\n const operator = direction === 'up' ? -1 : 1;\n const curIndex = column.tiles.findIndex((value) => value.id === tile.id);\n const tileComponentInstance = this.getTileComponent(tileId);\n\n if (tileComponentInstance && column.tiles[curIndex + operator]) {\n const temp = column.tiles[curIndex + operator];\n column.tiles[curIndex + operator] = tile;\n column.tiles[curIndex] = temp;\n\n // Get the column element\n let columnEl: Element;\n if (isSingleColumnMode) {\n columnEl = this.getColumnEl(this.singleColumn);\n } else {\n columnEl = this.getColumnEl(this.columns.toArray()[colIndex]);\n }\n\n // Move the tile element in the document\n if (curIndex + operator === column.tiles.length - 1) {\n columnEl.appendChild(tileComponentInstance.location.nativeElement);\n } else {\n columnEl.insertBefore(\n tileComponentInstance.location.nativeElement,\n this.getTileComponent(column.tiles[curIndex + operator + 1].id)\n .location.nativeElement\n );\n }\n\n // Report the change in configuration\n const reportConfig = this.config;\n reportConfig.movedTile = {\n tileDescription:\n tileDescription || /* istanbul ignore next */ tile.id,\n column: isSingleColumnMode ? undefined : colIndex + 1,\n position: curIndex + operator + 1,\n };\n this.configChange.emit(reportConfig);\n }\n }\n }\n\n private getTileId(tile: SkyTileComponent): string {\n if (tile) {\n let el = tile.elementRef.nativeElement;\n let tileId: string;\n\n while (el) {\n tileId = el.getAttribute(ATTR_TILE_ID);\n\n if (tileId) {\n return tileId;\n }\n\n el = el.parentElement;\n }\n }\n\n return undefined;\n }\n\n private getTileOrRemoveFromLayout(\n layoutTile: SkyTileDashboardConfigLayoutTile\n ): SkyTileDashboardConfigTile {\n /*istanbul ignore else */\n if (layoutTile) {\n for (const tile of this.config.tiles) {\n if (tile.id === layoutTile.id) {\n return tile;\n }\n }\n\n // If the layout tile was not found in the list of tiles, it was removed since last the user updated settings\n /*istanbul ignore else */\n if (this.config.layout.singleColumn) {\n this.config.layout.singleColumn.tiles =\n this.config.layout.singleColumn.tiles.filter(\n (elem) => elem.id !== layoutTile.id\n );\n }\n\n /*istanbul ignore else */\n if (this.config.layout.multiColumn) {\n this.config.layout.multiColumn.forEach((elem) => {\n elem.tiles = elem.tiles.filter((res) => res.id !== layoutTile.id);\n });\n }\n }\n\n /*istanbul ignore next */\n return undefined;\n }\n\n private checkReadyAndLoadTiles() {\n if (this.config && this.columns) {\n this.loadTiles();\n this.initMediaQueries();\n this.dashboardInitialized.emit();\n }\n }\n\n private loadTiles() {\n const layout = this.config.layout;\n\n if (\n this.mediaQuery.current === SkyMediaBreakpoints.xs ||\n this.mediaQuery.current === SkyMediaBreakpoints.sm\n ) {\n for (const tile of layout.singleColumn.tiles) {\n this.loadTileIntoColumn(this.singleColumn, tile);\n }\n } else {\n const columns = this.columns.toArray();\n\n for (let i = 0, n = layout.multiColumn.length; i < n; i++) {\n const column = columns[i];\n\n for (const tile of layout.multiColumn[i].tiles) {\n this.loadTileIntoColumn(column, tile);\n }\n }\n }\n }\n\n private loadTileIntoColumn(\n column: SkyTileDashboardColumnComponent,\n layoutTile: SkyTileDashboardConfigLayoutTile\n ) {\n const tile = this.getTileOrRemoveFromLayout(layoutTile);\n\n /*istanbul ignore else */\n if (tile) {\n const componentType = tile.componentType;\n const providers = tile.providers /* istanbul ignore next */ || [];\n\n const injector = Injector.create({\n providers,\n parent: column.injector,\n });\n\n const factory = column.resolver.resolveComponentFactory(componentType);\n const componentRef = column.content.createComponent(\n factory,\n undefined,\n injector\n );\n\n this.addTileComponent(layoutTile, componentRef);\n\n // Make sure the component is marked for changes in case the parent component uses\n // the OnPush change detection strategy.\n componentRef.changeDetectorRef.markForCheck();\n }\n }\n\n private moveTilesToSingleColumn() {\n this.moveTilesToColumn(\n this.singleColumn,\n this.config.layout.singleColumn.tiles\n );\n }\n\n private moveTilesToMultiColumn() {\n const layoutColumns = this.config.layout.multiColumn;\n const columns = this.columns.toArray();\n\n for (let i = 0, n = layoutColumns.length; i < n; i++) {\n this.moveTilesToColumn(columns[i], layoutColumns[i].tiles);\n }\n }\n\n private moveTilesToColumn(\n column: SkyTileDashboardColumnComponent,\n layoutTiles: SkyTileDashboardConfigLayoutTile[]\n ) {\n const columnEl = this.getColumnEl(column);\n\n for (const layoutTile of layoutTiles) {\n const tileComponentInstance = this.getTileComponent(layoutTile.id);\n\n /*istanbul ignore else */\n if (tileComponentInstance) {\n columnEl.appendChild(tileComponentInstance.location.nativeElement);\n }\n }\n }\n\n private getConfigForUIState(): SkyTileDashboardConfig {\n /*istanbul ignore else */\n if (this.config) {\n this.config = {\n tiles: this.config.tiles,\n layout: {\n singleColumn: this.getSingleColumnLayoutForUIState(),\n multiColumn: this.getMultiColumnLayoutForUIState(),\n },\n };\n }\n\n return this.config;\n }\n\n private getSingleColumnLayoutForUIState(): SkyTileDashboardConfigLayoutColumn {\n if (\n this.mediaQuery.current === SkyMediaBreakpoints.xs ||\n this.mediaQuery.current === SkyMediaBreakpoints.sm\n ) {\n return {\n tiles: this.getTilesInEl(this.getColumnEl(this.singleColumn)),\n };\n }\n\n return this.config.layout.singleColumn;\n }\n\n private getMultiColumnLayoutForUIState(): SkyTileDashboardConfigLayoutColumn[] {\n if (\n !(\n this.mediaQuery.current === SkyMediaBreakpoints.xs ||\n this.mediaQuery.current === SkyMediaBreakpoints.sm\n )\n ) {\n const layoutColumns: SkyTileDashboardConfigLayoutColumn[] = [];\n const columns = this.columns.toArray();\n\n for (const column of columns) {\n if (column !== this.singleColumn) {\n const layoutColumn: SkyTileDashboardConfigLayoutColumn = {\n tiles: this.getTilesInEl(this.getColumnEl(column)),\n };\n\n layoutColumns.push(layoutColumn);\n }\n }\n\n return layoutColumns;\n }\n\n return this.config.layout.multiColumn;\n }\n\n private getTilesInEl(el: Element): SkyTileDashboardConfigLayoutTile[] {\n const tileEls: any = el.querySelectorAll('[' + ATTR_TILE_ID + ']');\n const layoutTiles: SkyTileDashboardConfigLayoutTile[] = [];\n\n /*istanbul ignore else */\n if (tileEls) {\n for (let i = 0, n = tileEls.length; i < n; i++) {\n const tileEl = tileEls[i];\n const tileId = tileEl.getAttribute(ATTR_TILE_ID);\n const tile = this.findTile(tileId);\n\n /*istanbul ignore else */\n if (tile) {\n layoutTiles.push(tile);\n }\n }\n }\n\n return layoutTiles;\n }\n\n private initMediaQueries() {\n /*istanbul ignore else */\n if (!this.mediaSubscription) {\n this.mediaSubscription = this.mediaQuery.subscribe(\n (args: SkyMediaBreakpoints) => {\n this.changeColumnMode(\n args === SkyMediaBreakpoints.xs || args === SkyMediaBreakpoints.sm\n );\n }\n );\n }\n }\n\n private initDragula() {\n this.dragulaService.createGroup(this.bagId, {\n moves: (el: HTMLElement, container: HTMLElement, handle: HTMLElement) => {\n const target = el.querySelector('.sky-tile-grab-handle');\n return target.contains(handle);\n },\n });\n\n this.dragulaService.drop(this.bagId).subscribe(() => {\n const config = this.getConfigForUIState();\n\n /*istanbul ignore else */\n if (config) {\n if (this.settingsKey) {\n this.setUserConfig(config);\n }\n\n this.configChange.emit(config);\n }\n });\n }\n\n private getColumnEl(column: SkyTileDashboardColumnComponent): Element {\n return column.content.element.nativeElement.parentNode;\n }\n\n private findTile(tileId: string): SkyTileDashboardConfigLayoutTile {\n /*istanbul ignore else */\n if (this.config && this.config.layout.multiColumn) {\n for (const column of this.config.layout.multiColumn) {\n /*istanbul ignore else */\n if (column.tiles) {\n for (const tile of column.tiles) {\n if (tile.id === tileId) {\n return tile;\n }\n }\n }\n }\n }\n\n return undefined;\n }\n\n private findTileColumn(tileId: string): SkyTileDashboardConfigLayoutColumn {\n /*istanbul ignore else */\n if (this.config && this.config.layout.multiColumn) {\n return this.config.layout.multiColumn.find(\n (col) => col.tiles && !!col.tiles.find((tile) => tile.id === tileId)\n );\n }\n\n /*istanbul ignore next */\n return undefined;\n }\n\n private initToDefaults(\n config: SkyTileDashboardConfig,\n columns: QueryList<SkyTileDashboardColumnComponent>,\n singleColumn: SkyTileDashboardColumnComponent\n ) {\n this.config = config;\n this.columns = columns;\n this.singleColumn = singleColumn;\n this.checkReadyAndLoadTiles();\n }\n\n private setUserConfig(config: SkyTileDashboardConfig) {\n this.uiConfigService\n .setConfig(this.settingsKey, {\n layout: this.config.layout,\n persisted: true,\n tileIds: this.defaultConfig.tiles.map((elem) => elem.id),\n })\n .subscribe(\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n () => {},\n (err) => {\n console.warn('Could not save tile dashboard settings.');\n console.warn(err);\n }\n );\n }\n\n private checkForNewTiles(oldUserTiles: string[]) {\n // Get a list of tiles that are in the config's default list but not in the user's settings\n const newTiles = this.config.tiles.filter((elem) => {\n return oldUserTiles.indexOf(elem.id) === -1;\n });\n\n const { multiColumn, singleColumn } = this.config.layout;\n\n // Append new tiles to the end of the layouts\n /*istanbul ignore else */\n if (newTiles.length > 0) {\n /*istanbul ignore else */\n if (multiColumn) {\n newTiles.forEach((elem) => {\n let locationToAdd = 0;\n let smallest = multiColumn[0].tiles.length;\n multiColumn.forEach((item, index) => {\n if (item.tiles.length < smallest) {\n locationToAdd = index;\n smallest = item.tiles.length;\n }\n });\n multiColumn[locationToAdd].tiles.push({\n id: elem.id,\n isCollapsed: false,\n });\n });\n }\n\n /*istanbul ignore else */\n if (singleColumn) {\n newTiles.forEach((elem) => {\n singleColumn.tiles.push({ id: elem.id, isCollapsed: false });\n });\n }\n }\n\n /*istanbul ignore else */\n if (singleColumn) {\n for (const tile of singleColumn.tiles) {\n this.getTileOrRemoveFromLayout(tile);\n }\n }\n\n /*istanbul ignore else */\n if (multiColumn) {\n for (let i = 0, n = multiColumn.length; i < n; i++) {\n for (const tile of multiColumn[i].tiles) {\n this.getTileOrRemoveFromLayout(tile);\n }\n }\n }\n }\n}\n","import {\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n Optional,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { skyAnimationSlide } from '@skyux/animations';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyTileDashboardService } from '../tile-dashboard/tile-dashboard.service';\n\n/**\n * Provides a common look-and-feel for tab content.\n */\n@Component({\n selector: 'sky-tile',\n styleUrls: ['./tile.component.scss'],\n templateUrl: './tile.component.html',\n animations: [skyAnimationSlide],\n})\nexport class SkyTileComponent implements OnDestroy {\n /**\n * Indicates whether to display a settings button in the tile header. To display the\n * button, you must also listen for the `settingsClick` event.\n * @default true\n */\n @Input()\n public showSettings = true;\n\n /**\n * Indicates whether to display a help button in the tile header. To display the\n * button, you must also listen for the `helpClick` event.\n * @default true\n */\n @Input()\n public showHelp = true;\n\n /**\n * Specifies a human-readable name for the tile that is available for multiple purposes, such as accessibility and instrumentation. For example, the component uses the name to construct ARIA labels for tile controls to [support accessibility](https://developer.blackbaud.com/skyux/learn/accessibility).\n */\n @Input()\n public tileName;\n\n /**\n * Fires when users select the settings button in the tile header. The settings\n * button only appears when the `showSettings` property is set to `true`.\n */\n @Output()\n public settingsClick = new EventEmitter();\n\n /**\n * Fires when the tile's collapsed state changes. Returns `true` when the tile\n * collapses and `false` when it expands.\n */\n @Output()\n public isCollapsedChange = new EventEmitter<boolean>();\n\n /**\n * Fires when users select the help button in the tile header. The help\n * button only appears when the `showHelp` property is set to `true`.\n */\n @Output()\n public helpClick = new EventEmitter();\n\n public get isCollapsed(): boolean {\n if (this.dashboardService) {\n const configCollapsedState = this.dashboardService.tileIsCollapsed(this);\n this._isCollapsed = configCollapsedState;\n }\n\n return this._isCollapsed;\n }\n\n /**\n * Indicates whether the tile is in a collapsed state.\n * @default false\n */\n @Input()\n public set isCollapsed(value: boolean) {\n if (this.dashboardService) {\n this.dashboardService.setTileCollapsed(this, value);\n }\n\n this._isCollapsed = value;\n\n this.isCollapsedChange.emit(value);\n }\n\n public ariaDescribedBy: string | undefined;\n\n public isInDashboardColumn = false;\n\n @ViewChild('grabHandle', {\n read: ElementRef,\n static: false,\n })\n private grabHandle: ElementRef;\n\n @ViewChild('titleContainer', {\n read: ElementRef,\n static: false,\n })\n private title: ElementRef;\n\n private ngUnsubscribe = new Subject<void>();\n\n private _isCollapsed = false;\n\n constructor(\n public elementRef: ElementRef,\n private changeDetector: ChangeDetectorRef,\n @Optional() private dashboardService?: SkyTileDashboardService\n ) {\n this.isInDashboardColumn = !!dashboardService;\n\n if (this.dashboardService) {\n this.ariaDescribedBy = `${this.dashboardService.bagId}-move-instructions`;\n\n /**\n * This subscription ensures that if any values which come in from the dashboard service are\n * updated that the component will update if the tile's parent component utilizes OnPush\n * change detection.\n */\n this.dashboardService.configChange\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe(() => {\n this.changeDetector.markForCheck();\n });\n }\n }\n\n public ngOnDestroy(): void {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n public settingsButtonClicked(): void {\n this.settingsClick.emit(undefined);\n }\n\n public helpButtonClicked(): void {\n this.helpClick.emit(undefined);\n }\n\n public get hasSettings(): boolean {\n return this.settingsClick.observers.length > 0 && this.showSettings;\n }\n\n public get hasHelp(): boolean {\n return this.helpClick.observers.length > 0 && this.showHelp;\n }\n\n public titleClick(): void {\n this.isCollapsed = !this.isCollapsed;\n }\n\n public chevronDirectionChange(direction: string): void {\n this.isCollapsed = direction === 'down';\n }\n\n public moveTile(event: KeyboardEvent): void {\n /* istanbul ignore else */\n if (this.isInDashboardColumn) {\n const direction = event.key.toLowerCase().replace('arrow', '');\n /* istanbul ignore else */\n if (\n direction === 'up' ||\n direction === 'down' ||\n direction === 'left' ||\n direction === 'right'\n ) {\n this.dashboardService.moveTileOnKeyDown(\n this,\n direction,\n this.title\n ? this.title.nativeElement.innerText\n : /* istanbul ignore next */\n undefined\n );\n this.focusHandle();\n }\n }\n }\n\n private focusHandle(): void {\n this.grabHandle.nativeElement.focus();\n }\n}\n","<section\n class=\"sky-tile\"\n [ngClass]=\"{\n 'sky-tile-collapsed': isCollapsed\n }\"\n [skyThemeClass]=\"{\n 'sky-box sky-elevation-1-bordered sky-padding-even-xl': 'modern'\n }\"\n>\n <header class=\"sky-tile-header\">\n <div class=\"sky-tile-header-content\" (click)=\"titleClick()\">\n <div class=\"sky-tile-header-title\" #titleContainer>\n <ng-content select=\"sky-tile-title\"></ng-content>\n </div>\n <div\n class=\"sky-tile-summary\"\n [skyThemeClass]=\"{\n 'sky-font-display-3': 'modern',\n 'sky-headline': 'default'\n }\"\n >\n <ng-content select=\"sky-tile-summary\"></ng-content>\n </div>\n </div>\n <div class=\"sky-tile-header-column-tools\">\n <div class=\"sky-tile-tools\">\n <ng-container *skyThemeIf=\"'default'\">\n <button\n *ngIf=\"hasHelp\"\n class=\"sky-btn sky-tile-tools-control sky-tile-help\"\n type=\"button\"\n [attr.aria-label]=\"\n tileName\n ? ('skyux_tile_help' | skyLibResources: tileName)\n : ('skyux_tile_help_default' | skyLibResources)\n \"\n [skyThemeClass]=\"{\n 'sky-btn-icon-borderless': 'modern'\n }\"\n (click)=\"helpButtonClicked()\"\n >\n <sky-icon icon=\"question-circle\"></sky-icon>\n </button>\n </ng-container>\n <sky-chevron\n [ariaControls]=\"tileContent.id\"\n [ariaLabel]=\"\n tileName\n ? ('skyux_tile_expand' | skyLibResources: tileName)\n : ('skyux_tile_expand_default' | skyLibResources)\n \"\n [direction]=\"isCollapsed ? 'down' : 'up'\"\n [skyThemeClass]=\"{\n 'sky-tile-tools-control': 'default',\n 'sky-margin-inline-default': 'modern'\n }\"\n (directionChange)=\"chevronDirectionChange($event)\"\n >\n </sky-chevron>\n <button\n *ngIf=\"hasSettings\"\n class=\"sky-btn sky-tile-settings\"\n type=\"button\"\n [attr.aria-label]=\"\n tileName\n ? ('skyux_tile_settings' | skyLibResources: tileName)\n : ('skyux_tile_settings_default' | skyLibResources)\n \"\n [skyThemeClass]=\"{\n 'sky-tile-tools-control': 'default',\n 'sky-btn-icon-borderless sky-margin-inline-default': 'modern'\n }\"\n (click)=\"settingsButtonClicked()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"cog\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"cog-line\"\n iconType=\"skyux\"\n ></sky-icon>\n </button>\n <button\n *ngIf=\"isInDashboardColumn\"\n class=\"sky-btn sky-tile-grab-handle\"\n [attr.aria-label]=\"\n tileName\n ? ('skyux_tile_move' | skyLibResources: tileName)\n : ('skyux_tile_move_default' | skyLibResources)\n \"\n [attr.aria-describedby]=\"ariaDescribedBy\"\n [skyThemeClass]=\"{\n 'sky-tile-tools-control': 'default',\n 'sky-btn-icon-borderless': 'modern'\n }\"\n (click)=\"$event.stopPropagation()\"\n (keydown)=\"moveTile($event)\"\n #grabHandle\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"th\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"tile-drag\"\n iconType=\"skyux\"\n ></sky-icon>\n </button>\n </div>\n </div>\n </header>\n <div\n class=\"sky-tile-content\"\n role=\"region\"\n skyId\n [attr.aria-label]=\"tileName\"\n [@skyAnimationSlide]=\"isCollapsed ? 'up' : 'down'\"\n #tileContent=\"skyId\"\n >\n <ng-content select=\"sky-tile-content\"></ng-content>\n </div>\n</section>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyIdModule } from '@skyux/core';\nimport { SkyI18nModule } from '@skyux/i18n';\nimport { SkyChevronModule, SkyIconModule } from '@skyux/indicators';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyTilesResourcesModule } from '../../shared/sky-tiles-resources.module';\n\nimport { SkyTileSummaryComponent } from './tile-summary.component';\nimport { SkyTileTitleComponent } from './tile-title.component';\nimport { SkyTileComponent } from './tile.component';\n\n@NgModule({\n declarations: [\n SkyTileComponent,\n SkyTileSummaryComponent,\n SkyTileTitleComponent,\n ],\n imports: [\n CommonModule,\n SkyChevronModule,\n SkyIdModule,\n SkyI18nModule,\n SkyIconModule,\n SkyThemeModule,\n SkyTilesResourcesModule,\n ],\n exports: [SkyTileComponent, SkyTileSummaryComponent, SkyTileTitleComponent],\n})\nexport class SkyTileModule {}\n","import { Component } from '@angular/core';\n\n/**\n * Specifies content to display inside a padded section of a SkyTileContentComponent.\n */\n@Component({\n selector: 'sky-tile-content-section',\n styleUrls: ['./tile-content-section.component.scss'],\n templateUrl: './tile-content-section.component.html',\n})\nexport class SkyTileContentSectionComponent {}\n","<div\n class=\"sky-tile-content-section\"\n [skyThemeClass]=\"{\n 'sky-padding-even-large': 'default'\n }\"\n>\n <ng-content></ng-content>\n</div>\n","import { Component } from '@angular/core';\n\n/**\n * Specifies content to display in the tile's body.\n */\n@Component({\n selector: 'sky-tile-content',\n styleUrls: ['./tile-content.component.scss'],\n templateUrl: 'tile-content.component.html',\n})\nexport class SkyTileContentComponent {}\n","<ng-content></ng-content>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyTileContentSectionComponent } from './tile-content-section.component';\nimport { SkyTileContentComponent } from './tile-content.component';\n\n@NgModule({\n declarations: [SkyTileContentComponent, SkyTileContentSectionComponent],\n imports: [CommonModule, SkyThemeModule],\n exports: [SkyTileContentComponent, SkyTileContentSectionComponent],\n})\nexport class SkyTileContentModule {}\n","/**\n * Specifies the type of message to send to the tile dashboard component.\n */\nexport enum SkyTileDashboardMessageType {\n /**\n * Expands all tiles within the tile dashboard.\n */\n ExpandAll = 0,\n\n /**\n * Collapses all tiles within the tile dashboard.\n */\n CollapseAll = 1,\n}\n","import {\n Component,\n ComponentFactoryResolver,\n Injector,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { SkyTileDashboardService } from '../tile-dashboard/tile-dashboard.service';\n\nlet columnIdIndex = 0;\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-tile-dashboard-column',\n styleUrls: ['./tile-dashboard-column.component.scss'],\n templateUrl: './tile-dashboard-column.component.html',\n})\nexport class SkyTileDashboardColumnComponent {\n public bagId: string;\n\n public columnId: string;\n\n @ViewChild('content', {\n read: ViewContainerRef,\n static: false,\n })\n public content: ViewContainerRef;\n\n constructor(\n public resolver: ComponentFactoryResolver,\n public injector: Injector,\n private dashboardService: SkyTileDashboardService\n ) {\n columnIdIndex++;\n\n this.columnId = 'tile-dashboard-column-' + columnIdIndex;\n\n this.bagId = this.dashboardService.bagId;\n }\n}\n","<div class=\"sky-tile-dashboard-column\" [dragula]=\"bagId\">\n <div #content></div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DragulaModule } from 'ng2-dragula';\n\nimport { SkyTileDashboardColumnComponent } from './tile-dashboard-column.component';\n\n@NgModule({\n declarations: [SkyTileDashboardColumnComponent],\n imports: [CommonModule, DragulaModule],\n exports: [SkyTileDashboardColumnComponent],\n})\nexport class SkyTileDashboardColumnModule {}\n","import {\n AfterViewInit,\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n Optional,\n Output,\n QueryList,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { SkyMediaBreakpoints, SkyMediaQueryService } from '@skyux/core';\nimport { SkyLibResourcesService } from '@skyux/i18n';\n\nimport { Observable, Subject } from 'rxjs';\nimport { take, takeUntil } from 'rxjs/operators';\n\nimport { SkyTileDashboardColumnComponent } from '../tile-dashboard-column/tile-dashboard-column.component';\nimport { SkyTileDashboardConfig } from '../tile-dashboard-config/tile-dashboard-config';\n\nimport { SkyTileDashboardMessage } from './tile-dashboard-message';\nimport { SkyTileDashboardMessageType } from './tile-dashboard-message-type';\nimport { SkyTileDashboardService } from './tile-dashboard.service';\n\n/**\n * Specifies a container to group multiple tiles.\n */\n@Component({\n selector: 'sky-tile-dashboard',\n styleUrls: ['./tile-dashboard.component.scss'],\n templateUrl: './tile-dashboard.component.html',\n providers: [SkyTileDashboardService],\n})\nexport class SkyTileDashboardComponent implements AfterViewInit, OnDestroy {\n /**\n * Populates the tile dashboard based on the `SkyTileDashboardConfig` object.\n * @required\n */\n @Input()\n public set config(value: SkyTileDashboardConfig) {\n if (value && !this.configSet) {\n this._config = value;\n this.configSet = true;\n this.checkReady();\n }\n }\n\n public get config(): SkyTileDashboardConfig {\n return this._config;\n }\n\n /**\n * Provides an observable to send commands to the tile dashboard. The commands should respect the\n * `SkyTileDashboardMessage` type.\n */\n @Input()\n public messageStream = new Subject<SkyTileDashboardMessage>();\n\n /**\n * Specifies a unique key for the UI Config Service to retrieve stored settings\n * from a database. The UI Config Service saves configuration settings for users\n * to preserve the layout and collapsed state of tile dashboards. The UI Config Service relies on `id` values from the `config` property to maintain user settings. For more information\n * about the UI Config Service, see the\n * [sticky settings documentation](https://developer.blackbaud.com/skyux/learn/get-started/sticky-settings).\n */\n @Input()\n public settingsKey: string;\n\n /**\n * Fires when the tile dashboard changes state and emits a SkyTileDashboardConfig\n * object. This occurs when tiles collapse or expand and when users drag and drop\n * tiles to rearrange them.\n */\n @Output()\n public configChange = new EventEmitter<SkyTileDashboardConfig>();\n\n @ViewChildren(SkyTileDashboardColumnComponent)\n private columns: QueryList<SkyTileDashboardColumnComponent>;\n\n @ViewChild('singleColumn', {\n read: SkyTileDashboardColumnComponent,\n static: false,\n })\n public singleColumn: SkyTileDashboardColumnComponent;\n\n public tileMovedReport: string;\n\n public moveInstructionsId =\n this.dashboardService.bagId + '-move-instructions';\n\n private _config: SkyTileDashboardConfig;\n\n private configSet = false;\n\n private ngUnsubscribe = new Subject<void>();\n\n private viewReady = false;\n\n constructor(\n private dashboardService: SkyTileDashboardService,\n private mediaQuery: SkyMediaQueryService,\n @Optional() private resourcesService?: SkyLibResourcesService\n ) {\n this.dashboardService.configChange.subscribe(\n (config: SkyTileDashboardConfig) => {\n this.configChange.emit(config);\n\n // Update aria live region with tile drag info\n if (config.movedTile && this.resourcesService) {\n let messageObservable: Observable<string>;\n if (\n this.mediaQuery.current === SkyMediaBreakpoints.xs ||\n this.mediaQuery.current === SkyMediaBreakpoints.sm\n ) {\n messageObservable = this.resourcesService.getString(\n 'skyux_tile_moved_assistive_text',\n config.movedTile.tileDescription,\n '1',\n '1',\n config.movedTile.position.toString(),\n config.layout.singleColumn.tiles.length.toString()\n );\n } else {\n messageObservable = this.resourcesService.getString(\n 'skyux_tile_moved_assistive_text',\n config.movedTile.tileDescription,\n config.movedTile.column.toString(),\n config.layout.multiColumn.length.toString(),\n config.movedTile.position.toString(),\n config.layout.multiColumn[\n config.movedTile.column - 1\n ].tiles.length.toString()\n );\n }\n messageObservable.pipe(take(1)).subscribe((message: string) => {\n this.tileMovedReport = message;\n });\n }\n }\n );\n }\n\n public ngAfterViewInit(): void {\n this.messageStream\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((message: SkyTileDashboardMessage) => {\n this.handleIncomingMessages(message);\n });\n\n this.viewReady = true;\n this.checkReady();\n }\n\n public ngOnDestroy(): void {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n this.dashboardService.destroy();\n }\n\n private checkReady(): void {\n if (this.viewReady && this.config) {\n setTimeout(() => {\n this.dashboardService.init(\n this.config,\n this.columns,\n this.singleColumn,\n this.settingsKey\n );\n }, 0);\n }\n }\n\n private handleIncomingMessages(message: SkyTileDashboardMessage): void {\n switch (message.type) {\n case SkyTileDashboardMessageType.ExpandAll:\n this.dashboardService.setAllTilesCollapsed(false);\n break;\n\n case SkyTileDashboardMessageType.CollapseAll:\n this.dashboardService.setAllTilesCollapsed(true);\n break;\n }\n }\n}\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></ng-content>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DragulaService } from 'ng2-dragula';\n\nimport { SkyTilesResourcesModule } from '../../shared/sky-tiles-resources.module';\nimport { SkyTileDashboardColumnModule } from '../tile-dashboard-column/tile-dashboard-column.module';\n\nimport { SkyTileDashboardComponent } from './tile-dashboard.component';\n\n@NgModule({\n declarations: [SkyTileDashboardComponent],\n providers: [DragulaService],\n imports: [\n CommonModule,\n SkyTileDashboardColumnModule,\n SkyTilesResourcesModule,\n ],\n exports: [SkyTileDashboardComponent],\n})\nexport class SkyTileDashboardModule {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DragulaService } from 'ng2-dragula';\n\nimport { SkyTileContentModule } from './tile-content/tile-content.module';\nimport { SkyTileDashboardColumnModule } from './tile-dashboard-column/tile-dashboard-column.module';\nimport { SkyTileDashboardModule } from './tile-dashboard/tile-dashboard.module';\nimport { SkyTileModule } from './tile/tile.module';\n\n@NgModule({\n imports: [CommonModule],\n exports: [\n SkyTileContentModule,\n SkyTileModule,\n SkyTileDashboardColumnModule,\n SkyTileDashboardModule,\n ],\n providers: [DragulaService],\n})\nexport class SkyTilesModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i1.SkyTileDashboardService","i2","i5","i6","i3","i4.SkyTileDashboardColumnComponent"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;;;;;AAKG;AAWH,MAAM,SAAS,GAA0C;AACvD,IAAA,OAAO,EAAE;AACP,QAAA,iBAAiB,EAAE,EAAE,OAAO,EAAE,wBAAwB,EAAE;AACxD,QAAA,yBAAyB,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;AAC5D,QAAA,eAAe,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE;AACxC,QAAA,uBAAuB,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;AAC5C,QAAA,mBAAmB,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE;AAChD,QAAA,2BAA2B,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE;AACpD,QAAA,eAAe,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE;AACxC,QAAA,uBAAuB,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;AAC5C,QAAA,4BAA4B,EAAE;AAC5B,YAAA,OAAO,EACL,yLAAyL;AAC5L,SAAA;AACD,QAAA,+BAA+B,EAAE;AAC/B,YAAA,OAAO,EACL,+EAA+E;AAClF,SAAA;AACF,KAAA;CACF,CAAC;MAEW,yBAAyB,CAAA;IAC7B,SAAS,CACd,UAA4B,EAC5B,IAAY,EAAA;QAEZ,OAAO,qBAAqB,CAAC,SAAS,EAAE,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;KAClE;AACF,CAAA;AAED;;AAEG;MAWU,uBAAuB,CAAA;;oHAAvB,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAvB,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,YATxB,aAAa,CAAA,EAAA,CAAA,CAAA;AASZ,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,EARvB,SAAA,EAAA;AACT,QAAA;AACE,YAAA,OAAO,EAAE,2BAA2B;AACpC,YAAA,QAAQ,EAAE,yBAAyB;AACnC,YAAA,KAAK,EAAE,IAAI;AACZ,SAAA;AACF,KAAA,EAAA,OAAA,EAAA,CAPS,aAAa,CAAA,EAAA,CAAA,CAAA;2FASZ,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAVnC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,aAAa,CAAC;AACxB,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,2BAA2B;AACpC,4BAAA,QAAQ,EAAE,yBAAyB;AACnC,4BAAA,KAAK,EAAE,IAAI;AACZ,yBAAA;AACF,qBAAA;AACF,iBAAA,CAAA;;;ACxDD;;AAEG;AAKH;AACA;MACa,uBAAuB,CAAA;;oHAAvB,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,wDCXpC,6BACA,EAAA,CAAA,CAAA;2FDUa,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBANnC,SAAS;+BACE,kBAAkB,EAAA,QAAA,EAAA,6BAAA,EAAA,CAAA;;;AEJ9B;;AAEG;MAMU,qBAAqB,CAAA;;kHAArB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAArB,qBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,qBAAqB,sDCVlC,mLASA,EAAA,MAAA,EAAA,CAAA,0LAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,eAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDCa,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBALjC,SAAS;+BACE,gBAAgB,EAAA,QAAA,EAAA,mLAAA,EAAA,MAAA,EAAA,CAAA,0LAAA,CAAA,EAAA,CAAA;;;AEmB5B,MAAM,YAAY,GAAG,6BAA6B,CAAC;AAEnD,IAAI,UAAU,GAAG,CAAC,CAAC;MAGN,uBAAuB,CAAA;AA+BlC,IAAA,WAAA,CACU,cAA8B,EAC9B,UAAgC,EAChC,eAAmC,EAAA;QAFnC,IAAc,CAAA,cAAA,GAAd,cAAc,CAAgB;QAC9B,IAAU,CAAA,UAAA,GAAV,UAAU,CAAsB;QAChC,IAAe,CAAA,eAAA,GAAf,eAAe,CAAoB;AA5B7C;;AAEG;AACI,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,YAAY,EAA0B,CAAC;AAEjE;;AAEG;AAEI,QAAA,IAAA,CAAA,oBAAoB,GAAG,IAAI,YAAY,EAAQ,CAAC;AAqBrD,QAAA,IAAI,CAAC,KAAK,GAAG,yBAAyB,GAAG,EAAE,UAAU,CAAC;QAEtD,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;AAED;;AAEG;AACI,IAAA,IAAI,CACT,MAA8B,EAC9B,OAAoD,EACpD,YAA8C,EAC9C,WAAoB,EAAA;AAEpB,QAAA,IAAI,WAAW,EAAE;;;AAGf,YAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;AAE7D,YAAA,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;AAE/B,YAAA,IAAI,CAAC,eAAe;AACjB,iBAAA,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;AAC9B,iBAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACb,iBAAA,SAAS,CACR,CAAC,KAAU,KAAI;gBACb,IAAI,KAAK,CAAC,SAAS,EAAE;oBACnB,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;AAClC,oBAAA,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBACrC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAEpC,oBAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;AACvB,oBAAA,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;oBACjC,IAAI,CAAC,sBAAsB,EAAE,CAAC;AAC/B,iBAAA;AAAM,qBAAA;;oBAEL,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;AACpD,iBAAA;AACH,aAAC,EACD,CAAC,KAAU,KAAI;;gBAEb,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;AACrD,aAAC,CACF,CAAC;AACL,SAAA;AAAM,aAAA;YACL,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;AACpD,SAAA;KACF;AAED;;;;AAIG;IACI,gBAAgB,CACrB,IAAsC,EACtC,SAA4B,EAAA;QAE5B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC;AAEhD,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAEpC,QAAA,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,YAAY,CAAC,YAAY,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;KACtE;AAED;;;AAGG;AACI,IAAA,eAAe,CAAC,IAAsB,EAAA;AAC3C,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;AAEvD,QAAA,IAAI,UAAU,EAAE;YACd,OAAO,UAAU,CAAC,WAAW,CAAC;AAC/B,SAAA;AAED,QAAA,OAAO,SAAS,CAAC;KAClB;AAED;;;AAGG;AACI,IAAA,oBAAoB,CAAC,WAAoB,EAAA;;QAE9C,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE;YACjD,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE;AACnD,gBAAA,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE;AAC/B,oBAAA,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;AAChC,iBAAA;AACF,aAAA;AACD,YAAA,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE;AACxD,gBAAA,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;AAChC,aAAA;AACF,SAAA;QAED,IAAI,IAAI,CAAC,WAAW,EAAE;AACpB,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACjC,SAAA;QAED,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACrC;AAED;;;;AAIG;IACI,gBAAgB,CAAC,IAAsB,EAAE,WAAoB,EAAA;AAClE,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;AAEvD,QAAA,IAAI,UAAU,EAAE;AACd,YAAA,UAAU,CAAC,WAAW,GAAG,WAAW,CAAC;YAErC,IAAI,IAAI,CAAC,WAAW,EAAE;AACpB,gBAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACjC,aAAA;YAED,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACrC,SAAA;KACF;AAED;;AAEG;AACI,IAAA,oBAAoB,CACzB,UAA4C,EAAA;AAE5C,QAAA,IAAI,UAAU,EAAE;YACd,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;AACpC,gBAAA,IAAI,IAAI,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,EAAE;oBAC7B,OAAO,IAAI,CAAC,aAAa,CAAC;AAC3B,iBAAA;AACF,aAAA;AACF,SAAA;AAED,QAAA,OAAO,SAAS,CAAC;KAClB;AAED;;AAEG;AACI,IAAA,gBAAgB,CAAC,cAAuB,EAAA;;QAE7C,IAAI,IAAI,CAAC,MAAM,EAAE;AACf,YAAA,IAAI,cAAc,EAAE;gBAClB,IAAI,CAAC,uBAAuB,EAAE,CAAC;AAChC,aAAA;AAAM,iBAAA;gBACL,IAAI,CAAC,sBAAsB,EAAE,CAAC;AAC/B,aAAA;AACF,SAAA;KACF;AAED;;AAEG;AACI,IAAA,gBAAgB,CAAC,MAAc,EAAA;AACpC,QAAA,KAAK,MAAM,aAAa,IAAI,IAAI,CAAC,cAAc,EAAE;YAC/C,IACE,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,YAAY,CAAC,YAAY,CAAC;AAC/D,gBAAA,MAAM,EACN;AACA,gBAAA,OAAO,aAAa,CAAC;AACtB,aAAA;AACF,SAAA;;AAGD,QAAA,OAAO,SAAS,CAAC;KAClB;AAED;;AAEG;IACI,OAAO,GAAA;;QAEZ,IAAI,IAAI,CAAC,iBAAiB,EAAE;AAC1B,YAAA,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,CAAC;AACtC,SAAA;KACF;AAED;;AAEG;AACI,IAAA,iBAAiB,CACtB,OAAyB,EACzB,SAAiB,EACjB,eAAuB,EAAA;QAEvB,MAAM,kBAAkB,GACtB,IAAI,CAAC,UAAU,CAAC,OAAO,KAAK,mBAAmB,CAAC,EAAE;YAClD,IAAI,CAAC,UAAU,CAAC,OAAO,KAAK,mBAAmB,CAAC,EAAE,CAAC;QAErD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAEnC,QAAA,IAAI,MAA0C,CAAC;AAC/C,QAAA,IAAI,QAAgB,CAAC;AACrB,QAAA,IAAI,kBAAkB,EAAE;YACtB,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;AAC1C,SAAA;AAAM,aAAA;AACL,YAAA,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YACrC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CACjD,CAAC,KAAK,KAAK,KAAK,KAAK,MAAM,CAC5B,CAAC;AACH,SAAA;QAED,IACE,CAAC,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,OAAO;AAC9C,YAAA,CAAC,kBAAkB,EACnB;AACA,YAAA,MAAM,QAAQ,GAAG,SAAS,KAAK,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;AAC/C,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC;AAEtE,YAAA,IAAI,SAAS,EAAE;;AAEb,gBAAA,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3B,gBAAA,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,KAAK,IAAI,CAAC,CAAC;AAC5D,gBAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,QAAQ,GAAG,QAAQ,CAAC,EAAE;oBAClE,IAAI;AACL,iBAAA,CAAC,CAAC;;AAGH,gBAAA,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC;gBACjC,YAAY,CAAC,SAAS,GAAG;AACvB,oBAAA,eAAe,EACb,eAAe,+BAA+B,IAAI,CAAC,EAAE;AACvD,oBAAA,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,CAAC;AAC/B,oBAAA,QAAQ,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM;iBACjC,CAAC;AACF,gBAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACtC,aAAA;AACF,SAAA;AAAM,aAAA;AACL,YAAA,MAAM,QAAQ,GAAG,SAAS,KAAK,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YAC7C,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;YACzE,MAAM,qBAAqB,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;YAE5D,IAAI,qBAAqB,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC,EAAE;gBAC9D,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC;gBAC/C,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC,GAAG,IAAI,CAAC;AACzC,gBAAA,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;;AAG9B,gBAAA,IAAI,QAAiB,CAAC;AACtB,gBAAA,IAAI,kBAAkB,EAAE;oBACtB,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AAChD,iBAAA;AAAM,qBAAA;AACL,oBAAA,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC/D,iBAAA;;gBAGD,IAAI,QAAQ,GAAG,QAAQ,KAAK,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;oBACnD,QAAQ,CAAC,WAAW,CAAC,qBAAqB,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;AACpE,iBAAA;AAAM,qBAAA;oBACL,QAAQ,CAAC,YAAY,CACnB,qBAAqB,CAAC,QAAQ,CAAC,aAAa,EAC5C,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;yBAC5D,QAAQ,CAAC,aAAa,CAC1B,CAAC;AACH,iBAAA;;AAGD,gBAAA,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC;gBACjC,YAAY,CAAC,SAAS,GAAG;AACvB,oBAAA,eAAe,EACb,eAAe,+BAA+B,IAAI,CAAC,EAAE;oBACvD,MAAM,EAAE,kBAAkB,GAAG,SAAS,GAAG,QAAQ,GAAG,CAAC;AACrD,oBAAA,QAAQ,EAAE,QAAQ,GAAG,QAAQ,GAAG,CAAC;iBAClC,CAAC;AACF,gBAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACtC,aAAA;AACF,SAAA;KACF;AAEO,IAAA,SAAS,CAAC,IAAsB,EAAA;AACtC,QAAA,IAAI,IAAI,EAAE;AACR,YAAA,IAAI,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;AACvC,YAAA,IAAI,MAAc,CAAC;AAEnB,YAAA,OAAO,EAAE,EAAE;AACT,gBAAA,MAAM,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;AAEvC,gBAAA,IAAI,MAAM,EAAE;AACV,oBAAA,OAAO,MAAM,CAAC;AACf,iBAAA;AAED,gBAAA,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC;AACvB,aAAA;AACF,SAAA;AAED,QAAA,OAAO,SAAS,CAAC;KAClB;AAEO,IAAA,yBAAyB,CAC/B,UAA4C,EAAA;;AAG5C,QAAA,IAAI,UAAU,EAAE;YACd,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;AACpC,gBAAA,IAAI,IAAI,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,EAAE;AAC7B,oBAAA,OAAO,IAAI,CAAC;AACb,iBAAA;AACF,aAAA;;;AAID,YAAA,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE;AACnC,gBAAA,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK;oBACnC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAC1C,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,CACpC,CAAC;AACL,aAAA;;AAGD,YAAA,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE;AAClC,gBAAA,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;oBAC9C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,CAAC,CAAC;AACpE,iBAAC,CAAC,CAAC;AACJ,aAAA;AACF,SAAA;;AAGD,QAAA,OAAO,SAAS,CAAC;KAClB;IAEO,sBAAsB,GAAA;AAC5B,QAAA,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE;YAC/B,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,gBAAgB,EAAE,CAAC;AACxB,YAAA,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC;AAClC,SAAA;KACF;IAEO,SAAS,GAAA;AACf,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QAElC,IACE,IAAI,CAAC,UAAU,CAAC,OAAO,KAAK,mBAAmB,CAAC,EAAE;YAClD,IAAI,CAAC,UAAU,CAAC,OAAO,KAAK,mBAAmB,CAAC,EAAE,EAClD;YACA,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE;gBAC5C,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;AAClD,aAAA;AACF,SAAA;AAAM,aAAA;YACL,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;AAEvC,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;AACzD,gBAAA,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;gBAE1B,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE;AAC9C,oBAAA,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AACvC,iBAAA;AACF,aAAA;AACF,SAAA;KACF;IAEO,kBAAkB,CACxB,MAAuC,EACvC,UAA4C,EAAA;QAE5C,MAAM,IAAI,GAAG,IAAI,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;;AAGxD,QAAA,IAAI,IAAI,EAAE;AACR,YAAA,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;YACzC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,+BAA+B,EAAE,CAAC;AAElE,YAAA,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC;gBAC/B,SAAS;gBACT,MAAM,EAAE,MAAM,CAAC,QAAQ;AACxB,aAAA,CAAC,CAAC;YAEH,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAC;AACvE,YAAA,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,eAAe,CACjD,OAAO,EACP,SAAS,EACT,QAAQ,CACT,CAAC;AAEF,YAAA,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;;;AAIhD,YAAA,YAAY,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;AAC/C,SAAA;KACF;IAEO,uBAAuB,GAAA;AAC7B,QAAA,IAAI,CAAC,iBAAiB,CACpB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CACtC,CAAC;KACH;IAEO,sBAAsB,GAAA;QAC5B,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC;QACrD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;AAEvC,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;AACpD,YAAA,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAC5D,SAAA;KACF;IAEO,iBAAiB,CACvB,MAAuC,EACvC,WAA+C,EAAA;QAE/C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;AAE1C,QAAA,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE;YACpC,MAAM,qBAAqB,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;;AAGnE,YAAA,IAAI,qBAAqB,EAAE;gBACzB,QAAQ,CAAC,WAAW,CAAC,qBAAqB,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;AACpE,aAAA;AACF,SAAA;KACF;IAEO,mBAAmB,GAAA;;QAEzB,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,IAAI,CAAC,MAAM,GAAG;AACZ,gBAAA,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK;AACxB,gBAAA,MAAM,EAAE;AACN,oBAAA,YAAY,EAAE,IAAI,CAAC,+BAA+B,EAAE;AACpD,oBAAA,WAAW,EAAE,IAAI,CAAC,8BAA8B,EAAE;AACnD,iBAAA;aACF,CAAC;AACH,SAAA;QAED,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;IAEO,+BAA+B,GAAA;QACrC,IACE,IAAI,CAAC,UAAU,CAAC,OAAO,KAAK,mBAAmB,CAAC,EAAE;YAClD,IAAI,CAAC,UAAU,CAAC,OAAO,KAAK,mBAAmB,CAAC,EAAE,EAClD;YACA,OAAO;AACL,gBAAA,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;aAC9D,CAAC;AACH,SAAA;AAED,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;KACxC;IAEO,8BAA8B,GAAA;QACpC,IACE,EACE,IAAI,CAAC,UAAU,CAAC,OAAO,KAAK,mBAAmB,CAAC,EAAE;YAClD,IAAI,CAAC,UAAU,CAAC,OAAO,KAAK,mBAAmB,CAAC,EAAE,CACnD,EACD;YACA,MAAM,aAAa,GAAyC,EAAE,CAAC;YAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;AAEvC,YAAA,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;AAC5B,gBAAA,IAAI,MAAM,KAAK,IAAI,CAAC,YAAY,EAAE;AAChC,oBAAA,MAAM,YAAY,GAAuC;wBACvD,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;qBACnD,CAAC;AAEF,oBAAA,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AAClC,iBAAA;AACF,aAAA;AAED,YAAA,OAAO,aAAa,CAAC;AACtB,SAAA;AAED,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC;KACvC;AAEO,IAAA,YAAY,CAAC,EAAW,EAAA;AAC9B,QAAA,MAAM,OAAO,GAAQ,EAAE,CAAC,gBAAgB,CAAC,GAAG,GAAG,YAAY,GAAG,GAAG,CAAC,CAAC;QACnE,MAAM,WAAW,GAAuC,EAAE,CAAC;;AAG3D,QAAA,IAAI,OAAO,EAAE;AACX,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;AAC9C,gBAAA,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC1B,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;gBACjD,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;;AAGnC,gBAAA,IAAI,IAAI,EAAE;AACR,oBAAA,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACxB,iBAAA;AACF,aAAA;AACF,SAAA;AAED,QAAA,OAAO,WAAW,CAAC;KACpB;IAEO,gBAAgB,GAAA;;AAEtB,QAAA,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;AAC3B,YAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAChD,CAAC,IAAyB,KAAI;AAC5B,gBAAA,IAAI,CAAC,gBAAgB,CACnB,IAAI,KAAK,mBAAmB,CAAC,EAAE,IAAI,IAAI,KAAK,mBAAmB,CAAC,EAAE,CACnE,CAAC;AACJ,aAAC,CACF,CAAC;AACH,SAAA;KACF;IAEO,WAAW,GAAA;QACjB,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE;YAC1C,KAAK,EAAE,CAAC,EAAe,EAAE,SAAsB,EAAE,MAAmB,KAAI;gBACtE,MAAM,MAAM,GAAG,EAAE,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC;AACzD,gBAAA,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;aAChC;AACF,SAAA,CAAC,CAAC;AAEH,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,MAAK;AAClD,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;;AAG1C,YAAA,IAAI,MAAM,EAAE;gBACV,IAAI,IAAI,CAAC,WAAW,EAAE;AACpB,oBAAA,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;AAC5B,iBAAA;AAED,gBAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAChC,aAAA;AACH,SAAC,CAAC,CAAC;KACJ;AAEO,IAAA,WAAW,CAAC,MAAuC,EAAA;QACzD,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC;KACxD;AAEO,IAAA,QAAQ,CAAC,MAAc,EAAA;;QAE7B,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE;YACjD,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE;;gBAEnD,IAAI,MAAM,CAAC,KAAK,EAAE;AAChB,oBAAA,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE;AAC/B,wBAAA,IAAI,IAAI,CAAC,EAAE,KAAK,MAAM,EAAE;AACtB,4BAAA,OAAO,IAAI,CAAC;AACb,yBAAA;AACF,qBAAA;AACF,iBAAA;AACF,aAAA;AACF,SAAA;AAED,QAAA,OAAO,SAAS,CAAC;KAClB;AAEO,IAAA,cAAc,CAAC,MAAc,EAAA;;QAEnC,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE;AACjD,YAAA,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CACxC,CAAC,GAAG,KAAK,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,CACrE,CAAC;AACH,SAAA;;AAGD,QAAA,OAAO,SAAS,CAAC;KAClB;AAEO,IAAA,cAAc,CACpB,MAA8B,EAC9B,OAAmD,EACnD,YAA6C,EAAA;AAE7C,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;AACrB,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;AACvB,QAAA,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,sBAAsB,EAAE,CAAC;KAC/B;AAEO,IAAA,aAAa,CAAC,MAA8B,EAAA;AAClD,QAAA,IAAI,CAAC,eAAe;AACjB,aAAA,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE;AAC3B,YAAA,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;AAC1B,YAAA,SAAS,EAAE,IAAI;AACf,YAAA,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;SACzD,CAAC;aACD,SAAS;;AAER,QAAA,MAAO,GAAC,EACR,CAAC,GAAG,KAAI;AACN,YAAA,OAAO,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;AACxD,YAAA,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACpB,SAAC,CACF,CAAC;KACL;AAEO,IAAA,gBAAgB,CAAC,YAAsB,EAAA;;AAE7C,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,KAAI;YACjD,OAAO,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;AAC9C,SAAC,CAAC,CAAC;QAEH,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;;;AAIzD,QAAA,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;;AAEvB,YAAA,IAAI,WAAW,EAAE;AACf,gBAAA,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;oBACxB,IAAI,aAAa,GAAG,CAAC,CAAC;oBACtB,IAAI,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;oBAC3C,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,KAAI;AAClC,wBAAA,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,QAAQ,EAAE;4BAChC,aAAa,GAAG,KAAK,CAAC;AACtB,4BAAA,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;AAC9B,yBAAA;AACH,qBAAC,CAAC,CAAC;AACH,oBAAA,WAAW,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;wBACpC,EAAE,EAAE,IAAI,CAAC,EAAE;AACX,wBAAA,WAAW,EAAE,KAAK;AACnB,qBAAA,CAAC,CAAC;AACL,iBAAC,CAAC,CAAC;AACJ,aAAA;;AAGD,YAAA,IAAI,YAAY,EAAE;AAChB,gBAAA,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AACxB,oBAAA,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;AAC/D,iBAAC,CAAC,CAAC;AACJ,aAAA;AACF,SAAA;;AAGD,QAAA,IAAI,YAAY,EAAE;AAChB,YAAA,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,KAAK,EAAE;AACrC,gBAAA,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;AACtC,aAAA;AACF,SAAA;;AAGD,QAAA,IAAI,WAAW,EAAE;AACf,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBAClD,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE;AACvC,oBAAA,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;AACtC,iBAAA;AACF,aAAA;AACF,SAAA;KACF;;oHAtqBU,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;wHAAvB,uBAAuB,EAAA,CAAA,CAAA;2FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBADnC,UAAU;yKAgBF,oBAAoB,EAAA,CAAA;sBAD1B,MAAM;;;AC1BT;;AAEG;MAOU,gBAAgB,CAAA;AAwF3B,IAAA,WAAA,CACS,UAAsB,EACrB,cAAiC,EACrB,gBAA0C,EAAA;QAFvD,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;QACrB,IAAc,CAAA,cAAA,GAAd,cAAc,CAAmB;QACrB,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAA0B;AA1FhE;;;;AAIG;QAEI,IAAY,CAAA,YAAA,GAAG,IAAI,CAAC;AAE3B;;;;AAIG;QAEI,IAAQ,CAAA,QAAA,GAAG,IAAI,CAAC;AAQvB;;;AAGG;AAEI,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,YAAY,EAAE,CAAC;AAE1C;;;AAGG;AAEI,QAAA,IAAA,CAAA,iBAAiB,GAAG,IAAI,YAAY,EAAW,CAAC;AAEvD;;;AAGG;AAEI,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,YAAY,EAAE,CAAC;QA4B/B,IAAmB,CAAA,mBAAA,GAAG,KAAK,CAAC;AAc3B,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,OAAO,EAAQ,CAAC;QAEpC,IAAY,CAAA,YAAA,GAAG,KAAK,CAAC;AAO3B,QAAA,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC,gBAAgB,CAAC;QAE9C,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,IAAI,CAAC,eAAe,GAAG,CAAG,EAAA,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAA,kBAAA,CAAoB,CAAC;AAE1E;;;;AAIG;YACH,IAAI,CAAC,gBAAgB,CAAC,YAAY;AAC/B,iBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;iBACnC,SAAS,CAAC,MAAK;AACd,gBAAA,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;AACrC,aAAC,CAAC,CAAC;AACN,SAAA;KACF;AAjED,IAAA,IAAW,WAAW,GAAA;QACpB,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,MAAM,oBAAoB,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;AACzE,YAAA,IAAI,CAAC,YAAY,GAAG,oBAAoB,CAAC;AAC1C,SAAA;QAED,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;AAED;;;AAGG;IACH,IACW,WAAW,CAAC,KAAc,EAAA;QACnC,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACrD,SAAA;AAED,QAAA,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;AAE1B,QAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACpC;IA6CM,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;AAC1B,QAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;KAC/B;IAEM,qBAAqB,GAAA;AAC1B,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KACpC;IAEM,iBAAiB,GAAA;AACtB,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KAChC;AAED,IAAA,IAAW,WAAW,GAAA;AACpB,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC;KACrE;AAED,IAAA,IAAW,OAAO,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC;KAC7D;IAEM,UAAU,GAAA;AACf,QAAA,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC;KACtC;AAEM,IAAA,sBAAsB,CAAC,SAAiB,EAAA;AAC7C,QAAA,IAAI,CAAC,WAAW,GAAG,SAAS,KAAK,MAAM,CAAC;KACzC;AAEM,IAAA,QAAQ,CAAC,KAAoB,EAAA;;QAElC,IAAI,IAAI,CAAC,mBAAmB,EAAE;AAC5B,YAAA,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;;YAE/D,IACE,SAAS,KAAK,IAAI;AAClB,gBAAA,SAAS,KAAK,MAAM;AACpB,gBAAA,SAAS,KAAK,MAAM;gBACpB,SAAS,KAAK,OAAO,EACrB;gBACA,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CACrC,IAAI,EACJ,SAAS,EACT,IAAI,CAAC,KAAK;AACR,sBAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,SAAS;AACpC;AACE,wBAAA,SAAS,CACd,CAAC;gBACF,IAAI,CAAC,WAAW,EAAE,CAAC;AACpB,aAAA;AACF,SAAA;KACF;IAEO,WAAW,GAAA;AACjB,QAAA,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;KACvC;;6GAtKU,gBAAgB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,uBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;iGAAhB,gBAAgB,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,EAAA,YAAA,EAAA,cAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,UAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,OAAA,EAAA,EAAA,aAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,YAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,YAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAyEnB,UAAU,EAMV,EAAA,EAAA,YAAA,EAAA,OAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAAA,UAAU,6BC1GpB,w6HAuHA,EAAA,MAAA,EAAA,CAAA,81HAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,YAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,EAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,WAAA,EAAA,WAAA,EAAA,UAAA,CAAA,EAAA,OAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,QAAA,EAAA,CAAA,OAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAAC,IAAA,CAAA,mBAAA,EAAA,EAAA,UAAA,ED9Fc,CAAC,iBAAiB,CAAC,EAAA,CAAA,CAAA;2FAEpB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAN5B,SAAS;+BACE,UAAU,EAAA,UAAA,EAGR,CAAC,iBAAiB,CAAC,EAAA,QAAA,EAAA,w6HAAA,EAAA,MAAA,EAAA,CAAA,81HAAA,CAAA,EAAA,CAAA;;0BA6F5B,QAAQ;4CApFJ,YAAY,EAAA,CAAA;sBADlB,KAAK;gBASC,QAAQ,EAAA,CAAA;sBADd,KAAK;gBAOC,QAAQ,EAAA,CAAA;sBADd,KAAK;gBAQC,aAAa,EAAA,CAAA;sBADnB,MAAM;gBAQA,iBAAiB,EAAA,CAAA;sBADvB,MAAM;gBAQA,SAAS,EAAA,CAAA;sBADf,MAAM;gBAiBI,WAAW,EAAA,CAAA;sBADrB,KAAK;gBAmBE,UAAU,EAAA,CAAA;sBAJjB,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,YAAY,EAAE;AACvB,wBAAA,IAAI,EAAE,UAAU;AAChB,wBAAA,MAAM,EAAE,KAAK;AACd,qBAAA,CAAA;gBAOO,KAAK,EAAA,CAAA;sBAJZ,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,gBAAgB,EAAE;AAC3B,wBAAA,IAAI,EAAE,UAAU;AAChB,wBAAA,MAAM,EAAE,KAAK;AACd,qBAAA,CAAA;;;ME9EU,aAAa,CAAA;;0GAAb,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAb,aAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,iBAftB,gBAAgB;QAChB,uBAAuB;AACvB,QAAA,qBAAqB,aAGrB,YAAY;QACZ,gBAAgB;QAChB,WAAW;QACX,aAAa;QACb,aAAa;QACb,cAAc;AACd,QAAA,uBAAuB,CAEf,EAAA,OAAA,EAAA,CAAA,gBAAgB,EAAE,uBAAuB,EAAE,qBAAqB,CAAA,EAAA,CAAA,CAAA;AAE/D,aAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,EAXf,OAAA,EAAA,CAAA;YACP,YAAY;YACZ,gBAAgB;YAChB,WAAW;YACX,aAAa;YACb,aAAa;YACb,cAAc;YACd,uBAAuB;AACxB,SAAA,CAAA,EAAA,CAAA,CAAA;2FAGU,aAAa,EAAA,UAAA,EAAA,CAAA;kBAjBzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,gBAAgB;wBAChB,uBAAuB;wBACvB,qBAAqB;AACtB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,gBAAgB;wBAChB,WAAW;wBACX,aAAa;wBACb,aAAa;wBACb,cAAc;wBACd,uBAAuB;AACxB,qBAAA;AACD,oBAAA,OAAO,EAAE,CAAC,gBAAgB,EAAE,uBAAuB,EAAE,qBAAqB,CAAC;AAC5E,iBAAA,CAAA;;;AC3BD;;AAEG;MAMU,8BAA8B,CAAA;;2HAA9B,8BAA8B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA9B,8BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,8BAA8B,gECV3C,6JAQA,EAAA,MAAA,EAAA,CAAA,yIAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAJ,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,eAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDEa,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAL1C,SAAS;+BACE,0BAA0B,EAAA,QAAA,EAAA,6JAAA,EAAA,MAAA,EAAA,CAAA,yIAAA,CAAA,EAAA,CAAA;;;AEJtC;;AAEG;MAMU,uBAAuB,CAAA;;oHAAvB,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,wDCVpC,6BACA,EAAA,MAAA,EAAA,CAAA,wHAAA,CAAA,EAAA,CAAA,CAAA;2FDSa,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBALnC,SAAS;+BACE,kBAAkB,EAAA,QAAA,EAAA,6BAAA,EAAA,MAAA,EAAA,CAAA,wHAAA,CAAA,EAAA,CAAA;;;MEMjB,oBAAoB,CAAA;;iHAApB,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;kHAApB,oBAAoB,EAAA,YAAA,EAAA,CAJhB,uBAAuB,EAAE,8BAA8B,CAAA,EAAA,OAAA,EAAA,CAC5D,YAAY,EAAE,cAAc,CAAA,EAAA,OAAA,EAAA,CAC5B,uBAAuB,EAAE,8BAA8B,CAAA,EAAA,CAAA,CAAA;AAEtD,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,EAHtB,OAAA,EAAA,CAAA,CAAC,YAAY,EAAE,cAAc,CAAC,CAAA,EAAA,CAAA,CAAA;2FAG5B,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBALhC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,CAAC,uBAAuB,EAAE,8BAA8B,CAAC;AACvE,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,cAAc,CAAC;AACvC,oBAAA,OAAO,EAAE,CAAC,uBAAuB,EAAE,8BAA8B,CAAC;AACnE,iBAAA,CAAA;;;ACXD;;AAEG;IACS,4BAUX;AAVD,CAAA,UAAY,2BAA2B,EAAA;AACrC;;AAEG;AACH,IAAA,2BAAA,CAAA,2BAAA,CAAA,WAAA,CAAA,GAAA,CAAA,CAAA,GAAA,WAAa,CAAA;AAEb;;AAEG;AACH,IAAA,2BAAA,CAAA,2BAAA,CAAA,aAAA,CAAA,GAAA,CAAA,CAAA,GAAA,aAAe,CAAA;AACjB,CAAC,EAVW,2BAA2B,KAA3B,2BAA2B,GAUtC,EAAA,CAAA,CAAA;;ACHD,IAAI,aAAa,GAAG,CAAC,CAAC;AAEtB;;AAEG;MAMU,+BAA+B,CAAA;AAW1C,IAAA,WAAA,CACS,QAAkC,EAClC,QAAkB,EACjB,gBAAyC,EAAA;QAF1C,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAA0B;QAClC,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAU;QACjB,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAyB;AAEjD,QAAA,aAAa,EAAE,CAAC;AAEhB,QAAA,IAAI,CAAC,QAAQ,GAAG,wBAAwB,GAAG,aAAa,CAAC;QAEzD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;KAC1C;;4HArBU,+BAA+B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,QAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,uBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;gHAA/B,+BAA+B,EAAA,QAAA,EAAA,2BAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,SAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,SAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAMlC,gBAAgB,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC1B1B,iGAGA,EAAA,MAAA,EAAA,CAAA,ykCAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,CAAA,EAAA,OAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDiBa,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAL3C,SAAS;+BACE,2BAA2B,EAAA,QAAA,EAAA,iGAAA,EAAA,MAAA,EAAA,CAAA,ykCAAA,CAAA,EAAA,CAAA;yKAa9B,OAAO,EAAA,CAAA;sBAJb,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,SAAS,EAAE;AACpB,wBAAA,IAAI,EAAE,gBAAgB;AACtB,wBAAA,MAAM,EAAE,KAAK;AACd,qBAAA,CAAA;;;MEhBU,4BAA4B,CAAA;;yHAA5B,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAA5B,4BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,4BAA4B,iBAJxB,+BAA+B,CAAA,EAAA,OAAA,EAAA,CACpC,YAAY,EAAE,aAAa,aAC3B,+BAA+B,CAAA,EAAA,CAAA,CAAA;AAE9B,4BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,4BAA4B,EAH9B,OAAA,EAAA,CAAA,CAAC,YAAY,EAAE,aAAa,CAAC,CAAA,EAAA,CAAA,CAAA;2FAG3B,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBALxC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,+BAA+B,CAAC;AAC/C,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,aAAa,CAAC;oBACtC,OAAO,EAAE,CAAC,+BAA+B,CAAC;AAC3C,iBAAA,CAAA;;;ACcD;;AAEG;MAOU,yBAAyB,CAAA;AAiEpC,IAAA,WAAA,CACU,gBAAyC,EACzC,UAAgC,EACpB,gBAAyC,EAAA;QAFrD,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAyB;QACzC,IAAU,CAAA,UAAA,GAAV,UAAU,CAAsB;QACpB,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAyB;AAlD/D;;;AAGG;AAEI,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,OAAO,EAA2B,CAAC;AAY9D;;;;AAIG;AAEI,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,YAAY,EAA0B,CAAC;QAa1D,IAAkB,CAAA,kBAAA,GACvB,IAAI,CAAC,gBAAgB,CAAC,KAAK,GAAG,oBAAoB,CAAC;QAI7C,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;AAElB,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,OAAO,EAAQ,CAAC;QAEpC,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;QAOxB,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,SAAS,CAC1C,CAAC,MAA8B,KAAI;AACjC,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;;AAG/B,YAAA,IAAI,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,gBAAgB,EAAE;AAC7C,gBAAA,IAAI,iBAAqC,CAAC;gBAC1C,IACE,IAAI,CAAC,UAAU,CAAC,OAAO,KAAK,mBAAmB,CAAC,EAAE;oBAClD,IAAI,CAAC,UAAU,CAAC,OAAO,KAAK,mBAAmB,CAAC,EAAE,EAClD;AACA,oBAAA,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CACjD,iCAAiC,EACjC,MAAM,CAAC,SAAS,CAAC,eAAe,EAChC,GAAG,EACH,GAAG,EACH,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,EACpC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CACnD,CAAC;AACH,iBAAA;AAAM,qBAAA;AACL,oBAAA,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CACjD,iCAAiC,EACjC,MAAM,CAAC,SAAS,CAAC,eAAe,EAChC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,EAClC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,EAC3C,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,EACpC,MAAM,CAAC,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAC5B,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CAC1B,CAAC;AACH,iBAAA;AACD,gBAAA,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAe,KAAI;AAC5D,oBAAA,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC;AACjC,iBAAC,CAAC,CAAC;AACJ,aAAA;AACH,SAAC,CACF,CAAC;KACH;AA1GD;;;AAGG;IACH,IACW,MAAM,CAAC,KAA6B,EAAA;AAC7C,QAAA,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;AAC5B,YAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;AACrB,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,IAAI,CAAC,UAAU,EAAE,CAAC;AACnB,SAAA;KACF;AAED,IAAA,IAAW,MAAM,GAAA;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;IA6FM,eAAe,GAAA;AACpB,QAAA,IAAI,CAAC,aAAa;AACf,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AACnC,aAAA,SAAS,CAAC,CAAC,OAAgC,KAAI;AAC9C,YAAA,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;AACvC,SAAC,CAAC,CAAC;AAEL,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,UAAU,EAAE,CAAC;KACnB;IAEM,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;AAC1B,QAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;AAC9B,QAAA,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;KACjC;IAEO,UAAU,GAAA;AAChB,QAAA,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,EAAE;YACjC,UAAU,CAAC,MAAK;gBACd,IAAI,CAAC,gBAAgB,CAAC,IAAI,CACxB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,WAAW,CACjB,CAAC;aACH,EAAE,CAAC,CAAC,CAAC;AACP,SAAA;KACF;AAEO,IAAA,sBAAsB,CAAC,OAAgC,EAAA;QAC7D,QAAQ,OAAO,CAAC,IAAI;YAClB,KAAK,2BAA2B,CAAC,SAAS;AACxC,gBAAA,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;gBAClD,MAAM;YAER,KAAK,2BAA2B,CAAC,WAAW;AAC1C,gBAAA,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;gBACjD,MAAM;AACT,SAAA;KACF;;sHArJU,yBAAyB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAD,uBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,EAAA,EAAA,KAAA,EAAAI,IAAA,CAAA,sBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;0GAAzB,yBAAyB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,aAAA,EAAA,eAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,OAAA,EAAA,EAAA,YAAA,EAAA,cAAA,EAAA,EAAA,SAAA,EAFzB,CAAC,uBAAuB,CAAC,mHAiD5B,+BAA+B,EAAA,EAAA,EAAA,YAAA,EAAA,SAAA,EAAA,SAAA,EAJzB,+BAA+B,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC7E/C,0nBAoBA,EAAA,MAAA,EAAA,CAAA,sqLAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,+BAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAH,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAAE,IAAA,CAAA,mBAAA,EAAA,EAAA,CAAA,CAAA;2FDca,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBANrC,SAAS;+BACE,oBAAoB,EAAA,SAAA,EAGnB,CAAC,uBAAuB,CAAC,EAAA,QAAA,EAAA,0nBAAA,EAAA,MAAA,EAAA,CAAA,sqLAAA,CAAA,EAAA,CAAA;;0BAsEjC,QAAQ;4CA9DA,MAAM,EAAA,CAAA;sBADhB,KAAK;gBAkBC,aAAa,EAAA,CAAA;sBADnB,KAAK;gBAWC,WAAW,EAAA,CAAA;sBADjB,KAAK;gBASC,YAAY,EAAA,CAAA;sBADlB,MAAM;gBAIC,OAAO,EAAA,CAAA;sBADd,YAAY;uBAAC,+BAA+B,CAAA;gBAOtC,YAAY,EAAA,CAAA;sBAJlB,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,cAAc,EAAE;AACzB,wBAAA,IAAI,EAAE,+BAA+B;AACrC,wBAAA,MAAM,EAAE,KAAK;AACd,qBAAA,CAAA;;;ME/DU,sBAAsB,CAAA;;mHAAtB,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;oHAAtB,sBAAsB,EAAA,YAAA,EAAA,CATlB,yBAAyB,CAAA,EAAA,OAAA,EAAA,CAGtC,YAAY;QACZ,4BAA4B;AAC5B,QAAA,uBAAuB,aAEf,yBAAyB,CAAA,EAAA,CAAA,CAAA;AAExB,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,EARtB,SAAA,EAAA,CAAC,cAAc,CAAC,EAClB,OAAA,EAAA,CAAA;YACP,YAAY;YACZ,4BAA4B;YAC5B,uBAAuB;AACxB,SAAA,CAAA,EAAA,CAAA,CAAA;2FAGU,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAVlC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,yBAAyB,CAAC;oBACzC,SAAS,EAAE,CAAC,cAAc,CAAC;AAC3B,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,4BAA4B;wBAC5B,uBAAuB;AACxB,qBAAA;oBACD,OAAO,EAAE,CAAC,yBAAyB,CAAC;AACrC,iBAAA,CAAA;;;MCCY,cAAc,CAAA;;2GAAd,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;4GAAd,cAAc,EAAA,OAAA,EAAA,CATf,YAAY,CAAA,EAAA,OAAA,EAAA,CAEpB,oBAAoB;QACpB,aAAa;QACb,4BAA4B;QAC5B,sBAAsB,CAAA,EAAA,CAAA,CAAA;4GAIb,cAAc,EAAA,SAAA,EAFd,CAAC,cAAc,CAAC,YAPlB,CAAC,YAAY,CAAC,EAErB,oBAAoB;QACpB,aAAa;QACb,4BAA4B;QAC5B,sBAAsB,CAAA,EAAA,CAAA,CAAA;2FAIb,cAAc,EAAA,UAAA,EAAA,CAAA;kBAV1B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,YAAY,CAAC;AACvB,oBAAA,OAAO,EAAE;wBACP,oBAAoB;wBACpB,aAAa;wBACb,4BAA4B;wBAC5B,sBAAsB;AACvB,qBAAA;oBACD,SAAS,EAAE,CAAC,cAAc,CAAC;AAC5B,iBAAA,CAAA;;;ACnBD;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"skyux-tiles.mjs","sources":["../../../../../libs/components/tiles/src/lib/modules/shared/sky-tiles-resources.module.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile-summary.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile-summary.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile-title.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile-title.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard/tile-dashboard.service.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile/tile.module.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-content/tile-content-section.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-content/tile-content-section.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-content/tile-content.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-content/tile-content.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-content/tile-content.module.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard/tile-dashboard-message-type.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard-column/tile-dashboard-column.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard-column/tile-dashboard-column.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard-column/tile-dashboard-column.module.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard/tile-dashboard.component.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard/tile-dashboard.component.html","../../../../../libs/components/tiles/src/lib/modules/tiles/tile-dashboard/tile-dashboard.module.ts","../../../../../libs/components/tiles/src/lib/modules/tiles/tiles.module.ts","../../../../../libs/components/tiles/src/skyux-tiles.ts"],"sourcesContent":["/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module lib/modules/shared/sky-tiles' schematic.\n * To update this file, simply rerun the command.\n */\nimport { NgModule } from '@angular/core';\nimport {\n SKY_LIB_RESOURCES_PROVIDERS,\n SkyAppLocaleInfo,\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesProvider,\n getLibStringForLocale,\n} from '@skyux/i18n';\n\nconst RESOURCES: { [locale: string]: SkyLibResources } = {\n 'EN-US': {\n skyux_tile_expand: { message: 'Expand or collapse {0}' },\n skyux_tile_expand_default: { message: 'Expand or collapse' },\n skyux_tile_help: { message: '{0} help' },\n skyux_tile_help_default: { message: 'Help' },\n skyux_tile_settings: { message: '{0} settings' },\n skyux_tile_settings_default: { message: 'Settings' },\n skyux_tile_move: { message: 'Move {0}' },\n skyux_tile_move_default: { message: 'Move' },\n skyux_tile_move_instructions: {\n message:\n \"When focus is placed on a tile's move button, use the arrow keys to move it. The up and down keys change its position within a column. The left and right keys move it between columns.\",\n },\n skyux_tile_moved_assistive_text: {\n message:\n '{0} moved. Current column: {1} of {2}. Current position in column: {3} of {4}',\n },\n },\n};\n\nexport class SkyTilesResourcesProvider implements SkyLibResourcesProvider {\n public getString(\n localeInfo: SkyAppLocaleInfo,\n name: string\n ): string | undefined {\n return getLibStringForLocale(RESOURCES, localeInfo.locale, name);\n }\n}\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n providers: [\n {\n provide: SKY_LIB_RESOURCES_PROVIDERS,\n useClass: SkyTilesResourcesProvider,\n multi: true,\n },\n ],\n})\nexport class SkyTilesResourcesModule {}\n","import { Component } from '@angular/core';\n\n/**\n * Specifies content to display in the tile's summary.\n */\n@Component({\n selector: 'sky-tile-summary',\n templateUrl: 'tile-summary.component.html',\n})\n/* istanbul ignore next */\n/* Code coverage having problems with no statements in classes */\nexport class SkyTileSummaryComponent {}\n","<ng-content></ng-content>\n","import { Component } from '@angular/core';\n\n/**\n * Specifies content to display in the tile's title.\n */\n@Component({\n selector: 'sky-tile-title',\n templateUrl: './tile-title.component.html',\n styleUrls: ['./tile-title.component.scss'],\n})\nexport class SkyTileTitleComponent {}\n","<h2\n class=\"sky-tile-title\"\n [skyThemeClass]=\"{\n 'sky-font-heading-2': 'modern',\n 'sky-section-heading': 'default'\n }\"\n>\n <span skyTrim><ng-content></ng-content></span\n ><span class=\"sky-control-help-container\"\n ><ng-content select=\".sky-control-help\"></ng-content\n ></span>\n</h2>\n","import {\n ComponentRef,\n EventEmitter,\n Injectable,\n Injector,\n Output,\n QueryList,\n} from '@angular/core';\nimport {\n SkyMediaBreakpoints,\n SkyMediaQueryService,\n SkyUIConfigService,\n} from '@skyux/core';\n\nimport { DragulaService } from 'ng2-dragula';\nimport { Subscription } from 'rxjs';\nimport { take } from 'rxjs/operators';\n\nimport { SkyTileDashboardColumnComponent } from '../tile-dashboard-column/tile-dashboard-column.component';\nimport { SkyTileDashboardConfig } from '../tile-dashboard-config/tile-dashboard-config';\nimport { SkyTileDashboardConfigLayoutColumn } from '../tile-dashboard-config/tile-dashboard-config-layout-column';\nimport { SkyTileDashboardConfigLayoutTile } from '../tile-dashboard-config/tile-dashboard-config-layout-tile';\nimport { SkyTileDashboardConfigTile } from '../tile-dashboard-config/tile-dashboard-config-tile';\nimport { SkyTileComponent } from '../tile/tile.component';\n\nconst ATTR_TILE_ID = '_sky-tile-dashboard-tile-id';\n\nlet bagIdIndex = 0;\n\n@Injectable()\nexport class SkyTileDashboardService {\n /**\n * @internal\n */\n public bagId: string;\n\n /**\n * @internal\n */\n public configChange = new EventEmitter<SkyTileDashboardConfig>();\n\n /**\n * Fires when the tile dashboard's initialization is complete.\n */\n @Output()\n public dashboardInitialized = new EventEmitter<void>();\n\n private tileComponents: ComponentRef<any>[];\n\n private config: SkyTileDashboardConfig;\n\n private defaultConfig: SkyTileDashboardConfig;\n\n private columns: QueryList<SkyTileDashboardColumnComponent>;\n\n private singleColumn: SkyTileDashboardColumnComponent;\n\n private mediaSubscription: Subscription;\n\n private settingsKey: string;\n\n constructor(\n private dragulaService: DragulaService,\n private mediaQuery: SkyMediaQueryService,\n private uiConfigService: SkyUIConfigService\n ) {\n this.bagId = 'sky-tile-dashboard-bag-' + ++bagIdIndex;\n\n this.initDragula();\n }\n\n /**\n * @internal\n */\n public init(\n config: SkyTileDashboardConfig,\n columns?: QueryList<SkyTileDashboardColumnComponent>,\n singleColumn?: SkyTileDashboardColumnComponent,\n settingsKey?: string\n ) {\n if (settingsKey) {\n // Clone this so changes to the config object outside of this class don't modify\n // the config used inside and vice versa.\n this.defaultConfig = this.config = Object.assign({}, config);\n\n this.settingsKey = settingsKey;\n\n this.uiConfigService\n .getConfig(settingsKey, config)\n .pipe(take(1))\n .subscribe(\n (value: any) => {\n if (value.persisted) {\n this.config.layout = value.layout;\n this.checkForNewTiles(value.tileIds);\n this.configChange.emit(this.config);\n\n this.columns = columns;\n this.singleColumn = singleColumn;\n this.checkReadyAndLoadTiles();\n } else {\n // Bad data, or config is the default config.\n this.initToDefaults(config, columns, singleColumn);\n }\n },\n (error: any) => {\n // Config setting key doesn't exist or other config service error\n this.initToDefaults(config, columns, singleColumn);\n }\n );\n } else {\n this.initToDefaults(config, columns, singleColumn);\n }\n }\n\n /**\n * Adds a new tile to the tile dashboard.\n * @param tile Specifies the tile configuration.\n * @param component Specifies the tile component to add.\n */\n public addTileComponent(\n tile: SkyTileDashboardConfigLayoutTile,\n component: ComponentRef<any>\n ) {\n this.tileComponents = this.tileComponents || [];\n\n this.tileComponents.push(component);\n\n component.location.nativeElement.setAttribute(ATTR_TILE_ID, tile.id);\n }\n\n /**\n * Checks whether a specified tile is collapsed.\n * @param tile Specifies the tile component to check.\n */\n public tileIsCollapsed(tile: SkyTileComponent): boolean {\n const tileConfig = this.findTile(this.getTileId(tile));\n\n if (tileConfig) {\n return tileConfig.isCollapsed;\n }\n\n return undefined;\n }\n\n /**\n * Sets the collapsed state of all tiles.\n * @param isCollapsed Indicates whether tiles are collapsed.\n */\n public setAllTilesCollapsed(isCollapsed: boolean): void {\n /*istanbul ignore else */\n if (this.config && this.config.layout.multiColumn) {\n for (const column of this.config.layout.multiColumn) {\n for (const tile of column.tiles) {\n tile.isCollapsed = isCollapsed;\n }\n }\n for (const tile of this.config.layout.singleColumn.tiles) {\n tile.isCollapsed = isCollapsed;\n }\n }\n\n if (this.settingsKey) {\n this.setUserConfig(this.config);\n }\n\n this.configChange.emit(this.config);\n }\n\n /**\n * Sets the collapsed state of a specified tile.\n * @param tile Specifies the tile component.\n * @param isCollapsed Indicates whether the tile is collapsed.\n */\n public setTileCollapsed(tile: SkyTileComponent, isCollapsed: boolean) {\n const tileConfig = this.findTile(this.getTileId(tile));\n\n if (tileConfig) {\n tileConfig.isCollapsed = isCollapsed;\n\n if (this.settingsKey) {\n this.setUserConfig(this.config);\n }\n\n this.configChange.emit(this.config);\n }\n }\n\n /**\n * @internal\n */\n public getTileComponentType(\n layoutTile: SkyTileDashboardConfigLayoutTile\n ): any {\n if (layoutTile) {\n for (const tile of this.config.tiles) {\n if (tile.id === layoutTile.id) {\n return tile.componentType;\n }\n }\n }\n\n return undefined;\n }\n\n /**\n * @internal\n */\n public changeColumnMode(isSingleColumn: boolean) {\n /*istanbul ignore else */\n if (this.config) {\n if (isSingleColumn) {\n this.moveTilesToSingleColumn();\n } else {\n this.moveTilesToMultiColumn();\n }\n }\n }\n\n /**\n * @internal\n */\n public getTileComponent(tileId: string): ComponentRef<any> {\n for (const tileComponent of this.tileComponents) {\n if (\n tileComponent.location.nativeElement.getAttribute(ATTR_TILE_ID) ===\n tileId\n ) {\n return tileComponent;\n }\n }\n\n /*istanbul ignore next */\n return undefined;\n }\n\n /**\n * @internal\n */\n public destroy() {\n /*istanbul ignore else */\n if (this.mediaSubscription) {\n this.mediaSubscription.unsubscribe();\n }\n }\n\n /**\n * @internal\n */\n public moveTileOnKeyDown(\n tileCmp: SkyTileComponent,\n direction: string,\n tileDescription: string\n ) {\n const isSingleColumnMode =\n this.mediaQuery.current === SkyMediaBreakpoints.xs ||\n this.mediaQuery.current === SkyMediaBreakpoints.sm;\n\n const tileId = this.getTileId(tileCmp);\n const tile = this.findTile(tileId);\n\n let column: SkyTileDashboardConfigLayoutColumn;\n let colIndex: number;\n if (isSingleColumnMode) {\n column = this.config.layout.singleColumn;\n } else {\n column = this.findTileColumn(tileId);\n colIndex = this.config.layout.multiColumn.findIndex(\n (value) => value === column\n );\n }\n\n if (\n (direction === 'left' || direction === 'right') &&\n !isSingleColumnMode\n ) {\n const operator = direction === 'left' ? -1 : 1;\n const newColumn = this.config.layout.multiColumn[colIndex + operator];\n\n if (newColumn) {\n // Move the tile to the end of the new column\n newColumn.tiles.push(tile);\n column.tiles = column.tiles.filter((item) => item !== tile);\n this.moveTilesToColumn(this.columns.toArray()[colIndex + operator], [\n tile,\n ]);\n\n // Report the change in configuration\n const reportConfig = this.config;\n reportConfig.movedTile = {\n tileDescription:\n tileDescription || /* istanbul ignore next */ tile.id,\n column: colIndex + operator + 1,\n position: newColumn.tiles.length,\n };\n this.configChange.emit(reportConfig);\n }\n } else {\n const operator = direction === 'up' ? -1 : 1;\n const curIndex = column.tiles.findIndex((value) => value.id === tile.id);\n const tileComponentInstance = this.getTileComponent(tileId);\n\n if (tileComponentInstance && column.tiles[curIndex + operator]) {\n const temp = column.tiles[curIndex + operator];\n column.tiles[curIndex + operator] = tile;\n column.tiles[curIndex] = temp;\n\n // Get the column element\n let columnEl: Element;\n if (isSingleColumnMode) {\n columnEl = this.getColumnEl(this.singleColumn);\n } else {\n columnEl = this.getColumnEl(this.columns.toArray()[colIndex]);\n }\n\n // Move the tile element in the document\n if (curIndex + operator === column.tiles.length - 1) {\n columnEl.appendChild(tileComponentInstance.location.nativeElement);\n } else {\n columnEl.insertBefore(\n tileComponentInstance.location.nativeElement,\n this.getTileComponent(column.tiles[curIndex + operator + 1].id)\n .location.nativeElement\n );\n }\n\n // Report the change in configuration\n const reportConfig = this.config;\n reportConfig.movedTile = {\n tileDescription:\n tileDescription || /* istanbul ignore next */ tile.id,\n column: isSingleColumnMode ? undefined : colIndex + 1,\n position: curIndex + operator + 1,\n };\n this.configChange.emit(reportConfig);\n }\n }\n }\n\n private getTileId(tile: SkyTileComponent): string {\n if (tile) {\n let el = tile.elementRef.nativeElement;\n let tileId: string;\n\n while (el) {\n tileId = el.getAttribute(ATTR_TILE_ID);\n\n if (tileId) {\n return tileId;\n }\n\n el = el.parentElement;\n }\n }\n\n return undefined;\n }\n\n private getTileOrRemoveFromLayout(\n layoutTile: SkyTileDashboardConfigLayoutTile\n ): SkyTileDashboardConfigTile {\n /*istanbul ignore else */\n if (layoutTile) {\n for (const tile of this.config.tiles) {\n if (tile.id === layoutTile.id) {\n return tile;\n }\n }\n\n // If the layout tile was not found in the list of tiles, it was removed since last the user updated settings\n /*istanbul ignore else */\n if (this.config.layout.singleColumn) {\n this.config.layout.singleColumn.tiles =\n this.config.layout.singleColumn.tiles.filter(\n (elem) => elem.id !== layoutTile.id\n );\n }\n\n /*istanbul ignore else */\n if (this.config.layout.multiColumn) {\n this.config.layout.multiColumn.forEach((elem) => {\n elem.tiles = elem.tiles.filter((res) => res.id !== layoutTile.id);\n });\n }\n }\n\n /*istanbul ignore next */\n return undefined;\n }\n\n private checkReadyAndLoadTiles() {\n if (this.config && this.columns) {\n this.loadTiles();\n this.initMediaQueries();\n this.dashboardInitialized.emit();\n }\n }\n\n private loadTiles() {\n const layout = this.config.layout;\n\n if (\n this.mediaQuery.current === SkyMediaBreakpoints.xs ||\n this.mediaQuery.current === SkyMediaBreakpoints.sm\n ) {\n for (const tile of layout.singleColumn.tiles) {\n this.loadTileIntoColumn(this.singleColumn, tile);\n }\n } else {\n const columns = this.columns.toArray();\n\n for (let i = 0, n = layout.multiColumn.length; i < n; i++) {\n const column = columns[i];\n\n for (const tile of layout.multiColumn[i].tiles) {\n this.loadTileIntoColumn(column, tile);\n }\n }\n }\n }\n\n private loadTileIntoColumn(\n column: SkyTileDashboardColumnComponent,\n layoutTile: SkyTileDashboardConfigLayoutTile\n ) {\n const tile = this.getTileOrRemoveFromLayout(layoutTile);\n\n /*istanbul ignore else */\n if (tile) {\n const componentType = tile.componentType;\n const providers = tile.providers /* istanbul ignore next */ || [];\n\n const injector = Injector.create({\n providers,\n parent: column.injector,\n });\n\n const factory = column.resolver.resolveComponentFactory(componentType);\n const componentRef = column.content.createComponent(\n factory,\n undefined,\n injector\n );\n\n this.addTileComponent(layoutTile, componentRef);\n\n // Make sure the component is marked for changes in case the parent component uses\n // the OnPush change detection strategy.\n componentRef.changeDetectorRef.markForCheck();\n }\n }\n\n private moveTilesToSingleColumn() {\n this.moveTilesToColumn(\n this.singleColumn,\n this.config.layout.singleColumn.tiles\n );\n }\n\n private moveTilesToMultiColumn() {\n const layoutColumns = this.config.layout.multiColumn;\n const columns = this.columns.toArray();\n\n for (let i = 0, n = layoutColumns.length; i < n; i++) {\n this.moveTilesToColumn(columns[i], layoutColumns[i].tiles);\n }\n }\n\n private moveTilesToColumn(\n column: SkyTileDashboardColumnComponent,\n layoutTiles: SkyTileDashboardConfigLayoutTile[]\n ) {\n const columnEl = this.getColumnEl(column);\n\n for (const layoutTile of layoutTiles) {\n const tileComponentInstance = this.getTileComponent(layoutTile.id);\n\n /*istanbul ignore else */\n if (tileComponentInstance) {\n columnEl.appendChild(tileComponentInstance.location.nativeElement);\n }\n }\n }\n\n private getConfigForUIState(): SkyTileDashboardConfig {\n /*istanbul ignore else */\n if (this.config) {\n this.config = {\n tiles: this.config.tiles,\n layout: {\n singleColumn: this.getSingleColumnLayoutForUIState(),\n multiColumn: this.getMultiColumnLayoutForUIState(),\n },\n };\n }\n\n return this.config;\n }\n\n private getSingleColumnLayoutForUIState(): SkyTileDashboardConfigLayoutColumn {\n if (\n this.mediaQuery.current === SkyMediaBreakpoints.xs ||\n this.mediaQuery.current === SkyMediaBreakpoints.sm\n ) {\n return {\n tiles: this.getTilesInEl(this.getColumnEl(this.singleColumn)),\n };\n }\n\n return this.config.layout.singleColumn;\n }\n\n private getMultiColumnLayoutForUIState(): SkyTileDashboardConfigLayoutColumn[] {\n if (\n !(\n this.mediaQuery.current === SkyMediaBreakpoints.xs ||\n this.mediaQuery.current === SkyMediaBreakpoints.sm\n )\n ) {\n const layoutColumns: SkyTileDashboardConfigLayoutColumn[] = [];\n const columns = this.columns.toArray();\n\n for (const column of columns) {\n if (column !== this.singleColumn) {\n const layoutColumn: SkyTileDashboardConfigLayoutColumn = {\n tiles: this.getTilesInEl(this.getColumnEl(column)),\n };\n\n layoutColumns.push(layoutColumn);\n }\n }\n\n return layoutColumns;\n }\n\n return this.config.layout.multiColumn;\n }\n\n private getTilesInEl(el: Element): SkyTileDashboardConfigLayoutTile[] {\n const tileEls: any = el.querySelectorAll('[' + ATTR_TILE_ID + ']');\n const layoutTiles: SkyTileDashboardConfigLayoutTile[] = [];\n\n /*istanbul ignore else */\n if (tileEls) {\n for (let i = 0, n = tileEls.length; i < n; i++) {\n const tileEl = tileEls[i];\n const tileId = tileEl.getAttribute(ATTR_TILE_ID);\n const tile = this.findTile(tileId);\n\n /*istanbul ignore else */\n if (tile) {\n layoutTiles.push(tile);\n }\n }\n }\n\n return layoutTiles;\n }\n\n private initMediaQueries() {\n /*istanbul ignore else */\n if (!this.mediaSubscription) {\n this.mediaSubscription = this.mediaQuery.subscribe(\n (args: SkyMediaBreakpoints) => {\n this.changeColumnMode(\n args === SkyMediaBreakpoints.xs || args === SkyMediaBreakpoints.sm\n );\n }\n );\n }\n }\n\n private initDragula() {\n this.dragulaService.createGroup(this.bagId, {\n moves: (el: HTMLElement, container: HTMLElement, handle: HTMLElement) => {\n const target = el.querySelector('.sky-tile-grab-handle');\n return target.contains(handle);\n },\n });\n\n this.dragulaService.drop(this.bagId).subscribe(() => {\n const config = this.getConfigForUIState();\n\n /*istanbul ignore else */\n if (config) {\n if (this.settingsKey) {\n this.setUserConfig(config);\n }\n\n this.configChange.emit(config);\n }\n });\n }\n\n private getColumnEl(column: SkyTileDashboardColumnComponent): Element {\n return column.content.element.nativeElement.parentNode;\n }\n\n private findTile(tileId: string): SkyTileDashboardConfigLayoutTile {\n /*istanbul ignore else */\n if (this.config && this.config.layout.multiColumn) {\n for (const column of this.config.layout.multiColumn) {\n /*istanbul ignore else */\n if (column.tiles) {\n for (const tile of column.tiles) {\n if (tile.id === tileId) {\n return tile;\n }\n }\n }\n }\n }\n\n return undefined;\n }\n\n private findTileColumn(tileId: string): SkyTileDashboardConfigLayoutColumn {\n /*istanbul ignore else */\n if (this.config && this.config.layout.multiColumn) {\n return this.config.layout.multiColumn.find(\n (col) => col.tiles && !!col.tiles.find((tile) => tile.id === tileId)\n );\n }\n\n /*istanbul ignore next */\n return undefined;\n }\n\n private initToDefaults(\n config: SkyTileDashboardConfig,\n columns: QueryList<SkyTileDashboardColumnComponent>,\n singleColumn: SkyTileDashboardColumnComponent\n ) {\n this.config = config;\n this.columns = columns;\n this.singleColumn = singleColumn;\n this.checkReadyAndLoadTiles();\n }\n\n private setUserConfig(config: SkyTileDashboardConfig) {\n this.uiConfigService\n .setConfig(this.settingsKey, {\n layout: this.config.layout,\n persisted: true,\n tileIds: this.defaultConfig.tiles.map((elem) => elem.id),\n })\n .subscribe(\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n () => {},\n (err) => {\n console.warn('Could not save tile dashboard settings.');\n console.warn(err);\n }\n );\n }\n\n private checkForNewTiles(oldUserTiles: string[]) {\n // Get a list of tiles that are in the config's default list but not in the user's settings\n const newTiles = this.config.tiles.filter((elem) => {\n return oldUserTiles.indexOf(elem.id) === -1;\n });\n\n const { multiColumn, singleColumn } = this.config.layout;\n\n // Append new tiles to the end of the layouts\n /*istanbul ignore else */\n if (newTiles.length > 0) {\n /*istanbul ignore else */\n if (multiColumn) {\n newTiles.forEach((elem) => {\n let locationToAdd = 0;\n let smallest = multiColumn[0].tiles.length;\n multiColumn.forEach((item, index) => {\n if (item.tiles.length < smallest) {\n locationToAdd = index;\n smallest = item.tiles.length;\n }\n });\n multiColumn[locationToAdd].tiles.push({\n id: elem.id,\n isCollapsed: false,\n });\n });\n }\n\n /*istanbul ignore else */\n if (singleColumn) {\n newTiles.forEach((elem) => {\n singleColumn.tiles.push({ id: elem.id, isCollapsed: false });\n });\n }\n }\n\n /*istanbul ignore else */\n if (singleColumn) {\n for (const tile of singleColumn.tiles) {\n this.getTileOrRemoveFromLayout(tile);\n }\n }\n\n /*istanbul ignore else */\n if (multiColumn) {\n for (let i = 0, n = multiColumn.length; i < n; i++) {\n for (const tile of multiColumn[i].tiles) {\n this.getTileOrRemoveFromLayout(tile);\n }\n }\n }\n }\n}\n","import {\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n Optional,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { skyAnimationSlide } from '@skyux/animations';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyTileDashboardService } from '../tile-dashboard/tile-dashboard.service';\n\n/**\n * Provides a common look-and-feel for tab content.\n */\n@Component({\n selector: 'sky-tile',\n styleUrls: ['./tile.component.scss'],\n templateUrl: './tile.component.html',\n animations: [skyAnimationSlide],\n})\nexport class SkyTileComponent implements OnDestroy {\n /**\n * Indicates whether to display a settings button in the tile header. To display the\n * button, you must also listen for the `settingsClick` event.\n * @default true\n */\n @Input()\n public showSettings = true;\n\n /**\n * Indicates whether to display a help button in the tile header. To display the\n * button, you must also listen for the `helpClick` event.\n * @default true\n */\n @Input()\n public showHelp = true;\n\n /**\n * Specifies a human-readable name for the tile that is available for multiple purposes, such as accessibility and instrumentation. For example, the component uses the name to construct ARIA labels for tile controls to [support accessibility](https://developer.blackbaud.com/skyux/learn/accessibility).\n */\n @Input()\n public tileName;\n\n /**\n * Fires when users select the settings button in the tile header. The settings\n * button only appears when the `showSettings` property is set to `true`.\n */\n @Output()\n public settingsClick = new EventEmitter();\n\n /**\n * Fires when the tile's collapsed state changes. Returns `true` when the tile\n * collapses and `false` when it expands.\n */\n @Output()\n public isCollapsedChange = new EventEmitter<boolean>();\n\n /**\n * Fires when users select the help button in the tile header. The help\n * button only appears when the `showHelp` property is set to `true`.\n */\n @Output()\n public helpClick = new EventEmitter();\n\n public get isCollapsed(): boolean {\n if (this.dashboardService) {\n const configCollapsedState = this.dashboardService.tileIsCollapsed(this);\n this._isCollapsed = configCollapsedState;\n }\n\n return this._isCollapsed;\n }\n\n /**\n * Indicates whether the tile is in a collapsed state.\n * @default false\n */\n @Input()\n public set isCollapsed(value: boolean) {\n if (this.dashboardService) {\n this.dashboardService.setTileCollapsed(this, value);\n }\n\n this._isCollapsed = value;\n\n this.isCollapsedChange.emit(value);\n }\n\n public ariaDescribedBy: string | undefined;\n\n public isInDashboardColumn = false;\n\n @ViewChild('grabHandle', {\n read: ElementRef,\n static: false,\n })\n private grabHandle: ElementRef;\n\n @ViewChild('titleContainer', {\n read: ElementRef,\n static: false,\n })\n private title: ElementRef;\n\n private ngUnsubscribe = new Subject<void>();\n\n private _isCollapsed = false;\n\n constructor(\n public elementRef: ElementRef,\n private changeDetector: ChangeDetectorRef,\n @Optional() private dashboardService?: SkyTileDashboardService\n ) {\n this.isInDashboardColumn = !!dashboardService;\n\n if (this.dashboardService) {\n this.ariaDescribedBy = `${this.dashboardService.bagId}-move-instructions`;\n\n /**\n * This subscription ensures that if any values which come in from the dashboard service are\n * updated that the component will update if the tile's parent component utilizes OnPush\n * change detection.\n */\n this.dashboardService.configChange\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe(() => {\n this.changeDetector.markForCheck();\n });\n }\n }\n\n public ngOnDestroy(): void {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n public settingsButtonClicked(): void {\n this.settingsClick.emit(undefined);\n }\n\n public helpButtonClicked(): void {\n this.helpClick.emit(undefined);\n }\n\n public get hasSettings(): boolean {\n return this.settingsClick.observers.length > 0 && this.showSettings;\n }\n\n public get hasHelp(): boolean {\n return this.helpClick.observers.length > 0 && this.showHelp;\n }\n\n public titleClick(): void {\n this.isCollapsed = !this.isCollapsed;\n }\n\n public chevronDirectionChange(direction: string): void {\n this.isCollapsed = direction === 'down';\n }\n\n public moveTile(event: KeyboardEvent): void {\n /* istanbul ignore else */\n if (this.isInDashboardColumn) {\n const direction = event.key.toLowerCase().replace('arrow', '');\n /* istanbul ignore else */\n if (\n direction === 'up' ||\n direction === 'down' ||\n direction === 'left' ||\n direction === 'right'\n ) {\n this.dashboardService.moveTileOnKeyDown(\n this,\n direction,\n this.title\n ? this.title.nativeElement.innerText\n : /* istanbul ignore next */\n undefined\n );\n this.focusHandle();\n }\n }\n }\n\n private focusHandle(): void {\n this.grabHandle.nativeElement.focus();\n }\n}\n","<section\n class=\"sky-tile\"\n [ngClass]=\"{\n 'sky-tile-collapsed': isCollapsed\n }\"\n [skyThemeClass]=\"{\n 'sky-box sky-elevation-1-bordered sky-padding-even-xl': 'modern'\n }\"\n>\n <header class=\"sky-tile-header\">\n <div class=\"sky-tile-header-content\" (click)=\"titleClick()\">\n <div class=\"sky-tile-header-title\" #titleContainer>\n <ng-content select=\"sky-tile-title\"></ng-content>\n </div>\n <div\n class=\"sky-tile-summary\"\n [skyThemeClass]=\"{\n 'sky-font-display-3': 'modern',\n 'sky-headline': 'default'\n }\"\n >\n <ng-content select=\"sky-tile-summary\"></ng-content>\n </div>\n </div>\n <div class=\"sky-tile-header-column-tools\">\n <div class=\"sky-tile-tools\">\n <ng-container *skyThemeIf=\"'default'\">\n <button\n *ngIf=\"hasHelp\"\n class=\"sky-btn sky-tile-tools-control sky-tile-help\"\n type=\"button\"\n [attr.aria-label]=\"\n tileName\n ? ('skyux_tile_help' | skyLibResources: tileName)\n : ('skyux_tile_help_default' | skyLibResources)\n \"\n [skyThemeClass]=\"{\n 'sky-btn-icon-borderless': 'modern'\n }\"\n (click)=\"helpButtonClicked()\"\n >\n <sky-icon icon=\"question-circle\"></sky-icon>\n </button>\n </ng-container>\n <sky-chevron\n [ariaControls]=\"tileContent.id\"\n [ariaLabel]=\"\n tileName\n ? ('skyux_tile_expand' | skyLibResources: tileName)\n : ('skyux_tile_expand_default' | skyLibResources)\n \"\n [direction]=\"isCollapsed ? 'down' : 'up'\"\n [skyThemeClass]=\"{\n 'sky-tile-tools-control': 'default',\n 'sky-margin-inline-default': 'modern'\n }\"\n (directionChange)=\"chevronDirectionChange($event)\"\n >\n </sky-chevron>\n <button\n *ngIf=\"hasSettings\"\n class=\"sky-btn sky-tile-settings\"\n type=\"button\"\n [attr.aria-label]=\"\n tileName\n ? ('skyux_tile_settings' | skyLibResources: tileName)\n : ('skyux_tile_settings_default' | skyLibResources)\n \"\n [skyThemeClass]=\"{\n 'sky-tile-tools-control': 'default',\n 'sky-btn-icon-borderless sky-margin-inline-default': 'modern'\n }\"\n (click)=\"settingsButtonClicked()\"\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"cog\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"cog-line\"\n iconType=\"skyux\"\n ></sky-icon>\n </button>\n <button\n *ngIf=\"isInDashboardColumn\"\n class=\"sky-btn sky-tile-grab-handle\"\n [attr.aria-label]=\"\n tileName\n ? ('skyux_tile_move' | skyLibResources: tileName)\n : ('skyux_tile_move_default' | skyLibResources)\n \"\n [attr.aria-describedby]=\"ariaDescribedBy\"\n [skyThemeClass]=\"{\n 'sky-tile-tools-control': 'default',\n 'sky-btn-icon-borderless': 'modern'\n }\"\n (click)=\"$event.stopPropagation()\"\n (keydown)=\"moveTile($event)\"\n #grabHandle\n >\n <sky-icon *skyThemeIf=\"'default'\" icon=\"th\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"tile-drag\"\n iconType=\"skyux\"\n ></sky-icon>\n </button>\n </div>\n </div>\n </header>\n <div\n class=\"sky-tile-content\"\n role=\"region\"\n skyId\n [attr.aria-label]=\"tileName\"\n [@skyAnimationSlide]=\"isCollapsed ? 'up' : 'down'\"\n #tileContent=\"skyId\"\n >\n <ng-content select=\"sky-tile-content\"></ng-content>\n </div>\n</section>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyIdModule, SkyTrimModule } from '@skyux/core';\nimport { SkyI18nModule } from '@skyux/i18n';\nimport { SkyChevronModule, SkyIconModule } from '@skyux/indicators';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyTilesResourcesModule } from '../../shared/sky-tiles-resources.module';\n\nimport { SkyTileSummaryComponent } from './tile-summary.component';\nimport { SkyTileTitleComponent } from './tile-title.component';\nimport { SkyTileComponent } from './tile.component';\n\n@NgModule({\n declarations: [\n SkyTileComponent,\n SkyTileSummaryComponent,\n SkyTileTitleComponent,\n ],\n imports: [\n CommonModule,\n SkyChevronModule,\n SkyIdModule,\n SkyI18nModule,\n SkyIconModule,\n SkyThemeModule,\n SkyTilesResourcesModule,\n SkyTrimModule,\n ],\n exports: [SkyTileComponent, SkyTileSummaryComponent, SkyTileTitleComponent],\n})\nexport class SkyTileModule {}\n","import { Component } from '@angular/core';\n\n/**\n * Specifies content to display inside a padded section of a SkyTileContentComponent.\n */\n@Component({\n selector: 'sky-tile-content-section',\n styleUrls: ['./tile-content-section.component.scss'],\n templateUrl: './tile-content-section.component.html',\n})\nexport class SkyTileContentSectionComponent {}\n","<div\n class=\"sky-tile-content-section\"\n [skyThemeClass]=\"{\n 'sky-padding-even-large': 'default'\n }\"\n>\n <ng-content></ng-content>\n</div>\n","import { Component } from '@angular/core';\n\n/**\n * Specifies content to display in the tile's body.\n */\n@Component({\n selector: 'sky-tile-content',\n styleUrls: ['./tile-content.component.scss'],\n templateUrl: 'tile-content.component.html',\n})\nexport class SkyTileContentComponent {}\n","<ng-content></ng-content>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyTileContentSectionComponent } from './tile-content-section.component';\nimport { SkyTileContentComponent } from './tile-content.component';\n\n@NgModule({\n declarations: [SkyTileContentComponent, SkyTileContentSectionComponent],\n imports: [CommonModule, SkyThemeModule],\n exports: [SkyTileContentComponent, SkyTileContentSectionComponent],\n})\nexport class SkyTileContentModule {}\n","/**\n * Specifies the type of message to send to the tile dashboard component.\n */\nexport enum SkyTileDashboardMessageType {\n /**\n * Expands all tiles within the tile dashboard.\n */\n ExpandAll = 0,\n\n /**\n * Collapses all tiles within the tile dashboard.\n */\n CollapseAll = 1,\n}\n","import {\n Component,\n ComponentFactoryResolver,\n Injector,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { SkyTileDashboardService } from '../tile-dashboard/tile-dashboard.service';\n\nlet columnIdIndex = 0;\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-tile-dashboard-column',\n styleUrls: ['./tile-dashboard-column.component.scss'],\n templateUrl: './tile-dashboard-column.component.html',\n})\nexport class SkyTileDashboardColumnComponent {\n public bagId: string;\n\n public columnId: string;\n\n @ViewChild('content', {\n read: ViewContainerRef,\n static: false,\n })\n public content: ViewContainerRef;\n\n constructor(\n public resolver: ComponentFactoryResolver,\n public injector: Injector,\n private dashboardService: SkyTileDashboardService\n ) {\n columnIdIndex++;\n\n this.columnId = 'tile-dashboard-column-' + columnIdIndex;\n\n this.bagId = this.dashboardService.bagId;\n }\n}\n","<div class=\"sky-tile-dashboard-column\" [dragula]=\"bagId\">\n <div #content></div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DragulaModule } from 'ng2-dragula';\n\nimport { SkyTileDashboardColumnComponent } from './tile-dashboard-column.component';\n\n@NgModule({\n declarations: [SkyTileDashboardColumnComponent],\n imports: [CommonModule, DragulaModule],\n exports: [SkyTileDashboardColumnComponent],\n})\nexport class SkyTileDashboardColumnModule {}\n","import {\n AfterViewInit,\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n Optional,\n Output,\n QueryList,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { SkyMediaBreakpoints, SkyMediaQueryService } from '@skyux/core';\nimport { SkyLibResourcesService } from '@skyux/i18n';\n\nimport { Observable, Subject } from 'rxjs';\nimport { take, takeUntil } from 'rxjs/operators';\n\nimport { SkyTileDashboardColumnComponent } from '../tile-dashboard-column/tile-dashboard-column.component';\nimport { SkyTileDashboardConfig } from '../tile-dashboard-config/tile-dashboard-config';\n\nimport { SkyTileDashboardMessage } from './tile-dashboard-message';\nimport { SkyTileDashboardMessageType } from './tile-dashboard-message-type';\nimport { SkyTileDashboardService } from './tile-dashboard.service';\n\n/**\n * Specifies a container to group multiple tiles.\n */\n@Component({\n selector: 'sky-tile-dashboard',\n styleUrls: ['./tile-dashboard.component.scss'],\n templateUrl: './tile-dashboard.component.html',\n providers: [SkyTileDashboardService],\n})\nexport class SkyTileDashboardComponent implements AfterViewInit, OnDestroy {\n /**\n * Populates the tile dashboard based on the `SkyTileDashboardConfig` object.\n * @required\n */\n @Input()\n public set config(value: SkyTileDashboardConfig) {\n if (value && !this.configSet) {\n this._config = value;\n this.configSet = true;\n this.checkReady();\n }\n }\n\n public get config(): SkyTileDashboardConfig {\n return this._config;\n }\n\n /**\n * Provides an observable to send commands to the tile dashboard. The commands should respect the\n * `SkyTileDashboardMessage` type.\n */\n @Input()\n public messageStream = new Subject<SkyTileDashboardMessage>();\n\n /**\n * Specifies a unique key for the UI Config Service to retrieve stored settings\n * from a database. The UI Config Service saves configuration settings for users\n * to preserve the layout and collapsed state of tile dashboards. The UI Config Service relies on `id` values from the `config` property to maintain user settings. For more information\n * about the UI Config Service, see the\n * [sticky settings documentation](https://developer.blackbaud.com/skyux/learn/get-started/sticky-settings).\n */\n @Input()\n public settingsKey: string;\n\n /**\n * Fires when the tile dashboard changes state and emits a SkyTileDashboardConfig\n * object. This occurs when tiles collapse or expand and when users drag and drop\n * tiles to rearrange them.\n */\n @Output()\n public configChange = new EventEmitter<SkyTileDashboardConfig>();\n\n @ViewChildren(SkyTileDashboardColumnComponent)\n private columns: QueryList<SkyTileDashboardColumnComponent>;\n\n @ViewChild('singleColumn', {\n read: SkyTileDashboardColumnComponent,\n static: false,\n })\n public singleColumn: SkyTileDashboardColumnComponent;\n\n public tileMovedReport: string;\n\n public moveInstructionsId =\n this.dashboardService.bagId + '-move-instructions';\n\n private _config: SkyTileDashboardConfig;\n\n private configSet = false;\n\n private ngUnsubscribe = new Subject<void>();\n\n private viewReady = false;\n\n constructor(\n private dashboardService: SkyTileDashboardService,\n private mediaQuery: SkyMediaQueryService,\n @Optional() private resourcesService?: SkyLibResourcesService\n ) {\n this.dashboardService.configChange.subscribe(\n (config: SkyTileDashboardConfig) => {\n this.configChange.emit(config);\n\n // Update aria live region with tile drag info\n if (config.movedTile && this.resourcesService) {\n let messageObservable: Observable<string>;\n if (\n this.mediaQuery.current === SkyMediaBreakpoints.xs ||\n this.mediaQuery.current === SkyMediaBreakpoints.sm\n ) {\n messageObservable = this.resourcesService.getString(\n 'skyux_tile_moved_assistive_text',\n config.movedTile.tileDescription,\n '1',\n '1',\n config.movedTile.position.toString(),\n config.layout.singleColumn.tiles.length.toString()\n );\n } else {\n messageObservable = this.resourcesService.getString(\n 'skyux_tile_moved_assistive_text',\n config.movedTile.tileDescription,\n config.movedTile.column.toString(),\n config.layout.multiColumn.length.toString(),\n config.movedTile.position.toString(),\n config.layout.multiColumn[\n config.movedTile.column - 1\n ].tiles.length.toString()\n );\n }\n messageObservable.pipe(take(1)).subscribe((message: string) => {\n this.tileMovedReport = message;\n });\n }\n }\n );\n }\n\n public ngAfterViewInit(): void {\n this.messageStream\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((message: SkyTileDashboardMessage) => {\n this.handleIncomingMessages(message);\n });\n\n this.viewReady = true;\n this.checkReady();\n }\n\n public ngOnDestroy(): void {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n this.dashboardService.destroy();\n }\n\n private checkReady(): void {\n if (this.viewReady && this.config) {\n setTimeout(() => {\n this.dashboardService.init(\n this.config,\n this.columns,\n this.singleColumn,\n this.settingsKey\n );\n }, 0);\n }\n }\n\n private handleIncomingMessages(message: SkyTileDashboardMessage): void {\n switch (message.type) {\n case SkyTileDashboardMessageType.ExpandAll:\n this.dashboardService.setAllTilesCollapsed(false);\n break;\n\n case SkyTileDashboardMessageType.CollapseAll:\n this.dashboardService.setAllTilesCollapsed(true);\n break;\n }\n }\n}\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></ng-content>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DragulaService } from 'ng2-dragula';\n\nimport { SkyTilesResourcesModule } from '../../shared/sky-tiles-resources.module';\nimport { SkyTileDashboardColumnModule } from '../tile-dashboard-column/tile-dashboard-column.module';\n\nimport { SkyTileDashboardComponent } from './tile-dashboard.component';\n\n@NgModule({\n declarations: [SkyTileDashboardComponent],\n providers: [DragulaService],\n imports: [\n CommonModule,\n SkyTileDashboardColumnModule,\n SkyTilesResourcesModule,\n ],\n exports: [SkyTileDashboardComponent],\n})\nexport class SkyTileDashboardModule {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DragulaService } from 'ng2-dragula';\n\nimport { SkyTileContentModule } from './tile-content/tile-content.module';\nimport { SkyTileDashboardColumnModule } from './tile-dashboard-column/tile-dashboard-column.module';\nimport { SkyTileDashboardModule } from './tile-dashboard/tile-dashboard.module';\nimport { SkyTileModule } from './tile/tile.module';\n\n@NgModule({\n imports: [CommonModule],\n exports: [\n SkyTileContentModule,\n SkyTileModule,\n SkyTileDashboardColumnModule,\n SkyTileDashboardModule,\n ],\n providers: [DragulaService],\n})\nexport class SkyTilesModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i1.SkyTileDashboardService","i2","i5","i6","i3","i4.SkyTileDashboardColumnComponent"],"mappings":"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"}
|
|
@@ -4,5 +4,5 @@ import * as i0 from "@angular/core";
|
|
|
4
4
|
*/
|
|
5
5
|
export declare class SkyTileTitleComponent {
|
|
6
6
|
static ɵfac: i0.ɵɵFactoryDeclaration<SkyTileTitleComponent, never>;
|
|
7
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<SkyTileTitleComponent, "sky-tile-title", never, {}, {}, never, ["*"]>;
|
|
7
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SkyTileTitleComponent, "sky-tile-title", never, {}, {}, never, ["*", ".sky-control-help"]>;
|
|
8
8
|
}
|
|
@@ -10,6 +10,6 @@ import * as i8 from "@skyux/theme";
|
|
|
10
10
|
import * as i9 from "../../shared/sky-tiles-resources.module";
|
|
11
11
|
export declare class SkyTileModule {
|
|
12
12
|
static ɵfac: i0.ɵɵFactoryDeclaration<SkyTileModule, never>;
|
|
13
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<SkyTileModule, [typeof i1.SkyTileComponent, typeof i2.SkyTileSummaryComponent, typeof i3.SkyTileTitleComponent], [typeof i4.CommonModule, typeof i5.SkyChevronModule, typeof i6.SkyIdModule, typeof i7.SkyI18nModule, typeof i5.SkyIconModule, typeof i8.SkyThemeModule, typeof i9.SkyTilesResourcesModule], [typeof i1.SkyTileComponent, typeof i2.SkyTileSummaryComponent, typeof i3.SkyTileTitleComponent]>;
|
|
13
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<SkyTileModule, [typeof i1.SkyTileComponent, typeof i2.SkyTileSummaryComponent, typeof i3.SkyTileTitleComponent], [typeof i4.CommonModule, typeof i5.SkyChevronModule, typeof i6.SkyIdModule, typeof i7.SkyI18nModule, typeof i5.SkyIconModule, typeof i8.SkyThemeModule, typeof i9.SkyTilesResourcesModule, typeof i6.SkyTrimModule], [typeof i1.SkyTileComponent, typeof i2.SkyTileSummaryComponent, typeof i3.SkyTileTitleComponent]>;
|
|
14
14
|
static ɵinj: i0.ɵɵInjectorDeclaration<SkyTileModule>;
|
|
15
15
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@skyux/tiles",
|
|
3
|
-
"version": "6.
|
|
3
|
+
"version": "6.22.0",
|
|
4
4
|
"author": "Blackbaud, Inc.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"blackbaud",
|
|
@@ -34,11 +34,11 @@
|
|
|
34
34
|
"peerDependencies": {
|
|
35
35
|
"@angular/common": "^13.3.2",
|
|
36
36
|
"@angular/core": "^13.3.2",
|
|
37
|
-
"@skyux/animations": "6.
|
|
38
|
-
"@skyux/core": "6.
|
|
39
|
-
"@skyux/i18n": "6.
|
|
40
|
-
"@skyux/indicators": "6.
|
|
41
|
-
"@skyux/theme": "6.
|
|
37
|
+
"@skyux/animations": "6.22.0",
|
|
38
|
+
"@skyux/core": "6.22.0",
|
|
39
|
+
"@skyux/i18n": "6.22.0",
|
|
40
|
+
"@skyux/indicators": "6.22.0",
|
|
41
|
+
"@skyux/theme": "6.22.0"
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
44
|
"dragula": "3.7.3",
|