@skyux/pages 11.3.0 → 11.4.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.
@@ -1,5 +1,5 @@
1
1
  import { Component, HostBinding, Input, inject, } from '@angular/core';
2
- import { SkyLayoutHostService } from '@skyux/core';
2
+ import { SkyHelpService, SkyLayoutHostService, } from '@skyux/core';
3
3
  import { Subject } from 'rxjs';
4
4
  import { takeUntil } from 'rxjs/operators';
5
5
  import { SkyPageThemeAdapterService } from './page-theme-adapter.service';
@@ -19,6 +19,7 @@ export class SkyPageComponent {
19
19
  this.#ngUnsubscribe = new Subject();
20
20
  this.#themeAdapter = inject(SkyPageThemeAdapterService);
21
21
  this.#layoutHostSvc = inject(SkyLayoutHostService);
22
+ this.#helpSvc = inject(SkyHelpService, { optional: true });
22
23
  }
23
24
  /**
24
25
  * The page layout that applies spacing to the page header and content. Use the layout
@@ -31,11 +32,18 @@ export class SkyPageComponent {
31
32
  this.#layout = value;
32
33
  this.#updateCssClass();
33
34
  }
35
+ /**
36
+ * A help key that identifies the page's default [global help](https://developer.blackbaud.com/skyux/learn/develop/global-help) content to display.
37
+ */
38
+ set helpKey(value) {
39
+ this.#helpSvc?.updateHelp({ pageDefaultHelpKey: value });
40
+ }
34
41
  #layout;
35
42
  #layoutForChild;
36
43
  #ngUnsubscribe;
37
44
  #themeAdapter;
38
45
  #layoutHostSvc;
46
+ #helpSvc;
39
47
  ngOnInit() {
40
48
  this.#themeAdapter.addTheme();
41
49
  this.#layoutHostSvc.hostLayoutForChild
@@ -49,6 +57,7 @@ export class SkyPageComponent {
49
57
  this.#themeAdapter.removeTheme();
50
58
  this.#ngUnsubscribe.next();
51
59
  this.#ngUnsubscribe.complete();
60
+ this.#helpSvc?.updateHelp({ pageDefaultHelpKey: undefined });
52
61
  }
53
62
  #updateCssClass() {
54
63
  let cssClass = this.#layout
@@ -60,7 +69,7 @@ export class SkyPageComponent {
60
69
  this.cssClass = cssClass;
61
70
  }
62
71
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SkyPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
63
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: SkyPageComponent, selector: "sky-page", inputs: { layout: "layout" }, host: { properties: { "class": "this.cssClass" } }, providers: [SkyPageThemeAdapterService, SkyLayoutHostService], ngImport: i0, template: `<ng-content />`, isInline: true }); }
72
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: SkyPageComponent, selector: "sky-page", inputs: { layout: "layout", helpKey: "helpKey" }, host: { properties: { "class": "this.cssClass" } }, providers: [SkyPageThemeAdapterService, SkyLayoutHostService], ngImport: i0, template: `<ng-content />`, isInline: true }); }
64
73
  }
65
74
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SkyPageComponent, decorators: [{
66
75
  type: Component,
@@ -71,8 +80,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImpor
71
80
  }]
72
81
  }], propDecorators: { layout: [{
73
82
  type: Input
83
+ }], helpKey: [{
84
+ type: Input
74
85
  }], cssClass: [{
75
86
  type: HostBinding,
76
87
  args: ['class']
77
88
  }] } });
78
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvcGFnZXMvc3JjL2xpYi9tb2R1bGVzL3BhZ2UvcGFnZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxXQUFXLEVBQ1gsS0FBSyxFQUdMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQTZCLG9CQUFvQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTlFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQUcxRSxNQUFNLGNBQWMsR0FBc0IsTUFBTSxDQUFDO0FBRWpELE1BQU0sNkJBQTZCLEdBQUcsNEJBQTRCLENBQUM7QUFDbkUsTUFBTSxtQkFBbUIsR0FBRyxrQkFBa0IsQ0FBQztBQUMvQyxNQUFNLG9CQUFvQixHQUFHLEdBQUcsbUJBQW1CLEdBQUcsY0FBYyxFQUFFLENBQUM7QUFFdkU7Ozs7R0FJRztBQU1ILE1BQU0sT0FBTyxnQkFBZ0I7SUFMN0I7UUFvQlMsYUFBUSxHQUFHLG9CQUFvQixDQUFDO1FBS3ZDLG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUVyQyxrQkFBYSxHQUFHLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBQ25ELG1CQUFjLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7S0ErQi9DO0lBckRDOzs7Ozs7T0FNRztJQUNILElBQ1csTUFBTSxDQUFDLEtBQW9DO1FBQ3BELElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBS0QsT0FBTyxDQUFnQztJQUN2QyxlQUFlLENBQWdDO0lBRS9DLGNBQWMsQ0FBdUI7SUFFckMsYUFBYSxDQUFzQztJQUNuRCxjQUFjLENBQWdDO0lBRXZDLFFBQVE7UUFDYixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRTlCLElBQUksQ0FBQyxjQUFjLENBQUMsa0JBQWtCO2FBQ25DLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2FBQ3BDLFNBQVMsQ0FBQyxDQUFDLElBQStCLEVBQUUsRUFBRTtZQUM3QyxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxNQUEyQixDQUFDO1lBQ3hELElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN6QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFakMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU87WUFDekIsQ0FBQyxDQUFDLEdBQUcsbUJBQW1CLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUN6QyxDQUFDLENBQUMsb0JBQW9CLENBQUM7UUFFekIsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDekIsUUFBUSxHQUFHLEdBQUcsUUFBUSxJQUFJLDZCQUE2QixHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUNuRixDQUFDO1FBRUQsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFDM0IsQ0FBQzs4R0FyRFUsZ0JBQWdCO2tHQUFoQixnQkFBZ0IscUhBRmhCLENBQUMsMEJBQTBCLEVBQUUsb0JBQW9CLENBQUMsMEJBRG5ELGdCQUFnQjs7MkZBR2YsZ0JBQWdCO2tCQUw1QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxVQUFVO29CQUNwQixRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixTQUFTLEVBQUUsQ0FBQywwQkFBMEIsRUFBRSxvQkFBb0IsQ0FBQztpQkFDOUQ7OEJBVVksTUFBTTtzQkFEaEIsS0FBSztnQkFPQyxRQUFRO3NCQURkLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgaW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreUxheW91dEhvc3RGb3JDaGlsZEFyZ3MsIFNreUxheW91dEhvc3RTZXJ2aWNlIH0gZnJvbSAnQHNreXV4L2NvcmUnO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFNreVBhZ2VUaGVtZUFkYXB0ZXJTZXJ2aWNlIH0gZnJvbSAnLi9wYWdlLXRoZW1lLWFkYXB0ZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTa3lQYWdlTGF5b3V0VHlwZSB9IGZyb20gJy4vdHlwZXMvcGFnZS1sYXlvdXQtdHlwZSc7XG5cbmNvbnN0IExBWU9VVF9ERUZBVUxUOiBTa3lQYWdlTGF5b3V0VHlwZSA9ICdub25lJztcblxuY29uc3QgTEFZT1VUX0ZPUl9DSElMRF9DTEFTU19QUkVGSVggPSAnc2t5LWxheW91dC1ob3N0LWZvci1jaGlsZC0nO1xuY29uc3QgTEFZT1VUX0NMQVNTX1BSRUZJWCA9ICdza3ktbGF5b3V0LWhvc3QtJztcbmNvbnN0IExBWU9VVF9DTEFTU19ERUZBVUxUID0gYCR7TEFZT1VUX0NMQVNTX1BSRUZJWH0ke0xBWU9VVF9ERUZBVUxUfWA7XG5cbi8qKlxuICogRGlzcGxheXMgYSBwYWdlIHVzaW5nIHRoZSBzcGVjaWZpZWQgbGF5b3V0LiBUaGUgcGFnZSBjb21wb25lbnQgaXMgYSByZXNwb25zaXZlIGNvbnRhaW5lcixcbiAqIG1lYW5pbmcgY29udGVudCB3aWxsIHJlc3BlY3QgdGhlIGJyZWFrcG9pbnRzIHdpdGhpbiB0aGUgcGFnZSBlbGVtZW50IGluc3RlYWQgb2YgdGhlIHdpbmRvdy5cbiAqIFRoaXMgaXMgaGVscGZ1bCBpZiB0aGVyZSBpcyBvdGhlciBjb250ZW50IHRvIHRoZSBsZWZ0IG9yIHJpZ2h0IG9mIHRoZSBwYWdlLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktcGFnZScsXG4gIHRlbXBsYXRlOiBgPG5nLWNvbnRlbnQgLz5gLFxuICBwcm92aWRlcnM6IFtTa3lQYWdlVGhlbWVBZGFwdGVyU2VydmljZSwgU2t5TGF5b3V0SG9zdFNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lQYWdlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAvKipcbiAgICogVGhlIHBhZ2UgbGF5b3V0IHRoYXQgYXBwbGllcyBzcGFjaW5nIHRvIHRoZSBwYWdlIGhlYWRlciBhbmQgY29udGVudC4gVXNlIHRoZSBsYXlvdXRcbiAgICogdGhhdCBjb3JyZXNwb25kcyB3aXRoIHRoZSB0b3AtbGV2ZWwgY29tcG9uZW50IHR5cGUgdXNlZCBvbiB0aGUgcGFnZSwgb3IgdXNlIGBmaXRgIHRvXG4gICAqIGNvbnN0cmFpbiB0aGUgcGFnZSBjb250ZW50cyB0byB0aGUgYXZhaWxhYmxlIHZpZXdwb3J0LlxuICAgKiBVc2UgYG5vbmVgIGZvciBjdXN0b20gY29udGVudCB0aGF0IGRvZXMgbm90IGFkaGVyZSB0byBwcmVkZWZpbmVkIHNwYWNpbmcgb3IgY29uc3RyYWludHMuXG4gICAqIEBkZWZhdWx0IFwibm9uZVwiXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGxheW91dCh2YWx1ZTogU2t5UGFnZUxheW91dFR5cGUgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLiNsYXlvdXQgPSB2YWx1ZTtcbiAgICB0aGlzLiN1cGRhdGVDc3NDbGFzcygpO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIHB1YmxpYyBjc3NDbGFzcyA9IExBWU9VVF9DTEFTU19ERUZBVUxUO1xuXG4gICNsYXlvdXQ6IFNreVBhZ2VMYXlvdXRUeXBlIHwgdW5kZWZpbmVkO1xuICAjbGF5b3V0Rm9yQ2hpbGQ6IFNreVBhZ2VMYXlvdXRUeXBlIHwgdW5kZWZpbmVkO1xuXG4gICNuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAjdGhlbWVBZGFwdGVyID0gaW5qZWN0KFNreVBhZ2VUaGVtZUFkYXB0ZXJTZXJ2aWNlKTtcbiAgI2xheW91dEhvc3RTdmMgPSBpbmplY3QoU2t5TGF5b3V0SG9zdFNlcnZpY2UpO1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLiN0aGVtZUFkYXB0ZXIuYWRkVGhlbWUoKTtcblxuICAgIHRoaXMuI2xheW91dEhvc3RTdmMuaG9zdExheW91dEZvckNoaWxkXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChhcmdzOiBTa3lMYXlvdXRIb3N0Rm9yQ2hpbGRBcmdzKSA9PiB7XG4gICAgICAgIHRoaXMuI2xheW91dEZvckNoaWxkID0gYXJncy5sYXlvdXQgYXMgU2t5UGFnZUxheW91dFR5cGU7XG4gICAgICAgIHRoaXMuI3VwZGF0ZUNzc0NsYXNzKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLiN0aGVtZUFkYXB0ZXIucmVtb3ZlVGhlbWUoKTtcblxuICAgIHRoaXMuI25nVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgIHRoaXMuI25nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgfVxuXG4gICN1cGRhdGVDc3NDbGFzcygpOiB2b2lkIHtcbiAgICBsZXQgY3NzQ2xhc3MgPSB0aGlzLiNsYXlvdXRcbiAgICAgID8gYCR7TEFZT1VUX0NMQVNTX1BSRUZJWH0ke3RoaXMuI2xheW91dH1gXG4gICAgICA6IExBWU9VVF9DTEFTU19ERUZBVUxUO1xuXG4gICAgaWYgKHRoaXMuI2xheW91dEZvckNoaWxkKSB7XG4gICAgICBjc3NDbGFzcyA9IGAke2Nzc0NsYXNzfSAke0xBWU9VVF9GT1JfQ0hJTERfQ0xBU1NfUFJFRklYfSR7dGhpcy4jbGF5b3V0Rm9yQ2hpbGR9YDtcbiAgICB9XG5cbiAgICB0aGlzLmNzc0NsYXNzID0gY3NzQ2xhc3M7XG4gIH1cbn1cbiJdfQ==
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvcGFnZXMvc3JjL2xpYi9tb2R1bGVzL3BhZ2UvcGFnZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxXQUFXLEVBQ1gsS0FBSyxFQUdMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsY0FBYyxFQUVkLG9CQUFvQixHQUNyQixNQUFNLGFBQWEsQ0FBQztBQUVyQixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7QUFHMUUsTUFBTSxjQUFjLEdBQXNCLE1BQU0sQ0FBQztBQUVqRCxNQUFNLDZCQUE2QixHQUFHLDRCQUE0QixDQUFDO0FBQ25FLE1BQU0sbUJBQW1CLEdBQUcsa0JBQWtCLENBQUM7QUFDL0MsTUFBTSxvQkFBb0IsR0FBRyxHQUFHLG1CQUFtQixHQUFHLGNBQWMsRUFBRSxDQUFDO0FBRXZFOzs7O0dBSUc7QUFNSCxNQUFNLE9BQU8sZ0JBQWdCO0lBTDdCO1FBNEJTLGFBQVEsR0FBRyxvQkFBb0IsQ0FBQztRQUt2QyxtQkFBYyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFFckMsa0JBQWEsR0FBRyxNQUFNLENBQUMsMEJBQTBCLENBQUMsQ0FBQztRQUNuRCxtQkFBYyxHQUFHLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQzlDLGFBQVEsR0FBRyxNQUFNLENBQUMsY0FBYyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7S0FpQ3ZEO0lBaEVDOzs7Ozs7T0FNRztJQUNILElBQ1csTUFBTSxDQUFDLEtBQW9DO1FBQ3BELElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUNXLE9BQU8sQ0FBQyxLQUF5QjtRQUMxQyxJQUFJLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxFQUFFLGtCQUFrQixFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUtELE9BQU8sQ0FBZ0M7SUFDdkMsZUFBZSxDQUFnQztJQUUvQyxjQUFjLENBQXVCO0lBRXJDLGFBQWEsQ0FBc0M7SUFDbkQsY0FBYyxDQUFnQztJQUM5QyxRQUFRLENBQThDO0lBRS9DLFFBQVE7UUFDYixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRTlCLElBQUksQ0FBQyxjQUFjLENBQUMsa0JBQWtCO2FBQ25DLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2FBQ3BDLFNBQVMsQ0FBQyxDQUFDLElBQStCLEVBQUUsRUFBRTtZQUM3QyxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxNQUEyQixDQUFDO1lBQ3hELElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN6QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFakMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRS9CLElBQUksQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLEVBQUUsa0JBQWtCLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPO1lBQ3pCLENBQUMsQ0FBQyxHQUFHLG1CQUFtQixHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDekMsQ0FBQyxDQUFDLG9CQUFvQixDQUFDO1FBRXpCLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3pCLFFBQVEsR0FBRyxHQUFHLFFBQVEsSUFBSSw2QkFBNkIsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDbkYsQ0FBQztRQUVELElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQzNCLENBQUM7OEdBaEVVLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLHlJQUZoQixDQUFDLDBCQUEwQixFQUFFLG9CQUFvQixDQUFDLDBCQURuRCxnQkFBZ0I7OzJGQUdmLGdCQUFnQjtrQkFMNUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsVUFBVTtvQkFDcEIsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsU0FBUyxFQUFFLENBQUMsMEJBQTBCLEVBQUUsb0JBQW9CLENBQUM7aUJBQzlEOzhCQVVZLE1BQU07c0JBRGhCLEtBQUs7Z0JBVUssT0FBTztzQkFEakIsS0FBSztnQkFNQyxRQUFRO3NCQURkLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgaW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIFNreUhlbHBTZXJ2aWNlLFxuICBTa3lMYXlvdXRIb3N0Rm9yQ2hpbGRBcmdzLFxuICBTa3lMYXlvdXRIb3N0U2VydmljZSxcbn0gZnJvbSAnQHNreXV4L2NvcmUnO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFNreVBhZ2VUaGVtZUFkYXB0ZXJTZXJ2aWNlIH0gZnJvbSAnLi9wYWdlLXRoZW1lLWFkYXB0ZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTa3lQYWdlTGF5b3V0VHlwZSB9IGZyb20gJy4vdHlwZXMvcGFnZS1sYXlvdXQtdHlwZSc7XG5cbmNvbnN0IExBWU9VVF9ERUZBVUxUOiBTa3lQYWdlTGF5b3V0VHlwZSA9ICdub25lJztcblxuY29uc3QgTEFZT1VUX0ZPUl9DSElMRF9DTEFTU19QUkVGSVggPSAnc2t5LWxheW91dC1ob3N0LWZvci1jaGlsZC0nO1xuY29uc3QgTEFZT1VUX0NMQVNTX1BSRUZJWCA9ICdza3ktbGF5b3V0LWhvc3QtJztcbmNvbnN0IExBWU9VVF9DTEFTU19ERUZBVUxUID0gYCR7TEFZT1VUX0NMQVNTX1BSRUZJWH0ke0xBWU9VVF9ERUZBVUxUfWA7XG5cbi8qKlxuICogRGlzcGxheXMgYSBwYWdlIHVzaW5nIHRoZSBzcGVjaWZpZWQgbGF5b3V0LiBUaGUgcGFnZSBjb21wb25lbnQgaXMgYSByZXNwb25zaXZlIGNvbnRhaW5lcixcbiAqIG1lYW5pbmcgY29udGVudCB3aWxsIHJlc3BlY3QgdGhlIGJyZWFrcG9pbnRzIHdpdGhpbiB0aGUgcGFnZSBlbGVtZW50IGluc3RlYWQgb2YgdGhlIHdpbmRvdy5cbiAqIFRoaXMgaXMgaGVscGZ1bCBpZiB0aGVyZSBpcyBvdGhlciBjb250ZW50IHRvIHRoZSBsZWZ0IG9yIHJpZ2h0IG9mIHRoZSBwYWdlLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktcGFnZScsXG4gIHRlbXBsYXRlOiBgPG5nLWNvbnRlbnQgLz5gLFxuICBwcm92aWRlcnM6IFtTa3lQYWdlVGhlbWVBZGFwdGVyU2VydmljZSwgU2t5TGF5b3V0SG9zdFNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lQYWdlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAvKipcbiAgICogVGhlIHBhZ2UgbGF5b3V0IHRoYXQgYXBwbGllcyBzcGFjaW5nIHRvIHRoZSBwYWdlIGhlYWRlciBhbmQgY29udGVudC4gVXNlIHRoZSBsYXlvdXRcbiAgICogdGhhdCBjb3JyZXNwb25kcyB3aXRoIHRoZSB0b3AtbGV2ZWwgY29tcG9uZW50IHR5cGUgdXNlZCBvbiB0aGUgcGFnZSwgb3IgdXNlIGBmaXRgIHRvXG4gICAqIGNvbnN0cmFpbiB0aGUgcGFnZSBjb250ZW50cyB0byB0aGUgYXZhaWxhYmxlIHZpZXdwb3J0LlxuICAgKiBVc2UgYG5vbmVgIGZvciBjdXN0b20gY29udGVudCB0aGF0IGRvZXMgbm90IGFkaGVyZSB0byBwcmVkZWZpbmVkIHNwYWNpbmcgb3IgY29uc3RyYWludHMuXG4gICAqIEBkZWZhdWx0IFwibm9uZVwiXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGxheW91dCh2YWx1ZTogU2t5UGFnZUxheW91dFR5cGUgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLiNsYXlvdXQgPSB2YWx1ZTtcbiAgICB0aGlzLiN1cGRhdGVDc3NDbGFzcygpO1xuICB9XG5cbiAgLyoqXG4gICAqIEEgaGVscCBrZXkgdGhhdCBpZGVudGlmaWVzIHRoZSBwYWdlJ3MgZGVmYXVsdCBbZ2xvYmFsIGhlbHBdKGh0dHBzOi8vZGV2ZWxvcGVyLmJsYWNrYmF1ZC5jb20vc2t5dXgvbGVhcm4vZGV2ZWxvcC9nbG9iYWwtaGVscCkgY29udGVudCB0byBkaXNwbGF5LlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBoZWxwS2V5KHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLiNoZWxwU3ZjPy51cGRhdGVIZWxwKHsgcGFnZURlZmF1bHRIZWxwS2V5OiB2YWx1ZSB9KTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBwdWJsaWMgY3NzQ2xhc3MgPSBMQVlPVVRfQ0xBU1NfREVGQVVMVDtcblxuICAjbGF5b3V0OiBTa3lQYWdlTGF5b3V0VHlwZSB8IHVuZGVmaW5lZDtcbiAgI2xheW91dEZvckNoaWxkOiBTa3lQYWdlTGF5b3V0VHlwZSB8IHVuZGVmaW5lZDtcblxuICAjbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgI3RoZW1lQWRhcHRlciA9IGluamVjdChTa3lQYWdlVGhlbWVBZGFwdGVyU2VydmljZSk7XG4gICNsYXlvdXRIb3N0U3ZjID0gaW5qZWN0KFNreUxheW91dEhvc3RTZXJ2aWNlKTtcbiAgI2hlbHBTdmMgPSBpbmplY3QoU2t5SGVscFNlcnZpY2UsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuI3RoZW1lQWRhcHRlci5hZGRUaGVtZSgpO1xuXG4gICAgdGhpcy4jbGF5b3V0SG9zdFN2Yy5ob3N0TGF5b3V0Rm9yQ2hpbGRcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKGFyZ3M6IFNreUxheW91dEhvc3RGb3JDaGlsZEFyZ3MpID0+IHtcbiAgICAgICAgdGhpcy4jbGF5b3V0Rm9yQ2hpbGQgPSBhcmdzLmxheW91dCBhcyBTa3lQYWdlTGF5b3V0VHlwZTtcbiAgICAgICAgdGhpcy4jdXBkYXRlQ3NzQ2xhc3MoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuI3RoZW1lQWRhcHRlci5yZW1vdmVUaGVtZSgpO1xuXG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuXG4gICAgdGhpcy4jaGVscFN2Yz8udXBkYXRlSGVscCh7IHBhZ2VEZWZhdWx0SGVscEtleTogdW5kZWZpbmVkIH0pO1xuICB9XG5cbiAgI3VwZGF0ZUNzc0NsYXNzKCk6IHZvaWQge1xuICAgIGxldCBjc3NDbGFzcyA9IHRoaXMuI2xheW91dFxuICAgICAgPyBgJHtMQVlPVVRfQ0xBU1NfUFJFRklYfSR7dGhpcy4jbGF5b3V0fWBcbiAgICAgIDogTEFZT1VUX0NMQVNTX0RFRkFVTFQ7XG5cbiAgICBpZiAodGhpcy4jbGF5b3V0Rm9yQ2hpbGQpIHtcbiAgICAgIGNzc0NsYXNzID0gYCR7Y3NzQ2xhc3N9ICR7TEFZT1VUX0ZPUl9DSElMRF9DTEFTU19QUkVGSVh9JHt0aGlzLiNsYXlvdXRGb3JDaGlsZH1gO1xuICAgIH1cblxuICAgIHRoaXMuY3NzQ2xhc3MgPSBjc3NDbGFzcztcbiAgfVxufVxuIl19
@@ -10,7 +10,7 @@ import * as i1 from '@angular/common';
10
10
  import { CommonModule, DOCUMENT } from '@angular/common';
11
11
  import * as i2 from '@skyux/router';
12
12
  import { SkyAppLinkModule, SkyHrefModule } from '@skyux/router';
13
- import { SkyLogService, SkyTrimModule, SkyDefaultInputProvider, SkyMediaQueryService, SkyMediaBreakpoints, SkyResizeObserverMediaQueryService, SkyLayoutHostService } from '@skyux/core';
13
+ import { SkyLogService, SkyTrimModule, SkyDefaultInputProvider, SkyMediaQueryService, SkyMediaBreakpoints, SkyResizeObserverMediaQueryService, SkyLayoutHostService, SkyHelpService } from '@skyux/core';
14
14
  import { SkyModalService, SkyModalLegacyService } from '@skyux/modals';
15
15
  import * as i4 from '@skyux/icon';
16
16
  import { SkyIconModule } from '@skyux/icon';
@@ -817,6 +817,7 @@ class SkyPageComponent {
817
817
  this.#ngUnsubscribe = new Subject();
818
818
  this.#themeAdapter = inject(SkyPageThemeAdapterService);
819
819
  this.#layoutHostSvc = inject(SkyLayoutHostService);
820
+ this.#helpSvc = inject(SkyHelpService, { optional: true });
820
821
  }
821
822
  /**
822
823
  * The page layout that applies spacing to the page header and content. Use the layout
@@ -829,11 +830,18 @@ class SkyPageComponent {
829
830
  this.#layout = value;
830
831
  this.#updateCssClass();
831
832
  }
833
+ /**
834
+ * A help key that identifies the page's default [global help](https://developer.blackbaud.com/skyux/learn/develop/global-help) content to display.
835
+ */
836
+ set helpKey(value) {
837
+ this.#helpSvc?.updateHelp({ pageDefaultHelpKey: value });
838
+ }
832
839
  #layout;
833
840
  #layoutForChild;
834
841
  #ngUnsubscribe;
835
842
  #themeAdapter;
836
843
  #layoutHostSvc;
844
+ #helpSvc;
837
845
  ngOnInit() {
838
846
  this.#themeAdapter.addTheme();
839
847
  this.#layoutHostSvc.hostLayoutForChild
@@ -847,6 +855,7 @@ class SkyPageComponent {
847
855
  this.#themeAdapter.removeTheme();
848
856
  this.#ngUnsubscribe.next();
849
857
  this.#ngUnsubscribe.complete();
858
+ this.#helpSvc?.updateHelp({ pageDefaultHelpKey: undefined });
850
859
  }
851
860
  #updateCssClass() {
852
861
  let cssClass = this.#layout
@@ -858,7 +867,7 @@ class SkyPageComponent {
858
867
  this.cssClass = cssClass;
859
868
  }
860
869
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SkyPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
861
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: SkyPageComponent, selector: "sky-page", inputs: { layout: "layout" }, host: { properties: { "class": "this.cssClass" } }, providers: [SkyPageThemeAdapterService, SkyLayoutHostService], ngImport: i0, template: `<ng-content />`, isInline: true }); }
870
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: SkyPageComponent, selector: "sky-page", inputs: { layout: "layout", helpKey: "helpKey" }, host: { properties: { "class": "this.cssClass" } }, providers: [SkyPageThemeAdapterService, SkyLayoutHostService], ngImport: i0, template: `<ng-content />`, isInline: true }); }
862
871
  }
863
872
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: SkyPageComponent, decorators: [{
864
873
  type: Component,
@@ -869,6 +878,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImpor
869
878
  }]
870
879
  }], propDecorators: { layout: [{
871
880
  type: Input
881
+ }], helpKey: [{
882
+ type: Input
872
883
  }], cssClass: [{
873
884
  type: HostBinding,
874
885
  args: ['class']
@@ -1 +1 @@
1
- {"version":3,"file":"skyux-pages.mjs","sources":["../../../../../libs/components/pages/src/lib/modules/link-as/link-as.pipe.ts","../../../../../libs/components/pages/src/lib/modules/link-as/link-as.module.ts","../../../../../libs/components/pages/src/lib/modules/link-list/link-list.component.ts","../../../../../libs/components/pages/src/lib/modules/link-list/link-list.component.html","../../../../../libs/components/pages/src/lib/modules/link-list/link-list.module.ts","../../../../../libs/components/pages/src/lib/modules/modal-link-list/modal-link-list.component.ts","../../../../../libs/components/pages/src/lib/modules/modal-link-list/modal-link-list.component.html","../../../../../libs/components/pages/src/lib/modules/modal-link-list/modal-link-list.module.ts","../../../../../libs/components/pages/src/lib/modules/shared/sky-pages-resources.module.ts","../../../../../libs/components/pages/src/lib/modules/needs-attention/needs-attention.component.ts","../../../../../libs/components/pages/src/lib/modules/needs-attention/needs-attention.component.html","../../../../../libs/components/pages/src/lib/modules/needs-attention/needs-attention.module.ts","../../../../../libs/components/pages/src/lib/modules/page-header/page-header-actions.component.ts","../../../../../libs/components/pages/src/lib/modules/page-header/page-header-actions.component.html","../../../../../libs/components/pages/src/lib/modules/page-header/page-header-alerts.component.ts","../../../../../libs/components/pages/src/lib/modules/page-header/page-header-alerts.component.html","../../../../../libs/components/pages/src/lib/modules/page-header/page-header-avatar.component.ts","../../../../../libs/components/pages/src/lib/modules/page-header/page-header-avatar.component.html","../../../../../libs/components/pages/src/lib/modules/page-header/page-header-details.component.ts","../../../../../libs/components/pages/src/lib/modules/page-header/page-header-details.component.html","../../../../../libs/components/pages/src/lib/modules/page-header/page-header.component.ts","../../../../../libs/components/pages/src/lib/modules/page-header/page-header.component.html","../../../../../libs/components/pages/src/lib/modules/page-header/page-header.module.ts","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub-buttons.component.ts","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub-buttons.component.html","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub-content.component.ts","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub-content.component.html","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub-recent-links-resolve.pipe.ts","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub-related-links-sort.pipe.ts","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub.component.ts","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub.component.html","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub.module.ts","../../../../../libs/components/pages/src/lib/modules/page/page-content.component.ts","../../../../../libs/components/pages/src/lib/modules/page/page-theme-adapter.service.ts","../../../../../libs/components/pages/src/lib/modules/page/page.component.ts","../../../../../libs/components/pages/src/lib/modules/page/page.module.ts","../../../../../libs/components/pages/src/skyux-pages.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\n\nimport { SkyActionHubNeedsAttention } from '../action-hub/types/action-hub-needs-attention';\nimport { SkyPageLink } from '../action-hub/types/page-link';\nimport { SkyPageModalLink } from '../action-hub/types/page-modal-link';\n\n@Pipe({\n name: 'linkAs',\n})\nexport class LinkAsPipe implements PipeTransform {\n public transform(\n value:\n | SkyActionHubNeedsAttention\n | SkyPageLink\n | SkyPageModalLink\n | undefined,\n linkAs: 'button' | 'href' | 'skyHref' | 'skyAppLink' | undefined,\n ): boolean {\n const permalink = value?.permalink;\n const permalinkUrl = permalink?.url;\n\n switch (linkAs) {\n case 'button':\n return !!(value as SkyActionHubNeedsAttention)?.click && !permalink;\n case 'href':\n return permalinkUrl !== undefined && !permalinkUrl.includes('://');\n case 'skyHref':\n return permalinkUrl !== undefined && permalinkUrl.includes('://');\n case 'skyAppLink':\n return !!(permalink && permalinkUrl === undefined && permalink.route);\n default:\n return false;\n }\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { LinkAsPipe } from './link-as.pipe';\n\n@NgModule({\n declarations: [LinkAsPipe],\n exports: [LinkAsPipe],\n})\nexport class LinkAsModule {}\n","import { Component, Input } from '@angular/core';\n\nimport { SkyPageLink } from '../action-hub/types/page-link';\nimport { SkyPageLinksInput } from '../action-hub/types/page-links-input';\n\n@Component({\n selector: 'sky-link-list',\n templateUrl: './link-list.component.html',\n styleUrls: ['./link-list.component.scss'],\n})\nexport class SkyLinkListComponent {\n @Input()\n public set links(value: SkyPageLinksInput | undefined) {\n this.#_links = value;\n this.linksArray = Array.isArray(value) ? value : [];\n }\n\n public get links(): SkyPageLinksInput | undefined {\n return this.#_links;\n }\n\n @Input()\n public title: string | undefined;\n\n public linksArray: SkyPageLink[] = [];\n\n #_links: SkyPageLinksInput | undefined;\n}\n","<sky-wait [isWaiting]=\"links === 'loading'\" />\n@if (links === 'loading') {\n <ng-container [ngTemplateOutlet]=\"headingTemplateRef\" />\n} @else {\n @if (linksArray.length > 0) {\n <ng-container [ngTemplateOutlet]=\"headingTemplateRef\" />\n <ul class=\"sky-link-list\">\n @for (link of linksArray; track link) {\n <li>\n @if (link | linkAs: 'skyHref') {\n <a [skyHref]=\"link.permalink.url\">\n {{ link.label }}\n </a>\n } @else if (link | linkAs: 'href') {\n <a [href]=\"link.permalink.url\">\n {{ link.label }}\n </a>\n } @else if (link.permalink.route) {\n <a\n [skyAppLink]=\"link.permalink.route.commands\"\n [queryParams]=\"link.permalink.route.extras?.queryParams\"\n [queryParamsHandling]=\"\n link.permalink.route.extras?.queryParamsHandling\n \"\n [fragment]=\"link.permalink.route.extras?.fragment\"\n [preserveFragment]=\"link.permalink.route.extras?.preserveFragment\"\n [skipLocationChange]=\"\n link.permalink.route.extras?.skipLocationChange\n \"\n [replaceUrl]=\"link.permalink.route.extras?.replaceUrl\"\n [state]=\"link.permalink.route.extras?.state\"\n >\n {{ link.label }}\n </a>\n }\n </li>\n }\n </ul>\n }\n}\n\n<ng-template #headingTemplateRef>\n <h2 class=\"sky-font-heading-4\">\n {{ title }}\n </h2>\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyWaitModule } from '@skyux/indicators';\nimport { SkyAppLinkModule, SkyHrefModule } from '@skyux/router';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { LinkAsModule } from '../link-as/link-as.module';\n\nimport { SkyLinkListComponent } from './link-list.component';\n\n@NgModule({\n declarations: [SkyLinkListComponent],\n exports: [SkyLinkListComponent],\n imports: [\n CommonModule,\n SkyAppLinkModule,\n SkyHrefModule,\n SkyThemeModule,\n SkyWaitModule,\n LinkAsModule,\n ],\n})\nexport class SkyLinkListModule {}\n","import { Component, Input, inject, isStandalone } from '@angular/core';\nimport { SkyLogService } from '@skyux/core';\nimport { SkyModalLegacyService, SkyModalService } from '@skyux/modals';\n\nimport { SkyPageModalLink } from '../action-hub/types/page-modal-link';\nimport { SkyPageModalLinksInput } from '../action-hub/types/page-modal-links-input';\n\n@Component({\n selector: 'sky-modal-link-list',\n templateUrl: './modal-link-list.component.html',\n styleUrls: ['./modal-link-list.component.scss'],\n})\nexport class SkyModalLinkListComponent {\n @Input()\n public set links(value: SkyPageModalLinksInput | undefined) {\n this.#_links = value;\n this.linksArray = Array.isArray(value) ? value : [];\n }\n\n public get links(): SkyPageModalLinksInput | undefined {\n return this.#_links;\n }\n\n @Input()\n public title: string | undefined;\n\n public linksArray: SkyPageModalLink[] = [];\n\n #_links: SkyPageModalLinksInput | undefined;\n\n readonly #logger = inject(SkyLogService, { optional: true });\n readonly #modalSvc = inject(SkyModalService);\n\n public openModal(link: SkyPageModalLink): void {\n const modal = link.modal;\n\n if (modal) {\n if (\n !(this.#modalSvc instanceof SkyModalLegacyService) &&\n !isStandalone(modal.component)\n ) {\n this.#logger\n ?.deprecated('SkyPageModalLink.modal.component not standalone', {\n deprecationMajorVersion: 9,\n replacementRecommendation: `The SkyPageModalLink.modal.component must be a standalone component in order to receive the right dependency injector context.`,\n })\n .then();\n }\n this.#modalSvc.open(modal.component, modal.config);\n }\n }\n}\n","<sky-wait [isWaiting]=\"links === 'loading'\" />\n@if (links === 'loading') {\n <ng-container [ngTemplateOutlet]=\"headingTemplateRef\" />\n} @else {\n @if (linksArray.length > 0) {\n <ng-container [ngTemplateOutlet]=\"headingTemplateRef\" />\n <ul class=\"sky-link-list\">\n @for (link of linksArray; track link) {\n <li>\n @if (link | linkAs: 'skyHref') {\n <a [skyHref]=\"link.permalink?.url\">\n {{ link.label }}\n </a>\n } @else if (link | linkAs: 'href') {\n <a [href]=\"link.permalink?.url\">\n {{ link.label }}\n </a>\n } @else if (link.permalink && link.permalink.route) {\n <a\n [skyAppLink]=\"link.permalink.route.commands\"\n [queryParams]=\"link.permalink.route.extras?.queryParams\"\n [queryParamsHandling]=\"\n link.permalink.route.extras?.queryParamsHandling\n \"\n [fragment]=\"link.permalink.route.extras?.fragment\"\n [preserveFragment]=\"link.permalink.route.extras?.preserveFragment\"\n [skipLocationChange]=\"\n link.permalink.route.extras?.skipLocationChange\n \"\n [replaceUrl]=\"link.permalink.route.extras?.replaceUrl\"\n [state]=\"link.permalink.route.extras?.state\"\n >\n {{ link.label }}\n </a>\n } @else if (link.modal) {\n <button\n class=\"sky-btn sky-btn-link-inline\"\n type=\"button\"\n (click)=\"openModal(link)\"\n >\n {{ link.label }}\n </button>\n }\n </li>\n }\n </ul>\n }\n}\n\n<ng-template #headingTemplateRef>\n <h2 class=\"sky-font-heading-4\">\n {{ title }}\n </h2>\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyWaitModule } from '@skyux/indicators';\nimport { SkyAppLinkModule, SkyHrefModule } from '@skyux/router';\n\nimport { LinkAsModule } from '../link-as/link-as.module';\n\nimport { SkyModalLinkListComponent } from './modal-link-list.component';\n\n@NgModule({\n declarations: [SkyModalLinkListComponent],\n exports: [SkyModalLinkListComponent],\n imports: [\n CommonModule,\n SkyAppLinkModule,\n SkyHrefModule,\n SkyWaitModule,\n LinkAsModule,\n ],\n})\nexport class SkyModalLinkListModule {}\n","/* istanbul ignore file */\n\n/**\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-pages' 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 SkyLibResourcesService,\n getLibStringForLocale,\n} from '@skyux/i18n';\n\nconst RESOURCES: Record<string, SkyLibResources> = {\n 'EN-US': {\n sky_action_hub_related_links: { message: 'Related links' },\n sky_action_hub_recent_links: { message: 'Recently accessed' },\n sky_action_hub_settings_links: { message: 'Settings' },\n sky_action_hub_needs_attention: { message: 'Needs attention' },\n sky_action_hub_needs_attention_empty: {\n message: 'No issues currently need attention',\n },\n },\n};\n\nSkyLibResourcesService.addResources(RESOURCES);\n\nexport class SkyPagesResourcesProvider 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: SkyPagesResourcesProvider,\n multi: true,\n },\n ],\n})\nexport class SkyPagesResourcesModule {}\n","import { Component, Input, inject } from '@angular/core';\nimport { SkyLogService } from '@skyux/core';\n\nimport { SkyActionHubNeedsAttention } from '../action-hub/types/action-hub-needs-attention';\n\n@Component({\n selector: 'sky-needs-attention',\n templateUrl: './needs-attention.component.html',\n styleUrls: ['./needs-attention.component.scss'],\n})\nexport class SkyNeedsAttentionComponent {\n @Input()\n public set items(value: SkyActionHubNeedsAttention[] | undefined) {\n this.#items = value;\n if (value?.some((c: SkyActionHubNeedsAttention) => c.message)) {\n this.#logService.deprecated(`SkyActionHubNeedsAttention.message`, {\n deprecationMajorVersion: 7,\n replacementRecommendation: 'Use `title` instead.',\n moreInfoUrl:\n 'https://developer.blackbaud.com/skyux/components/action-hub?docs-active-tab=development#interface-skyactionhubneedsattention',\n });\n }\n }\n public get items(): SkyActionHubNeedsAttention[] | undefined {\n return this.#items;\n }\n\n #items: SkyActionHubNeedsAttention[] | undefined;\n #logService = inject(SkyLogService);\n}\n","<sky-box>\n <sky-box-header>\n <h2 class=\"sky-font-heading-2\">\n {{ 'sky_action_hub_needs_attention' | skyLibResources }}\n </h2>\n </sky-box-header>\n <sky-box-content>\n @if (items?.length === 0) {\n {{ 'sky_action_hub_needs_attention_empty' | skyLibResources }}\n } @else {\n <ul>\n @for (item of items; track item; let isLast = $last) {\n <li\n class=\"sky-needs-attention-item-wrapper sky-font-emphasized\"\n [ngClass]=\"{\n 'sky-border-bottom-row': !isLast\n }\"\n >\n @if (\n (item | linkAs: 'skyAppLink') && item.permalink?.route;\n as permalinkRoute\n ) {\n <a\n class=\"sky-needs-attention-item\"\n [skyAppLink]=\"permalinkRoute.commands\"\n [queryParams]=\"permalinkRoute.extras?.queryParams\"\n [queryParamsHandling]=\"\n permalinkRoute.extras?.queryParamsHandling\n \"\n [fragment]=\"permalinkRoute.extras?.fragment\"\n [preserveFragment]=\"permalinkRoute.extras?.preserveFragment\"\n [skipLocationChange]=\"permalinkRoute.extras?.skipLocationChange\"\n [replaceUrl]=\"permalinkRoute.extras?.replaceUrl\"\n [state]=\"permalinkRoute.extras?.state\"\n >{{ item.title }} {{ item.message }}</a\n >\n } @else if (item.permalink) {\n @if (item | linkAs: 'skyHref') {\n <a\n class=\"sky-needs-attention-item\"\n [skyHref]=\"item.permalink.url\"\n >{{ item.title }} {{ item.message }}</a\n >\n } @else if (item | linkAs: 'href') {\n <a class=\"sky-needs-attention-item\" [href]=\"item.permalink.url\"\n >{{ item.title }} {{ item.message }}</a\n >\n }\n } @else if (item | linkAs: 'button') {\n <button\n class=\"sky-needs-attention-item sky-btn sky-btn-link-inline\"\n type=\"button\"\n (click)=\"item?.click({ item })\"\n >\n {{ item.title }} {{ item.message }}\n </button>\n }\n <sky-icon\n *skyThemeIf=\"'default'\"\n class=\"sky-needs-attention-item-icon\"\n icon=\"caret-right\"\n />\n <sky-icon\n *skyThemeIf=\"'modern'\"\n class=\"sky-needs-attention-item-icon\"\n icon=\"chevron-right\"\n />\n </li>\n }\n </ul>\n }\n </sky-box-content>\n</sky-box>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyTrimModule } from '@skyux/core';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyWaitModule } from '@skyux/indicators';\nimport { SkyBoxModule } from '@skyux/layout';\nimport { SkyAppLinkModule, SkyHrefModule } from '@skyux/router';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { LinkAsModule } from '../link-as/link-as.module';\nimport { SkyPagesResourcesModule } from '../shared/sky-pages-resources.module';\n\nimport { SkyNeedsAttentionComponent } from './needs-attention.component';\n\n@NgModule({\n declarations: [SkyNeedsAttentionComponent],\n exports: [SkyNeedsAttentionComponent],\n imports: [\n CommonModule,\n SkyAppLinkModule,\n SkyBoxModule,\n SkyHrefModule,\n SkyIconModule,\n SkyPagesResourcesModule,\n SkyThemeModule,\n SkyTrimModule,\n SkyWaitModule,\n LinkAsModule,\n ],\n})\nexport class SkyNeedsAttentionModule {}\n","import { Component } from '@angular/core';\n\n/**\n * Displays buttons within the page header for page actions and applies spacing between buttons.\n * Appears below the page header details.\n */\n@Component({\n selector: 'sky-page-header-actions',\n templateUrl: './page-header-actions.component.html',\n styleUrls: ['./page-header-actions.component.scss'],\n})\nexport class SkyPageHeaderActionsComponent {}\n","<ng-content />\n","import { Component } from '@angular/core';\n\n/**\n * Displays alerts within the page header and applies spacing between alerts. Appears above the page title.\n */\n@Component({\n selector: 'sky-page-header-alerts',\n templateUrl: './page-header-alerts.component.html',\n styleUrls: ['./page-header-alerts.component.scss'],\n})\nexport class SkyPageHeaderAlertsComponent {}\n","<ng-content />\n","import { Component, OnDestroy, inject } from '@angular/core';\nimport {\n SkyDefaultInputProvider,\n SkyMediaBreakpoints,\n SkyMediaQueryService,\n} from '@skyux/core';\n\nimport { Subscription } from 'rxjs';\n\n/**\n * Displays an avatar within the page header to the left of the page title.\n * If no size is specified for the avatar component it will display at size\n * small on xs breakpoints and size large on small and above breakpoints.\n */\n@Component({\n selector: 'sky-page-header-avatar',\n templateUrl: './page-header-avatar.component.html',\n styleUrls: ['./page-header-avatar.component.scss'],\n providers: [SkyDefaultInputProvider],\n})\nexport class SkyPageHeaderAvatarComponent implements OnDestroy {\n #defaultInputProvider = inject(SkyDefaultInputProvider);\n #mediaQueryService = inject(SkyMediaQueryService);\n #mediaQuerySubscription: Subscription;\n\n constructor() {\n this.#mediaQuerySubscription = this.#mediaQueryService.subscribe(\n (args: SkyMediaBreakpoints) => {\n if (args === SkyMediaBreakpoints.xs) {\n this.#defaultInputProvider.setValue('avatar', 'size', 'small');\n } else {\n this.#defaultInputProvider.setValue('avatar', 'size', 'large');\n }\n },\n );\n }\n\n public ngOnDestroy(): void {\n this.#mediaQuerySubscription.unsubscribe();\n }\n}\n","<ng-content />\n","import { Component } from '@angular/core';\n\n/**\n * Displays additional information in the page header, like record details.\n * Appears below the title and above the page actions.\n */\n@Component({\n selector: 'sky-page-header-details',\n templateUrl: './page-header-details.component.html',\n styleUrls: ['./page-header-details.component.scss'],\n})\nexport class SkyPageHeaderDetailsComponent {}\n","<ng-content />\n","import {\n Component,\n ElementRef,\n Input,\n OnDestroy,\n OnInit,\n inject,\n} from '@angular/core';\nimport {\n SkyMediaQueryService,\n SkyResizeObserverMediaQueryService,\n} from '@skyux/core';\n\nimport { SkyPageLink } from '../action-hub/types/page-link';\n\nlet parentLink: SkyPageLink;\n\n/**\n * Displays page heading's contents using spacing that corresponds to the parent page's layout\n */\n@Component({\n selector: 'sky-page-header',\n templateUrl: './page-header.component.html',\n styleUrls: ['./page-header.component.scss'],\n providers: [\n SkyResizeObserverMediaQueryService,\n {\n provide: SkyMediaQueryService,\n useExisting: SkyResizeObserverMediaQueryService,\n },\n ],\n})\nexport class SkyPageHeaderComponent implements OnInit, OnDestroy {\n /**\n * A link to the parent page of the current page.\n */\n @Input()\n public parentLink?: typeof parentLink;\n\n /**\n * The title of the current page.\n */\n @Input()\n public pageTitle!: string;\n\n #elementRef = inject(ElementRef);\n #mediaQueryService = inject(SkyResizeObserverMediaQueryService);\n\n public ngOnInit(): void {\n this.#mediaQueryService.observe(this.#elementRef, {\n updateResponsiveClasses: true,\n });\n }\n\n public ngOnDestroy(): void {\n this.#mediaQueryService.unobserve();\n }\n}\n","<div class=\"sky-page-header\">\n <ng-content select=\"sky-page-header-alerts\" />\n <div class=\"sky-page-header-info\">\n <ng-content select=\"sky-page-header-avatar\" />\n <div>\n <h1 class=\"sky-page-header-text\">\n @if (parentLink) {\n <span class=\"sky-page-header-parent-link-wrapper\">\n @if (parentLink.permalink?.route; as permalinkRoute) {\n <a\n class=\"sky-font-heading-1 sky-page-header-parent-link\"\n [skyAppLink]=\"permalinkRoute.commands\"\n [queryParams]=\"permalinkRoute.extras?.queryParams\"\n [queryParamsHandling]=\"\n permalinkRoute.extras?.queryParamsHandling\n \"\n [fragment]=\"permalinkRoute.extras?.fragment\"\n [preserveFragment]=\"permalinkRoute.extras?.preserveFragment\"\n [skipLocationChange]=\"permalinkRoute.extras?.skipLocationChange\"\n [replaceUrl]=\"permalinkRoute.extras?.replaceUrl\"\n [state]=\"permalinkRoute.extras?.state\"\n >{{ parentLink.label }}</a\n >\n } @else if (parentLink.permalink?.url) {\n <a\n class=\"sky-font-heading-1 sky-page-header-parent-link\"\n [skyHref]=\"parentLink.permalink.url\"\n >{{ parentLink.label }}</a\n >\n }\n <span class=\"sky-page-header-chevron\">\n <sky-icon icon=\"chevron-right\" />\n </span>\n </span>\n <wbr />\n }\n <span class=\"sky-page-header-page-title sky-font-heading-1\">\n {{ pageTitle }}\n </span>\n </h1>\n <div class=\"sky-page-header-content\">\n <ng-content select=\"sky-page-header-details\" />\n <ng-content select=\"sky-page-header-actions\" />\n </div>\n </div>\n </div>\n</div>\n","import { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyAppLinkModule, SkyHrefModule } from '@skyux/router';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyPageHeaderActionsComponent } from './page-header-actions.component';\nimport { SkyPageHeaderAlertsComponent } from './page-header-alerts.component';\nimport { SkyPageHeaderAvatarComponent } from './page-header-avatar.component';\nimport { SkyPageHeaderDetailsComponent } from './page-header-details.component';\nimport { SkyPageHeaderComponent } from './page-header.component';\n\n@NgModule({\n imports: [\n RouterModule,\n SkyAppLinkModule,\n SkyIconModule,\n SkyThemeModule,\n SkyHrefModule,\n ],\n declarations: [\n SkyPageHeaderActionsComponent,\n SkyPageHeaderAlertsComponent,\n SkyPageHeaderAvatarComponent,\n SkyPageHeaderComponent,\n SkyPageHeaderDetailsComponent,\n ],\n exports: [\n SkyPageHeaderActionsComponent,\n SkyPageHeaderAlertsComponent,\n SkyPageHeaderAvatarComponent,\n SkyPageHeaderComponent,\n SkyPageHeaderDetailsComponent,\n ],\n})\nexport class SkyPageHeaderModule {}\n","import { Component } from '@angular/core';\n\n/**\n * Displays buttons after the page title.\n *\n * Example:\n *\n * ```html\n * <a class=\"sky-btn sky-btn-default\" href=\"path/to/new\">New</a>\n * ```\n */\n@Component({\n selector: 'sky-action-hub-buttons',\n templateUrl: 'action-hub-buttons.component.html',\n styleUrls: ['./action-hub-buttons.component.scss'],\n})\nexport class SkyActionHubButtonsComponent {}\n","<ng-content />\n","import { Component } from '@angular/core';\n\n/**\n * Displays additional content after the action items.\n */\n@Component({\n selector: 'sky-action-hub-content',\n templateUrl: 'action-hub-content.component.html',\n})\nexport class SkyActionHubContentComponent {}\n","<ng-content />\n","import {\n ChangeDetectorRef,\n OnDestroy,\n Optional,\n Pipe,\n PipeTransform,\n} from '@angular/core';\nimport {\n SkyRecentlyAccessedGetLinksArgs,\n SkyRecentlyAccessedService,\n} from '@skyux/router';\n\nimport { Subject, Subscription } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyRecentLink } from './types/recent-link';\nimport { SkyRecentLinksInput } from './types/recent-links-input';\nimport { SkyRecentLinksResolved } from './types/recent-links-resolved';\n\nconst RECENTLY_ACCESSED_LIMIT = 5;\n\nfunction getRecentLinksSorted(\n recentLinks: SkyRecentLinksResolved,\n): SkyRecentLinksResolved {\n if (recentLinks === 'loading') {\n return 'loading';\n }\n if (!recentLinks || recentLinks.length === 0) {\n return [];\n }\n return recentLinks\n .slice(0)\n .sort((a, b) => {\n const aTime =\n a.lastAccessed instanceof Date\n ? a.lastAccessed.toISOString()\n : a.lastAccessed;\n const bTime =\n b.lastAccessed instanceof Date\n ? b.lastAccessed.toISOString()\n : b.lastAccessed;\n if (aTime === bTime) {\n return 0;\n }\n return aTime > bTime ? -1 : 1;\n })\n .slice(0, RECENTLY_ACCESSED_LIMIT);\n}\n\n@Pipe({\n name: 'skyActionHubRecentLinksResolve',\n pure: false,\n})\nexport class SkyActionHubRecentLinksResolvePipe\n implements PipeTransform, OnDestroy\n{\n #currentRecentLinks: SkyRecentLinksInput;\n\n #currentRecentLinksResolved: SkyRecentLinksResolved = [];\n\n #recentlyAccessedSub: Subscription | undefined;\n\n #ngUnsubscribe = new Subject<void>();\n\n #changeDetector: ChangeDetectorRef;\n #recentlyAccessedSvc: SkyRecentlyAccessedService | undefined;\n\n constructor(\n changeDetector: ChangeDetectorRef,\n @Optional() recentlyAccessedSvc?: SkyRecentlyAccessedService,\n ) {\n this.#changeDetector = changeDetector;\n this.#recentlyAccessedSvc = recentlyAccessedSvc;\n }\n\n public transform(recentLinks: SkyRecentLinksInput): SkyRecentLinksResolved {\n if (recentLinks !== this.#currentRecentLinks) {\n if (this.#recentlyAccessedSub) {\n this.#recentlyAccessedSub.unsubscribe();\n }\n\n this.#currentRecentLinks = recentLinks;\n\n const getLinksArgs = recentLinks as SkyRecentlyAccessedGetLinksArgs;\n\n if (getLinksArgs?.requestedRoutes) {\n this.#resolveRequestedRoutes(getLinksArgs);\n } else {\n this.#updateRecentLinksResolved(recentLinks as SkyRecentLinksResolved);\n }\n }\n\n return this.#currentRecentLinksResolved;\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n #resolveRequestedRoutes(args: SkyRecentlyAccessedGetLinksArgs): void {\n if (this.#recentlyAccessedSvc) {\n this.#updateRecentLinksResolved('loading');\n\n this.#recentlyAccessedSub = this.#recentlyAccessedSvc\n .getLinks(args)\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((result) => {\n this.#recentlyAccessedSub = undefined;\n\n const recentLinks: SkyRecentLink[] = result.links.map((item) => ({\n label: item.label,\n lastAccessed: item.lastAccessed,\n permalink: {\n url: item.url,\n },\n }));\n\n this.#updateRecentLinksResolved(recentLinks);\n });\n } else {\n this.#updateRecentLinksResolved([]);\n }\n }\n\n #updateRecentLinksResolved(\n recentLinksResolved: SkyRecentLinksResolved,\n ): void {\n this.#currentRecentLinksResolved =\n getRecentLinksSorted(recentLinksResolved);\n\n this.#changeDetector.markForCheck();\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { SkyPageLinkInterface } from './types/page-link-interface';\n\n@Pipe({\n name: 'skyActionHubRelatedLinksSort',\n})\nexport class SkyActionHubRelatedLinksSortPipe implements PipeTransform {\n public transform<T extends SkyPageLinkInterface[]>(\n relatedLinks: T | 'loading' | undefined,\n ): T | 'loading' | [] {\n if (relatedLinks === 'loading') {\n return 'loading';\n }\n if (!relatedLinks || relatedLinks.length === 0) {\n return [];\n }\n return relatedLinks.slice(0).sort((a, b) => {\n const aLabel = a.label.trim().toUpperCase();\n const bLabel = b.label.trim().toUpperCase();\n if (aLabel === bLabel) {\n return 0;\n }\n return aLabel < bLabel ? -1 : 1;\n }) as T;\n }\n}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { SkyActionHubNeedsAttention } from './types/action-hub-needs-attention';\nimport { SkyActionHubNeedsAttentionInput } from './types/action-hub-needs-attention-input';\nimport { SkyPageLink } from './types/page-link';\nimport { SkyPageLinksInput } from './types/page-links-input';\nimport { SkyPageModalLinksInput } from './types/page-modal-links-input';\nimport { SkyRecentLinksInput } from './types/recent-links-input';\n\n/**\n * Creates an action hub to direct user attention to important\n * actions and provide quick access to common tasks.\n */\n@Component({\n selector: 'sky-action-hub',\n templateUrl: './action-hub.component.html',\n styleUrls: ['./action-hub.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyActionHubComponent {\n /**\n * The list of actions that users must perform based on business requirements or best practices, or `\"loading\"` to display a wait indicator.\n */\n @Input()\n public set needsAttention(\n value: SkyActionHubNeedsAttentionInput | undefined,\n ) {\n this.#_needsAttention = value;\n this.needsAttentionArray = Array.isArray(value) ? value : [];\n }\n\n public get needsAttention(): SkyActionHubNeedsAttentionInput | undefined {\n return this.#_needsAttention;\n }\n\n /**\n * Links back to a parent page.\n */\n @Input()\n public parentLink: SkyPageLink | undefined;\n\n /**\n * The list of recently accessed links, or `\"loading\"` to display a wait indicator.\n */\n @Input()\n public recentLinks: SkyRecentLinksInput = [];\n\n /**\n * The list of related links, or `\"loading\"` to display a wait indicator.\n */\n @Input()\n public relatedLinks: SkyPageLinksInput = [];\n\n /**\n * The list of settings with modal parameters, or `\"loading\"` to display a wait indicator.\n */\n @Input()\n public settingsLinks: SkyPageModalLinksInput = [];\n\n /**\n * The page title.\n * @default \"\"\n */\n @Input()\n public title = '';\n\n public needsAttentionArray: SkyActionHubNeedsAttention[] = [];\n\n #_needsAttention: SkyActionHubNeedsAttentionInput | undefined;\n}\n","<sky-fluid-grid [disableMargin]=\"true\">\n <sky-row>\n <sky-column>\n <sky-page-header [pageTitle]=\"title\" [parentLink]=\"parentLink\" />\n </sky-column>\n </sky-row>\n <sky-row>\n <sky-column [screenLarge]=\"9\" [screenXSmall]=\"12\">\n <div class=\"sky-margin-stacked-xl\">\n <ng-content select=\"sky-action-hub-buttons\" />\n </div>\n\n <div class=\"sky-margin-stacked-xl\">\n <sky-wait [isWaiting]=\"needsAttention === 'loading'\" />\n @if (needsAttention !== 'loading') {\n <sky-needs-attention [items]=\"needsAttentionArray\" />\n }\n </div>\n\n <div class=\"sky-margin-stacked-xl\">\n <ng-content select=\"sky-action-hub-content\" />\n </div>\n </sky-column>\n <sky-column [screenLarge]=\"3\" [screenXSmall]=\"12\">\n <sky-link-list\n [links]=\"relatedLinks | skyActionHubRelatedLinksSort\"\n [title]=\"'sky_action_hub_related_links' | skyLibResources\"\n />\n <sky-link-list\n [links]=\"recentLinks | skyActionHubRecentLinksResolve\"\n [title]=\"'sky_action_hub_recent_links' | skyLibResources\"\n />\n <sky-modal-link-list\n [links]=\"settingsLinks\"\n [title]=\"'sky_action_hub_settings_links' | skyLibResources\"\n />\n </sky-column>\n </sky-row>\n</sky-fluid-grid>\n","import { NgModule } from '@angular/core';\nimport { SkyWaitModule } from '@skyux/indicators';\nimport { SkyBoxModule, SkyFluidGridModule } from '@skyux/layout';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyLinkListModule } from '../link-list/link-list.module';\nimport { SkyModalLinkListModule } from '../modal-link-list/modal-link-list.module';\nimport { SkyNeedsAttentionModule } from '../needs-attention/needs-attention.module';\nimport { SkyPageHeaderModule } from '../page-header/page-header.module';\nimport { SkyPagesResourcesModule } from '../shared/sky-pages-resources.module';\n\nimport { SkyActionHubButtonsComponent } from './action-hub-buttons.component';\nimport { SkyActionHubContentComponent } from './action-hub-content.component';\nimport { SkyActionHubRecentLinksResolvePipe } from './action-hub-recent-links-resolve.pipe';\nimport { SkyActionHubRelatedLinksSortPipe } from './action-hub-related-links-sort.pipe';\nimport { SkyActionHubComponent } from './action-hub.component';\n\n@NgModule({\n imports: [\n SkyBoxModule,\n SkyFluidGridModule,\n SkyLinkListModule,\n SkyModalLinkListModule,\n SkyNeedsAttentionModule,\n SkyPageHeaderModule,\n SkyPagesResourcesModule,\n SkyThemeModule,\n SkyWaitModule,\n ],\n declarations: [\n SkyActionHubButtonsComponent,\n SkyActionHubComponent,\n SkyActionHubContentComponent,\n SkyActionHubRecentLinksResolvePipe,\n SkyActionHubRelatedLinksSortPipe,\n ],\n exports: [\n SkyActionHubButtonsComponent,\n SkyActionHubComponent,\n SkyActionHubContentComponent,\n ],\n})\nexport class SkyActionHubModule {}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n OnDestroy,\n OnInit,\n inject,\n} from '@angular/core';\nimport {\n SkyMediaQueryService,\n SkyResizeObserverMediaQueryService,\n} from '@skyux/core';\n\n/**\n * Displays page contents using spacing that corresponds to the parent\n * page's layout.\n */\n@Component({\n selector: 'sky-page-content',\n template: `<ng-content />`,\n styleUrls: ['./page-content.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n SkyResizeObserverMediaQueryService,\n {\n provide: SkyMediaQueryService,\n useExisting: SkyResizeObserverMediaQueryService,\n },\n ],\n})\nexport class SkyPageContentComponent implements OnInit, OnDestroy {\n #elementRef = inject(ElementRef);\n #mediaQueryService = inject(SkyResizeObserverMediaQueryService);\n\n public ngOnInit(): void {\n this.#mediaQueryService.observe(this.#elementRef, {\n updateResponsiveClasses: true,\n });\n }\n\n public ngOnDestroy(): void {\n this.#mediaQueryService.unobserve();\n }\n}\n","import { DOCUMENT } from '@angular/common';\nimport { CSP_NONCE, Inject, Injectable, inject } from '@angular/core';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyPageThemeAdapterService {\n #styleEl: HTMLStyleElement | undefined;\n\n #document: Document;\n #nonce = inject(CSP_NONCE, { optional: true });\n\n constructor(@Inject(DOCUMENT) document: Document) {\n this.#document = document;\n }\n\n /**\n * We can't use ViewEncapsulation.None for this behavior because Angular does\n * not remove `style` tags from the HEAD element after route changes.\n * @see https://github.com/angular/angular/issues/16670\n */\n public addTheme(): void {\n if (!this.#styleEl) {\n this.#styleEl = this.#document.createElement('style');\n\n if (this.#nonce) {\n this.#styleEl.nonce = this.#nonce;\n }\n\n this.#styleEl.appendChild(\n this.#document.createTextNode(\n 'body:not(.sky-theme-modern) { background-color: #fff; }',\n ),\n );\n\n this.#document.head.appendChild(this.#styleEl);\n }\n }\n\n public removeTheme(): void {\n if (this.#styleEl) {\n this.#styleEl.remove();\n this.#styleEl = undefined;\n }\n }\n}\n","import {\n Component,\n HostBinding,\n Input,\n OnDestroy,\n OnInit,\n inject,\n} from '@angular/core';\nimport { SkyLayoutHostForChildArgs, SkyLayoutHostService } from '@skyux/core';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyPageThemeAdapterService } from './page-theme-adapter.service';\nimport { SkyPageLayoutType } from './types/page-layout-type';\n\nconst LAYOUT_DEFAULT: SkyPageLayoutType = 'none';\n\nconst LAYOUT_FOR_CHILD_CLASS_PREFIX = 'sky-layout-host-for-child-';\nconst LAYOUT_CLASS_PREFIX = 'sky-layout-host-';\nconst LAYOUT_CLASS_DEFAULT = `${LAYOUT_CLASS_PREFIX}${LAYOUT_DEFAULT}`;\n\n/**\n * Displays a page using the specified layout. The page component is a responsive container,\n * meaning content will respect the breakpoints within the page element instead of the window.\n * This is helpful if there is other content to the left or right of the page.\n */\n@Component({\n selector: 'sky-page',\n template: `<ng-content />`,\n providers: [SkyPageThemeAdapterService, SkyLayoutHostService],\n})\nexport class SkyPageComponent implements OnInit, OnDestroy {\n /**\n * The page layout that applies spacing to the page header and content. Use the layout\n * that corresponds with the top-level component type used on the page, or use `fit` to\n * constrain the page contents to the available viewport.\n * Use `none` for custom content that does not adhere to predefined spacing or constraints.\n * @default \"none\"\n */\n @Input()\n public set layout(value: SkyPageLayoutType | undefined) {\n this.#layout = value;\n this.#updateCssClass();\n }\n\n @HostBinding('class')\n public cssClass = LAYOUT_CLASS_DEFAULT;\n\n #layout: SkyPageLayoutType | undefined;\n #layoutForChild: SkyPageLayoutType | undefined;\n\n #ngUnsubscribe = new Subject<void>();\n\n #themeAdapter = inject(SkyPageThemeAdapterService);\n #layoutHostSvc = inject(SkyLayoutHostService);\n\n public ngOnInit(): void {\n this.#themeAdapter.addTheme();\n\n this.#layoutHostSvc.hostLayoutForChild\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((args: SkyLayoutHostForChildArgs) => {\n this.#layoutForChild = args.layout as SkyPageLayoutType;\n this.#updateCssClass();\n });\n }\n\n public ngOnDestroy(): void {\n this.#themeAdapter.removeTheme();\n\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n #updateCssClass(): void {\n let cssClass = this.#layout\n ? `${LAYOUT_CLASS_PREFIX}${this.#layout}`\n : LAYOUT_CLASS_DEFAULT;\n\n if (this.#layoutForChild) {\n cssClass = `${cssClass} ${LAYOUT_FOR_CHILD_CLASS_PREFIX}${this.#layoutForChild}`;\n }\n\n this.cssClass = cssClass;\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { SkyPageHeaderModule } from '../page-header/page-header.module';\n\nimport { SkyPageContentComponent } from './page-content.component';\nimport { SkyPageComponent } from './page.component';\n\n@NgModule({\n declarations: [SkyPageComponent, SkyPageContentComponent],\n imports: [CommonModule],\n exports: [SkyPageComponent, SkyPageHeaderModule, SkyPageContentComponent],\n})\nexport class SkyPageModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i4.LinkAsPipe","i3","i7.LinkAsPipe","i1","i2","i2.SkyLinkListComponent","i3.SkyModalLinkListComponent","i4.SkyNeedsAttentionComponent","i5.SkyPageHeaderComponent","i6","i7","i8.SkyActionHubRecentLinksResolvePipe","i9.SkyActionHubRelatedLinksSortPipe"],"mappings":"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"}
1
+ {"version":3,"file":"skyux-pages.mjs","sources":["../../../../../libs/components/pages/src/lib/modules/link-as/link-as.pipe.ts","../../../../../libs/components/pages/src/lib/modules/link-as/link-as.module.ts","../../../../../libs/components/pages/src/lib/modules/link-list/link-list.component.ts","../../../../../libs/components/pages/src/lib/modules/link-list/link-list.component.html","../../../../../libs/components/pages/src/lib/modules/link-list/link-list.module.ts","../../../../../libs/components/pages/src/lib/modules/modal-link-list/modal-link-list.component.ts","../../../../../libs/components/pages/src/lib/modules/modal-link-list/modal-link-list.component.html","../../../../../libs/components/pages/src/lib/modules/modal-link-list/modal-link-list.module.ts","../../../../../libs/components/pages/src/lib/modules/shared/sky-pages-resources.module.ts","../../../../../libs/components/pages/src/lib/modules/needs-attention/needs-attention.component.ts","../../../../../libs/components/pages/src/lib/modules/needs-attention/needs-attention.component.html","../../../../../libs/components/pages/src/lib/modules/needs-attention/needs-attention.module.ts","../../../../../libs/components/pages/src/lib/modules/page-header/page-header-actions.component.ts","../../../../../libs/components/pages/src/lib/modules/page-header/page-header-actions.component.html","../../../../../libs/components/pages/src/lib/modules/page-header/page-header-alerts.component.ts","../../../../../libs/components/pages/src/lib/modules/page-header/page-header-alerts.component.html","../../../../../libs/components/pages/src/lib/modules/page-header/page-header-avatar.component.ts","../../../../../libs/components/pages/src/lib/modules/page-header/page-header-avatar.component.html","../../../../../libs/components/pages/src/lib/modules/page-header/page-header-details.component.ts","../../../../../libs/components/pages/src/lib/modules/page-header/page-header-details.component.html","../../../../../libs/components/pages/src/lib/modules/page-header/page-header.component.ts","../../../../../libs/components/pages/src/lib/modules/page-header/page-header.component.html","../../../../../libs/components/pages/src/lib/modules/page-header/page-header.module.ts","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub-buttons.component.ts","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub-buttons.component.html","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub-content.component.ts","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub-content.component.html","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub-recent-links-resolve.pipe.ts","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub-related-links-sort.pipe.ts","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub.component.ts","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub.component.html","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub.module.ts","../../../../../libs/components/pages/src/lib/modules/page/page-content.component.ts","../../../../../libs/components/pages/src/lib/modules/page/page-theme-adapter.service.ts","../../../../../libs/components/pages/src/lib/modules/page/page.component.ts","../../../../../libs/components/pages/src/lib/modules/page/page.module.ts","../../../../../libs/components/pages/src/skyux-pages.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\n\nimport { SkyActionHubNeedsAttention } from '../action-hub/types/action-hub-needs-attention';\nimport { SkyPageLink } from '../action-hub/types/page-link';\nimport { SkyPageModalLink } from '../action-hub/types/page-modal-link';\n\n@Pipe({\n name: 'linkAs',\n})\nexport class LinkAsPipe implements PipeTransform {\n public transform(\n value:\n | SkyActionHubNeedsAttention\n | SkyPageLink\n | SkyPageModalLink\n | undefined,\n linkAs: 'button' | 'href' | 'skyHref' | 'skyAppLink' | undefined,\n ): boolean {\n const permalink = value?.permalink;\n const permalinkUrl = permalink?.url;\n\n switch (linkAs) {\n case 'button':\n return !!(value as SkyActionHubNeedsAttention)?.click && !permalink;\n case 'href':\n return permalinkUrl !== undefined && !permalinkUrl.includes('://');\n case 'skyHref':\n return permalinkUrl !== undefined && permalinkUrl.includes('://');\n case 'skyAppLink':\n return !!(permalink && permalinkUrl === undefined && permalink.route);\n default:\n return false;\n }\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { LinkAsPipe } from './link-as.pipe';\n\n@NgModule({\n declarations: [LinkAsPipe],\n exports: [LinkAsPipe],\n})\nexport class LinkAsModule {}\n","import { Component, Input } from '@angular/core';\n\nimport { SkyPageLink } from '../action-hub/types/page-link';\nimport { SkyPageLinksInput } from '../action-hub/types/page-links-input';\n\n@Component({\n selector: 'sky-link-list',\n templateUrl: './link-list.component.html',\n styleUrls: ['./link-list.component.scss'],\n})\nexport class SkyLinkListComponent {\n @Input()\n public set links(value: SkyPageLinksInput | undefined) {\n this.#_links = value;\n this.linksArray = Array.isArray(value) ? value : [];\n }\n\n public get links(): SkyPageLinksInput | undefined {\n return this.#_links;\n }\n\n @Input()\n public title: string | undefined;\n\n public linksArray: SkyPageLink[] = [];\n\n #_links: SkyPageLinksInput | undefined;\n}\n","<sky-wait [isWaiting]=\"links === 'loading'\" />\n@if (links === 'loading') {\n <ng-container [ngTemplateOutlet]=\"headingTemplateRef\" />\n} @else {\n @if (linksArray.length > 0) {\n <ng-container [ngTemplateOutlet]=\"headingTemplateRef\" />\n <ul class=\"sky-link-list\">\n @for (link of linksArray; track link) {\n <li>\n @if (link | linkAs: 'skyHref') {\n <a [skyHref]=\"link.permalink.url\">\n {{ link.label }}\n </a>\n } @else if (link | linkAs: 'href') {\n <a [href]=\"link.permalink.url\">\n {{ link.label }}\n </a>\n } @else if (link.permalink.route) {\n <a\n [skyAppLink]=\"link.permalink.route.commands\"\n [queryParams]=\"link.permalink.route.extras?.queryParams\"\n [queryParamsHandling]=\"\n link.permalink.route.extras?.queryParamsHandling\n \"\n [fragment]=\"link.permalink.route.extras?.fragment\"\n [preserveFragment]=\"link.permalink.route.extras?.preserveFragment\"\n [skipLocationChange]=\"\n link.permalink.route.extras?.skipLocationChange\n \"\n [replaceUrl]=\"link.permalink.route.extras?.replaceUrl\"\n [state]=\"link.permalink.route.extras?.state\"\n >\n {{ link.label }}\n </a>\n }\n </li>\n }\n </ul>\n }\n}\n\n<ng-template #headingTemplateRef>\n <h2 class=\"sky-font-heading-4\">\n {{ title }}\n </h2>\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyWaitModule } from '@skyux/indicators';\nimport { SkyAppLinkModule, SkyHrefModule } from '@skyux/router';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { LinkAsModule } from '../link-as/link-as.module';\n\nimport { SkyLinkListComponent } from './link-list.component';\n\n@NgModule({\n declarations: [SkyLinkListComponent],\n exports: [SkyLinkListComponent],\n imports: [\n CommonModule,\n SkyAppLinkModule,\n SkyHrefModule,\n SkyThemeModule,\n SkyWaitModule,\n LinkAsModule,\n ],\n})\nexport class SkyLinkListModule {}\n","import { Component, Input, inject, isStandalone } from '@angular/core';\nimport { SkyLogService } from '@skyux/core';\nimport { SkyModalLegacyService, SkyModalService } from '@skyux/modals';\n\nimport { SkyPageModalLink } from '../action-hub/types/page-modal-link';\nimport { SkyPageModalLinksInput } from '../action-hub/types/page-modal-links-input';\n\n@Component({\n selector: 'sky-modal-link-list',\n templateUrl: './modal-link-list.component.html',\n styleUrls: ['./modal-link-list.component.scss'],\n})\nexport class SkyModalLinkListComponent {\n @Input()\n public set links(value: SkyPageModalLinksInput | undefined) {\n this.#_links = value;\n this.linksArray = Array.isArray(value) ? value : [];\n }\n\n public get links(): SkyPageModalLinksInput | undefined {\n return this.#_links;\n }\n\n @Input()\n public title: string | undefined;\n\n public linksArray: SkyPageModalLink[] = [];\n\n #_links: SkyPageModalLinksInput | undefined;\n\n readonly #logger = inject(SkyLogService, { optional: true });\n readonly #modalSvc = inject(SkyModalService);\n\n public openModal(link: SkyPageModalLink): void {\n const modal = link.modal;\n\n if (modal) {\n if (\n !(this.#modalSvc instanceof SkyModalLegacyService) &&\n !isStandalone(modal.component)\n ) {\n this.#logger\n ?.deprecated('SkyPageModalLink.modal.component not standalone', {\n deprecationMajorVersion: 9,\n replacementRecommendation: `The SkyPageModalLink.modal.component must be a standalone component in order to receive the right dependency injector context.`,\n })\n .then();\n }\n this.#modalSvc.open(modal.component, modal.config);\n }\n }\n}\n","<sky-wait [isWaiting]=\"links === 'loading'\" />\n@if (links === 'loading') {\n <ng-container [ngTemplateOutlet]=\"headingTemplateRef\" />\n} @else {\n @if (linksArray.length > 0) {\n <ng-container [ngTemplateOutlet]=\"headingTemplateRef\" />\n <ul class=\"sky-link-list\">\n @for (link of linksArray; track link) {\n <li>\n @if (link | linkAs: 'skyHref') {\n <a [skyHref]=\"link.permalink?.url\">\n {{ link.label }}\n </a>\n } @else if (link | linkAs: 'href') {\n <a [href]=\"link.permalink?.url\">\n {{ link.label }}\n </a>\n } @else if (link.permalink && link.permalink.route) {\n <a\n [skyAppLink]=\"link.permalink.route.commands\"\n [queryParams]=\"link.permalink.route.extras?.queryParams\"\n [queryParamsHandling]=\"\n link.permalink.route.extras?.queryParamsHandling\n \"\n [fragment]=\"link.permalink.route.extras?.fragment\"\n [preserveFragment]=\"link.permalink.route.extras?.preserveFragment\"\n [skipLocationChange]=\"\n link.permalink.route.extras?.skipLocationChange\n \"\n [replaceUrl]=\"link.permalink.route.extras?.replaceUrl\"\n [state]=\"link.permalink.route.extras?.state\"\n >\n {{ link.label }}\n </a>\n } @else if (link.modal) {\n <button\n class=\"sky-btn sky-btn-link-inline\"\n type=\"button\"\n (click)=\"openModal(link)\"\n >\n {{ link.label }}\n </button>\n }\n </li>\n }\n </ul>\n }\n}\n\n<ng-template #headingTemplateRef>\n <h2 class=\"sky-font-heading-4\">\n {{ title }}\n </h2>\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyWaitModule } from '@skyux/indicators';\nimport { SkyAppLinkModule, SkyHrefModule } from '@skyux/router';\n\nimport { LinkAsModule } from '../link-as/link-as.module';\n\nimport { SkyModalLinkListComponent } from './modal-link-list.component';\n\n@NgModule({\n declarations: [SkyModalLinkListComponent],\n exports: [SkyModalLinkListComponent],\n imports: [\n CommonModule,\n SkyAppLinkModule,\n SkyHrefModule,\n SkyWaitModule,\n LinkAsModule,\n ],\n})\nexport class SkyModalLinkListModule {}\n","/* istanbul ignore file */\n\n/**\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-pages' 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 SkyLibResourcesService,\n getLibStringForLocale,\n} from '@skyux/i18n';\n\nconst RESOURCES: Record<string, SkyLibResources> = {\n 'EN-US': {\n sky_action_hub_related_links: { message: 'Related links' },\n sky_action_hub_recent_links: { message: 'Recently accessed' },\n sky_action_hub_settings_links: { message: 'Settings' },\n sky_action_hub_needs_attention: { message: 'Needs attention' },\n sky_action_hub_needs_attention_empty: {\n message: 'No issues currently need attention',\n },\n },\n};\n\nSkyLibResourcesService.addResources(RESOURCES);\n\nexport class SkyPagesResourcesProvider 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: SkyPagesResourcesProvider,\n multi: true,\n },\n ],\n})\nexport class SkyPagesResourcesModule {}\n","import { Component, Input, inject } from '@angular/core';\nimport { SkyLogService } from '@skyux/core';\n\nimport { SkyActionHubNeedsAttention } from '../action-hub/types/action-hub-needs-attention';\n\n@Component({\n selector: 'sky-needs-attention',\n templateUrl: './needs-attention.component.html',\n styleUrls: ['./needs-attention.component.scss'],\n})\nexport class SkyNeedsAttentionComponent {\n @Input()\n public set items(value: SkyActionHubNeedsAttention[] | undefined) {\n this.#items = value;\n if (value?.some((c: SkyActionHubNeedsAttention) => c.message)) {\n this.#logService.deprecated(`SkyActionHubNeedsAttention.message`, {\n deprecationMajorVersion: 7,\n replacementRecommendation: 'Use `title` instead.',\n moreInfoUrl:\n 'https://developer.blackbaud.com/skyux/components/action-hub?docs-active-tab=development#interface-skyactionhubneedsattention',\n });\n }\n }\n public get items(): SkyActionHubNeedsAttention[] | undefined {\n return this.#items;\n }\n\n #items: SkyActionHubNeedsAttention[] | undefined;\n #logService = inject(SkyLogService);\n}\n","<sky-box>\n <sky-box-header>\n <h2 class=\"sky-font-heading-2\">\n {{ 'sky_action_hub_needs_attention' | skyLibResources }}\n </h2>\n </sky-box-header>\n <sky-box-content>\n @if (items?.length === 0) {\n {{ 'sky_action_hub_needs_attention_empty' | skyLibResources }}\n } @else {\n <ul>\n @for (item of items; track item; let isLast = $last) {\n <li\n class=\"sky-needs-attention-item-wrapper sky-font-emphasized\"\n [ngClass]=\"{\n 'sky-border-bottom-row': !isLast\n }\"\n >\n @if (\n (item | linkAs: 'skyAppLink') && item.permalink?.route;\n as permalinkRoute\n ) {\n <a\n class=\"sky-needs-attention-item\"\n [skyAppLink]=\"permalinkRoute.commands\"\n [queryParams]=\"permalinkRoute.extras?.queryParams\"\n [queryParamsHandling]=\"\n permalinkRoute.extras?.queryParamsHandling\n \"\n [fragment]=\"permalinkRoute.extras?.fragment\"\n [preserveFragment]=\"permalinkRoute.extras?.preserveFragment\"\n [skipLocationChange]=\"permalinkRoute.extras?.skipLocationChange\"\n [replaceUrl]=\"permalinkRoute.extras?.replaceUrl\"\n [state]=\"permalinkRoute.extras?.state\"\n >{{ item.title }} {{ item.message }}</a\n >\n } @else if (item.permalink) {\n @if (item | linkAs: 'skyHref') {\n <a\n class=\"sky-needs-attention-item\"\n [skyHref]=\"item.permalink.url\"\n >{{ item.title }} {{ item.message }}</a\n >\n } @else if (item | linkAs: 'href') {\n <a class=\"sky-needs-attention-item\" [href]=\"item.permalink.url\"\n >{{ item.title }} {{ item.message }}</a\n >\n }\n } @else if (item | linkAs: 'button') {\n <button\n class=\"sky-needs-attention-item sky-btn sky-btn-link-inline\"\n type=\"button\"\n (click)=\"item?.click({ item })\"\n >\n {{ item.title }} {{ item.message }}\n </button>\n }\n <sky-icon\n *skyThemeIf=\"'default'\"\n class=\"sky-needs-attention-item-icon\"\n icon=\"caret-right\"\n />\n <sky-icon\n *skyThemeIf=\"'modern'\"\n class=\"sky-needs-attention-item-icon\"\n icon=\"chevron-right\"\n />\n </li>\n }\n </ul>\n }\n </sky-box-content>\n</sky-box>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyTrimModule } from '@skyux/core';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyWaitModule } from '@skyux/indicators';\nimport { SkyBoxModule } from '@skyux/layout';\nimport { SkyAppLinkModule, SkyHrefModule } from '@skyux/router';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { LinkAsModule } from '../link-as/link-as.module';\nimport { SkyPagesResourcesModule } from '../shared/sky-pages-resources.module';\n\nimport { SkyNeedsAttentionComponent } from './needs-attention.component';\n\n@NgModule({\n declarations: [SkyNeedsAttentionComponent],\n exports: [SkyNeedsAttentionComponent],\n imports: [\n CommonModule,\n SkyAppLinkModule,\n SkyBoxModule,\n SkyHrefModule,\n SkyIconModule,\n SkyPagesResourcesModule,\n SkyThemeModule,\n SkyTrimModule,\n SkyWaitModule,\n LinkAsModule,\n ],\n})\nexport class SkyNeedsAttentionModule {}\n","import { Component } from '@angular/core';\n\n/**\n * Displays buttons within the page header for page actions and applies spacing between buttons.\n * Appears below the page header details.\n */\n@Component({\n selector: 'sky-page-header-actions',\n templateUrl: './page-header-actions.component.html',\n styleUrls: ['./page-header-actions.component.scss'],\n})\nexport class SkyPageHeaderActionsComponent {}\n","<ng-content />\n","import { Component } from '@angular/core';\n\n/**\n * Displays alerts within the page header and applies spacing between alerts. Appears above the page title.\n */\n@Component({\n selector: 'sky-page-header-alerts',\n templateUrl: './page-header-alerts.component.html',\n styleUrls: ['./page-header-alerts.component.scss'],\n})\nexport class SkyPageHeaderAlertsComponent {}\n","<ng-content />\n","import { Component, OnDestroy, inject } from '@angular/core';\nimport {\n SkyDefaultInputProvider,\n SkyMediaBreakpoints,\n SkyMediaQueryService,\n} from '@skyux/core';\n\nimport { Subscription } from 'rxjs';\n\n/**\n * Displays an avatar within the page header to the left of the page title.\n * If no size is specified for the avatar component it will display at size\n * small on xs breakpoints and size large on small and above breakpoints.\n */\n@Component({\n selector: 'sky-page-header-avatar',\n templateUrl: './page-header-avatar.component.html',\n styleUrls: ['./page-header-avatar.component.scss'],\n providers: [SkyDefaultInputProvider],\n})\nexport class SkyPageHeaderAvatarComponent implements OnDestroy {\n #defaultInputProvider = inject(SkyDefaultInputProvider);\n #mediaQueryService = inject(SkyMediaQueryService);\n #mediaQuerySubscription: Subscription;\n\n constructor() {\n this.#mediaQuerySubscription = this.#mediaQueryService.subscribe(\n (args: SkyMediaBreakpoints) => {\n if (args === SkyMediaBreakpoints.xs) {\n this.#defaultInputProvider.setValue('avatar', 'size', 'small');\n } else {\n this.#defaultInputProvider.setValue('avatar', 'size', 'large');\n }\n },\n );\n }\n\n public ngOnDestroy(): void {\n this.#mediaQuerySubscription.unsubscribe();\n }\n}\n","<ng-content />\n","import { Component } from '@angular/core';\n\n/**\n * Displays additional information in the page header, like record details.\n * Appears below the title and above the page actions.\n */\n@Component({\n selector: 'sky-page-header-details',\n templateUrl: './page-header-details.component.html',\n styleUrls: ['./page-header-details.component.scss'],\n})\nexport class SkyPageHeaderDetailsComponent {}\n","<ng-content />\n","import {\n Component,\n ElementRef,\n Input,\n OnDestroy,\n OnInit,\n inject,\n} from '@angular/core';\nimport {\n SkyMediaQueryService,\n SkyResizeObserverMediaQueryService,\n} from '@skyux/core';\n\nimport { SkyPageLink } from '../action-hub/types/page-link';\n\nlet parentLink: SkyPageLink;\n\n/**\n * Displays page heading's contents using spacing that corresponds to the parent page's layout\n */\n@Component({\n selector: 'sky-page-header',\n templateUrl: './page-header.component.html',\n styleUrls: ['./page-header.component.scss'],\n providers: [\n SkyResizeObserverMediaQueryService,\n {\n provide: SkyMediaQueryService,\n useExisting: SkyResizeObserverMediaQueryService,\n },\n ],\n})\nexport class SkyPageHeaderComponent implements OnInit, OnDestroy {\n /**\n * A link to the parent page of the current page.\n */\n @Input()\n public parentLink?: typeof parentLink;\n\n /**\n * The title of the current page.\n */\n @Input()\n public pageTitle!: string;\n\n #elementRef = inject(ElementRef);\n #mediaQueryService = inject(SkyResizeObserverMediaQueryService);\n\n public ngOnInit(): void {\n this.#mediaQueryService.observe(this.#elementRef, {\n updateResponsiveClasses: true,\n });\n }\n\n public ngOnDestroy(): void {\n this.#mediaQueryService.unobserve();\n }\n}\n","<div class=\"sky-page-header\">\n <ng-content select=\"sky-page-header-alerts\" />\n <div class=\"sky-page-header-info\">\n <ng-content select=\"sky-page-header-avatar\" />\n <div>\n <h1 class=\"sky-page-header-text\">\n @if (parentLink) {\n <span class=\"sky-page-header-parent-link-wrapper\">\n @if (parentLink.permalink?.route; as permalinkRoute) {\n <a\n class=\"sky-font-heading-1 sky-page-header-parent-link\"\n [skyAppLink]=\"permalinkRoute.commands\"\n [queryParams]=\"permalinkRoute.extras?.queryParams\"\n [queryParamsHandling]=\"\n permalinkRoute.extras?.queryParamsHandling\n \"\n [fragment]=\"permalinkRoute.extras?.fragment\"\n [preserveFragment]=\"permalinkRoute.extras?.preserveFragment\"\n [skipLocationChange]=\"permalinkRoute.extras?.skipLocationChange\"\n [replaceUrl]=\"permalinkRoute.extras?.replaceUrl\"\n [state]=\"permalinkRoute.extras?.state\"\n >{{ parentLink.label }}</a\n >\n } @else if (parentLink.permalink?.url) {\n <a\n class=\"sky-font-heading-1 sky-page-header-parent-link\"\n [skyHref]=\"parentLink.permalink.url\"\n >{{ parentLink.label }}</a\n >\n }\n <span class=\"sky-page-header-chevron\">\n <sky-icon icon=\"chevron-right\" />\n </span>\n </span>\n <wbr />\n }\n <span class=\"sky-page-header-page-title sky-font-heading-1\">\n {{ pageTitle }}\n </span>\n </h1>\n <div class=\"sky-page-header-content\">\n <ng-content select=\"sky-page-header-details\" />\n <ng-content select=\"sky-page-header-actions\" />\n </div>\n </div>\n </div>\n</div>\n","import { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyAppLinkModule, SkyHrefModule } from '@skyux/router';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyPageHeaderActionsComponent } from './page-header-actions.component';\nimport { SkyPageHeaderAlertsComponent } from './page-header-alerts.component';\nimport { SkyPageHeaderAvatarComponent } from './page-header-avatar.component';\nimport { SkyPageHeaderDetailsComponent } from './page-header-details.component';\nimport { SkyPageHeaderComponent } from './page-header.component';\n\n@NgModule({\n imports: [\n RouterModule,\n SkyAppLinkModule,\n SkyIconModule,\n SkyThemeModule,\n SkyHrefModule,\n ],\n declarations: [\n SkyPageHeaderActionsComponent,\n SkyPageHeaderAlertsComponent,\n SkyPageHeaderAvatarComponent,\n SkyPageHeaderComponent,\n SkyPageHeaderDetailsComponent,\n ],\n exports: [\n SkyPageHeaderActionsComponent,\n SkyPageHeaderAlertsComponent,\n SkyPageHeaderAvatarComponent,\n SkyPageHeaderComponent,\n SkyPageHeaderDetailsComponent,\n ],\n})\nexport class SkyPageHeaderModule {}\n","import { Component } from '@angular/core';\n\n/**\n * Displays buttons after the page title.\n *\n * Example:\n *\n * ```html\n * <a class=\"sky-btn sky-btn-default\" href=\"path/to/new\">New</a>\n * ```\n */\n@Component({\n selector: 'sky-action-hub-buttons',\n templateUrl: 'action-hub-buttons.component.html',\n styleUrls: ['./action-hub-buttons.component.scss'],\n})\nexport class SkyActionHubButtonsComponent {}\n","<ng-content />\n","import { Component } from '@angular/core';\n\n/**\n * Displays additional content after the action items.\n */\n@Component({\n selector: 'sky-action-hub-content',\n templateUrl: 'action-hub-content.component.html',\n})\nexport class SkyActionHubContentComponent {}\n","<ng-content />\n","import {\n ChangeDetectorRef,\n OnDestroy,\n Optional,\n Pipe,\n PipeTransform,\n} from '@angular/core';\nimport {\n SkyRecentlyAccessedGetLinksArgs,\n SkyRecentlyAccessedService,\n} from '@skyux/router';\n\nimport { Subject, Subscription } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyRecentLink } from './types/recent-link';\nimport { SkyRecentLinksInput } from './types/recent-links-input';\nimport { SkyRecentLinksResolved } from './types/recent-links-resolved';\n\nconst RECENTLY_ACCESSED_LIMIT = 5;\n\nfunction getRecentLinksSorted(\n recentLinks: SkyRecentLinksResolved,\n): SkyRecentLinksResolved {\n if (recentLinks === 'loading') {\n return 'loading';\n }\n if (!recentLinks || recentLinks.length === 0) {\n return [];\n }\n return recentLinks\n .slice(0)\n .sort((a, b) => {\n const aTime =\n a.lastAccessed instanceof Date\n ? a.lastAccessed.toISOString()\n : a.lastAccessed;\n const bTime =\n b.lastAccessed instanceof Date\n ? b.lastAccessed.toISOString()\n : b.lastAccessed;\n if (aTime === bTime) {\n return 0;\n }\n return aTime > bTime ? -1 : 1;\n })\n .slice(0, RECENTLY_ACCESSED_LIMIT);\n}\n\n@Pipe({\n name: 'skyActionHubRecentLinksResolve',\n pure: false,\n})\nexport class SkyActionHubRecentLinksResolvePipe\n implements PipeTransform, OnDestroy\n{\n #currentRecentLinks: SkyRecentLinksInput;\n\n #currentRecentLinksResolved: SkyRecentLinksResolved = [];\n\n #recentlyAccessedSub: Subscription | undefined;\n\n #ngUnsubscribe = new Subject<void>();\n\n #changeDetector: ChangeDetectorRef;\n #recentlyAccessedSvc: SkyRecentlyAccessedService | undefined;\n\n constructor(\n changeDetector: ChangeDetectorRef,\n @Optional() recentlyAccessedSvc?: SkyRecentlyAccessedService,\n ) {\n this.#changeDetector = changeDetector;\n this.#recentlyAccessedSvc = recentlyAccessedSvc;\n }\n\n public transform(recentLinks: SkyRecentLinksInput): SkyRecentLinksResolved {\n if (recentLinks !== this.#currentRecentLinks) {\n if (this.#recentlyAccessedSub) {\n this.#recentlyAccessedSub.unsubscribe();\n }\n\n this.#currentRecentLinks = recentLinks;\n\n const getLinksArgs = recentLinks as SkyRecentlyAccessedGetLinksArgs;\n\n if (getLinksArgs?.requestedRoutes) {\n this.#resolveRequestedRoutes(getLinksArgs);\n } else {\n this.#updateRecentLinksResolved(recentLinks as SkyRecentLinksResolved);\n }\n }\n\n return this.#currentRecentLinksResolved;\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n #resolveRequestedRoutes(args: SkyRecentlyAccessedGetLinksArgs): void {\n if (this.#recentlyAccessedSvc) {\n this.#updateRecentLinksResolved('loading');\n\n this.#recentlyAccessedSub = this.#recentlyAccessedSvc\n .getLinks(args)\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((result) => {\n this.#recentlyAccessedSub = undefined;\n\n const recentLinks: SkyRecentLink[] = result.links.map((item) => ({\n label: item.label,\n lastAccessed: item.lastAccessed,\n permalink: {\n url: item.url,\n },\n }));\n\n this.#updateRecentLinksResolved(recentLinks);\n });\n } else {\n this.#updateRecentLinksResolved([]);\n }\n }\n\n #updateRecentLinksResolved(\n recentLinksResolved: SkyRecentLinksResolved,\n ): void {\n this.#currentRecentLinksResolved =\n getRecentLinksSorted(recentLinksResolved);\n\n this.#changeDetector.markForCheck();\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { SkyPageLinkInterface } from './types/page-link-interface';\n\n@Pipe({\n name: 'skyActionHubRelatedLinksSort',\n})\nexport class SkyActionHubRelatedLinksSortPipe implements PipeTransform {\n public transform<T extends SkyPageLinkInterface[]>(\n relatedLinks: T | 'loading' | undefined,\n ): T | 'loading' | [] {\n if (relatedLinks === 'loading') {\n return 'loading';\n }\n if (!relatedLinks || relatedLinks.length === 0) {\n return [];\n }\n return relatedLinks.slice(0).sort((a, b) => {\n const aLabel = a.label.trim().toUpperCase();\n const bLabel = b.label.trim().toUpperCase();\n if (aLabel === bLabel) {\n return 0;\n }\n return aLabel < bLabel ? -1 : 1;\n }) as T;\n }\n}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { SkyActionHubNeedsAttention } from './types/action-hub-needs-attention';\nimport { SkyActionHubNeedsAttentionInput } from './types/action-hub-needs-attention-input';\nimport { SkyPageLink } from './types/page-link';\nimport { SkyPageLinksInput } from './types/page-links-input';\nimport { SkyPageModalLinksInput } from './types/page-modal-links-input';\nimport { SkyRecentLinksInput } from './types/recent-links-input';\n\n/**\n * Creates an action hub to direct user attention to important\n * actions and provide quick access to common tasks.\n */\n@Component({\n selector: 'sky-action-hub',\n templateUrl: './action-hub.component.html',\n styleUrls: ['./action-hub.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyActionHubComponent {\n /**\n * The list of actions that users must perform based on business requirements or best practices, or `\"loading\"` to display a wait indicator.\n */\n @Input()\n public set needsAttention(\n value: SkyActionHubNeedsAttentionInput | undefined,\n ) {\n this.#_needsAttention = value;\n this.needsAttentionArray = Array.isArray(value) ? value : [];\n }\n\n public get needsAttention(): SkyActionHubNeedsAttentionInput | undefined {\n return this.#_needsAttention;\n }\n\n /**\n * Links back to a parent page.\n */\n @Input()\n public parentLink: SkyPageLink | undefined;\n\n /**\n * The list of recently accessed links, or `\"loading\"` to display a wait indicator.\n */\n @Input()\n public recentLinks: SkyRecentLinksInput = [];\n\n /**\n * The list of related links, or `\"loading\"` to display a wait indicator.\n */\n @Input()\n public relatedLinks: SkyPageLinksInput = [];\n\n /**\n * The list of settings with modal parameters, or `\"loading\"` to display a wait indicator.\n */\n @Input()\n public settingsLinks: SkyPageModalLinksInput = [];\n\n /**\n * The page title.\n * @default \"\"\n */\n @Input()\n public title = '';\n\n public needsAttentionArray: SkyActionHubNeedsAttention[] = [];\n\n #_needsAttention: SkyActionHubNeedsAttentionInput | undefined;\n}\n","<sky-fluid-grid [disableMargin]=\"true\">\n <sky-row>\n <sky-column>\n <sky-page-header [pageTitle]=\"title\" [parentLink]=\"parentLink\" />\n </sky-column>\n </sky-row>\n <sky-row>\n <sky-column [screenLarge]=\"9\" [screenXSmall]=\"12\">\n <div class=\"sky-margin-stacked-xl\">\n <ng-content select=\"sky-action-hub-buttons\" />\n </div>\n\n <div class=\"sky-margin-stacked-xl\">\n <sky-wait [isWaiting]=\"needsAttention === 'loading'\" />\n @if (needsAttention !== 'loading') {\n <sky-needs-attention [items]=\"needsAttentionArray\" />\n }\n </div>\n\n <div class=\"sky-margin-stacked-xl\">\n <ng-content select=\"sky-action-hub-content\" />\n </div>\n </sky-column>\n <sky-column [screenLarge]=\"3\" [screenXSmall]=\"12\">\n <sky-link-list\n [links]=\"relatedLinks | skyActionHubRelatedLinksSort\"\n [title]=\"'sky_action_hub_related_links' | skyLibResources\"\n />\n <sky-link-list\n [links]=\"recentLinks | skyActionHubRecentLinksResolve\"\n [title]=\"'sky_action_hub_recent_links' | skyLibResources\"\n />\n <sky-modal-link-list\n [links]=\"settingsLinks\"\n [title]=\"'sky_action_hub_settings_links' | skyLibResources\"\n />\n </sky-column>\n </sky-row>\n</sky-fluid-grid>\n","import { NgModule } from '@angular/core';\nimport { SkyWaitModule } from '@skyux/indicators';\nimport { SkyBoxModule, SkyFluidGridModule } from '@skyux/layout';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyLinkListModule } from '../link-list/link-list.module';\nimport { SkyModalLinkListModule } from '../modal-link-list/modal-link-list.module';\nimport { SkyNeedsAttentionModule } from '../needs-attention/needs-attention.module';\nimport { SkyPageHeaderModule } from '../page-header/page-header.module';\nimport { SkyPagesResourcesModule } from '../shared/sky-pages-resources.module';\n\nimport { SkyActionHubButtonsComponent } from './action-hub-buttons.component';\nimport { SkyActionHubContentComponent } from './action-hub-content.component';\nimport { SkyActionHubRecentLinksResolvePipe } from './action-hub-recent-links-resolve.pipe';\nimport { SkyActionHubRelatedLinksSortPipe } from './action-hub-related-links-sort.pipe';\nimport { SkyActionHubComponent } from './action-hub.component';\n\n@NgModule({\n imports: [\n SkyBoxModule,\n SkyFluidGridModule,\n SkyLinkListModule,\n SkyModalLinkListModule,\n SkyNeedsAttentionModule,\n SkyPageHeaderModule,\n SkyPagesResourcesModule,\n SkyThemeModule,\n SkyWaitModule,\n ],\n declarations: [\n SkyActionHubButtonsComponent,\n SkyActionHubComponent,\n SkyActionHubContentComponent,\n SkyActionHubRecentLinksResolvePipe,\n SkyActionHubRelatedLinksSortPipe,\n ],\n exports: [\n SkyActionHubButtonsComponent,\n SkyActionHubComponent,\n SkyActionHubContentComponent,\n ],\n})\nexport class SkyActionHubModule {}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n OnDestroy,\n OnInit,\n inject,\n} from '@angular/core';\nimport {\n SkyMediaQueryService,\n SkyResizeObserverMediaQueryService,\n} from '@skyux/core';\n\n/**\n * Displays page contents using spacing that corresponds to the parent\n * page's layout.\n */\n@Component({\n selector: 'sky-page-content',\n template: `<ng-content />`,\n styleUrls: ['./page-content.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n SkyResizeObserverMediaQueryService,\n {\n provide: SkyMediaQueryService,\n useExisting: SkyResizeObserverMediaQueryService,\n },\n ],\n})\nexport class SkyPageContentComponent implements OnInit, OnDestroy {\n #elementRef = inject(ElementRef);\n #mediaQueryService = inject(SkyResizeObserverMediaQueryService);\n\n public ngOnInit(): void {\n this.#mediaQueryService.observe(this.#elementRef, {\n updateResponsiveClasses: true,\n });\n }\n\n public ngOnDestroy(): void {\n this.#mediaQueryService.unobserve();\n }\n}\n","import { DOCUMENT } from '@angular/common';\nimport { CSP_NONCE, Inject, Injectable, inject } from '@angular/core';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyPageThemeAdapterService {\n #styleEl: HTMLStyleElement | undefined;\n\n #document: Document;\n #nonce = inject(CSP_NONCE, { optional: true });\n\n constructor(@Inject(DOCUMENT) document: Document) {\n this.#document = document;\n }\n\n /**\n * We can't use ViewEncapsulation.None for this behavior because Angular does\n * not remove `style` tags from the HEAD element after route changes.\n * @see https://github.com/angular/angular/issues/16670\n */\n public addTheme(): void {\n if (!this.#styleEl) {\n this.#styleEl = this.#document.createElement('style');\n\n if (this.#nonce) {\n this.#styleEl.nonce = this.#nonce;\n }\n\n this.#styleEl.appendChild(\n this.#document.createTextNode(\n 'body:not(.sky-theme-modern) { background-color: #fff; }',\n ),\n );\n\n this.#document.head.appendChild(this.#styleEl);\n }\n }\n\n public removeTheme(): void {\n if (this.#styleEl) {\n this.#styleEl.remove();\n this.#styleEl = undefined;\n }\n }\n}\n","import {\n Component,\n HostBinding,\n Input,\n OnDestroy,\n OnInit,\n inject,\n} from '@angular/core';\nimport {\n SkyHelpService,\n SkyLayoutHostForChildArgs,\n SkyLayoutHostService,\n} from '@skyux/core';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyPageThemeAdapterService } from './page-theme-adapter.service';\nimport { SkyPageLayoutType } from './types/page-layout-type';\n\nconst LAYOUT_DEFAULT: SkyPageLayoutType = 'none';\n\nconst LAYOUT_FOR_CHILD_CLASS_PREFIX = 'sky-layout-host-for-child-';\nconst LAYOUT_CLASS_PREFIX = 'sky-layout-host-';\nconst LAYOUT_CLASS_DEFAULT = `${LAYOUT_CLASS_PREFIX}${LAYOUT_DEFAULT}`;\n\n/**\n * Displays a page using the specified layout. The page component is a responsive container,\n * meaning content will respect the breakpoints within the page element instead of the window.\n * This is helpful if there is other content to the left or right of the page.\n */\n@Component({\n selector: 'sky-page',\n template: `<ng-content />`,\n providers: [SkyPageThemeAdapterService, SkyLayoutHostService],\n})\nexport class SkyPageComponent implements OnInit, OnDestroy {\n /**\n * The page layout that applies spacing to the page header and content. Use the layout\n * that corresponds with the top-level component type used on the page, or use `fit` to\n * constrain the page contents to the available viewport.\n * Use `none` for custom content that does not adhere to predefined spacing or constraints.\n * @default \"none\"\n */\n @Input()\n public set layout(value: SkyPageLayoutType | undefined) {\n this.#layout = value;\n this.#updateCssClass();\n }\n\n /**\n * A help key that identifies the page's default [global help](https://developer.blackbaud.com/skyux/learn/develop/global-help) content to display.\n */\n @Input()\n public set helpKey(value: string | undefined) {\n this.#helpSvc?.updateHelp({ pageDefaultHelpKey: value });\n }\n\n @HostBinding('class')\n public cssClass = LAYOUT_CLASS_DEFAULT;\n\n #layout: SkyPageLayoutType | undefined;\n #layoutForChild: SkyPageLayoutType | undefined;\n\n #ngUnsubscribe = new Subject<void>();\n\n #themeAdapter = inject(SkyPageThemeAdapterService);\n #layoutHostSvc = inject(SkyLayoutHostService);\n #helpSvc = inject(SkyHelpService, { optional: true });\n\n public ngOnInit(): void {\n this.#themeAdapter.addTheme();\n\n this.#layoutHostSvc.hostLayoutForChild\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((args: SkyLayoutHostForChildArgs) => {\n this.#layoutForChild = args.layout as SkyPageLayoutType;\n this.#updateCssClass();\n });\n }\n\n public ngOnDestroy(): void {\n this.#themeAdapter.removeTheme();\n\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n\n this.#helpSvc?.updateHelp({ pageDefaultHelpKey: undefined });\n }\n\n #updateCssClass(): void {\n let cssClass = this.#layout\n ? `${LAYOUT_CLASS_PREFIX}${this.#layout}`\n : LAYOUT_CLASS_DEFAULT;\n\n if (this.#layoutForChild) {\n cssClass = `${cssClass} ${LAYOUT_FOR_CHILD_CLASS_PREFIX}${this.#layoutForChild}`;\n }\n\n this.cssClass = cssClass;\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { SkyPageHeaderModule } from '../page-header/page-header.module';\n\nimport { SkyPageContentComponent } from './page-content.component';\nimport { SkyPageComponent } from './page.component';\n\n@NgModule({\n declarations: [SkyPageComponent, SkyPageContentComponent],\n imports: [CommonModule],\n exports: [SkyPageComponent, SkyPageHeaderModule, SkyPageContentComponent],\n})\nexport class SkyPageModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i4.LinkAsPipe","i3","i7.LinkAsPipe","i1","i2","i2.SkyLinkListComponent","i3.SkyModalLinkListComponent","i4.SkyNeedsAttentionComponent","i5.SkyPageHeaderComponent","i6","i7","i8.SkyActionHubRecentLinksResolvePipe","i9.SkyActionHubRelatedLinksSortPipe"],"mappings":";;;;;;;;;;;;;;;;;;;;;;MASa,UAAU,CAAA;IACd,SAAS,CACd,KAIa,EACb,MAAgE,EAAA;AAEhE,QAAA,MAAM,SAAS,GAAG,KAAK,EAAE,SAAS,CAAC;AACnC,QAAA,MAAM,YAAY,GAAG,SAAS,EAAE,GAAG,CAAC;QAEpC,QAAQ,MAAM;AACZ,YAAA,KAAK,QAAQ;gBACX,OAAO,CAAC,CAAE,KAAoC,EAAE,KAAK,IAAI,CAAC,SAAS,CAAC;AACtE,YAAA,KAAK,MAAM;gBACT,OAAO,YAAY,KAAK,SAAS,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACrE,YAAA,KAAK,SAAS;gBACZ,OAAO,YAAY,KAAK,SAAS,IAAI,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACpE,YAAA,KAAK,YAAY;AACf,gBAAA,OAAO,CAAC,EAAE,SAAS,IAAI,YAAY,KAAK,SAAS,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC;AACxE,YAAA;AACE,gBAAA,OAAO,KAAK,CAAC;SAChB;KACF;8GAxBU,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;4GAAV,UAAU,EAAA,IAAA,EAAA,QAAA,EAAA,CAAA,CAAA,EAAA;;2FAAV,UAAU,EAAA,UAAA,EAAA,CAAA;kBAHtB,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,QAAQ;AACf,iBAAA,CAAA;;;MCAY,YAAY,CAAA;8GAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;+GAAZ,YAAY,EAAA,YAAA,EAAA,CAHR,UAAU,CAAA,EAAA,OAAA,EAAA,CACf,UAAU,CAAA,EAAA,CAAA,CAAA,EAAA;+GAET,YAAY,EAAA,CAAA,CAAA,EAAA;;2FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBAJxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,UAAU,CAAC;oBAC1B,OAAO,EAAE,CAAC,UAAU,CAAC;AACtB,iBAAA,CAAA;;;MCGY,oBAAoB,CAAA;AALjC,IAAA,WAAA,GAAA;QAmBS,IAAU,CAAA,UAAA,GAAkB,EAAE,CAAC;AAGvC,KAAA;IAhBC,IACW,KAAK,CAAC,KAAoC,EAAA;AACnD,QAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;AACrB,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;KACrD;AAED,IAAA,IAAW,KAAK,GAAA;QACd,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;AAOD,IAAA,OAAO,CAAgC;8GAhB5B,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,iGCVjC,mkDA8CA,EAAA,MAAA,EAAA,CAAA,8IAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,aAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,GAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,WAAA,EAAA,YAAA,EAAA,eAAA,EAAA,2BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAA,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FDpCa,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBALhC,SAAS;+BACE,eAAe,EAAA,QAAA,EAAA,mkDAAA,EAAA,MAAA,EAAA,CAAA,8IAAA,CAAA,EAAA,CAAA;8BAMd,KAAK,EAAA,CAAA;sBADf,KAAK;gBAWC,KAAK,EAAA,CAAA;sBADX,KAAK;;;MECK,iBAAiB,CAAA;8GAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;+GAAjB,iBAAiB,EAAA,YAAA,EAAA,CAXb,oBAAoB,CAAA,EAAA,OAAA,EAAA,CAGjC,YAAY;YACZ,gBAAgB;YAChB,aAAa;YACb,cAAc;YACd,aAAa;AACb,YAAA,YAAY,aAPJ,oBAAoB,CAAA,EAAA,CAAA,CAAA,EAAA;AAUnB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,YAR1B,YAAY;YACZ,gBAAgB;YAChB,aAAa;YACb,cAAc;YACd,aAAa;YACb,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAGH,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAZ7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,oBAAoB,CAAC;oBACpC,OAAO,EAAE,CAAC,oBAAoB,CAAC;AAC/B,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,gBAAgB;wBAChB,aAAa;wBACb,cAAc;wBACd,aAAa;wBACb,YAAY;AACb,qBAAA;AACF,iBAAA,CAAA;;;MCTY,yBAAyB,CAAA;AALtC,IAAA,WAAA,GAAA;QAmBS,IAAU,CAAA,UAAA,GAAuB,EAAE,CAAC;QAIlC,IAAO,CAAA,OAAA,GAAG,MAAM,CAAC,aAAa,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AACpD,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;AAoB9C,KAAA;IAtCC,IACW,KAAK,CAAC,KAAyC,EAAA;AACxD,QAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;AACrB,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;KACrD;AAED,IAAA,IAAW,KAAK,GAAA;QACd,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;AAOD,IAAA,OAAO,CAAqC;AAEnC,IAAA,OAAO,CAA6C;AACpD,IAAA,SAAS,CAA2B;AAEtC,IAAA,SAAS,CAAC,IAAsB,EAAA;AACrC,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAEzB,IAAI,KAAK,EAAE;AACT,YAAA,IACE,EAAE,IAAI,CAAC,SAAS,YAAY,qBAAqB,CAAC;AAClD,gBAAA,CAAC,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC,EAC9B;AACA,gBAAA,IAAI,CAAC,OAAO;sBACR,UAAU,CAAC,iDAAiD,EAAE;AAC9D,oBAAA,uBAAuB,EAAE,CAAC;AAC1B,oBAAA,yBAAyB,EAAE,CAAgI,8HAAA,CAAA;iBAC5J,CAAC;AACD,qBAAA,IAAI,EAAE,CAAC;aACX;AACD,YAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;SACpD;KACF;8GAtCU,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAzB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,yBAAyB,uGCZtC,s1DAsDA,EAAA,MAAA,EAAA,CAAA,8IAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,aAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,GAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,WAAA,EAAA,YAAA,EAAA,eAAA,EAAA,2BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAA,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FD1Ca,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBALrC,SAAS;+BACE,qBAAqB,EAAA,QAAA,EAAA,s1DAAA,EAAA,MAAA,EAAA,CAAA,8IAAA,CAAA,EAAA,CAAA;8BAMpB,KAAK,EAAA,CAAA;sBADf,KAAK;gBAWC,KAAK,EAAA,CAAA;sBADX,KAAK;;;MEHK,sBAAsB,CAAA;8GAAtB,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;+GAAtB,sBAAsB,EAAA,YAAA,EAAA,CAVlB,yBAAyB,CAAA,EAAA,OAAA,EAAA,CAGtC,YAAY;YACZ,gBAAgB;YAChB,aAAa;YACb,aAAa;AACb,YAAA,YAAY,aANJ,yBAAyB,CAAA,EAAA,CAAA,CAAA,EAAA;AASxB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,YAP/B,YAAY;YACZ,gBAAgB;YAChB,aAAa;YACb,aAAa;YACb,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAGH,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAXlC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,yBAAyB,CAAC;oBACzC,OAAO,EAAE,CAAC,yBAAyB,CAAC;AACpC,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,gBAAgB;wBAChB,aAAa;wBACb,aAAa;wBACb,YAAY;AACb,qBAAA;AACF,iBAAA,CAAA;;;ACnBD;AAEA;;;;;AAKG;AAYH,MAAM,SAAS,GAAoC;AACjD,IAAA,OAAO,EAAE;AACP,QAAA,4BAA4B,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE;AAC1D,QAAA,2BAA2B,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE;AAC7D,QAAA,6BAA6B,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE;AACtD,QAAA,8BAA8B,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE;AAC9D,QAAA,oCAAoC,EAAE;AACpC,YAAA,OAAO,EAAE,oCAAoC;AAC9C,SAAA;AACF,KAAA;CACF,CAAC;AAEF,sBAAsB,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;MAElC,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;8GAAvB,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAvB,IAAA,SAAA,IAAA,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,EAAA;AASZ,IAAA,SAAA,IAAA,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,YAAA;AACE,gBAAA,OAAO,EAAE,2BAA2B;AACpC,gBAAA,QAAQ,EAAE,yBAAyB;AACnC,gBAAA,KAAK,EAAE,IAAI;AACZ,aAAA;AACF,SAAA,EAAA,OAAA,EAAA,CAPS,aAAa,CAAA,EAAA,CAAA,CAAA,EAAA;;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;;;MC5CY,0BAA0B,CAAA;IACrC,IACW,KAAK,CAAC,KAA+C,EAAA;AAC9D,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;AACpB,QAAA,IAAI,KAAK,EAAE,IAAI,CAAC,CAAC,CAA6B,KAAK,CAAC,CAAC,OAAO,CAAC,EAAE;AAC7D,YAAA,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,oCAAoC,EAAE;AAChE,gBAAA,uBAAuB,EAAE,CAAC;AAC1B,gBAAA,yBAAyB,EAAE,sBAAsB;AACjD,gBAAA,WAAW,EACT,8HAA8H;AACjI,aAAA,CAAC,CAAC;SACJ;KACF;AACD,IAAA,IAAW,KAAK,GAAA;QACd,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;AAED,IAAA,MAAM,CAA2C;AACjD,IAAA,WAAW,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC;8GAlBzB,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAA1B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,0BAA0B,uFCVvC,ktFAyEA,EAAA,MAAA,EAAA,CAAA,q8BAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,GAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,eAAA,EAAA,cAAA,EAAA,cAAA,EAAA,oBAAA,EAAA,kBAAA,EAAA,SAAA,EAAA,WAAA,EAAA,gBAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,GAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,GAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,aAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,EAAA,MAAA,EAAA,YAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAC,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FD/Da,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBALtC,SAAS;+BACE,qBAAqB,EAAA,QAAA,EAAA,ktFAAA,EAAA,MAAA,EAAA,CAAA,q8BAAA,CAAA,EAAA,CAAA;8BAMpB,KAAK,EAAA,CAAA;sBADf,KAAK;;;MEmBK,uBAAuB,CAAA;8GAAvB,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;+GAAvB,uBAAuB,EAAA,YAAA,EAAA,CAfnB,0BAA0B,CAAA,EAAA,OAAA,EAAA,CAGvC,YAAY;YACZ,gBAAgB;YAChB,YAAY;YACZ,aAAa;YACb,aAAa;YACb,uBAAuB;YACvB,cAAc;YACd,aAAa;YACb,aAAa;AACb,YAAA,YAAY,aAXJ,0BAA0B,CAAA,EAAA,CAAA,CAAA,EAAA;AAczB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,YAZhC,YAAY;YACZ,gBAAgB;YAChB,YAAY;YACZ,aAAa;YACb,aAAa;YACb,uBAAuB;YACvB,cAAc;YACd,aAAa;YACb,aAAa;YACb,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAGH,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAhBnC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,0BAA0B,CAAC;oBAC1C,OAAO,EAAE,CAAC,0BAA0B,CAAC;AACrC,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,gBAAgB;wBAChB,YAAY;wBACZ,aAAa;wBACb,aAAa;wBACb,uBAAuB;wBACvB,cAAc;wBACd,aAAa;wBACb,aAAa;wBACb,YAAY;AACb,qBAAA;AACF,iBAAA,CAAA;;;AC3BD;;;AAGG;MAMU,6BAA6B,CAAA;8GAA7B,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAA7B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,6BAA6B,+DCX1C,kBACA,EAAA,MAAA,EAAA,CAAA,wKAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FDUa,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBALzC,SAAS;+BACE,yBAAyB,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,wKAAA,CAAA,EAAA,CAAA;;;AELrC;;AAEG;MAMU,4BAA4B,CAAA;8GAA5B,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAA5B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,4BAA4B,8DCVzC,kBACA,EAAA,MAAA,EAAA,CAAA,6KAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FDSa,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBALxC,SAAS;+BACE,wBAAwB,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,6KAAA,CAAA,EAAA,CAAA;;;AEGpC;;;;AAIG;MAOU,4BAA4B,CAAA;AACvC,IAAA,qBAAqB,GAAG,MAAM,CAAC,uBAAuB,CAAC,CAAC;AACxD,IAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAClD,IAAA,uBAAuB,CAAe;AAEtC,IAAA,WAAA,GAAA;AACE,QAAA,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAC9D,CAAC,IAAyB,KAAI;AAC5B,YAAA,IAAI,IAAI,KAAK,mBAAmB,CAAC,EAAE,EAAE;gBACnC,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;aAChE;iBAAM;gBACL,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;aAChE;AACH,SAAC,CACF,CAAC;KACH;IAEM,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,CAAC;KAC5C;8GAnBU,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAA5B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,4BAA4B,EAF5B,QAAA,EAAA,wBAAA,EAAA,SAAA,EAAA,CAAC,uBAAuB,CAAC,0BClBtC,kBACA,EAAA,MAAA,EAAA,CAAA,0YAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FDmBa,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBANxC,SAAS;+BACE,wBAAwB,EAAA,SAAA,EAGvB,CAAC,uBAAuB,CAAC,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,0YAAA,CAAA,EAAA,CAAA;;;AEhBtC;;;AAGG;MAMU,6BAA6B,CAAA;8GAA7B,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAA7B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,6BAA6B,+DCX1C,kBACA,EAAA,MAAA,EAAA,CAAA,kFAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FDUa,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBALzC,SAAS;+BACE,yBAAyB,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,kFAAA,CAAA,EAAA,CAAA;;;AEQrC,IAAI,UAAuB,CAAC;AAE5B;;AAEG;MAaU,sBAAsB,CAAA;AAajC,IAAA,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;AACjC,IAAA,kBAAkB,GAAG,MAAM,CAAC,kCAAkC,CAAC,CAAC;IAEzD,QAAQ,GAAA;QACb,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE;AAChD,YAAA,uBAAuB,EAAE,IAAI;AAC9B,SAAA,CAAC,CAAC;KACJ;IAEM,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,CAAC;KACrC;8GAxBU,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,EARtB,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,SAAA,EAAA;YACT,kCAAkC;AAClC,YAAA;AACE,gBAAA,OAAO,EAAE,oBAAoB;AAC7B,gBAAA,WAAW,EAAE,kCAAkC;AAChD,aAAA;AACF,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC9BH,y5DA+CA,EAAA,MAAA,EAAA,CAAA,42BAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,EAAA,MAAA,EAAA,YAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAD,EAAA,CAAA,EAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,aAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FDfa,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAZlC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,EAGhB,SAAA,EAAA;wBACT,kCAAkC;AAClC,wBAAA;AACE,4BAAA,OAAO,EAAE,oBAAoB;AAC7B,4BAAA,WAAW,EAAE,kCAAkC;AAChD,yBAAA;AACF,qBAAA,EAAA,QAAA,EAAA,y5DAAA,EAAA,MAAA,EAAA,CAAA,42BAAA,CAAA,EAAA,CAAA;8BAOM,UAAU,EAAA,CAAA;sBADhB,KAAK;gBAOC,SAAS,EAAA,CAAA;sBADf,KAAK;;;MEPK,mBAAmB,CAAA;8GAAnB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAnB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,iBAd5B,6BAA6B;YAC7B,4BAA4B;YAC5B,4BAA4B;YAC5B,sBAAsB;AACtB,YAAA,6BAA6B,aAX7B,YAAY;YACZ,gBAAgB;YAChB,aAAa;YACb,cAAc;AACd,YAAA,aAAa,aAUb,6BAA6B;YAC7B,4BAA4B;YAC5B,4BAA4B;YAC5B,sBAAsB;YACtB,6BAA6B,CAAA,EAAA,CAAA,CAAA,EAAA;AAGpB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,YArB5B,YAAY;YACZ,gBAAgB;YAChB,aAAa;YACb,cAAc;YACd,aAAa,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAiBJ,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAvB/B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,gBAAgB;wBAChB,aAAa;wBACb,cAAc;wBACd,aAAa;AACd,qBAAA;AACD,oBAAA,YAAY,EAAE;wBACZ,6BAA6B;wBAC7B,4BAA4B;wBAC5B,4BAA4B;wBAC5B,sBAAsB;wBACtB,6BAA6B;AAC9B,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,6BAA6B;wBAC7B,4BAA4B;wBAC5B,4BAA4B;wBAC5B,sBAAsB;wBACtB,6BAA6B;AAC9B,qBAAA;AACF,iBAAA,CAAA;;;AChCD;;;;;;;;AAQG;MAMU,4BAA4B,CAAA;8GAA5B,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAA5B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,4BAA4B,8DChBzC,kBACA,EAAA,MAAA,EAAA,CAAA,qFAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FDea,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBALxC,SAAS;+BACE,wBAAwB,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,qFAAA,CAAA,EAAA,CAAA;;;AEVpC;;AAEG;MAKU,4BAA4B,CAAA;8GAA5B,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAA5B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,4BAA4B,8DCTzC,kBACA,EAAA,CAAA,CAAA,EAAA;;2FDQa,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBAJxC,SAAS;+BACE,wBAAwB,EAAA,QAAA,EAAA,kBAAA,EAAA,CAAA;;;AEapC,MAAM,uBAAuB,GAAG,CAAC,CAAC;AAElC,SAAS,oBAAoB,CAC3B,WAAmC,EAAA;AAEnC,IAAA,IAAI,WAAW,KAAK,SAAS,EAAE;AAC7B,QAAA,OAAO,SAAS,CAAC;KAClB;IACD,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;AAC5C,QAAA,OAAO,EAAE,CAAC;KACX;AACD,IAAA,OAAO,WAAW;SACf,KAAK,CAAC,CAAC,CAAC;AACR,SAAA,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAI;AACb,QAAA,MAAM,KAAK,GACT,CAAC,CAAC,YAAY,YAAY,IAAI;AAC5B,cAAE,CAAC,CAAC,YAAY,CAAC,WAAW,EAAE;AAC9B,cAAE,CAAC,CAAC,YAAY,CAAC;AACrB,QAAA,MAAM,KAAK,GACT,CAAC,CAAC,YAAY,YAAY,IAAI;AAC5B,cAAE,CAAC,CAAC,YAAY,CAAC,WAAW,EAAE;AAC9B,cAAE,CAAC,CAAC,YAAY,CAAC;AACrB,QAAA,IAAI,KAAK,KAAK,KAAK,EAAE;AACnB,YAAA,OAAO,CAAC,CAAC;SACV;AACD,QAAA,OAAO,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;AAChC,KAAC,CAAC;AACD,SAAA,KAAK,CAAC,CAAC,EAAE,uBAAuB,CAAC,CAAC;AACvC,CAAC;MAMY,kCAAkC,CAAA;AAG7C,IAAA,mBAAmB,CAAsB;IAEzC,2BAA2B,GAA2B,EAAE,CAAC;AAEzD,IAAA,oBAAoB,CAA2B;AAE/C,IAAA,cAAc,GAAG,IAAI,OAAO,EAAQ,CAAC;AAErC,IAAA,eAAe,CAAoB;AACnC,IAAA,oBAAoB,CAAyC;IAE7D,WACE,CAAA,cAAiC,EACrB,mBAAgD,EAAA;AAE5D,QAAA,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;AACtC,QAAA,IAAI,CAAC,oBAAoB,GAAG,mBAAmB,CAAC;KACjD;AAEM,IAAA,SAAS,CAAC,WAAgC,EAAA;AAC/C,QAAA,IAAI,WAAW,KAAK,IAAI,CAAC,mBAAmB,EAAE;AAC5C,YAAA,IAAI,IAAI,CAAC,oBAAoB,EAAE;AAC7B,gBAAA,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,CAAC;aACzC;AAED,YAAA,IAAI,CAAC,mBAAmB,GAAG,WAAW,CAAC;YAEvC,MAAM,YAAY,GAAG,WAA8C,CAAC;AAEpE,YAAA,IAAI,YAAY,EAAE,eAAe,EAAE;AACjC,gBAAA,IAAI,CAAC,uBAAuB,CAAC,YAAY,CAAC,CAAC;aAC5C;iBAAM;AACL,gBAAA,IAAI,CAAC,0BAA0B,CAAC,WAAqC,CAAC,CAAC;aACxE;SACF;QAED,OAAO,IAAI,CAAC,2BAA2B,CAAC;KACzC;IAEM,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;AAC3B,QAAA,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;KAChC;AAED,IAAA,uBAAuB,CAAC,IAAqC,EAAA;AAC3D,QAAA,IAAI,IAAI,CAAC,oBAAoB,EAAE;AAC7B,YAAA,IAAI,CAAC,0BAA0B,CAAC,SAAS,CAAC,CAAC;AAE3C,YAAA,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB;iBAClD,QAAQ,CAAC,IAAI,CAAC;AACd,iBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AACpC,iBAAA,SAAS,CAAC,CAAC,MAAM,KAAI;AACpB,gBAAA,IAAI,CAAC,oBAAoB,GAAG,SAAS,CAAC;AAEtC,gBAAA,MAAM,WAAW,GAAoB,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,MAAM;oBAC/D,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,YAAY,EAAE,IAAI,CAAC,YAAY;AAC/B,oBAAA,SAAS,EAAE;wBACT,GAAG,EAAE,IAAI,CAAC,GAAG;AACd,qBAAA;AACF,iBAAA,CAAC,CAAC,CAAC;AAEJ,gBAAA,IAAI,CAAC,0BAA0B,CAAC,WAAW,CAAC,CAAC;AAC/C,aAAC,CAAC,CAAC;SACN;aAAM;AACL,YAAA,IAAI,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC;SACrC;KACF;AAED,IAAA,0BAA0B,CACxB,mBAA2C,EAAA;AAE3C,QAAA,IAAI,CAAC,2BAA2B;YAC9B,oBAAoB,CAAC,mBAAmB,CAAC,CAAC;AAE5C,QAAA,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;KACrC;8GA/EU,kCAAkC,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,EAAA,CAAA,0BAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;4GAAlC,kCAAkC,EAAA,IAAA,EAAA,gCAAA,EAAA,IAAA,EAAA,KAAA,EAAA,CAAA,CAAA,EAAA;;2FAAlC,kCAAkC,EAAA,UAAA,EAAA,CAAA;kBAJ9C,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,gCAAgC;AACtC,oBAAA,IAAI,EAAE,KAAK;AACZ,iBAAA,CAAA;;0BAiBI,QAAQ;;;MC9DA,gCAAgC,CAAA;AACpC,IAAA,SAAS,CACd,YAAuC,EAAA;AAEvC,QAAA,IAAI,YAAY,KAAK,SAAS,EAAE;AAC9B,YAAA,OAAO,SAAS,CAAC;SAClB;QACD,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;AAC9C,YAAA,OAAO,EAAE,CAAC;SACX;AACD,QAAA,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAI;YACzC,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAC5C,YAAA,IAAI,MAAM,KAAK,MAAM,EAAE;AACrB,gBAAA,OAAO,CAAC,CAAC;aACV;AACD,YAAA,OAAO,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;AAClC,SAAC,CAAM,CAAC;KACT;8GAlBU,gCAAgC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;4GAAhC,gCAAgC,EAAA,IAAA,EAAA,8BAAA,EAAA,CAAA,CAAA,EAAA;;2FAAhC,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAH5C,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,8BAA8B;AACrC,iBAAA,CAAA;;;ACGD;;;AAGG;MAOU,qBAAqB,CAAA;AANlC,IAAA,WAAA,GAAA;AA4BE;;AAEG;QAEI,IAAW,CAAA,WAAA,GAAwB,EAAE,CAAC;AAE7C;;AAEG;QAEI,IAAY,CAAA,YAAA,GAAsB,EAAE,CAAC;AAE5C;;AAEG;QAEI,IAAa,CAAA,aAAA,GAA2B,EAAE,CAAC;AAElD;;;AAGG;QAEI,IAAK,CAAA,KAAA,GAAG,EAAE,CAAC;QAEX,IAAmB,CAAA,mBAAA,GAAiC,EAAE,CAAC;AAG/D,KAAA;AAjDC;;AAEG;IACH,IACW,cAAc,CACvB,KAAkD,EAAA;AAElD,QAAA,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;AAC9B,QAAA,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;KAC9D;AAED,IAAA,IAAW,cAAc,GAAA;QACvB,OAAO,IAAI,CAAC,gBAAgB,CAAC;KAC9B;AAmCD,IAAA,gBAAgB,CAA8C;8GAjDnD,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAArB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,qBAAqB,wOCnBlC,40CAuCA,EAAA,MAAA,EAAA,CAAA,2PAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,GAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,GAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,aAAA,EAAA,cAAA,EAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,GAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,eAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAE,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,yBAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,0BAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,sBAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,GAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,WAAA,EAAA,YAAA,EAAA,eAAA,EAAA,2BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,mBAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAC,kCAAA,EAAA,IAAA,EAAA,gCAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAC,gCAAA,EAAA,IAAA,EAAA,8BAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FDpBa,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBANjC,SAAS;+BACE,gBAAgB,EAAA,eAAA,EAGT,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,40CAAA,EAAA,MAAA,EAAA,CAAA,2PAAA,CAAA,EAAA,CAAA;8BAOpC,cAAc,EAAA,CAAA;sBADxB,KAAK;gBAgBC,UAAU,EAAA,CAAA;sBADhB,KAAK;gBAOC,WAAW,EAAA,CAAA;sBADjB,KAAK;gBAOC,YAAY,EAAA,CAAA;sBADlB,KAAK;gBAOC,aAAa,EAAA,CAAA;sBADnB,KAAK;gBAQC,KAAK,EAAA,CAAA;sBADX,KAAK;;;MErBK,kBAAkB,CAAA;8GAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,iBAZ3B,4BAA4B;YAC5B,qBAAqB;YACrB,4BAA4B;YAC5B,kCAAkC;AAClC,YAAA,gCAAgC,aAfhC,YAAY;YACZ,kBAAkB;YAClB,iBAAiB;YACjB,sBAAsB;YACtB,uBAAuB;YACvB,mBAAmB;YACnB,uBAAuB;YACvB,cAAc;AACd,YAAA,aAAa,aAUb,4BAA4B;YAC5B,qBAAqB;YACrB,4BAA4B,CAAA,EAAA,CAAA,CAAA,EAAA;AAGnB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,YAvB3B,YAAY;YACZ,kBAAkB;YAClB,iBAAiB;YACjB,sBAAsB;YACtB,uBAAuB;YACvB,mBAAmB;YACnB,uBAAuB;YACvB,cAAc;YACd,aAAa,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAeJ,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAzB9B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,kBAAkB;wBAClB,iBAAiB;wBACjB,sBAAsB;wBACtB,uBAAuB;wBACvB,mBAAmB;wBACnB,uBAAuB;wBACvB,cAAc;wBACd,aAAa;AACd,qBAAA;AACD,oBAAA,YAAY,EAAE;wBACZ,4BAA4B;wBAC5B,qBAAqB;wBACrB,4BAA4B;wBAC5B,kCAAkC;wBAClC,gCAAgC;AACjC,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,4BAA4B;wBAC5B,qBAAqB;wBACrB,4BAA4B;AAC7B,qBAAA;AACF,iBAAA,CAAA;;;AC5BD;;;AAGG;MAcU,uBAAuB,CAAA;AAClC,IAAA,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;AACjC,IAAA,kBAAkB,GAAG,MAAM,CAAC,kCAAkC,CAAC,CAAC;IAEzD,QAAQ,GAAA;QACb,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE;AAChD,YAAA,uBAAuB,EAAE,IAAI;AAC9B,SAAA,CAAC,CAAC;KACJ;IAEM,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,CAAC;KACrC;8GAZU,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAvB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,EARvB,QAAA,EAAA,kBAAA,EAAA,SAAA,EAAA;YACT,kCAAkC;AAClC,YAAA;AACE,gBAAA,OAAO,EAAE,oBAAoB;AAC7B,gBAAA,WAAW,EAAE,kCAAkC;AAChD,aAAA;AACF,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EATS,CAAgB,cAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,mPAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FAWf,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAbnC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,kBAAkB,YAClB,CAAgB,cAAA,CAAA,EAAA,eAAA,EAET,uBAAuB,CAAC,MAAM,EACpC,SAAA,EAAA;wBACT,kCAAkC;AAClC,wBAAA;AACE,4BAAA,OAAO,EAAE,oBAAoB;AAC7B,4BAAA,WAAW,EAAE,kCAAkC;AAChD,yBAAA;AACF,qBAAA,EAAA,MAAA,EAAA,CAAA,mPAAA,CAAA,EAAA,CAAA;;;ACzBH;;AAEG;MAEU,0BAA0B,CAAA;AACrC,IAAA,QAAQ,CAA+B;AAEvC,IAAA,SAAS,CAAW;IACpB,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AAE/C,IAAA,WAAA,CAA8B,QAAkB,EAAA;AAC9C,QAAA,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;KAC3B;AAED;;;;AAIG;IACI,QAAQ,GAAA;AACb,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;AAEtD,YAAA,IAAI,IAAI,CAAC,MAAM,EAAE;gBACf,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;aACnC;AAED,YAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CACvB,IAAI,CAAC,SAAS,CAAC,cAAc,CAC3B,yDAAyD,CAC1D,CACF,CAAC;YAEF,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAChD;KACF;IAEM,WAAW,GAAA;AAChB,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,YAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;AACvB,YAAA,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;SAC3B;KACF;AAtCU,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,kBAMjB,QAAQ,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;kHANjB,0BAA0B,EAAA,CAAA,CAAA,EAAA;;2FAA1B,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBADtC,UAAU;;0BAOI,MAAM;2BAAC,QAAQ,CAAA;;;ACO9B,MAAM,cAAc,GAAsB,MAAM,CAAC;AAEjD,MAAM,6BAA6B,GAAG,4BAA4B,CAAC;AACnE,MAAM,mBAAmB,GAAG,kBAAkB,CAAC;AAC/C,MAAM,oBAAoB,GAAG,CAAA,EAAG,mBAAmB,CAAG,EAAA,cAAc,EAAE,CAAC;AAEvE;;;;AAIG;MAMU,gBAAgB,CAAA;AAL7B,IAAA,WAAA,GAAA;QA4BS,IAAQ,CAAA,QAAA,GAAG,oBAAoB,CAAC;AAKvC,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,OAAO,EAAQ,CAAC;AAErC,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,0BAA0B,CAAC,CAAC;AACnD,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;QAC9C,IAAQ,CAAA,QAAA,GAAG,MAAM,CAAC,cAAc,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AAiCvD,KAAA;AAhEC;;;;;;AAMG;IACH,IACW,MAAM,CAAC,KAAoC,EAAA;AACpD,QAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,eAAe,EAAE,CAAC;KACxB;AAED;;AAEG;IACH,IACW,OAAO,CAAC,KAAyB,EAAA;QAC1C,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC,CAAC;KAC1D;AAKD,IAAA,OAAO,CAAgC;AACvC,IAAA,eAAe,CAAgC;AAE/C,IAAA,cAAc,CAAuB;AAErC,IAAA,aAAa,CAAsC;AACnD,IAAA,cAAc,CAAgC;AAC9C,IAAA,QAAQ,CAA8C;IAE/C,QAAQ,GAAA;AACb,QAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;QAE9B,IAAI,CAAC,cAAc,CAAC,kBAAkB;AACnC,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AACpC,aAAA,SAAS,CAAC,CAAC,IAA+B,KAAI;AAC7C,YAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,MAA2B,CAAC;YACxD,IAAI,CAAC,eAAe,EAAE,CAAC;AACzB,SAAC,CAAC,CAAC;KACN;IAEM,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;AAEjC,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;AAC3B,QAAA,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;QAE/B,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,kBAAkB,EAAE,SAAS,EAAE,CAAC,CAAC;KAC9D;IAED,eAAe,GAAA;AACb,QAAA,IAAI,QAAQ,GAAG,IAAI,CAAC,OAAO;AACzB,cAAE,CAAG,EAAA,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAE,CAAA;cACvC,oBAAoB,CAAC;AAEzB,QAAA,IAAI,IAAI,CAAC,eAAe,EAAE;YACxB,QAAQ,GAAG,CAAG,EAAA,QAAQ,CAAI,CAAA,EAAA,6BAA6B,GAAG,IAAI,CAAC,eAAe,CAAA,CAAE,CAAC;SAClF;AAED,QAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;KAC1B;8GAhEU,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,yIAFhB,CAAC,0BAA0B,EAAE,oBAAoB,CAAC,0BADnD,CAAgB,cAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FAGf,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAL5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,UAAU;AACpB,oBAAA,QAAQ,EAAE,CAAgB,cAAA,CAAA;AAC1B,oBAAA,SAAS,EAAE,CAAC,0BAA0B,EAAE,oBAAoB,CAAC;AAC9D,iBAAA,CAAA;8BAUY,MAAM,EAAA,CAAA;sBADhB,KAAK;gBAUK,OAAO,EAAA,CAAA;sBADjB,KAAK;gBAMC,QAAQ,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO,CAAA;;;MC7CT,aAAa,CAAA;8GAAb,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;+GAAb,aAAa,EAAA,YAAA,EAAA,CAJT,gBAAgB,EAAE,uBAAuB,CAAA,EAAA,OAAA,EAAA,CAC9C,YAAY,CAAA,EAAA,OAAA,EAAA,CACZ,gBAAgB,EAAE,mBAAmB,EAAE,uBAAuB,CAAA,EAAA,CAAA,CAAA,EAAA;+GAE7D,aAAa,EAAA,OAAA,EAAA,CAHd,YAAY,EACM,mBAAmB,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAEpC,aAAa,EAAA,UAAA,EAAA,CAAA;kBALzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,CAAC,gBAAgB,EAAE,uBAAuB,CAAC;oBACzD,OAAO,EAAE,CAAC,YAAY,CAAC;AACvB,oBAAA,OAAO,EAAE,CAAC,gBAAgB,EAAE,mBAAmB,EAAE,uBAAuB,CAAC;AAC1E,iBAAA,CAAA;;;ACZD;;AAEG;;;;"}
@@ -16,9 +16,13 @@ export declare class SkyPageComponent implements OnInit, OnDestroy {
16
16
  * @default "none"
17
17
  */
18
18
  set layout(value: SkyPageLayoutType | undefined);
19
+ /**
20
+ * A help key that identifies the page's default [global help](https://developer.blackbaud.com/skyux/learn/develop/global-help) content to display.
21
+ */
22
+ set helpKey(value: string | undefined);
19
23
  cssClass: string;
20
24
  ngOnInit(): void;
21
25
  ngOnDestroy(): void;
22
26
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyPageComponent, never>;
23
- static ɵcmp: i0.ɵɵComponentDeclaration<SkyPageComponent, "sky-page", never, { "layout": { "alias": "layout"; "required": false; }; }, {}, never, ["*"], false, never>;
27
+ static ɵcmp: i0.ɵɵComponentDeclaration<SkyPageComponent, "sky-page", never, { "layout": { "alias": "layout"; "required": false; }; "helpKey": { "alias": "helpKey"; "required": false; }; }, {}, never, ["*"], false, never>;
24
28
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skyux/pages",
3
- "version": "11.3.0",
3
+ "version": "11.4.0",
4
4
  "author": "Blackbaud, Inc.",
5
5
  "keywords": [
6
6
  "blackbaud",
@@ -40,14 +40,14 @@
40
40
  "@angular/common": "^18.2.5",
41
41
  "@angular/core": "^18.2.5",
42
42
  "@angular/router": "^18.2.5",
43
- "@skyux/core": "11.3.0",
44
- "@skyux/i18n": "11.3.0",
45
- "@skyux/icon": "11.3.0",
46
- "@skyux/indicators": "11.3.0",
47
- "@skyux/layout": "11.3.0",
48
- "@skyux/modals": "11.3.0",
49
- "@skyux/router": "11.3.0",
50
- "@skyux/theme": "11.3.0"
43
+ "@skyux/core": "11.4.0",
44
+ "@skyux/i18n": "11.4.0",
45
+ "@skyux/icon": "11.4.0",
46
+ "@skyux/indicators": "11.4.0",
47
+ "@skyux/layout": "11.4.0",
48
+ "@skyux/modals": "11.4.0",
49
+ "@skyux/router": "11.4.0",
50
+ "@skyux/theme": "11.4.0"
51
51
  },
52
52
  "dependencies": {
53
53
  "tslib": "^2.6.3"