@skyux/layout 5.0.2 → 5.1.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 +1 @@
1
- {"version":3,"file":"skyux-layout.umd.js","sources":["../../../projects/layout/src/modules/action-button/action-button-adapter-service.ts","../../../projects/layout/src/modules/action-button/action-button.component.ts","../../../projects/layout/src/modules/action-button/action-button.component.html","../../../projects/layout/src/modules/action-button/action-button-container.component.ts","../../../projects/layout/src/modules/action-button/action-button-container.component.html","../../../projects/layout/src/modules/action-button/action-button-details.component.ts","../../../projects/layout/src/modules/action-button/action-button-details.component.html","../../../projects/layout/src/modules/action-button/action-button-header.component.ts","../../../projects/layout/src/modules/action-button/action-button-header.component.html","../../../projects/layout/src/modules/action-button/action-button-icon.component.ts","../../../projects/layout/src/modules/action-button/action-button-icon.component.html","../../../projects/layout/src/modules/action-button/action-button.module.ts","../../../projects/layout/src/modules/back-to-top/back-to-top-adapter.service.ts","../../../projects/layout/src/modules/back-to-top/back-to-top.component.ts","../../../projects/layout/src/modules/back-to-top/back-to-top.component.html","../../../projects/layout/src/modules/back-to-top/models/back-to-top-message-type.ts","../../../projects/layout/src/modules/back-to-top/back-to-top.directive.ts","../../../projects/layout/src/modules/shared/sky-layout-resources.module.ts","../../../projects/layout/src/modules/back-to-top/back-top-top.module.ts","../../../projects/layout/src/modules/inline-delete/inline-delete-adapter.service.ts","../../../projects/layout/src/modules/inline-delete/inline-delete-type.ts","../../../projects/layout/src/modules/inline-delete/inline-delete.component.ts","../../../projects/layout/src/modules/inline-delete/inline-delete.component.html","../../../projects/layout/src/modules/inline-delete/inline-delete.module.ts","../../../projects/layout/src/modules/card/card-actions.component.ts","../../../projects/layout/src/modules/card/card-actions.component.html","../../../projects/layout/src/modules/card/card-content.component.ts","../../../projects/layout/src/modules/card/card-content.component.html","../../../projects/layout/src/modules/card/card-title.component.ts","../../../projects/layout/src/modules/card/card-title.component.html","../../../projects/layout/src/modules/card/card.component.ts","../../../projects/layout/src/modules/card/card.component.html","../../../projects/layout/src/modules/card/card.module.ts","../../../projects/layout/src/modules/definition-list/definition-list.service.ts","../../../projects/layout/src/modules/definition-list/definition-list.component.ts","../../../projects/layout/src/modules/definition-list/definition-list.component.html","../../../projects/layout/src/modules/definition-list/definition-list-content.component.ts","../../../projects/layout/src/modules/definition-list/definition-list-content.component.html","../../../projects/layout/src/modules/definition-list/definition-list-heading.component.ts","../../../projects/layout/src/modules/definition-list/definition-list-heading.component.html","../../../projects/layout/src/modules/definition-list/definition-list-label.component.ts","../../../projects/layout/src/modules/definition-list/definition-list-label.component.html","../../../projects/layout/src/modules/definition-list/definition-list-value.component.ts","../../../projects/layout/src/modules/definition-list/definition-list-value.component.html","../../../projects/layout/src/modules/definition-list/definition-list.module.ts","../../../projects/layout/src/modules/description-list/description-list-adapter-service.ts","../../../projects/layout/src/modules/description-list/description-list-term.component.ts","../../../projects/layout/src/modules/description-list/description-list-term.component.html","../../../projects/layout/src/modules/description-list/description-list.service.ts","../../../projects/layout/src/modules/description-list/description-list-description.component.ts","../../../projects/layout/src/modules/description-list/description-list-description.component.html","../../../projects/layout/src/modules/description-list/description-list-content.component.ts","../../../projects/layout/src/modules/description-list/description-list-content.component.html","../../../projects/layout/src/modules/description-list/description-list.component.ts","../../../projects/layout/src/modules/description-list/description-list.component.html","../../../projects/layout/src/modules/description-list/description-list.module.ts","../../../projects/layout/src/modules/description-list/types/description-list-mode.ts","../../../projects/layout/src/modules/fluid-grid/fluid-grid-gutter-size.ts","../../../projects/layout/src/modules/fluid-grid/row.component.ts","../../../projects/layout/src/modules/fluid-grid/row.component.html","../../../projects/layout/src/modules/fluid-grid/column.component.ts","../../../projects/layout/src/modules/fluid-grid/column.component.html","../../../projects/layout/src/modules/fluid-grid/fluid-grid.component.ts","../../../projects/layout/src/modules/fluid-grid/fluid-grid.component.html","../../../projects/layout/src/modules/fluid-grid/fluid-grid.module.ts","../../../node_modules/tslib/tslib.es6.js","../../../projects/layout/src/modules/format/format.component.ts","../../../projects/layout/src/modules/format/format.component.html","../../../projects/layout/src/modules/format/format.module.ts","../../../projects/layout/src/modules/page/page-theme-adapter.service.ts","../../../projects/layout/src/modules/page/page.component.ts","../../../projects/layout/src/modules/page/page.component.html","../../../projects/layout/src/modules/page/page.module.ts","../../../projects/layout/src/modules/page-summary/page-summary-alert.component.ts","../../../projects/layout/src/modules/page-summary/page-summary-alert.component.html","../../../projects/layout/src/modules/page-summary/page-summary-content.component.ts","../../../projects/layout/src/modules/page-summary/page-summary-content.component.html","../../../projects/layout/src/modules/page-summary/page-summary-image.component.ts","../../../projects/layout/src/modules/page-summary/page-summary-image.component.html","../../../projects/layout/src/modules/page-summary/page-summary-key-info.component.ts","../../../projects/layout/src/modules/page-summary/page-summary-key-info.component.html","../../../projects/layout/src/modules/page-summary/page-summary-status.component.ts","../../../projects/layout/src/modules/page-summary/page-summary-status.component.html","../../../projects/layout/src/modules/page-summary/page-summary-subtitle.component.ts","../../../projects/layout/src/modules/page-summary/page-summary-subtitle.component.html","../../../projects/layout/src/modules/page-summary/page-summary-title.component.ts","../../../projects/layout/src/modules/page-summary/page-summary-title.component.html","../../../projects/layout/src/modules/page-summary/page-summary-adapter.service.ts","../../../projects/layout/src/modules/page-summary/page-summary.component.ts","../../../projects/layout/src/modules/page-summary/page-summary.component.html","../../../projects/layout/src/modules/page-summary/page-summary.module.ts","../../../projects/layout/src/modules/text-expand/text-expand-adapter.service.ts","../../../projects/layout/src/modules/text-expand/text-expand-modal-context.ts","../../../projects/layout/src/modules/text-expand/text-expand-modal.component.ts","../../../projects/layout/src/modules/text-expand/text-expand-modal.component.html","../../../projects/layout/src/modules/text-expand/text-expand.component.ts","../../../projects/layout/src/modules/text-expand/text-expand.component.html","../../../projects/layout/src/modules/text-expand/text-expand.module.ts","../../../projects/layout/src/modules/text-expand-repeater/text-expand-repeater-adapter.service.ts","../../../projects/layout/src/modules/text-expand-repeater/text-expand-repeater.component.ts","../../../projects/layout/src/modules/text-expand-repeater/text-expand-repeater.component.html","../../../projects/layout/src/modules/text-expand-repeater/text-expand-repeater.module.ts","../../../projects/layout/src/modules/toolbar/toolbar-section.component.ts","../../../projects/layout/src/modules/toolbar/toolbar-section.component.html","../../../projects/layout/src/modules/toolbar/toolbar.component.ts","../../../projects/layout/src/modules/toolbar/toolbar.component.html","../../../projects/layout/src/modules/toolbar/toolbar-item.component.ts","../../../projects/layout/src/modules/toolbar/toolbar-item.component.html","../../../projects/layout/src/modules/toolbar/toolbar-view-actions.component.ts","../../../projects/layout/src/modules/toolbar/toolbar-view-actions.component.html","../../../projects/layout/src/modules/toolbar/toolbar.module.ts","../../../projects/layout/src/skyux-layout.ts"],"sourcesContent":["import {\n ElementRef,\n Injectable,\n Renderer2,\n RendererFactory2\n} from '@angular/core';\n\nconst RESPONSIVE_CLASS_SM = 'sky-action-button-container-sm';\nconst RESPONSIVE_CLASS_MD = 'sky-action-button-container-md';\nconst RESPONSIVE_CLASS_LG = 'sky-action-button-container-lg';\n\nconst BREAKPOINT_MD = 912;\nconst BREAKPOINT_LG = 1378;\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyActionButtonAdapterService {\n\n private renderer: Renderer2;\n\n constructor(\n rendererFactory: RendererFactory2\n ) {\n this.renderer = rendererFactory.createRenderer(undefined, undefined);\n }\n\n public getParentWidth(element: ElementRef): number {\n return element.nativeElement.parentNode.getBoundingClientRect().width;\n }\n\n public setResponsiveClass(element: ElementRef, width: number): void {\n const el: any = element.nativeElement;\n const className = this.getResponsiveClassName(width);\n\n this.renderer.removeClass(el, RESPONSIVE_CLASS_SM);\n this.renderer.removeClass(el, RESPONSIVE_CLASS_MD);\n this.renderer.removeClass(el, RESPONSIVE_CLASS_LG);\n\n this.renderer.addClass(el, className);\n }\n\n private getResponsiveClassName(width: number): string {\n if (width < BREAKPOINT_MD) {\n return RESPONSIVE_CLASS_SM;\n } else if (width > BREAKPOINT_MD && width < BREAKPOINT_LG) {\n return RESPONSIVE_CLASS_MD;\n } else {\n return RESPONSIVE_CLASS_LG;\n }\n }\n\n}\n","import {\n Component,\n EventEmitter,\n Input,\n Output,\n ViewEncapsulation\n} from '@angular/core';\n\nimport {\n SkyActionButtonPermalink\n} from './action-button-permalink';\n\n/**\n * Creates a button to present users with an option to move forward with tasks.\n */\n@Component({\n selector: 'sky-action-button',\n styleUrls: ['./action-button.component.scss'],\n templateUrl: './action-button.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class SkyActionButtonComponent {\n\n/**\n * Specifies a link for the action button.\n */\n @Input()\n public permalink: SkyActionButtonPermalink;\n\n/**\n * Fires when users select the action button.\n */\n @Output()\n public actionClick = new EventEmitter<any>();\n\n public buttonClicked() {\n this.actionClick.emit();\n }\n\n public enterPress() {\n this.actionClick.emit();\n }\n}\n","<a *ngIf=\"permalink && permalink.route\"\n class=\"sky-action-button sky-btn-default sky-rounded-corners\"\n tabindex=\"0\"\n [fragment]=\"permalink.route?.extras?.fragment\"\n [skyThemeClass]=\"{\n 'sky-btn sky-box' : 'modern'\n }\"\n [queryParams]=\"permalink.route?.extras?.queryParams\"\n [queryParamsHandling]=\"permalink.route?.extras?.queryParamsHandling\"\n [routerLink]=\"permalink.route?.commands\"\n>\n <ng-container *ngTemplateOutlet=\"actionButtonContent\">\n </ng-container>\n</a>\n\n<a *ngIf=\"permalink && !permalink.route\"\n class=\"sky-action-button sky-btn-default sky-rounded-corners\"\n tabindex=\"0\"\n [skyHref]=\"permalink.url\"\n [skyThemeClass]=\"{\n 'sky-btn sky-box' : 'modern'\n }\"\n>\n <ng-container *ngTemplateOutlet=\"actionButtonContent\">\n </ng-container>\n</a>\n\n<div *ngIf=\"!permalink\"\n class=\"sky-action-button sky-btn-default sky-rounded-corners\"\n tabindex=\"0\"\n role=\"button\"\n [skyThemeClass]=\"{\n 'sky-btn sky-box' : 'modern'\n }\"\n (click)=\"buttonClicked()\"\n (keydown.enter)=\"enterPress()\"\n>\n <ng-container *ngTemplateOutlet=\"actionButtonContent\">\n </ng-container>\n</div>\n\n<ng-template\n #actionButtonContent\n>\n <ng-container *skyThemeIf=\"'default'\">\n <div class=\"sky-action-button-icon-header-container\">\n <ng-container *ngTemplateOutlet=\"icon\"></ng-container>\n <ng-container *ngTemplateOutlet=\"header\"></ng-container>\n </div>\n <ng-container *ngTemplateOutlet=\"details\"></ng-container>\n </ng-container>\n\n <ng-container *skyThemeIf=\"'modern'\">\n <ng-container *ngTemplateOutlet=\"icon\"></ng-container>\n <div class=\"sky-action-button-content\">\n <ng-container *ngTemplateOutlet=\"header\"></ng-container>\n <div\n class=\"sky-action-button-details\"\n [skyThemeClass]=\"{\n 'sky-font-deemphasized' : 'modern'\n }\"\n >\n <ng-container *ngTemplateOutlet=\"details\"></ng-container>\n </div>\n </div>\n </ng-container>\n</ng-template>\n\n<ng-template #icon>\n <ng-content select=\"sky-action-button-icon\"></ng-content>\n</ng-template>\n\n<ng-template #header>\n <ng-content select=\"sky-action-button-header\"></ng-content>\n</ng-template>\n\n<ng-template #details>\n <ng-content select=\"sky-action-button-details\"></ng-content>\n</ng-template>\n","import {\n AfterContentInit,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n HostListener,\n Input,\n NgZone,\n OnDestroy,\n OnInit,\n Optional,\n QueryList,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\n\nimport {\n MutationObserverService,\n SkyCoreAdapterService\n} from '@skyux/core';\n\nimport {\n SkyThemeService\n} from '@skyux/theme';\n\nimport {\n takeUntil\n} from 'rxjs/operators';\n\nimport {\n Subject\n} from 'rxjs';\n\nimport {\n SkyActionButtonContainerAlignItemsType\n} from './types/action-button-container-align-items-type';\n\nimport {\n SkyActionButtonAdapterService\n} from './action-button-adapter-service';\n\nimport {\n SkyActionButtonComponent\n} from './action-button.component';\n\n/**\n * Wraps action buttons to ensures that they have consistent height and spacing.\n * @required\n */\n@Component({\n selector: 'sky-action-button-container',\n styleUrls: ['./action-button-container.component.scss'],\n templateUrl: './action-button-container.component.html',\n providers: [\n SkyActionButtonAdapterService\n ],\n encapsulation: ViewEncapsulation.None\n})\nexport class SkyActionButtonContainerComponent implements AfterContentInit, OnDestroy, OnInit {\n\n /**\n * Specifies how to display the action buttons inside the action button container.\n * @default 'center'\n */\n @Input()\n public set alignItems(value: SkyActionButtonContainerAlignItemsType) {\n this._alignItems = value;\n }\n\n public get alignItems(): SkyActionButtonContainerAlignItemsType {\n return this._alignItems || 'center';\n }\n\n @ContentChildren(SkyActionButtonComponent)\n private actionButtons: QueryList<SkyActionButtonComponent>;\n\n @ViewChild('container', {\n read: ElementRef,\n static: true\n })\n private containerRef: ElementRef<any>;\n\n private mutationObserver: MutationObserver;\n\n private ngUnsubscribe = new Subject();\n\n private set themeName(value: string) {\n this._themeName = value;\n this.updateResponsiveClass();\n this.updateHeight();\n }\n\n private _alignItems: SkyActionButtonContainerAlignItemsType;\n\n private _themeName: string;\n\n constructor(\n private actionButtonAdapterService: SkyActionButtonAdapterService,\n private changeRef: ChangeDetectorRef,\n private coreAdapterService: SkyCoreAdapterService,\n private hostElRef: ElementRef,\n private mutationObserverSvc: MutationObserverService,\n private ngZone: NgZone,\n @Optional() private themeSvc?: SkyThemeService\n ) { }\n\n public ngOnInit(): void {\n /* istanbul ignore else */\n if (this.themeSvc) {\n this.themeSvc.settingsChange\n .pipe(\n takeUntil(this.ngUnsubscribe)\n )\n .subscribe((themeSettings) => {\n this.themeName = themeSettings.currentSettings.theme.name;\n this.changeRef.markForCheck();\n });\n }\n\n // Wait for children components to complete rendering before container width is determined.\n setTimeout(() => {\n this.updateResponsiveClass();\n });\n }\n\n public ngAfterContentInit(): void {\n // Watch for dynamic action button changes and recalculate height.\n /* istanbul ignore else */\n if (this.actionButtons) {\n this.actionButtons.changes\n .pipe(\n takeUntil(this.ngUnsubscribe)\n )\n .subscribe(() => {\n this.updateHeight();\n });\n }\n\n this.initMutationObserver();\n }\n\n public ngOnDestroy(): void {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n\n this.destroyMutationObserver();\n }\n\n @HostListener('window:resize')\n public onWindowResize(): void {\n this.updateResponsiveClass();\n }\n\n private initMutationObserver(): void {\n /* istanbul ignore else */\n if (!this.mutationObserver) {\n const el = this.containerRef.nativeElement;\n\n // MutationObserver is patched by Zone.js and therefore becomes part of the\n // Angular change detection cycle, but this can lead to infinite loops in some\n // scenarios. This will keep MutationObserver from triggering change detection.\n this.ngZone.runOutsideAngular(() => {\n this.mutationObserver = this.mutationObserverSvc.create(() => {\n this.updateHeight();\n });\n\n this.mutationObserver.observe(\n el,\n {\n characterData: true,\n subtree: true\n }\n );\n });\n }\n }\n\n private destroyMutationObserver(): void {\n if (this.mutationObserver) {\n this.mutationObserver.disconnect();\n this.mutationObserver = undefined;\n }\n }\n\n private updateHeight(): void {\n this.coreAdapterService.resetHeight(this.containerRef, '.sky-action-button');\n if (this._themeName === 'modern') {\n // Wait for children components to complete rendering before height is determined.\n setTimeout(() => {\n this.coreAdapterService.syncMaxHeight(this.containerRef, '.sky-action-button');\n });\n }\n }\n\n private updateResponsiveClass(): void {\n const parentWidth = this.actionButtonAdapterService.getParentWidth(this.hostElRef);\n this.actionButtonAdapterService.setResponsiveClass(this.containerRef, parentWidth);\n }\n\n}\n","<div\n class=\"sky-action-button-container\"\n #container\n>\n <div\n class=\"sky-action-button-flex\"\n [ngClass]=\"{\n 'sky-action-button-flex-align-left' : alignItems === 'left',\n 'sky-action-button-flex-align-center' : alignItems === 'center'\n }\"\n >\n <ng-content></ng-content>\n </div>\n</div>\n","import {\n Component\n} from '@angular/core';\n\n/**\n * Specifies a description to display on an action button.\n */\n@Component({\n selector: 'sky-action-button-details',\n templateUrl: './action-button-details.component.html'\n})\nexport class SkyActionButtonDetailsComponent { }\n","<ng-content></ng-content>\n","import {\n Component\n} from '@angular/core';\n\n/**\n * Specifies a header to display on an action button.\n */\n@Component({\n selector: 'sky-action-button-header',\n styleUrls: ['./action-button-header.component.scss'],\n templateUrl: './action-button-header.component.html'\n})\nexport class SkyActionButtonHeaderComponent {}\n","<div\n class=\"sky-action-button-header\"\n [skyThemeClass]=\"{\n 'sky-headline' : 'modern',\n 'sky-section-heading' : 'default'\n }\"\n>\n <ng-content></ng-content>\n</div>\n","import {\n Component,\n Input,\n OnDestroy\n} from '@angular/core';\n\nimport {\n SkyMediaBreakpoints,\n SkyMediaQueryService\n} from '@skyux/core';\n\nimport {\n Subscription\n} from 'rxjs';\n\nconst FONTSIZECLASS_SMALL = '2x';\nconst FONTSIZECLASS_LARGE = '3x';\n\n/**\n * Specifies an icon to display on the action button.\n */\n@Component({\n selector: 'sky-action-button-icon',\n styleUrls: ['./action-button-icon.component.scss'],\n templateUrl: './action-button-icon.component.html'\n})\nexport class SkyActionButtonIconComponent implements OnDestroy {\n\n/**\n * Specifies an icon from the\n * [Font Awesome library](https://fontawesome.com/v4.7.0/).\n * For example, to display the `fa-filter` icon on the action button,\n * set `iconType` to `filter`. SKY UX supports version 4.7.0 of Font Awesome.\n * For more information about icons in SKY UX, see the\n * [icon component](https://developer.blackbaud.com/skyux-indicators/docs/icon).\n */\n @Input()\n public iconType: string;\n\n public fontSizeClass: string = FONTSIZECLASS_LARGE;\n\n private subscription: Subscription;\n\n constructor(private mediaQueryService: SkyMediaQueryService) {\n this.subscription = this.mediaQueryService.subscribe((args: SkyMediaBreakpoints) => {\n if (args === SkyMediaBreakpoints.xs) {\n this.fontSizeClass = FONTSIZECLASS_SMALL;\n } else {\n this.fontSizeClass = FONTSIZECLASS_LARGE;\n }\n });\n }\n\n public ngOnDestroy() {\n /* istanbul ignore else */\n /* sanity check */\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n}\n","<div\n aria-hidden=\"true\"\n class=\"sky-action-button-icon-container\"\n>\n <sky-icon\n class=\"sky-action-button-icon\"\n [icon]=\"iconType\"\n [size]=\"fontSizeClass\"\n ></sky-icon>\n</div>\n","import {\n CommonModule\n} from '@angular/common';\n\nimport {\n NgModule\n} from '@angular/core';\n\nimport {\n RouterModule\n} from '@angular/router';\n\nimport {\n SkyIconModule\n} from '@skyux/indicators';\n\nimport {\n SkyHrefModule\n} from '@skyux/router';\n\nimport {\n SkyThemeModule\n} from '@skyux/theme';\n\nimport {\n SkyActionButtonContainerComponent\n} from './action-button-container.component';\n\nimport {\n SkyActionButtonDetailsComponent\n} from './action-button-details.component';\n\nimport {\n SkyActionButtonHeaderComponent\n} from './action-button-header.component';\n\nimport {\n SkyActionButtonIconComponent\n} from './action-button-icon.component';\n\nimport {\n SkyActionButtonComponent\n} from './action-button.component';\n\n@NgModule({\n declarations: [\n SkyActionButtonComponent,\n SkyActionButtonContainerComponent,\n SkyActionButtonDetailsComponent,\n SkyActionButtonHeaderComponent,\n SkyActionButtonIconComponent\n ],\n imports: [\n CommonModule,\n RouterModule,\n SkyHrefModule,\n SkyIconModule,\n SkyThemeModule\n ],\n exports: [\n SkyActionButtonComponent,\n SkyActionButtonContainerComponent,\n SkyActionButtonDetailsComponent,\n SkyActionButtonHeaderComponent,\n SkyActionButtonIconComponent\n ]\n})\nexport class SkyActionButtonModule { }\n","import {\n ElementRef,\n Injectable,\n OnDestroy\n} from '@angular/core';\n\nimport {\n SkyAppWindowRef\n} from '@skyux/core';\n\nimport {\n fromEvent,\n Observable,\n Subject\n} from 'rxjs';\n\nimport {\n map,\n takeUntil\n} from 'rxjs/operators';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyBackToTopDomAdapterService implements OnDestroy {\n\n private ngUnsubscribe = new Subject<void>();\n\n constructor(\n private windowRef: SkyAppWindowRef\n ) { }\n\n public ngOnDestroy(): void {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n /**\n * This event returns a boolean on scroll indicating whether the provided element is in view.\n * @param elementRef The target element reference.\n */\n public elementInViewOnScroll(elementRef: ElementRef): Observable<boolean> {\n const parent = this.findScrollableParent(elementRef.nativeElement);\n\n return fromEvent(parent, 'scroll')\n .pipe(\n takeUntil(this.ngUnsubscribe),\n map(() => {\n const isInView = this.isElementScrolledInView(\n elementRef.nativeElement,\n parent\n );\n return isInView;\n })\n );\n }\n\n /**\n * Scrolls the window or scrollable parent to the provided element.\n * @param elementRef The target element reference.\n */\n public scrollToElement(elementRef: ElementRef): void {\n /* sanity check */\n /* istanbul ignore if */\n if (!elementRef || !elementRef.nativeElement) {\n return;\n }\n\n const windowObj = this.windowRef.nativeWindow;\n const parent = this.findScrollableParent(elementRef.nativeElement);\n\n if (parent === windowObj) {\n // Scroll to top of window, but account for the body margin that allows for the omnibar if it exists.\n const bodyMarginOffset = parseInt(getComputedStyle(document.body).marginTop, 10);\n const newOffsetTop = elementRef.nativeElement.offsetTop - bodyMarginOffset;\n this.windowRef.nativeWindow.scrollTo(\n elementRef.nativeElement.offsetLeft,\n newOffsetTop\n );\n } else {\n // Scroll to top of parent element.\n parent.scrollTop = parent.offsetTop - elementRef.nativeElement.offsetTop;\n }\n }\n\n public findScrollableParent(element: any): any {\n const regex = /(auto|scroll)/;\n const windowObj = this.windowRef.nativeWindow;\n const bodyObj = windowObj.document.body;\n\n let style = windowObj.getComputedStyle(element);\n let parent = element;\n\n do {\n parent = parent.parentNode;\n style = windowObj.getComputedStyle(parent);\n } while (\n !regex.test(style.overflow) &&\n !regex.test(style.overflowY) &&\n parent !== bodyObj\n );\n\n if (parent === bodyObj) {\n return windowObj;\n }\n\n return parent;\n }\n\n public isElementScrolledInView(\n element: any,\n parentElement: any\n ): boolean {\n const buffer = 25;\n const windowObj = this.windowRef.nativeWindow;\n const elementRect = element.getBoundingClientRect();\n\n /* istanbul ignore else */\n if (parentElement === windowObj) {\n return (elementRect.top > -buffer);\n } else {\n const parentRect = parentElement.getBoundingClientRect();\n return (elementRect.top > parentRect.top - buffer);\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component\n} from '@angular/core';\n\nimport {\n Observable,\n Subject\n} from 'rxjs';\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-back-to-top',\n templateUrl: './back-to-top.component.html',\n styleUrls: [\n './back-to-top.component.scss'\n ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SkyBackToTopComponent {\n\n public get scrollToTopClick(): Observable<void> {\n return this._scrollToTopClick.asObservable();\n }\n\n private _scrollToTopClick = new Subject<void>();\n\n public onScrollToTopClick(): void {\n this._scrollToTopClick.next();\n this._scrollToTopClick.complete();\n }\n\n}\n","<div\n class=\"sky-back-to-top sky-padding-squish-large\"\n>\n <button\n class=\"sky-btn sky-btn-link-inline\"\n type=\"button\"\n (click)=\"onScrollToTopClick()\"\n >\n {{ 'skyux_back_to_top' | skyLibResources }}\n </button>\n</div>\n","/**\n * Specifies the type of message to send to the back to top component.\n */\nexport enum SkyBackToTopMessageType {\n\n /**\n * Scrolls the element back to the top.\n */\n BackToTop = 0\n}\n","import {\n AfterViewInit,\n Directive,\n ElementRef,\n Input,\n OnDestroy\n} from '@angular/core';\n\nimport {\n SkyDockItem,\n SkyDockService\n} from '@skyux/core';\n\nimport {\n Subject\n} from 'rxjs';\n\nimport {\n takeUntil\n} from 'rxjs/operators';\n\nimport {\n SkyBackToTopDomAdapterService\n} from './back-to-top-adapter.service';\n\nimport {\n SkyBackToTopComponent\n} from './back-to-top.component';\n\nimport {\n SkyBackToTopMessage\n} from './models/back-to-top-message';\n\nimport {\n SkyBackToTopMessageType\n} from './models/back-to-top-message-type';\n\nimport {\n SkyBackToTopOptions\n} from './models/back-to-top-options';\n\n/**\n * Associates a button with an element on the page and displays that button\n * to return to the element after users scroll away.\n */\n@Directive({\n selector: '[skyBackToTop]',\n providers: [\n SkyBackToTopDomAdapterService\n ]\n})\nexport class SkyBackToTopDirective implements AfterViewInit, OnDestroy {\n\n /**\n * Specifies configuration options for the back to top component.\n */\n @Input()\n public set skyBackToTop(value: SkyBackToTopOptions) {\n this.buttonHidden = !!value?.buttonHidden;\n\n this.handleBackToTopButton(this.elementInView);\n }\n\n /**\n * Provides an observable to send commands to the back to top component.\n * The commands respect the `SkyBackToTopMessage` type.\n */\n @Input()\n public set skyBackToTopMessageStream(value: Subject<SkyBackToTopMessage>) {\n if (this._skyBackToTopMessageStream) {\n this._skyBackToTopMessageStream.unsubscribe();\n }\n this._skyBackToTopMessageStream = value;\n this._skyBackToTopMessageStream\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((message: SkyBackToTopMessage) => this.handleIncomingMessages(message));\n }\n\n private buttonHidden = false;\n private dockItem: SkyDockItem<SkyBackToTopComponent>;\n private elementInView: boolean;\n\n private ngUnsubscribe = new Subject<void>();\n private _skyBackToTopMessageStream: Subject<SkyBackToTopMessage>;\n\n constructor(\n private dockService: SkyDockService,\n private domAdapter: SkyBackToTopDomAdapterService,\n private element: ElementRef\n ) {}\n\n public ngAfterViewInit(): void {\n const scrollableParent = this.domAdapter.findScrollableParent(this.element.nativeElement);\n this.elementInView = this.domAdapter.isElementScrolledInView(this.element.nativeElement, scrollableParent);\n\n this.handleBackToTopButton(this.elementInView);\n this.setBackToTopListeners();\n }\n\n public ngOnDestroy(): void {\n if (this.dockItem) {\n this.dockItem.destroy();\n }\n }\n\n private handleBackToTopButton(elementInView: boolean): void {\n // Add back to top button if user scrolls down and button is not hidden.\n if (!this.dockItem && elementInView !== undefined && !elementInView && !this.buttonHidden) {\n this.addBackToTop();\n }\n // Remove back to top button if user scrolls back up.\n if (elementInView || this.buttonHidden) {\n this.destroyBackToTop();\n }\n }\n\n private addBackToTop(): void {\n this.dockItem = this.dockService.insertComponent(SkyBackToTopComponent);\n\n // Listen for clicks on the \"back to top\" button so we know when to scroll up.\n this.dockItem.componentInstance.scrollToTopClick\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe(() => {\n this.domAdapter.scrollToElement(this.element);\n });\n }\n\n private handleIncomingMessages(message: SkyBackToTopMessage): void {\n /* istanbul ignore else */\n if (message.type === SkyBackToTopMessageType.BackToTop) {\n this.domAdapter.scrollToElement(this.element);\n }\n }\n\n private setBackToTopListeners(): void {\n /* istanbul ignore else */\n if (this.element) {\n this.domAdapter.elementInViewOnScroll(this.element)\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((elementInView: boolean) => {\n this.elementInView = elementInView;\n\n this.handleBackToTopButton(elementInView);\n });\n }\n }\n\n private destroyBackToTop(): void {\n /* istanbul ignore else */\n if (this.dockItem) {\n this.dockItem.destroy();\n this.dockItem = undefined;\n }\n }\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 modules/shared/sky-layout' schematic.\n * To update this file, simply rerun the command.\n */\n\nimport { NgModule } from '@angular/core';\nimport {\n getLibStringForLocale,\n SkyAppLocaleInfo,\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesProvider,\n SKY_LIB_RESOURCES_PROVIDERS\n} from '@skyux/i18n';\n\nconst RESOURCES: { [locale: string]: SkyLibResources } = {\n 'EN-US': {\"skyux_back_to_top\":{\"message\":\"Back to top\"},\"skyux_card_checkbox_label\":{\"message\":\"Select card\"},\"skyux_definition_list_none_found\":{\"message\":\"None found\"},\"skyux_description_list_none_found\":{\"message\":\"None found\"},\"skyux_inline_delete_assistive_text\":{\"message\":\"Are you sure you want to delete this item?\"},\"skyux_inline_delete_cancel\":{\"message\":\"Cancel\"},\"skyux_inline_delete_confirm_deletion\":{\"message\":\"Confirm deletion\"},\"skyux_inline_delete_delete\":{\"message\":\"Delete\"},\"skyux_text_expand_close_text\":{\"message\":\"Close\"},\"skyux_text_expand_modal_title\":{\"message\":\"Expanded view\"},\"skyux_text_expand_see_less\":{\"message\":\"See less\"},\"skyux_text_expand_see_more\":{\"message\":\"See more\"}},\n};\n\nexport class SkyLayoutResourcesProvider implements SkyLibResourcesProvider {\n public getString(localeInfo: SkyAppLocaleInfo, name: string): string {\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 provide: SKY_LIB_RESOURCES_PROVIDERS,\n useClass: SkyLayoutResourcesProvider,\n multi: true\n }]\n})\nexport class SkyLayoutResourcesModule { }\n","import {\n NgModule\n} from '@angular/core';\n\nimport {\n CommonModule\n} from '@angular/common';\n\nimport {\n SkyDockModule\n} from '@skyux/core';\n\nimport {\n SkyI18nModule\n} from '@skyux/i18n';\n\nimport {\n SkyBackToTopDirective\n} from './back-to-top.directive';\n\nimport {\n SkyBackToTopComponent\n} from './back-to-top.component';\nimport { SkyLayoutResourcesModule } from '../shared/sky-layout-resources.module';\n\n@NgModule({\n declarations: [\n SkyBackToTopComponent,\n SkyBackToTopDirective\n ],\n imports: [\n CommonModule,\n SkyDockModule,\n SkyI18nModule,\n SkyLayoutResourcesModule\n ],\n exports: [\n SkyBackToTopComponent,\n SkyBackToTopDirective\n ],\n entryComponents: [\n SkyBackToTopComponent\n ]\n})\nexport class SkyBackToTopModule { }\n","import {\n Injectable,\n Renderer2,\n RendererFactory2\n} from '@angular/core';\n\nimport {\n SkyCoreAdapterService\n} from '@skyux/core';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyInlineDeleteAdapterService {\n\n private element: HTMLElement;\n private focussableElements: HTMLElement[];\n private parentEl: HTMLElement;\n private parentElUnlistenFn: Function;\n private renderer: Renderer2;\n\n constructor(\n private coreAdapterService: SkyCoreAdapterService,\n rendererFactory: RendererFactory2\n ) {\n this.renderer = rendererFactory.createRenderer(undefined, undefined);\n }\n\n public clearListeners(): void {\n /* istanbul ignore else */\n if (this.parentElUnlistenFn) {\n this.parentElUnlistenFn();\n }\n }\n\n public setEl(element: HTMLElement): void {\n this.element = element;\n this.parentEl = element.parentElement;\n\n /* istanbul ignore else */\n if (this.parentEl) {\n this.parentElUnlistenFn = this.renderer.listen(this.parentEl, 'focusin',\n (event: FocusEvent) => {\n const target: any = event.target;\n if (!this.element.contains(target) && this.parentEl !== target) {\n event.preventDefault();\n event.stopPropagation();\n event.stopImmediatePropagation();\n\n target.blur();\n this.focusNextElement(target, this.isShift(event), this.parentEl);\n }\n });\n }\n }\n\n private focusNextElement(targetElement: HTMLElement, shiftKey: boolean, busyEl: Element): void {\n const focussable = this.getFocussableElements();\n\n // If shift tab, go in the other direction\n const modifier = shiftKey ? -1 : 1;\n\n // Find the next navigable element that isn't waiting\n const startingIndex = focussable.indexOf(targetElement);\n let curIndex = startingIndex + modifier;\n while (focussable[curIndex] && this.isElementHiddenOrCovered(focussable[curIndex])) {\n curIndex += modifier;\n }\n\n if (focussable[curIndex] && !this.isElementHiddenOrCovered(focussable[curIndex])) {\n focussable[curIndex].focus();\n } else {\n\n // Try wrapping the navigation\n /* istanbul ignore next */\n curIndex = modifier > 0 ? 0 : focussable.length - 1;\n\n /* istanbul ignore next */\n while (\n curIndex !== startingIndex &&\n focussable[curIndex] &&\n this.isElementHiddenOrCovered(focussable[curIndex])\n ) {\n curIndex += modifier;\n }\n\n /* istanbul ignore else */\n /* sanity check */\n if (focussable[curIndex] && !this.isElementHiddenOrCovered(focussable[curIndex])) {\n focussable[curIndex].focus();\n } else {\n // No valid target, wipe focus\n // This should never happen in practice due to the multiple inline delete buttons\n if (document.activeElement && (document.activeElement as any).blur) {\n (document.activeElement as any).blur();\n }\n document.body.focus();\n }\n }\n\n // clear focussableElements list so that if things change between tabbing we know about it\n this.focussableElements = undefined;\n }\n\n private getFocussableElements(): HTMLElement[] {\n // Keep this cached so we can reduce querys\n if (this.focussableElements) {\n return this.focussableElements;\n }\n\n this.focussableElements = this.coreAdapterService.getFocusableChildren(document.body);\n\n return this.focussableElements;\n }\n\n private isElementHiddenOrCovered(element: any): boolean {\n // Check if the element is hidden by css, not within the inline delete, or a wait is covering it\n return this.isElementHidden(element) ||\n (this.parentEl.contains(element) && (!this.element.contains(element) ||\n this.parentEl.querySelector('.sky-wait-mask') !== null));\n }\n\n private isElementHidden(element: any): boolean {\n const style = window.getComputedStyle(element);\n return style.display === 'none' || style.visibility === 'hidden';\n }\n\n private isShift(event: Event): boolean {\n // Determine if shift+tab was used based on element order\n const elements = this.getFocussableElements().filter(elem => !this.isElementHidden(elem));\n\n const previousInd = elements.indexOf((event as any).relatedTarget);\n const currentInd = elements.indexOf(event.target as HTMLElement);\n\n /* istanbul ignore next */\n return previousInd === currentInd + 1\n || (previousInd === 0 && currentInd === elements.length - 1)\n || (previousInd > currentInd)\n || !(event as any).relatedTarget;\n }\n}\n","/**\n * Specifies the type of inline delete that is shown.\n * @internal\n */\nexport enum SkyInlineDeleteType {\n /**\n * The standard styling for inline deletes.\n */\n Standard = 'standard',\n /**\n * The styling for inline delete components which are used in card components.\n */\n Card = 'card'\n}\n","import {\n animate,\n AnimationEvent,\n group,\n query,\n style,\n transition,\n trigger\n} from '@angular/animations';\n\nimport {\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n ViewChild\n} from '@angular/core';\n\nimport {\n SkyCoreAdapterService\n} from '@skyux/core';\n\nimport {\n SkyInlineDeleteAdapterService\n} from './inline-delete-adapter.service';\n\nimport {\n SkyInlineDeleteType\n} from './inline-delete-type';\n\n/**\n * Auto-incrementing integer used to generate unique ids for inline delete components.\n */\nlet nextId = 0;\n\n@Component({\n selector: 'sky-inline-delete',\n styleUrls: ['./inline-delete.component.scss'],\n templateUrl: './inline-delete.component.html',\n animations: [\n trigger('inlineDeleteAnimation', [\n transition('* => shown', [\n style({\n opacity: 0\n }),\n query('.sky-inline-delete-content-animation-container',\n style({ transform: 'scale(0.0)' })),\n group([\n animate('300ms ease-in-out', style({ opacity: 1 })),\n query('.sky-inline-delete-content-animation-container', animate('300ms ease-in-out', style({\n transform: 'scale(1)'\n })))\n ])\n ]),\n transition(`shown <=> *`, [\n query('.sky-inline-delete-content-animation-container',\n style({ transform: 'scale(1)' })),\n group([\n animate('300ms ease-in-out', style({\n opacity: 0\n })),\n query('.sky-inline-delete-content-animation-container', animate('300ms ease-in-out', style({\n transform: 'scale(0.0)'\n })))\n ])\n ])\n ])\n ],\n providers: [\n SkyCoreAdapterService,\n SkyInlineDeleteAdapterService\n ]\n})\nexport class SkyInlineDeleteComponent implements OnDestroy, OnInit {\n\n /**\n * Indicates whether the deletion is pending.\n * @default \"false\"\n */\n @Input()\n public pending: boolean = false;\n\n /**\n * Fires when users click the cancel button.\n */\n @Output()\n public cancelTriggered = new EventEmitter<void>();\n\n /**\n * Fires when users click the delete button.\n */\n @Output()\n public deleteTriggered = new EventEmitter<void>();\n\n public animationState: string = 'shown';\n\n public assistiveTextId: string = `sky-inline-delete-assistive-text-${++nextId}`;\n\n public type: SkyInlineDeleteType = SkyInlineDeleteType.Standard;\n\n @ViewChild('delete', {\n read: ElementRef,\n static: false\n })\n private deleteButton: ElementRef;\n\n constructor(\n private adapterService: SkyInlineDeleteAdapterService,\n private changeDetector: ChangeDetectorRef,\n private elRef: ElementRef\n ) {\n }\n\n /**\n * Initialization lifecycle hook\n * @internal\n */\n public ngOnInit(): void {\n this.animationState = 'shown';\n }\n\n /**\n * Destruction lifecycle hook\n * @internal\n */\n public ngOnDestroy(): void {\n this.adapterService.clearListeners();\n this.cancelTriggered.complete();\n this.deleteTriggered.complete();\n }\n\n /**\n * @internal\n */\n public onCancelClick(): void {\n this.animationState = 'hidden';\n }\n\n /**\n * @internal\n */\n public onDeleteClick(): void {\n this.deleteTriggered.emit();\n }\n\n /**\n * Sets the inline delete to one of its predefined types.\n * @param type The inline delete type\n * @internal\n */\n public setType(type: SkyInlineDeleteType): void {\n this.type = type;\n this.changeDetector.detectChanges();\n }\n\n /**\n * Handles actions that should be taken after the inline delete animates\n * @param event The animation event\n * @internal\n */\n public onAnimationDone(event: AnimationEvent): void {\n if (event.toState === 'hidden') {\n this.cancelTriggered.emit();\n } else {\n this.deleteButton.nativeElement.focus();\n /* istanbul ignore else */\n if (this.elRef) {\n this.adapterService.setEl(this.elRef.nativeElement);\n }\n }\n }\n\n}\n","<div\n class=\"sky-inline-delete sky-inline-delete-{{type}}\"\n role=\"alertdialog\"\n [@inlineDeleteAnimation]=\"animationState\"\n (@inlineDeleteAnimation.done)=\"onAnimationDone($event)\"\n [attr.aria-describedby]=\"assistiveTextId\"\n [attr.aria-label]=\"'skyux_inline_delete_confirm_deletion' | skyLibResources\"\n>\n <span\n class=\"sky-inline-delete-assistive-text\"\n [id]=\"assistiveTextId\"\n >\n {{ 'skyux_inline_delete_assistive_text' | skyLibResources }}\n </span>\n <sky-wait\n class=\"sky-inline-delete-wait\"\n [isWaiting]=\"pending\"\n ></sky-wait>\n <div class=\"sky-inline-delete-content\">\n <div\n class=\"sky-inline-delete-content-animation-container\"\n >\n <button\n class=\"sky-btn sky-btn-danger sky-inline-delete-button\"\n type=\"button\"\n (click)=\"onDeleteClick()\"\n #delete\n >\n {{ 'skyux_inline_delete_delete' | skyLibResources }}\n </button>\n <button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n (click)=\"onCancelClick()\"\n >\n {{ 'skyux_inline_delete_cancel' | skyLibResources }}\n </button>\n </div>\n </div>\n</div>\n","import {\n NgModule\n} from '@angular/core';\n\nimport {\n CommonModule\n} from '@angular/common';\n\nimport {\n SkyI18nModule\n} from '@skyux/i18n';\n\nimport {\n SkyWaitModule\n} from '@skyux/indicators';\n\nimport { SkyLayoutResourcesModule } from '../shared/sky-layout-resources.module';\n\nimport {\n SkyInlineDeleteComponent\n} from './inline-delete.component';\n\n@NgModule({\n declarations: [\n SkyInlineDeleteComponent\n ],\n imports: [\n CommonModule,\n SkyI18nModule,\n SkyLayoutResourcesModule,\n SkyWaitModule\n ],\n exports: [\n SkyInlineDeleteComponent\n ]\n})\nexport class SkyInlineDeleteModule { }\n","import {\n Component\n} from '@angular/core';\n\n/**\n * Specifies an action that users can perform on the card.\n */\n@Component({\n selector: 'sky-card-actions',\n templateUrl: './card-actions.component.html',\n styleUrls: ['./card-actions.component.scss']\n})\nexport class SkyCardActionsComponent { }\n","<ng-content></ng-content>\n","import {\n Component\n} from '@angular/core';\n\n/**\n * Specifies the content to display in the body of the card.\n */\n@Component({\n selector: 'sky-card-content',\n templateUrl: './card-content.component.html'\n})\nexport class SkyCardContentComponent { }\n","<ng-content></ng-content>\n","import {\n Component\n} from '@angular/core';\n\n/**\n * Specifies a title to identify what the card represents.\n */\n@Component({\n selector: 'sky-card-title',\n templateUrl: './card-title.component.html'\n})\nexport class SkyCardTitleComponent { }\n","<ng-content></ng-content>\n","import {\n AfterContentInit,\n Component,\n ContentChildren,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n QueryList\n} from '@angular/core';\n\nimport {\n Subscription\n} from 'rxjs';\n\nimport {\n SkyCardTitleComponent\n} from './card-title.component';\n\nimport {\n SkyInlineDeleteComponent\n} from '../inline-delete/inline-delete.component';\n\nimport {\n SkyInlineDeleteType\n} from '../inline-delete/inline-delete-type';\n\n/**\n * Creates a a small container to highlight important information.\n */\n@Component({\n selector: 'sky-card',\n styleUrls: ['./card.component.scss'],\n templateUrl: './card.component.html'\n})\nexport class SkyCardComponent implements AfterContentInit, OnDestroy {\n/**\n * Specifies the size of the card. The valid options are `large` and `small`.\n * @default large\n */\n @Input()\n public size: string;\n\n/**\n * Indicates whether to display a checkbox to the right of the card title.\n * Users can select multiple checkboxes and perform actions on the selected cards.\n * @default false\n */\n @Input()\n public selectable: boolean;\n\n/**\n * Indicates whether the card is selected. This only applies to card where\n * `selectable` is set to `true`.\n * @default false\n */\n @Input()\n public selected: boolean;\n\n/**\n * Fires when users select or deselect the card.\n */\n @Output()\n public selectedChange = new EventEmitter<boolean>();\n\n @ContentChildren(SkyInlineDeleteComponent)\n public inlineDeleteComponent: QueryList<SkyInlineDeleteComponent>;\n\n @ContentChildren(SkyCardTitleComponent)\n public titleComponent: QueryList<SkyCardTitleComponent>;\n\n public showTitle: boolean = true;\n\n private subscription: Subscription;\n\n public ngAfterContentInit() {\n this.showTitle = this.titleComponent.length > 0;\n\n this.subscription = this.titleComponent.changes.subscribe(() => {\n this.showTitle = this.titleComponent.length > 0;\n });\n\n this.inlineDeleteComponent.forEach(item => {\n item.setType(SkyInlineDeleteType.Card);\n });\n\n this.inlineDeleteComponent.changes.subscribe(() => {\n this.inlineDeleteComponent.forEach(item => {\n item.setType(SkyInlineDeleteType.Card);\n });\n });\n }\n\n public contentClick() {\n if (this.selectable) {\n this.selected = !this.selected;\n this.selectedChange.emit(this.selected);\n }\n }\n\n public onCheckboxChange(newValue: boolean) {\n if (this.selectable && this.selected !== newValue) {\n this.selected = newValue;\n this.selectedChange.emit(this.selected);\n }\n }\n\n public ngOnDestroy() {\n /* istanbul ignore else */\n /* sanity check */\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n}\n","<section\n class=\"sky-card sky-shadow\"\n [ngClass]=\"\n {\n 'sky-card-small': size === 'small',\n 'sky-card-selectable': selectable,\n 'sky-card-selected': selectable &amp;&amp; selected\n }\"\n>\n <ng-content\n select=\"sky-inline-delete\"\n ></ng-content>\n <header>\n <div *ngIf=\"selectable || showTitle\"\n class=\"sky-card-header\"\n (click)=\"contentClick()\"\n >\n <div\n class=\"sky-card-heading-middle\"\n >\n <h1 *ngIf=\"showTitle\"\n class=\"sky-card-title sky-section-heading\"\n >\n <ng-content\n select=\"sky-card-title\"\n ></ng-content>\n </h1>\n </div>\n <div *ngIf=\"selectable\"\n class=\"sky-card-check\"\n >\n <sky-checkbox\n [label]=\"'skyux_card_checkbox_label' | skyLibResources\"\n [ngModel]=\"selected\"\n (click)=\"$event.stopPropagation()\"\n (ngModelChange)=\"onCheckboxChange($event)\"\n ></sky-checkbox>\n </div>\n </div>\n </header>\n <div\n class=\"sky-card-content sky-padding-even-default\"\n (click)=\"contentClick()\"\n >\n <ng-content\n select=\"sky-card-content\"\n ></ng-content>\n </div>\n <div\n class=\"sky-card-actions\"\n [hidden]=\"actionsEl.children.length === 0\"\n #actionsEl\n >\n <ng-content\n select=\"sky-card-actions\"\n ></ng-content>\n </div>\n</section>\n","import {\n CommonModule\n} from '@angular/common';\n\nimport {\n NgModule\n} from '@angular/core';\n\nimport {\n FormsModule\n} from '@angular/forms';\n\nimport {\n SkyCheckboxModule\n} from '@skyux/forms';\n\nimport {\n SkyI18nModule\n} from '@skyux/i18n';\n\nimport {\n SkyInlineDeleteModule\n} from '../inline-delete/inline-delete.module';\nimport { SkyLayoutResourcesModule } from '../shared/sky-layout-resources.module';\n\nimport {\n SkyCardActionsComponent\n} from './card-actions.component';\n\nimport {\n SkyCardContentComponent\n} from './card-content.component';\n\nimport {\n SkyCardTitleComponent\n} from './card-title.component';\n\nimport {\n SkyCardComponent\n} from './card.component';\n\n@NgModule({\n declarations: [\n SkyCardActionsComponent,\n SkyCardComponent,\n SkyCardContentComponent,\n SkyCardTitleComponent\n ],\n imports: [\n CommonModule,\n FormsModule,\n SkyCheckboxModule,\n SkyI18nModule,\n SkyLayoutResourcesModule,\n SkyInlineDeleteModule\n ],\n exports: [\n SkyCardActionsComponent,\n SkyCardComponent,\n SkyCardContentComponent,\n SkyCardTitleComponent\n ]\n})\nexport class SkyCardModule { }\n","import { Injectable } from '@angular/core';\n\nimport {\n BehaviorSubject\n} from 'rxjs';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyDefinitionListService {\n public labelWidth = new BehaviorSubject<string>('');\n\n public defaultValue = new BehaviorSubject<string>('');\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Input\n} from '@angular/core';\n\nimport { SkyDefinitionListService } from './definition-list.service';\n\n/**\n * Creates a definition list to display label-value pairs.\n */\n@Component({\n selector: 'sky-definition-list',\n templateUrl: './definition-list.component.html',\n styleUrls: ['./definition-list.component.scss'],\n providers: [SkyDefinitionListService],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SkyDefinitionListComponent {\n\n/**\n * Specifies the width of the label portion of the definition list.\n * @default 90px\n */\n @Input()\n public set labelWidth(value: string) {\n this.service.labelWidth.next(value);\n }\n\n/**\n * Specifies a default value to display when no value is provided\n * for a label-value pair.\n * @default 'None found'\n */\n @Input()\n public set defaultValue(value: string) {\n this.service.defaultValue.next(value);\n }\n\n constructor(\n public service: SkyDefinitionListService) { }\n}\n","<div class=\"sky-definition-list\">\n <ng-content select=\"sky-definition-list-heading\"></ng-content>\n <ng-content select=\"sky-definition-list-content\"></ng-content>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component\n} from '@angular/core';\n\n/**\n * Wraps the label-value pairs in the definition list.\n */\n@Component({\n selector: 'sky-definition-list-content',\n templateUrl: './definition-list-content.component.html',\n styleUrls: ['./definition-list-content.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SkyDefinitionListContentComponent { }\n","<div class=\"sky-definition-list-content\">\n <ng-content></ng-content>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component\n} from '@angular/core';\n\n/**\n * Specifies a title for the definition list.\n */\n@Component({\n selector: 'sky-definition-list-heading',\n templateUrl: './definition-list-heading.component.html',\n styleUrls: ['./definition-list-heading.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SkyDefinitionListHeadingComponent { }\n","<div class=\"sky-subsection-heading sky-definition-list-heading\">\n <ng-content></ng-content>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component\n} from '@angular/core';\n\nimport { SkyDefinitionListService } from './definition-list.service';\n\n/**\n * Specifies the label in a label-value pair.\n */\n@Component({\n selector: 'sky-definition-list-label',\n templateUrl: './definition-list-label.component.html',\n styleUrls: ['./definition-list-label.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SkyDefinitionListLabelComponent {\n public labelWidth: number;\n\n constructor(\n public service: SkyDefinitionListService) { }\n}\n","<div\n class=\"sky-field-label sky-definition-list-label\"\n [ngStyle]=\"{\n 'width': (service.labelWidth | async) || ''\n }\"\n>\n <ng-content></ng-content>\n</div>\n","import {\n Component\n} from '@angular/core';\n\nimport { SkyDefinitionListService } from './definition-list.service';\n\n/**\n * Specifies the value in a label-value pair.\n */\n@Component({\n selector: 'sky-definition-list-value',\n templateUrl: './definition-list-value.component.html',\n styleUrls: ['./definition-list-value.component.scss']\n})\nexport class SkyDefinitionListValueComponent {\n public defaultValue: string;\n\n constructor(public service: SkyDefinitionListService) { }\n}\n","<div class=\"sky-definition-list-value\">\n <span #valueEl>\n <ng-content></ng-content>\n </span>\n <span class=\"sky-deemphasized\" *ngIf=\"!valueEl.textContent.trim()\">\n {{ (service.defaultValue | async) || ('skyux_definition_list_none_found' | skyLibResources) }}\n </span>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport {\n SkyI18nModule\n} from '@skyux/i18n';\n\nimport { SkyLayoutResourcesModule } from '../shared/sky-layout-resources.module';\n\nimport { SkyDefinitionListComponent } from './definition-list.component';\nimport { SkyDefinitionListContentComponent } from './definition-list-content.component';\nimport { SkyDefinitionListHeadingComponent } from './definition-list-heading.component';\nimport { SkyDefinitionListLabelComponent } from './definition-list-label.component';\nimport { SkyDefinitionListValueComponent } from './definition-list-value.component';\n\n@NgModule({\n declarations: [\n SkyDefinitionListComponent,\n SkyDefinitionListContentComponent,\n SkyDefinitionListHeadingComponent,\n SkyDefinitionListLabelComponent,\n SkyDefinitionListValueComponent\n ],\n imports: [\n CommonModule,\n SkyI18nModule,\n SkyLayoutResourcesModule\n ],\n exports: [\n SkyDefinitionListComponent,\n SkyDefinitionListContentComponent,\n SkyDefinitionListHeadingComponent,\n SkyDefinitionListLabelComponent,\n SkyDefinitionListValueComponent\n ]\n})\nexport class SkyDefinitionListModule { }\n","import {\n ElementRef,\n Injectable,\n Renderer2,\n RendererFactory2\n} from '@angular/core';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyDescriptionListAdapterService {\n\n private renderer: Renderer2;\n\n constructor(\n rendererFactory: RendererFactory2\n ) {\n this.renderer = rendererFactory.createRenderer(undefined, undefined);\n }\n\n public getWidth(elementRef: ElementRef): number {\n return elementRef.nativeElement.clientWidth;\n }\n\n public setResponsiveClass(element: ElementRef): void {\n const nativeEl: any = element.nativeElement;\n const width = this.getWidth(element);\n const className = this.getResponsiveClassName(width);\n\n this.renderer.removeClass(nativeEl, 'sky-responsive-container-xs');\n this.renderer.removeClass(nativeEl, 'sky-responsive-container-sm');\n this.renderer.removeClass(nativeEl, 'sky-responsive-container-md');\n\n this.renderer.addClass(nativeEl, className);\n }\n\n private getResponsiveClassName(width: number): string {\n const xsBreakpointMaxPixels = 479;\n const smBreakpointMinPixels = 480;\n const smBreakpointMaxPixels = 767;\n\n if (width <= xsBreakpointMaxPixels) {\n return 'sky-responsive-container-xs';\n } else if (width >= smBreakpointMinPixels && width <= smBreakpointMaxPixels) {\n return 'sky-responsive-container-sm';\n } else {\n return 'sky-responsive-container-md';\n }\n }\n\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n TemplateRef,\n ViewChild\n} from '@angular/core';\n\n/**\n * Specifies the term in a term-description pair.\n */\n@Component({\n selector: 'sky-description-list-term',\n templateUrl: './description-list-term.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SkyDescriptionListTermComponent {\n\n @ViewChild('termTemplateRef', {\n read: TemplateRef,\n static: true\n })\n public templateRef: TemplateRef<any>;\n\n}\n","<ng-template\n #termTemplateRef\n>\n <ng-content></ng-content>\n</ng-template>\n","import {\n Injectable,\n OnDestroy\n} from '@angular/core';\n\nimport {\n BehaviorSubject,\n Observable\n} from 'rxjs';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyDescriptionListService implements OnDestroy {\n\n public get defaultDescription(): Observable<string> {\n return this._defaultDescription.asObservable();\n }\n\n private _defaultDescription = new BehaviorSubject<string>('');\n\n public ngOnDestroy(): void {\n this._defaultDescription.complete();\n }\n\n public updateDefaultDescription(value: string): void {\n this._defaultDescription.next(value);\n }\n\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n OnDestroy,\n OnInit,\n TemplateRef,\n ViewChild\n} from '@angular/core';\n\nimport {\n SkyThemeService\n} from '@skyux/theme';\n\nimport {\n takeUntil\n} from 'rxjs/operators';\n\nimport {\n Subject\n} from 'rxjs';\n\nimport {\n SkyDescriptionListService\n} from './description-list.service';\n\n/**\n * Specifies the description in a term-description pair.\n */\n@Component({\n selector: 'sky-description-list-description',\n templateUrl: './description-list-description.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SkyDescriptionListDescriptionComponent implements OnDestroy, OnInit {\n\n public defaultDescription: string;\n\n public themeName: string;\n\n @ViewChild('descriptionTemplateRef', {\n read: TemplateRef,\n static: true\n })\n public templateRef: TemplateRef<any>;\n\n private ngUnsubscribe = new Subject();\n\n constructor(\n public service: SkyDescriptionListService,\n private changeRef: ChangeDetectorRef,\n private themeSvc: SkyThemeService\n ) {}\n\n public ngOnInit(): void {\n /* istanbul ignore else */\n if (this.themeSvc) {\n this.themeSvc.settingsChange\n .pipe(\n takeUntil(this.ngUnsubscribe)\n )\n .subscribe((themeSettings) => {\n this.themeName = themeSettings.currentSettings.theme.name;\n this.changeRef.markForCheck();\n });\n }\n }\n\n public ngOnDestroy(): void {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n}\n","<ng-template\n #descriptionTemplateRef\n>\n <span #valueEl>\n <ng-content></ng-content>\n </span>\n <span *ngIf=\"!valueEl.textContent.trim()\"\n data-sky-id=\"sky-description-list-default-value\"\n [skyThemeClass]=\"{\n 'sky-font-deemphasized': 'modern',\n 'sky-deemphasized': 'default'\n }\"\n >\n {{ (service.defaultDescription | async) || ('skyux_description_list_none_found' | skyLibResources) }}\n </span>\n</ng-template>\n","import {\n Component,\n ContentChildren,\n QueryList\n} from '@angular/core';\n\nimport {\n SkyDescriptionListTermComponent\n} from './description-list-term.component';\n\nimport {\n SkyDescriptionListDescriptionComponent\n} from './description-list-description.component';\n\n/**\n * Wraps the term-description pairs in the description list.\n */\n@Component({\n selector: 'sky-description-list-content',\n templateUrl: './description-list-content.component.html'\n})\nexport class SkyDescriptionListContentComponent {\n\n @ContentChildren(SkyDescriptionListTermComponent)\n public termComponents: QueryList<SkyDescriptionListTermComponent>;\n\n @ContentChildren(SkyDescriptionListDescriptionComponent)\n public descriptionComponents: QueryList<SkyDescriptionListDescriptionComponent>;\n\n}\n","<ng-content></ng-content>\n","import {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n HostListener,\n Input,\n OnDestroy,\n QueryList,\n ViewChild\n} from '@angular/core';\n\nimport {\n MutationObserverService\n} from '@skyux/core';\n\nimport {\n takeUntil\n} from 'rxjs/operators';\n\nimport {\n Subject\n} from 'rxjs';\n\nimport {\n SkyDescriptionListModeType\n} from './types/description-list-mode-type';\n\nimport {\n SkyDescriptionListAdapterService\n} from './description-list-adapter-service';\n\nimport {\n SkyDescriptionListContentComponent\n} from './description-list-content.component';\n\nimport {\n SkyDescriptionListService\n} from './description-list.service';\n\n/**\n * Creates a description list to display term-description pairs.\n */\n@Component({\n selector: 'sky-description-list',\n templateUrl: './description-list.component.html',\n styleUrls: ['./description-list.component.scss'],\n providers: [\n SkyDescriptionListAdapterService,\n SkyDescriptionListService\n ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SkyDescriptionListComponent implements AfterContentInit, AfterViewInit, OnDestroy {\n/**\n * Specifies a default description to display when no description is provided\n * for a term-description pair.\n * @default 'None found'\n */\n @Input()\n public set defaultDescription(value: string) {\n this.descriptionListService.updateDefaultDescription(value);\n }\n\n /**\n * Specifies the width of term-description pairs when `mode` is set to `horizontal`. By default,\n * the width is responsive based on the width of the container element.\n */\n @Input()\n public listItemWidth: string;\n\n /**\n * Specifies how to display term-description pairs within the description list.\n * @default 'vertical'\n */\n @Input()\n public set mode(value: SkyDescriptionListModeType) {\n this._mode = value;\n }\n\n public get mode(): SkyDescriptionListModeType {\n return this._mode || 'vertical';\n }\n\n @ContentChildren(SkyDescriptionListContentComponent)\n public contentComponents: QueryList<SkyDescriptionListContentComponent>;\n\n private contentObserver: MutationObserver;\n\n @ViewChild('descriptionListElement', {\n read: ElementRef,\n static: true\n })\n private elementRef: ElementRef;\n\n private ngUnsubscribe = new Subject<void>();\n\n private _mode: SkyDescriptionListModeType;\n\n constructor(\n private adapterService: SkyDescriptionListAdapterService,\n private changeDetector: ChangeDetectorRef,\n private descriptionListService: SkyDescriptionListService,\n private mutationSvc: MutationObserverService\n ) { }\n\n public ngAfterContentInit(): void {\n\n // Wait for all content to render before detecting parent width.\n setTimeout(() => {\n this.updateResponsiveClass();\n });\n\n this.contentComponents.changes\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe(() => {\n this.changeDetector.markForCheck();\n });\n }\n\n public ngAfterViewInit(): void {\n this.contentObserver = this.mutationSvc.create(() => {\n this.changeDetector.markForCheck();\n });\n this.contentObserver.observe(this.elementRef.nativeElement, {\n childList: true,\n characterData: true,\n subtree: true\n });\n }\n\n public ngOnDestroy(): void {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n this.contentObserver.disconnect();\n }\n\n @HostListener('window:resize')\n public onWindowResize(): void {\n this.updateResponsiveClass();\n }\n\n private updateResponsiveClass(): void {\n this.adapterService.setResponsiveClass(this.elementRef);\n this.changeDetector.markForCheck();\n }\n}\n","<dl\n class=\"sky-description-list\"\n [ngClass]=\"{\n 'sky-description-list-long-description-mode' : mode == 'longDescription',\n 'sky-description-list-vertical-mode' : mode == 'vertical',\n 'sky-description-list-horizontal-mode' : mode == 'horizontal'\n }\"\n #descriptionListElement\n>\n <!--\n Wrapping div is for horizontal flexing. Also injecting children's templateRef directly\n to avoid adding non-semantic HTML tags to DOM\n -->\n <div *ngFor=\"let contentComponent of contentComponents\"\n class=\"sky-description-list-content\"\n [style.width]=\"mode === 'horizontal' ? listItemWidth : ''\"\n >\n <dt *ngFor=\"let termComponent of contentComponent?.termComponents\">\n <ng-container *ngTemplateOutlet=\"termComponent.templateRef\"></ng-container>\n </dt>\n <dd *ngFor=\"let descriptionComponent of contentComponent?.descriptionComponents\">\n <ng-container *ngTemplateOutlet=\"descriptionComponent.templateRef\"></ng-container>\n </dd>\n </div>\n</dl>\n","import {\n CommonModule\n} from '@angular/common';\n\nimport {\n NgModule\n} from '@angular/core';\n\nimport {\n SkyI18nModule\n} from '@skyux/i18n';\n\nimport {\n SkyThemeModule\n} from '@skyux/theme';\n\nimport { SkyLayoutResourcesModule } from '../shared/sky-layout-resources.module';\n\nimport {\n SkyDescriptionListComponent\n} from './description-list.component';\n\nimport {\n SkyDescriptionListContentComponent\n} from './description-list-content.component';\n\nimport {\n SkyDescriptionListTermComponent\n} from './description-list-term.component';\n\nimport {\n SkyDescriptionListDescriptionComponent\n} from './description-list-description.component';\n\n@NgModule({\n declarations: [\n SkyDescriptionListComponent,\n SkyDescriptionListContentComponent,\n SkyDescriptionListTermComponent,\n SkyDescriptionListDescriptionComponent\n ],\n imports: [\n CommonModule,\n SkyI18nModule,\n SkyLayoutResourcesModule,\n SkyThemeModule\n ],\n exports: [\n SkyDescriptionListComponent,\n SkyDescriptionListContentComponent,\n SkyDescriptionListTermComponent,\n SkyDescriptionListDescriptionComponent\n ]\n})\nexport class SkyDescriptionListModule { }\n","/**\n * @deprecated Use `SkyDescriptionListModeType` instead.\n * @internal\n * Specifies how to display the term-description pairs within a description list.\n */\nexport enum SkyDescriptionListMode {\n\n /**\n * Displays term-description pairs side by side in a horizontal list.\n * This mode provides a responsive layout.\n */\n horizontal = 'horizontal',\n\n /**\n * Displays terms and descriptions side by side with the term on the left and the description\n * on the right. This mode includes room for long descriptions and uses a responsive layout\n * that stacks term-description pairs vertically.\n */\n longDescription = 'longDescription',\n\n /**\n * Displays term-description pairs in a vertical list.\n */\n vertical = 'vertical'\n\n}\n","/**\n * @deprecated Use `SkyFluidGridGutterSizeType` instead.\n * @internal\n */\nexport enum SkyFluidGridGutterSize {\n /**\n * Specifies a small gutter.\n */\n Small,\n /**\n * Specifies a medium gutter.\n */\n Medium,\n /**\n * Specifies a large gutter.\n */\n Large\n}\n","import { Component, Input } from '@angular/core';\n\n/**\n * Displays a row within the `sky-fluid-grid` wrapper. Previously, you could display a row\n * without a wrapper, but we no longer officially support that option.\n */\n@Component({\n selector: 'sky-row',\n templateUrl: './row.component.html',\n styleUrls: ['./row.component.scss']\n})\nexport class SkyRowComponent {\n /**\n * Indicates whether to reverse the display order for columns in the row.\n * @default false\n */\n @Input()\n public reverseColumnOrder: boolean = false;\n}\n","<div class=\"sky-row\" \n [ngClass]=\"{ 'sky-row-reverse': reverseColumnOrder }\">\n <ng-content></ng-content>\n</div>\n","import {\n Component,\n HostBinding,\n Input,\n OnInit,\n SimpleChanges,\n OnChanges,\n ViewEncapsulation\n} from '@angular/core';\n\n@Component({\n selector: 'sky-column',\n templateUrl: './column.component.html',\n styleUrls: ['./column.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class SkyColumnComponent implements OnInit, OnChanges {\n\n/**\n * Specifies the number of columns (1-12) to use on extra-small screens\n * (less than 768px). If you do not specify a value, the fluid grid displays\n * the column at the full width of the screen.\n * @default 12\n */\n @Input()\n public screenXSmall: number;\n\n/**\n * Specifies the number of columns (1-12) to use on small screens\n * (768-991px). If you do not specify a value, the column inherits\n * the `screenXSmall` value.\n */\n @Input()\n public screenSmall: number;\n\n/**\n * Specifies the number of columns (1-12) to use on medium screens\n * (992-1199px). If you do not specify a value, the column inherits\n * the `screenSmall` value.\n */\n @Input()\n public screenMedium: number;\n\n/**\n * Specifies the number of columns (1-12) to use on large screens\n * (more than 1200px). If you do not specify a value, the column\n * inherits the `screenMedium` value.\n */\n @Input()\n public screenLarge: number;\n\n @HostBinding('class')\n public classnames: string;\n\n public ngOnChanges(changes: SimpleChanges) {\n /* istanbul ignore else */\n if (changes.screenXSmall || changes.screenSmall || changes.screenMedium || changes.screenLarge) {\n this.classnames = this.getClassNames();\n }\n }\n\n public getClassNames(): string {\n let classnames = [\n 'sky-column'\n ];\n\n if (this.screenXSmall) {\n classnames.push(`sky-column-xs-${this.screenXSmall}`);\n }\n\n if (this.screenSmall) {\n classnames.push(`sky-column-sm-${this.screenSmall}`);\n }\n\n if (this.screenMedium) {\n classnames.push(`sky-column-md-${this.screenMedium}`);\n }\n\n if (this.screenLarge) {\n classnames.push(`sky-column-lg-${this.screenLarge}`);\n }\n\n return classnames.join(' ');\n }\n\n public ngOnInit(): void {\n this.classnames = this.getClassNames();\n }\n}\n","<ng-content></ng-content>\n","import {\n Component,\n Input\n} from '@angular/core';\n\nimport {\n SkyFluidGridGutterSize\n} from './fluid-grid-gutter-size';\n\nimport {\n SkyFluidGridGutterSizeType\n} from './types/fluid-grid-gutter-size-type';\n\n/**\n * Wraps the fluid grid to ensure proper spacing. Without the wrapper, the\n * alignment, padding, and margins do not behave as expected.\n */\n@Component({\n selector: 'sky-fluid-grid',\n templateUrl: './fluid-grid.component.html',\n styleUrls: [\n './fluid-grid.component.scss'\n ]\n})\nexport class SkyFluidGridComponent {\n\n /**\n * Disables the outer left and right margin of the fluid grid container.\n * @default false\n */\n @Input()\n public set disableMargin(value: boolean) {\n this._disableMargin = value;\n }\n\n public get disableMargin(): boolean {\n return this._disableMargin || false;\n }\n\n /**\n * Specifies a `SkyFluidGridGutterSizeType` to define the size of the padding\n * between columns.\n * @default 'large'\n */\n @Input()\n public set gutterSize(value: SkyFluidGridGutterSizeType) {\n this._gutterSize = value;\n }\n\n public get gutterSize(): SkyFluidGridGutterSizeType {\n return this._gutterSize === undefined ? 'large' : this._gutterSize;\n }\n\n /**\n * @internal\n */\n public get gutterSizeResolved(): SkyFluidGridGutterSizeType {\n // Before this change, the template did a `==` comparison, implicitly converting numerical\n // string values to their numeric values before comparing them. Checking for the numerical\n // string value in addition to the values allowed by the type maintains this behavior.\n switch (this.gutterSize) {\n case 'medium':\n case SkyFluidGridGutterSize.Medium:\n case SkyFluidGridGutterSize.Medium.toString():\n return 'medium';\n case 'small':\n case SkyFluidGridGutterSize.Small:\n case SkyFluidGridGutterSize.Small.toString():\n return 'small';\n default:\n return 'large';\n }\n }\n\n private _disableMargin: boolean;\n\n private _gutterSize: SkyFluidGridGutterSizeType;\n\n}\n","<div\n class=\"sky-fluid-grid\"\n [ngClass]=\"{\n 'sky-fluid-grid-gutter-size-small' : gutterSizeResolved === 'small',\n 'sky-fluid-grid-gutter-size-medium' : gutterSizeResolved === 'medium',\n 'sky-fluid-grid-gutter-size-large' : gutterSizeResolved === 'large',\n 'sky-fluid-grid-no-margin' : disableMargin\n }\"\n>\n <ng-content></ng-content>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { SkyRowComponent } from './row.component';\nimport { SkyColumnComponent } from './column.component';\nimport { SkyFluidGridComponent } from './fluid-grid.component';\n\n@NgModule({\n imports: [\n CommonModule\n ],\n declarations: [\n SkyRowComponent,\n SkyColumnComponent,\n SkyFluidGridComponent\n ],\n exports: [\n SkyRowComponent,\n SkyColumnComponent,\n SkyFluidGridComponent\n ]\n})\nexport class SkyFluidGridModule { }\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n TemplateRef\n} from '@angular/core';\n\nimport {\n SkyFormatItem\n} from './format-item';\n\nconst tokenRegex = /(\\{\\d+\\})/;\n\n@Component({\n selector: 'sky-format',\n templateUrl: './format.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SkyFormatComponent {\n\n public itemsForDisplay: SkyFormatItem[];\n\n /**\n * The tokenized string that represents the template. Tokens use the `{n}` notation\n * where n is the ordinal of the item to replace the token.\n */\n @Input()\n public set text(value: string) {\n this._text = value;\n this.updateItemsForDisplay();\n }\n\n public get text(): string {\n return this._text;\n }\n\n /**\n * An array of `TemplateRef` objects to be placed in the template, where the `nth`\n * item is placed at the `{n}` location in the template.\n */\n @Input()\n public set args(value: TemplateRef<any>[]) {\n this._args = value;\n this.updateItemsForDisplay();\n }\n\n public get args(): TemplateRef<any>[] {\n return this._args;\n }\n\n private _text: string;\n\n private _args: TemplateRef<any>[];\n\n private updateItemsForDisplay(): void {\n this.itemsForDisplay = [];\n\n if (this.text && this.args) {\n const textParts = this.text.split(tokenRegex);\n\n for (const textPart of textParts) {\n // Disregard empty strings.\n if (textPart) {\n const item: SkyFormatItem = {};\n\n if (tokenRegex.test(textPart)) {\n const valueIndex = +textPart.substring(1, textPart.length - 1);\n\n item.templateRef = this.args[valueIndex];\n } else {\n item.text = textPart;\n }\n\n this.itemsForDisplay.push(item);\n }\n }\n }\n }\n\n}\n","<ng-container *ngFor=\"let item of itemsForDisplay\">\n <!--\n The following ng-container must be on one line so no extra whitespace is introduced.\n -->\n <ng-container *ngIf=\"item.text else item.templateRef\">{{ item.text }}</ng-container>\n</ng-container>\n","import {\n NgModule\n} from '@angular/core';\n\nimport {\n CommonModule\n} from '@angular/common';\n\nimport {\n SkyFormatComponent\n} from './format.component';\n\n@NgModule({\n declarations: [\n SkyFormatComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n SkyFormatComponent\n ]\n})\nexport class SkyFormatModule { }\n","import {\n Injectable\n} from '@angular/core';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyPageThemeAdapterService {\n\n private styleEl: HTMLStyleElement;\n\n public addTheme(): void {\n if (!this.styleEl) {\n this.styleEl = document.createElement('style');\n this.styleEl.appendChild(document.createTextNode('body { background-color: #fff; }'));\n\n document.head.appendChild(this.styleEl);\n }\n }\n\n public removeTheme(): void {\n if (this.styleEl) {\n document.head.removeChild(this.styleEl);\n this.styleEl = undefined;\n }\n }\n\n}\n","import {\n Component,\n OnDestroy,\n OnInit\n} from '@angular/core';\n\nimport {\n SkyPageThemeAdapterService\n} from './page-theme-adapter.service';\n\n/**\n * Resets the SPA's background to white and adds the `sky-theme-default` CSS class to the host\n * element to let consumers override CSS styling. Consumers can override any element by writing\n * CSS selectors like this: `:host-context(.sky-theme-default) .my-class {}`.\n */\n@Component({\n selector: 'sky-page',\n templateUrl: './page.component.html',\n providers: [SkyPageThemeAdapterService]\n})\nexport class SkyPageComponent implements OnInit, OnDestroy {\n\n constructor(private themeAdapter: SkyPageThemeAdapterService) { }\n\n public ngOnInit(): void {\n this.themeAdapter.addTheme();\n }\n\n public ngOnDestroy(): void {\n this.themeAdapter.removeTheme();\n }\n\n}\n","<div class=\"sky-theme-default\">\n <ng-content></ng-content>\n</div>\n","import {\n NgModule\n} from '@angular/core';\n\nimport {\n SkyPageComponent\n} from './page.component';\n\n@NgModule({\n declarations: [\n SkyPageComponent\n ],\n exports: [\n SkyPageComponent\n ]\n})\nexport class SkyPageModule { }\n","import { Component } from '@angular/core';\n\n/**\n * Displays messages that require immediate attention as [alerts](https://developer.blackbaud.com/skyux-indicators/docs/alert) within\n * the page summary.\n */\n@Component({\n selector: 'sky-page-summary-alert',\n templateUrl: './page-summary-alert.component.html',\n styleUrls: ['./page-summary-alert.component.scss']\n})\n/* istanbul ignore next */\n/* Code coverage having problems with no statements in classes */\nexport class SkyPageSummaryAlertComponent { }\n","<ng-content></ng-content>\n","import { Component } from '@angular/core';\n\n/**\n * Displays content in the arbitrary section of the page summary.\n */\n@Component({\n selector: 'sky-page-summary-content',\n templateUrl: './page-summary-content.component.html',\n styleUrls: ['./page-summary-content.component.scss']\n})\n/* istanbul ignore next */\n/* Code coverage having problems with no statements in classes */\nexport class SkyPageSummaryContentComponent { }\n","<div class=\"sky-page-summary-content\">\n <ng-content></ng-content>\n</div>\n","import { Component } from '@angular/core';\n\n/**\n * Displays an image in the page summary to identify a record\n * or help users complete a core task.\n */\n@Component({\n selector: 'sky-page-summary-image',\n templateUrl: './page-summary-image.component.html',\n styleUrls: ['./page-summary-image.component.scss']\n})\n/* istanbul ignore next */\n/* Code coverage having problems with no statements in classes */\nexport class SkyPageSummaryImageComponent { }\n","<div class=\"sky-page-summary-image\">\n <ng-content></ng-content>\n</div>\n","import { Component } from '@angular/core';\n\n/**\n * Highlights important information about a page in the key information section of the\n * page summary.\n */\n@Component({\n selector: 'sky-page-summary-key-info',\n templateUrl: './page-summary-key-info.component.html',\n styleUrls: ['./page-summary-key-info.component.scss']\n})\nexport class SkyPageSummaryKeyInfoComponent { }\n","<div class=\"sky-page-summary-key-info\">\n <ng-content></ng-content>\n</div>\n","import { Component } from '@angular/core';\n\n/**\n * Displays [labels](https://developer.blackbaud.com/skyux/components/label)\n * to highlight important status information about a page's content.\n */\n@Component({\n selector: 'sky-page-summary-status',\n templateUrl: './page-summary-status.component.html',\n styleUrls: ['./page-summary-status.component.scss']\n})\n/* istanbul ignore next */\n/* Code coverage having problems with no statements in classes */\nexport class SkyPageSummaryStatusComponent { }\n","<div class=\"sky-page-summary-status\">\n <ng-content></ng-content>\n</div>\n","import { Component } from '@angular/core';\n\n/**\n * Specifies a subtitle to identify the page content.\n */\n@Component({\n selector: 'sky-page-summary-subtitle',\n templateUrl: './page-summary-subtitle.component.html',\n styleUrls: ['./page-summary-subtitle.component.scss']\n})\n/* istanbul ignore next */\n/* Code coverage having problems with no statements in classes */\nexport class SkyPageSummarySubtitleComponent { }\n","<p class=\"sky-page-summary-subtitle sky-emphasized\">\n <ng-content></ng-content>\n</p>\n","import { Component } from '@angular/core';\n\n/**\n * Specifies a title to identify the page content.\n */\n@Component({\n selector: 'sky-page-summary-title',\n templateUrl: './page-summary-title.component.html',\n styleUrls: ['./page-summary-title.component.scss']\n})\n/* istanbul ignore next */\n/* Code coverage having problems with no statements in classes */\nexport class SkyPageSummaryTitleComponent { }\n","<h1 class=\"sky-page-summary-title sky-page-heading\">\n <ng-content></ng-content>\n</h1>\n","import { ElementRef, Injectable } from '@angular/core';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyPageSummaryAdapterService {\n public updateKeyInfoLocation(elRef: ElementRef, isXS: boolean) {\n let el = elRef.nativeElement;\n let keyInfoContainerEl = el.querySelector('.sky-page-summary-key-info-container');\n\n if (isXS) {\n el.querySelector('.sky-page-summary-key-info-xs').appendChild(keyInfoContainerEl);\n } else {\n el.querySelector('.sky-page-summary-key-info-sm').appendChild(keyInfoContainerEl);\n }\n }\n}\n","import {\n AfterViewInit,\n Component,\n ContentChildren,\n ElementRef,\n OnDestroy,\n QueryList\n} from '@angular/core';\n\nimport {\n SkyMediaBreakpoints,\n SkyMediaQueryService\n} from '@skyux/core';\n\nimport {\n Subscription\n} from 'rxjs';\n\nimport {\n SkyPageSummaryAdapterService\n} from './page-summary-adapter.service';\n\nimport {\n SkyPageSummaryKeyInfoComponent\n} from './page-summary-key-info.component';\n\n/**\n * Specifies the components to display in the page summary.\n */\n@Component({\n selector: 'sky-page-summary',\n templateUrl: './page-summary.component.html',\n styleUrls: ['./page-summary.component.scss'],\n providers: [SkyPageSummaryAdapterService]\n})\nexport class SkyPageSummaryComponent implements OnDestroy, AfterViewInit {\n public get hasKeyInfo(): boolean {\n return (this.keyInfoComponents.length > 0);\n }\n\n @ContentChildren(SkyPageSummaryKeyInfoComponent, { read: SkyPageSummaryKeyInfoComponent })\n private keyInfoComponents: QueryList<SkyPageSummaryKeyInfoComponent>;\n\n private breakpointSubscription: Subscription;\n\n constructor(\n private elRef: ElementRef,\n private adapter: SkyPageSummaryAdapterService,\n private mediaQueryService: SkyMediaQueryService\n ) { }\n\n public ngAfterViewInit() {\n this.breakpointSubscription = this.mediaQueryService.subscribe(\n (args: SkyMediaBreakpoints) => {\n this.adapter.updateKeyInfoLocation(this.elRef, args === SkyMediaBreakpoints.xs);\n }\n );\n }\n\n public ngOnDestroy() {\n /* istanbul ignore else */\n /* sanity check */\n if (this.breakpointSubscription) {\n this.breakpointSubscription.unsubscribe();\n }\n }\n}\n","<div\n class=\"sky-page-summary\"\n [ngClass]=\"{ 'sky-page-summary-with-key-info': hasKeyInfo }\"\n>\n <ng-content select=\"sky-page-summary-alert\"></ng-content>\n <div class=\"sky-page-summary-row\">\n <div class=\"sky-page-summary-left\">\n <ng-content select=\"sky-page-summary-image\"></ng-content>\n <div class=\"sky-page-summary-data\">\n <ng-content select=\"sky-page-summary-title\"></ng-content>\n <ng-content select=\"sky-page-summary-subtitle\"></ng-content>\n <ng-content select=\"sky-page-summary-status\"></ng-content>\n <div class=\"sky-page-summary-key-info-xs\"></div>\n <ng-content select=\"sky-page-summary-content\"></ng-content>\n </div>\n </div>\n <div class=\"sky-page-summary-key-info-sm\">\n <div class=\"sky-page-summary-key-info-container\">\n <ng-content select=\"sky-page-summary-key-info\"></ng-content>\n </div>\n </div>\n </div>\n</div>\n","import {\n CommonModule\n} from '@angular/common';\n\nimport {\n NgModule\n} from '@angular/core';\n\nimport {\n SkyPageSummaryAlertComponent\n} from './page-summary-alert.component';\n\nimport {\n SkyPageSummaryContentComponent\n} from './page-summary-content.component';\n\nimport {\n SkyPageSummaryImageComponent\n} from './page-summary-image.component';\n\nimport {\n SkyPageSummaryKeyInfoComponent\n} from './page-summary-key-info.component';\n\nimport {\n SkyPageSummaryStatusComponent\n} from './page-summary-status.component';\n\nimport {\n SkyPageSummarySubtitleComponent\n} from './page-summary-subtitle.component';\n\nimport {\n SkyPageSummaryTitleComponent\n} from './page-summary-title.component';\n\nimport {\nSkyPageSummaryComponent\n} from './page-summary.component';\n\n@NgModule({\n declarations: [\n SkyPageSummaryAlertComponent,\n SkyPageSummaryComponent,\n SkyPageSummaryContentComponent,\n SkyPageSummaryImageComponent,\n SkyPageSummaryKeyInfoComponent,\n SkyPageSummaryStatusComponent,\n SkyPageSummarySubtitleComponent,\n SkyPageSummaryTitleComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n SkyPageSummaryAlertComponent,\n SkyPageSummaryComponent,\n SkyPageSummaryContentComponent,\n SkyPageSummaryImageComponent,\n SkyPageSummaryKeyInfoComponent,\n SkyPageSummaryStatusComponent,\n SkyPageSummarySubtitleComponent,\n SkyPageSummaryTitleComponent\n ]\n})\nexport class SkyPageSummaryModule { }\n","import {\n ElementRef,\n Injectable,\n Renderer2,\n RendererFactory2\n} from '@angular/core';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyTextExpandAdapterService {\n\n private renderer: Renderer2;\n\n constructor(\n private rendererFactory: RendererFactory2\n ) {\n this.renderer = this.rendererFactory.createRenderer(undefined, undefined);\n }\n\n public getContainerHeight(containerEl: ElementRef) {\n return containerEl.nativeElement.offsetHeight;\n }\n\n public setContainerHeight(containerEl: ElementRef, height: string) {\n if (height === undefined) {\n this.renderer.removeStyle(containerEl.nativeElement, 'max-height');\n } else {\n this.renderer.setStyle(containerEl.nativeElement, 'max-height', height);\n }\n }\n\n public setText(textEl: ElementRef, text: string) {\n textEl.nativeElement.textContent = text;\n }\n}\n","/**\n * @internal\n */\nexport class SkyTextExpandModalContext {\n public header: string;\n public text: string;\n}\n","import {\n Component\n} from '@angular/core';\n\nimport {\n SkyModalInstance\n} from '@skyux/modals';\n\nimport {\n SkyTextExpandModalContext\n} from './text-expand-modal-context';\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-text-expand-modal',\n templateUrl: './text-expand-modal.component.html',\n styleUrls: ['./text-expand.component.scss']\n})\nexport class SkyTextExpandModalComponent {\n\n constructor(\n public context: SkyTextExpandModalContext,\n public instance: SkyModalInstance\n ) { }\n\n public close(): void {\n this.instance.close();\n }\n\n}\n","<sky-modal>\n <sky-modal-header>{{context.header}}</sky-modal-header>\n <sky-modal-content class=\"sky-text-expand-modal-content\">{{context.text}}</sky-modal-content>\n <sky-modal-footer>\n <button\n class=\"sky-btn sky-btn-link\"\n (click)=\"close()\">{{'skyux_text_expand_close_text' | skyLibResources}}</button>\n </sky-modal-footer>\n</sky-modal>\n","import {\n AfterContentInit,\n Component,\n ElementRef,\n Input,\n ViewChild\n} from '@angular/core';\n\nimport {\n SkyLibResourcesService\n} from '@skyux/i18n';\n\nimport {\n SkyModalService\n} from '@skyux/modals';\n\nimport {\n forkJoin as observableForkJoin\n} from 'rxjs';\n\nimport {\n take\n} from 'rxjs/operators';\n\nimport {\n SkyTextExpandAdapterService\n} from './text-expand-adapter.service';\n\nimport {\n SkyTextExpandModalComponent\n} from './text-expand-modal.component';\n\nimport {\n SkyTextExpandModalContext\n} from './text-expand-modal-context';\n\n/**\n * Auto-incrementing integer used to generate unique ids for text expand components.\n */\nlet nextId = 0;\n\n@Component({\n selector: 'sky-text-expand',\n templateUrl: './text-expand.component.html',\n styleUrls: ['./text-expand.component.scss'],\n providers: [\n SkyTextExpandAdapterService\n ]\n})\nexport class SkyTextExpandComponent implements AfterContentInit {\n\n /**\n * Specifies a title to display when the component expands the full text in a modal.\n * @default 'Expanded view'\n */\n @Input()\n public expandModalTitle: string;\n\n /**\n * Specifies the maximum number of text characters to display inline when users select the link\n * to expand the full text. If the text exceeds this limit, then the component expands\n * the full text in a modal instead.\n */\n @Input()\n public maxExpandedLength: number = 600;\n\n /**\n * Specifies the maximum number of newline characters to display inline when users select\n * the link to expand the full text. If the text exceeds this limit, then\n * the component expands the full text in a modal view instead.\n */\n @Input()\n public maxExpandedNewlines: number = 2;\n\n /**\n * Specifies the number of text characters to display before truncating the text.\n * To avoid truncating text in the middle of a word, the component looks for a space\n * in the 10 characters before the last character.\n * @default 200\n */\n @Input()\n public set maxLength(value: number) {\n this._maxLength = value;\n\n /* istanbul ignore else */\n if (this.textEl) {\n this.setup(this.expandedText);\n }\n }\n\n public get maxLength(): number {\n return this._maxLength;\n }\n\n /**\n * Specifies the text to truncate.\n */\n @Input()\n public set text(value: string) {\n /* istanbul ignore else */\n if (this.textEl) {\n this.setup(value);\n }\n }\n\n /**\n * Indicates whether to replace newline characters in truncated text with spaces.\n */\n @Input()\n public truncateNewlines: boolean = true;\n\n public buttonText: string;\n\n public contentSectionId: string = `sky-text-expand-content-${++nextId}`;\n\n public expandable: boolean;\n\n public isExpanded: boolean = false;\n\n public isModal: boolean;\n\n @ViewChild('container', {\n read: ElementRef,\n static: true\n })\n private containerEl: ElementRef;\n\n @ViewChild('text', {\n read: ElementRef,\n static: true\n })\n private textEl: ElementRef;\n\n private collapsedText: string;\n\n private expandedText: string;\n\n private newlineCount: number;\n\n private seeMoreText: string;\n\n private seeLessText: string;\n\n private textToShow: string;\n\n private _maxLength: number = 200;\n\n constructor(\n private resources: SkyLibResourcesService,\n private modalService: SkyModalService,\n private textExpandAdapter: SkyTextExpandAdapterService\n ) { }\n\n public textExpand(): void {\n if (this.isModal) {\n // Modal View\n /* istanbul ignore else */\n /* sanity check */\n if (!this.isExpanded) {\n this.modalService.open(\n SkyTextExpandModalComponent,\n [\n {\n provide: SkyTextExpandModalContext,\n useValue: {\n header: this.expandModalTitle,\n text: this.expandedText\n }\n }\n ]\n );\n }\n } else {\n // Normal View\n if (!this.isExpanded) {\n this.setContainerMaxHeight();\n setTimeout(() => {\n this.isExpanded = true;\n this\n .animateText(this.collapsedText, this.expandedText, true);\n }, 10);\n\n } else {\n this.setContainerMaxHeight();\n setTimeout(() => {\n this.isExpanded = false;\n this\n .animateText(this.expandedText, this.collapsedText, false);\n }, 10);\n }\n }\n }\n\n public animationEnd(): void {\n // Ensure the correct text is displayed\n this.textExpandAdapter.setText(this.textEl, this.textToShow);\n // Set height back to auto so the browser can change the height as needed with window changes\n this.textExpandAdapter.setContainerHeight(this.containerEl, undefined);\n }\n\n public ngAfterContentInit(): void {\n observableForkJoin([\n this.resources.getString('skyux_text_expand_see_more'),\n this.resources.getString('skyux_text_expand_see_less')\n ])\n .pipe(take(1))\n .subscribe(resources => {\n this.seeMoreText = resources[0];\n this.seeLessText = resources[1];\n this.setup(this.expandedText);\n\n /* istanbul ignore else */\n if (!this.expandModalTitle) {\n this.resources.getString('skyux_text_expand_modal_title')\n .pipe(take(1))\n .subscribe(resource => {\n this.expandModalTitle = resource;\n });\n }\n });\n }\n\n private setContainerMaxHeight(): void {\n // ensure everything is reset\n this.animationEnd();\n /* Before animation is kicked off, ensure that a maxHeight exists */\n /* Once we have support for angular v4 animations with parameters we can use that instead */\n let currentHeight = this.textExpandAdapter.getContainerHeight(this.containerEl);\n this.textExpandAdapter.setContainerHeight(this.containerEl, `${currentHeight}px`);\n }\n\n private setup(value: string): void {\n if (value) {\n this.newlineCount = this.getNewlineCount(value);\n this.collapsedText = this.getTruncatedText(value, this.maxLength);\n this.expandedText = value;\n if (this.collapsedText !== value) {\n this.buttonText = this.seeMoreText;\n this.isExpanded = false;\n this.expandable = true;\n this.isModal = this.newlineCount > this.maxExpandedNewlines\n || this.expandedText.length > this.maxExpandedLength;\n } else {\n this.expandable = false;\n }\n this.textToShow = this.collapsedText;\n } else {\n this.textToShow = '';\n this.expandable = false;\n }\n this.textExpandAdapter.setText(this.textEl, this.textToShow);\n }\n\n private getNewlineCount(value: string): number {\n let matches = value.match(/\\n/gi);\n\n if (matches) {\n return matches.length;\n }\n\n return 0;\n }\n\n private getTruncatedText(value: string, length: number): string {\n let i: number;\n if (this.truncateNewlines) {\n value = value.replace(/\\n+/gi, ' ');\n }\n // Jump ahead one character and see if it's a space, and if it isn't,\n // back up to the first space and break there so a word doesn't get cut\n // in half.\n if (length < value.length) {\n for (i = length; i > length - 10; i--) {\n if (/\\s/.test(value.charAt(i))) {\n length = i;\n break;\n }\n }\n }\n return value.substr(0, length);\n }\n\n private animateText(previousText: string, newText: string, expanding: boolean): void {\n\n let adapter = this.textExpandAdapter;\n let container = this.containerEl;\n // Reset max height\n adapter.setContainerHeight(container, undefined);\n // Measure the current height so we can animate from it.\n let currentHeight = adapter.getContainerHeight(container);\n this.textToShow = newText;\n adapter.setText(this.textEl, this.textToShow);\n this.buttonText = expanding ? this.seeLessText : this.seeMoreText;\n // Measure the new height so we can animate to it.\n let newHeight = adapter.getContainerHeight(container);\n /* istanbul ignore if */\n if (newHeight < currentHeight) {\n // The new text is smaller than the old text, so put the old text back before doing\n // the collapse animation to avoid showing a big chunk of whitespace.\n adapter.setText(this.textEl, previousText);\n }\n\n adapter.setContainerHeight(container, `${currentHeight}px`);\n // This timeout is necessary due to the browser needing to pick up the non-auto height being set\n // in order to do the transtion in height correctly. Without it the transition does not fire.\n setTimeout(() => {\n adapter.setContainerHeight(container, `${newHeight}px`);\n /* This resets values if the transition does not get kicked off */\n setTimeout(() => {\n this.animationEnd();\n }, 500);\n }, 10);\n }\n}\n","<div\n class=\"sky-text-expand-container\"\n (transitionend)=\"animationEnd()\"\n #container>\n <span class=\"sky-text-expand-text\" [id]=\"contentSectionId\" #text></span>\n <span class=\"sky-text-expand-ellipsis\" *ngIf=\"!isExpanded && expandable\">... </span>\n <button *ngIf=\"expandable\"\n type=\"button\"\n class=\"sky-btn sky-btn-link-inline sky-text-expand-see-more\"\n [attr.aria-expanded]=\"isModal ? undefined : isExpanded\"\n [attr.aria-controls]=\"isModal ? undefined : contentSectionId\"\n [attr.aria-haspopup]=\"isModal ? 'dialog' : undefined\"\n (click)=\"textExpand()\"\n >\n {{buttonText}}\n </button>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport {\n SkyI18nModule\n} from '@skyux/i18n';\n\nimport {\n SkyModalModule\n} from '@skyux/modals';\n\nimport { SkyLayoutResourcesModule } from '../shared/sky-layout-resources.module';\n\nimport { SkyTextExpandComponent } from './text-expand.component';\nimport { SkyTextExpandModalComponent } from './text-expand-modal.component';\n\n@NgModule({\n declarations: [\n SkyTextExpandComponent,\n SkyTextExpandModalComponent\n ],\n imports: [\n SkyI18nModule,\n SkyLayoutResourcesModule,\n SkyModalModule,\n CommonModule\n ],\n exports: [\n SkyTextExpandComponent\n ],\n entryComponents: [\n SkyTextExpandModalComponent\n ]\n})\nexport class SkyTextExpandModule { }\n","import {\n ElementRef,\n Injectable,\n Renderer2,\n RendererFactory2\n} from '@angular/core';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyTextExpandRepeaterAdapterService {\n\n private renderer: Renderer2;\n\n constructor(\n private rendererFactory: RendererFactory2\n ) {\n this.renderer = this.rendererFactory.createRenderer(undefined, undefined);\n }\n\n public getItems(elRef: ElementRef) {\n return elRef.nativeElement.querySelectorAll('.sky-text-expand-repeater-item');\n }\n\n public hideItem(item: HTMLElement) {\n this.renderer.setStyle(item, 'display', 'none');\n }\n\n public showItem(item: HTMLElement) {\n this.renderer.setStyle(item, 'display', 'list-item');\n }\n\n public getContainerHeight(containerEl: ElementRef) {\n return containerEl.nativeElement.offsetHeight;\n }\n\n public setContainerHeight(containerEl: ElementRef, height: string) {\n if (height === undefined) {\n this.renderer.removeStyle(containerEl.nativeElement, 'max-height');\n } else {\n this.renderer.setStyle(containerEl.nativeElement, 'max-height', height);\n }\n }\n}\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n ElementRef,\n Input,\n OnChanges,\n SimpleChanges,\n TemplateRef,\n ViewChild\n} from '@angular/core';\n\nimport {\n SkyLibResourcesService\n} from '@skyux/i18n';\n\nimport {\n forkJoin as observableForkJoin\n} from 'rxjs';\n\nimport {\n take\n} from 'rxjs/operators';\n\nimport {\n SkyTextExpandRepeaterAdapterService\n} from './text-expand-repeater-adapter.service';\n\n/**\n * Auto-incrementing integer used to generate unique ids for text expand repeater components.\n */\nlet nextId = 0;\n\n@Component({\n selector: 'sky-text-expand-repeater',\n templateUrl: './text-expand-repeater.component.html',\n styleUrls: ['./text-expand-repeater.component.scss'],\n providers: [\n SkyTextExpandRepeaterAdapterService\n ]\n})\nexport class SkyTextExpandRepeaterComponent implements AfterViewInit, OnChanges {\n\n /**\n * Specifies the data to truncate.\n */\n @Input()\n public data: any[];\n\n /**\n * Specifies a template for items in the list.\n */\n @Input()\n public itemTemplate: TemplateRef<any>;\n\n /**\n * Specifies the number of items to display before truncating the list.\n */\n @Input()\n public maxItems: number;\n\n public buttonText: string;\n public contentItems: Array<any>;\n public expandable: boolean;\n public contentSectionId: string = `sky-text-expand-repeater-content-${++nextId}`;\n\n public isExpanded: boolean = false;\n\n private seeMoreText: string;\n private seeLessText: string;\n\n @ViewChild('container', {\n read: ElementRef,\n static: false\n })\n private containerEl: ElementRef;\n\n private items: Array<HTMLElement>;\n\n constructor(\n private resources: SkyLibResourcesService,\n private elRef: ElementRef,\n private textExpandRepeaterAdapter: SkyTextExpandRepeaterAdapterService,\n private changeDetector: ChangeDetectorRef\n ) { }\n\n public ngAfterViewInit() {\n if (this.contentItems) {\n this.items = this.textExpandRepeaterAdapter.getItems(this.elRef);\n for (let i = this.maxItems; i < this.contentItems.length; i++) {\n this.textExpandRepeaterAdapter.hideItem(this.items[i]);\n }\n }\n\n observableForkJoin([\n this.resources.getString('skyux_text_expand_see_more'),\n this.resources.getString('skyux_text_expand_see_less')\n ])\n .pipe(take(1))\n .subscribe(resources => {\n this.seeMoreText = resources[0];\n this.seeLessText = resources[1];\n /* sanity check */\n /* istanbul ignore else */\n if (!this.isExpanded) {\n this.buttonText = this.seeMoreText;\n } else {\n this.buttonText = this.seeLessText;\n }\n this.changeDetector.detectChanges();\n });\n }\n\n public ngOnChanges(changes: SimpleChanges): void {\n /* istanbul ignore else */\n if (changes.maxItems || changes.data) {\n this.setup(this.data);\n }\n }\n\n public animationEnd() {\n // Ensure the correct items are displayed\n if (!this.isExpanded) {\n for (let i = this.maxItems; i < this.contentItems.length; i++) {\n this.textExpandRepeaterAdapter.hideItem(this.items[i]);\n }\n }\n // Set height back to auto so the browser can change the height as needed with window changes\n this.textExpandRepeaterAdapter.setContainerHeight(this.containerEl, undefined);\n }\n\n public repeaterExpand() {\n if (!this.isExpanded) {\n this.setContainerMaxHeight();\n setTimeout(() => {\n this.isExpanded = true;\n this.animateRepeater(true);\n });\n\n } else {\n this.setContainerMaxHeight();\n setTimeout(() => {\n this.isExpanded = false;\n this.animateRepeater(false);\n });\n\n }\n }\n\n private setContainerMaxHeight() {\n // ensure everything is reset\n this.animationEnd();\n /* Before animation is kicked off, ensure that a maxHeight exists */\n /* Once we have support for angular v4 animations with parameters we can use that instead */\n let currentHeight = this.textExpandRepeaterAdapter.getContainerHeight(this.containerEl);\n this.textExpandRepeaterAdapter.setContainerHeight(this.containerEl, `${currentHeight}px`);\n }\n\n private animateRepeater(expanding: boolean) {\n let adapter = this.textExpandRepeaterAdapter;\n let container = this.containerEl;\n\n adapter.setContainerHeight(container, undefined);\n let currentHeight = adapter.getContainerHeight(container);\n for (let i = this.maxItems; i < this.contentItems.length; i++) {\n if (!expanding) {\n adapter.hideItem(this.items[i]);\n } else {\n adapter.showItem(this.items[i]);\n }\n }\n let newHeight = adapter.getContainerHeight(container);\n if (!expanding) {\n this.buttonText = this.seeMoreText;\n } else {\n this.buttonText = this.seeLessText;\n }\n if (newHeight < currentHeight) {\n // The new text is smaller than the old text, so put the old text back before doing\n // the collapse animation to avoid showing a big chunk of whitespace.\n for (let i = this.maxItems; i < this.contentItems.length; i++) {\n adapter.showItem(this.items[i]);\n }\n }\n\n adapter.setContainerHeight(container, `${currentHeight}px`);\n // This timeout is necessary due to the browser needing to pick up the non-auto height being set\n // in order to do the transtion in height correctly. Without it the transition does not fire.\n setTimeout(() => {\n adapter.setContainerHeight(container, `${newHeight}px`);\n /* This resets values if the transition does not get kicked off */\n setTimeout(() => {\n this.animationEnd();\n }, 500);\n }, 10);\n }\n\n private setup(value: Array<any>) {\n if (value) {\n let length = value.length;\n if (length > this.maxItems) {\n this.expandable = true;\n this.buttonText = this.seeMoreText;\n this.isExpanded = false;\n } else {\n this.expandable = false;\n }\n this.contentItems = value;\n } else {\n this.contentItems = undefined;\n this.expandable = false;\n }\n }\n}\n","<div class=\"sky-text-expand-repeater\">\n <ul class=\"sky-text-expand-repeater-container\" [id]=\"contentSectionId\" (transitionend)=\"animationEnd()\" #container>\n <li *ngFor=\"let item of contentItems\" class=\"sky-text-expand-repeater-item\">\n <ng-template\n [ngTemplateOutlet]=\"itemTemplate || defaultItemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n </li>\n </ul>\n <button *ngIf=\"expandable\"\n type=\"button\"\n class=\"sky-btn sky-btn-link-inline sky-text-expand-repeater-see-more\"\n [attr.aria-expanded]=\"isExpanded\"\n [attr.aria-controls]=\"contentSectionId\"\n (click)=\"repeaterExpand()\"\n >\n {{buttonText}}\n </button>\n</div>\n\n<ng-template\n let-item\n #defaultItemTemplate\n>\n {{ item }}\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SkyI18nModule } from '@skyux/i18n';\n\nimport { SkyLayoutResourcesModule } from '../shared/sky-layout-resources.module';\n\nimport { SkyTextExpandRepeaterComponent } from './text-expand-repeater.component';\n\n@NgModule({\n declarations: [\n SkyTextExpandRepeaterComponent\n ],\n imports: [\n SkyI18nModule,\n SkyLayoutResourcesModule,\n CommonModule\n ],\n exports: [\n SkyTextExpandRepeaterComponent\n ]\n})\nexport class SkyTextExpandRepeaterModule { }\n","import {\n Component\n} from '@angular/core';\n\n/**\n * Specifies a section to group items within the toolbar. The section displays items in a separate horizontal row.\n */\n@Component({\n selector: 'sky-toolbar-section',\n styleUrls: ['./toolbar-section.component.scss'],\n templateUrl: './toolbar-section.component.html'\n})\nexport class SkyToolbarSectionComponent {\n\n}\n","<div class=\"sky-toolbar-section\">\n <div class=\"sky-toolbar-section-items\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"sky-toolbar-view-actions\"></ng-content>\n</div>\n","import {\n Component,\n AfterContentInit,\n ContentChildren,\n QueryList\n} from '@angular/core';\n\nimport {\n SkyToolbarSectionComponent\n} from './toolbar-section.component';\n\n/**\n * Displays actions for lists, records, and tiles.\n */\n@Component({\n selector: 'sky-toolbar',\n styleUrls: ['./toolbar.component.scss'],\n templateUrl: './toolbar.component.html'\n})\nexport class SkyToolbarComponent implements AfterContentInit {\n\n public hasSections: boolean = false;\n\n @ContentChildren(SkyToolbarSectionComponent, {descendants: true})\n private sectionComponents: QueryList<SkyToolbarSectionComponent>;\n\n public ngAfterContentInit() {\n this.hasSections = this.sectionComponents.length > 0;\n }\n}\n","<div\n class=\"sky-toolbar-container\"\n [ngClass]=\"{ 'sky-toolbar-sectioned': hasSections }\"\n>\n <ng-content select=\"sky-toolbar-section\"></ng-content>\n <div class=\"sky-toolbar-items\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"sky-toolbar-view-actions\"></ng-content>\n</div>\n","import {\n Component\n} from '@angular/core';\n\n/**\n * Specifies a container for an item in the toolbar.\n */\n@Component({\n selector: 'sky-toolbar-item',\n styleUrls: ['./toolbar-item.component.scss'],\n templateUrl: './toolbar-item.component.html'\n})\nexport class SkyToolbarItemComponent {\n\n}\n","<div class=\"sky-toolbar-item\">\n <ng-content></ng-content>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component\n} from '@angular/core';\n\n/**\n * Adds a section on the right side of the toolbar for items that substantially alter\n * the view of the content container. This includes simple filters and view switchers.\n */\n@Component({\n selector: 'sky-toolbar-view-actions',\n templateUrl: './toolbar-view-actions.component.html',\n styleUrls: ['./toolbar-view-actions.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SkyToolbarViewActionsComponent { }\n","<div\n class=\"sky-toolbar-view-actions\"\n>\n <ng-content></ng-content>\n</div>\n","import {\n NgModule\n} from '@angular/core';\n\nimport {\n CommonModule\n} from '@angular/common';\n\nimport {\n SkyToolbarComponent\n} from './toolbar.component';\n\nimport {\n SkyToolbarItemComponent\n} from './toolbar-item.component';\n\nimport {\n SkyToolbarSectionComponent\n} from './toolbar-section.component';\n\nimport {\n SkyToolbarViewActionsComponent\n} from './toolbar-view-actions.component';\n\n@NgModule({\n declarations: [\n SkyToolbarComponent,\n SkyToolbarItemComponent,\n SkyToolbarSectionComponent,\n SkyToolbarViewActionsComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n SkyToolbarComponent,\n SkyToolbarItemComponent,\n SkyToolbarSectionComponent,\n SkyToolbarViewActionsComponent\n ]\n})\nexport class SkyToolbarModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["Injectable","EventEmitter","Component","ViewEncapsulation","Input","Output","Subject","takeUntil","ElementRef","Optional","ContentChildren","ViewChild","HostListener","SkyMediaBreakpoints","CommonModule","RouterModule","SkyHrefModule","SkyIconModule","SkyThemeModule","NgModule","fromEvent","map","ChangeDetectionStrategy","SkyBackToTopMessageType","Directive","getLibStringForLocale","SkyI18nModule","SKY_LIB_RESOURCES_PROVIDERS","SkyDockModule","SkyInlineDeleteType","nextId","SkyCoreAdapterService","trigger","transition","style","query","group","animate","SkyWaitModule","FormsModule","SkyCheckboxModule","BehaviorSubject","TemplateRef","SkyDescriptionListMode","SkyFluidGridGutterSize","HostBinding","observableForkJoin","take","SkyModalModule"],"mappings":"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"}
1
+ {"version":3,"file":"skyux-layout.umd.js","sources":["../../../projects/layout/src/modules/action-button/action-button-adapter-service.ts","../../../projects/layout/src/modules/action-button/action-button.component.ts","../../../projects/layout/src/modules/action-button/action-button.component.html","../../../projects/layout/src/modules/action-button/action-button-container.component.ts","../../../projects/layout/src/modules/action-button/action-button-container.component.html","../../../projects/layout/src/modules/action-button/action-button-details.component.ts","../../../projects/layout/src/modules/action-button/action-button-details.component.html","../../../projects/layout/src/modules/action-button/action-button-header.component.ts","../../../projects/layout/src/modules/action-button/action-button-header.component.html","../../../projects/layout/src/modules/action-button/action-button-icon.component.ts","../../../projects/layout/src/modules/action-button/action-button-icon.component.html","../../../projects/layout/src/modules/action-button/action-button.module.ts","../../../projects/layout/src/modules/back-to-top/back-to-top-adapter.service.ts","../../../projects/layout/src/modules/back-to-top/back-to-top.component.ts","../../../projects/layout/src/modules/back-to-top/back-to-top.component.html","../../../projects/layout/src/modules/back-to-top/models/back-to-top-message-type.ts","../../../projects/layout/src/modules/back-to-top/back-to-top.directive.ts","../../../projects/layout/src/modules/shared/sky-layout-resources.module.ts","../../../projects/layout/src/modules/back-to-top/back-top-top.module.ts","../../../projects/layout/src/modules/inline-delete/inline-delete-adapter.service.ts","../../../projects/layout/src/modules/inline-delete/inline-delete-type.ts","../../../projects/layout/src/modules/inline-delete/inline-delete.component.ts","../../../projects/layout/src/modules/inline-delete/inline-delete.component.html","../../../projects/layout/src/modules/inline-delete/inline-delete.module.ts","../../../projects/layout/src/modules/card/card-actions.component.ts","../../../projects/layout/src/modules/card/card-actions.component.html","../../../projects/layout/src/modules/card/card-content.component.ts","../../../projects/layout/src/modules/card/card-content.component.html","../../../projects/layout/src/modules/card/card-title.component.ts","../../../projects/layout/src/modules/card/card-title.component.html","../../../projects/layout/src/modules/card/card.component.ts","../../../projects/layout/src/modules/card/card.component.html","../../../projects/layout/src/modules/card/card.module.ts","../../../projects/layout/src/modules/definition-list/definition-list.service.ts","../../../projects/layout/src/modules/definition-list/definition-list.component.ts","../../../projects/layout/src/modules/definition-list/definition-list.component.html","../../../projects/layout/src/modules/definition-list/definition-list-content.component.ts","../../../projects/layout/src/modules/definition-list/definition-list-content.component.html","../../../projects/layout/src/modules/definition-list/definition-list-heading.component.ts","../../../projects/layout/src/modules/definition-list/definition-list-heading.component.html","../../../projects/layout/src/modules/definition-list/definition-list-label.component.ts","../../../projects/layout/src/modules/definition-list/definition-list-label.component.html","../../../projects/layout/src/modules/definition-list/definition-list-value.component.ts","../../../projects/layout/src/modules/definition-list/definition-list-value.component.html","../../../projects/layout/src/modules/definition-list/definition-list.module.ts","../../../projects/layout/src/modules/description-list/description-list-adapter-service.ts","../../../projects/layout/src/modules/description-list/description-list-term.component.ts","../../../projects/layout/src/modules/description-list/description-list-term.component.html","../../../projects/layout/src/modules/description-list/description-list.service.ts","../../../projects/layout/src/modules/description-list/description-list-description.component.ts","../../../projects/layout/src/modules/description-list/description-list-description.component.html","../../../projects/layout/src/modules/description-list/description-list-content.component.ts","../../../projects/layout/src/modules/description-list/description-list-content.component.html","../../../projects/layout/src/modules/description-list/description-list.component.ts","../../../projects/layout/src/modules/description-list/description-list.component.html","../../../projects/layout/src/modules/description-list/description-list.module.ts","../../../projects/layout/src/modules/description-list/types/description-list-mode.ts","../../../projects/layout/src/modules/fluid-grid/fluid-grid-gutter-size.ts","../../../projects/layout/src/modules/fluid-grid/row.component.ts","../../../projects/layout/src/modules/fluid-grid/row.component.html","../../../projects/layout/src/modules/fluid-grid/column.component.ts","../../../projects/layout/src/modules/fluid-grid/column.component.html","../../../projects/layout/src/modules/fluid-grid/fluid-grid.component.ts","../../../projects/layout/src/modules/fluid-grid/fluid-grid.component.html","../../../projects/layout/src/modules/fluid-grid/fluid-grid.module.ts","../../../node_modules/tslib/tslib.es6.js","../../../projects/layout/src/modules/format/format.component.ts","../../../projects/layout/src/modules/format/format.component.html","../../../projects/layout/src/modules/format/format.module.ts","../../../projects/layout/src/modules/page/page-theme-adapter.service.ts","../../../projects/layout/src/modules/page/page.component.ts","../../../projects/layout/src/modules/page/page.component.html","../../../projects/layout/src/modules/page/page.module.ts","../../../projects/layout/src/modules/page-summary/page-summary-alert.component.ts","../../../projects/layout/src/modules/page-summary/page-summary-alert.component.html","../../../projects/layout/src/modules/page-summary/page-summary-content.component.ts","../../../projects/layout/src/modules/page-summary/page-summary-content.component.html","../../../projects/layout/src/modules/page-summary/page-summary-image.component.ts","../../../projects/layout/src/modules/page-summary/page-summary-image.component.html","../../../projects/layout/src/modules/page-summary/page-summary-key-info.component.ts","../../../projects/layout/src/modules/page-summary/page-summary-key-info.component.html","../../../projects/layout/src/modules/page-summary/page-summary-status.component.ts","../../../projects/layout/src/modules/page-summary/page-summary-status.component.html","../../../projects/layout/src/modules/page-summary/page-summary-subtitle.component.ts","../../../projects/layout/src/modules/page-summary/page-summary-subtitle.component.html","../../../projects/layout/src/modules/page-summary/page-summary-title.component.ts","../../../projects/layout/src/modules/page-summary/page-summary-title.component.html","../../../projects/layout/src/modules/page-summary/page-summary-adapter.service.ts","../../../projects/layout/src/modules/page-summary/page-summary.component.ts","../../../projects/layout/src/modules/page-summary/page-summary.component.html","../../../projects/layout/src/modules/page-summary/page-summary.module.ts","../../../projects/layout/src/modules/text-expand/text-expand-adapter.service.ts","../../../projects/layout/src/modules/text-expand/text-expand-modal-context.ts","../../../projects/layout/src/modules/text-expand/text-expand-modal.component.ts","../../../projects/layout/src/modules/text-expand/text-expand-modal.component.html","../../../projects/layout/src/modules/text-expand/text-expand.component.ts","../../../projects/layout/src/modules/text-expand/text-expand.component.html","../../../projects/layout/src/modules/text-expand/text-expand.module.ts","../../../projects/layout/src/modules/text-expand-repeater/text-expand-repeater-adapter.service.ts","../../../projects/layout/src/modules/text-expand-repeater/text-expand-repeater.component.ts","../../../projects/layout/src/modules/text-expand-repeater/text-expand-repeater.component.html","../../../projects/layout/src/modules/text-expand-repeater/text-expand-repeater.module.ts","../../../projects/layout/src/modules/toolbar/toolbar-section.component.ts","../../../projects/layout/src/modules/toolbar/toolbar-section.component.html","../../../projects/layout/src/modules/toolbar/toolbar.component.ts","../../../projects/layout/src/modules/toolbar/toolbar.component.html","../../../projects/layout/src/modules/toolbar/toolbar-item.component.ts","../../../projects/layout/src/modules/toolbar/toolbar-item.component.html","../../../projects/layout/src/modules/toolbar/toolbar-view-actions.component.ts","../../../projects/layout/src/modules/toolbar/toolbar-view-actions.component.html","../../../projects/layout/src/modules/toolbar/toolbar.module.ts","../../../projects/layout/src/skyux-layout.ts"],"sourcesContent":["import {\n ElementRef,\n Injectable,\n Renderer2,\n RendererFactory2\n} from '@angular/core';\n\nconst RESPONSIVE_CLASS_SM = 'sky-action-button-container-sm';\nconst RESPONSIVE_CLASS_MD = 'sky-action-button-container-md';\nconst RESPONSIVE_CLASS_LG = 'sky-action-button-container-lg';\n\nconst BREAKPOINT_MD = 912;\nconst BREAKPOINT_LG = 1378;\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyActionButtonAdapterService {\n\n private renderer: Renderer2;\n\n constructor(\n rendererFactory: RendererFactory2\n ) {\n this.renderer = rendererFactory.createRenderer(undefined, undefined);\n }\n\n public getParentWidth(element: ElementRef): number {\n return element.nativeElement.parentNode.getBoundingClientRect().width;\n }\n\n public setResponsiveClass(element: ElementRef, width: number): void {\n const el: any = element.nativeElement;\n const className = this.getResponsiveClassName(width);\n\n this.renderer.removeClass(el, RESPONSIVE_CLASS_SM);\n this.renderer.removeClass(el, RESPONSIVE_CLASS_MD);\n this.renderer.removeClass(el, RESPONSIVE_CLASS_LG);\n\n this.renderer.addClass(el, className);\n }\n\n private getResponsiveClassName(width: number): string {\n if (width < BREAKPOINT_MD) {\n return RESPONSIVE_CLASS_SM;\n } else if (width > BREAKPOINT_MD && width < BREAKPOINT_LG) {\n return RESPONSIVE_CLASS_MD;\n } else {\n return RESPONSIVE_CLASS_LG;\n }\n }\n\n}\n","import {\n Component,\n EventEmitter,\n Input,\n Output,\n ViewEncapsulation\n} from '@angular/core';\n\nimport {\n SkyActionButtonPermalink\n} from './action-button-permalink';\n\n/**\n * Creates a button to present users with an option to move forward with tasks.\n */\n@Component({\n selector: 'sky-action-button',\n styleUrls: ['./action-button.component.scss'],\n templateUrl: './action-button.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class SkyActionButtonComponent {\n\n/**\n * Specifies a link for the action button.\n */\n @Input()\n public permalink: SkyActionButtonPermalink;\n\n/**\n * Fires when users select the action button.\n */\n @Output()\n public actionClick = new EventEmitter<any>();\n\n public buttonClicked() {\n this.actionClick.emit();\n }\n\n public enterPress() {\n this.actionClick.emit();\n }\n}\n","<a *ngIf=\"permalink && permalink.route\"\n class=\"sky-action-button sky-btn-default sky-rounded-corners\"\n tabindex=\"0\"\n [fragment]=\"permalink.route?.extras?.fragment\"\n [skyThemeClass]=\"{\n 'sky-btn sky-box' : 'modern'\n }\"\n [queryParams]=\"permalink.route?.extras?.queryParams\"\n [queryParamsHandling]=\"permalink.route?.extras?.queryParamsHandling\"\n [routerLink]=\"permalink.route?.commands\"\n>\n <ng-container *ngTemplateOutlet=\"actionButtonContent\">\n </ng-container>\n</a>\n\n<a *ngIf=\"permalink && !permalink.route\"\n class=\"sky-action-button sky-btn-default sky-rounded-corners\"\n tabindex=\"0\"\n [skyHref]=\"permalink.url\"\n [skyThemeClass]=\"{\n 'sky-btn sky-box' : 'modern'\n }\"\n>\n <ng-container *ngTemplateOutlet=\"actionButtonContent\">\n </ng-container>\n</a>\n\n<div *ngIf=\"!permalink\"\n class=\"sky-action-button sky-btn-default sky-rounded-corners\"\n tabindex=\"0\"\n role=\"button\"\n [skyThemeClass]=\"{\n 'sky-btn sky-box' : 'modern'\n }\"\n (click)=\"buttonClicked()\"\n (keydown.enter)=\"enterPress()\"\n>\n <ng-container *ngTemplateOutlet=\"actionButtonContent\">\n </ng-container>\n</div>\n\n<ng-template\n #actionButtonContent\n>\n <ng-container *skyThemeIf=\"'default'\">\n <div class=\"sky-action-button-icon-header-container\">\n <ng-container *ngTemplateOutlet=\"icon\"></ng-container>\n <ng-container *ngTemplateOutlet=\"header\"></ng-container>\n </div>\n <ng-container *ngTemplateOutlet=\"details\"></ng-container>\n </ng-container>\n\n <ng-container *skyThemeIf=\"'modern'\">\n <ng-container *ngTemplateOutlet=\"icon\"></ng-container>\n <div class=\"sky-action-button-content\">\n <ng-container *ngTemplateOutlet=\"header\"></ng-container>\n <div\n class=\"sky-action-button-details\"\n [skyThemeClass]=\"{\n 'sky-font-deemphasized' : 'modern'\n }\"\n >\n <ng-container *ngTemplateOutlet=\"details\"></ng-container>\n </div>\n </div>\n </ng-container>\n</ng-template>\n\n<ng-template #icon>\n <ng-content select=\"sky-action-button-icon\"></ng-content>\n</ng-template>\n\n<ng-template #header>\n <ng-content select=\"sky-action-button-header\"></ng-content>\n</ng-template>\n\n<ng-template #details>\n <ng-content select=\"sky-action-button-details\"></ng-content>\n</ng-template>\n","import {\n AfterContentInit,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n HostListener,\n Input,\n NgZone,\n OnDestroy,\n OnInit,\n Optional,\n QueryList,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\n\nimport {\n MutationObserverService,\n SkyCoreAdapterService\n} from '@skyux/core';\n\nimport {\n SkyThemeService\n} from '@skyux/theme';\n\nimport {\n takeUntil\n} from 'rxjs/operators';\n\nimport {\n Subject\n} from 'rxjs';\n\nimport {\n SkyActionButtonContainerAlignItemsType\n} from './types/action-button-container-align-items-type';\n\nimport {\n SkyActionButtonAdapterService\n} from './action-button-adapter-service';\n\nimport {\n SkyActionButtonComponent\n} from './action-button.component';\n\n/**\n * Wraps action buttons to ensures that they have consistent height and spacing.\n * @required\n */\n@Component({\n selector: 'sky-action-button-container',\n styleUrls: ['./action-button-container.component.scss'],\n templateUrl: './action-button-container.component.html',\n providers: [\n SkyActionButtonAdapterService\n ],\n encapsulation: ViewEncapsulation.None\n})\nexport class SkyActionButtonContainerComponent implements AfterContentInit, OnDestroy, OnInit {\n\n /**\n * Specifies how to display the action buttons inside the action button container.\n * @default 'center'\n */\n @Input()\n public set alignItems(value: SkyActionButtonContainerAlignItemsType) {\n this._alignItems = value;\n }\n\n public get alignItems(): SkyActionButtonContainerAlignItemsType {\n return this._alignItems || 'center';\n }\n\n @ContentChildren(SkyActionButtonComponent)\n private actionButtons: QueryList<SkyActionButtonComponent>;\n\n @ViewChild('container', {\n read: ElementRef,\n static: true\n })\n private containerRef: ElementRef<any>;\n\n private mutationObserver: MutationObserver;\n\n private ngUnsubscribe = new Subject();\n\n private set themeName(value: string) {\n this._themeName = value;\n this.updateResponsiveClass();\n this.updateHeight();\n }\n\n private _alignItems: SkyActionButtonContainerAlignItemsType;\n\n private _themeName: string;\n\n constructor(\n private actionButtonAdapterService: SkyActionButtonAdapterService,\n private changeRef: ChangeDetectorRef,\n private coreAdapterService: SkyCoreAdapterService,\n private hostElRef: ElementRef,\n private mutationObserverSvc: MutationObserverService,\n private ngZone: NgZone,\n @Optional() private themeSvc?: SkyThemeService\n ) { }\n\n public ngOnInit(): void {\n /* istanbul ignore else */\n if (this.themeSvc) {\n this.themeSvc.settingsChange\n .pipe(\n takeUntil(this.ngUnsubscribe)\n )\n .subscribe((themeSettings) => {\n this.themeName = themeSettings.currentSettings.theme.name;\n this.changeRef.markForCheck();\n });\n }\n\n // Wait for children components to complete rendering before container width is determined.\n setTimeout(() => {\n this.updateResponsiveClass();\n });\n }\n\n public ngAfterContentInit(): void {\n // Watch for dynamic action button changes and recalculate height.\n /* istanbul ignore else */\n if (this.actionButtons) {\n this.actionButtons.changes\n .pipe(\n takeUntil(this.ngUnsubscribe)\n )\n .subscribe(() => {\n this.updateHeight();\n });\n }\n\n this.initMutationObserver();\n }\n\n public ngOnDestroy(): void {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n\n this.destroyMutationObserver();\n }\n\n @HostListener('window:resize')\n public onWindowResize(): void {\n this.updateResponsiveClass();\n }\n\n private initMutationObserver(): void {\n /* istanbul ignore else */\n if (!this.mutationObserver) {\n const el = this.containerRef.nativeElement;\n\n // MutationObserver is patched by Zone.js and therefore becomes part of the\n // Angular change detection cycle, but this can lead to infinite loops in some\n // scenarios. This will keep MutationObserver from triggering change detection.\n this.ngZone.runOutsideAngular(() => {\n this.mutationObserver = this.mutationObserverSvc.create(() => {\n this.updateHeight();\n });\n\n this.mutationObserver.observe(\n el,\n {\n characterData: true,\n subtree: true\n }\n );\n });\n }\n }\n\n private destroyMutationObserver(): void {\n if (this.mutationObserver) {\n this.mutationObserver.disconnect();\n this.mutationObserver = undefined;\n }\n }\n\n private updateHeight(): void {\n this.coreAdapterService.resetHeight(this.containerRef, '.sky-action-button');\n if (this._themeName === 'modern') {\n // Wait for children components to complete rendering before height is determined.\n setTimeout(() => {\n this.coreAdapterService.syncMaxHeight(this.containerRef, '.sky-action-button');\n });\n }\n }\n\n private updateResponsiveClass(): void {\n const parentWidth = this.actionButtonAdapterService.getParentWidth(this.hostElRef);\n this.actionButtonAdapterService.setResponsiveClass(this.containerRef, parentWidth);\n }\n\n}\n","<div\n class=\"sky-action-button-container\"\n #container\n>\n <div\n class=\"sky-action-button-flex\"\n [ngClass]=\"{\n 'sky-action-button-flex-align-left' : alignItems === 'left',\n 'sky-action-button-flex-align-center' : alignItems === 'center'\n }\"\n >\n <ng-content></ng-content>\n </div>\n</div>\n","import {\n Component\n} from '@angular/core';\n\n/**\n * Specifies a description to display on an action button.\n */\n@Component({\n selector: 'sky-action-button-details',\n templateUrl: './action-button-details.component.html'\n})\nexport class SkyActionButtonDetailsComponent { }\n","<ng-content></ng-content>\n","import {\n Component\n} from '@angular/core';\n\n/**\n * Specifies a header to display on an action button.\n */\n@Component({\n selector: 'sky-action-button-header',\n styleUrls: ['./action-button-header.component.scss'],\n templateUrl: './action-button-header.component.html'\n})\nexport class SkyActionButtonHeaderComponent {}\n","<div\n class=\"sky-action-button-header\"\n [skyThemeClass]=\"{\n 'sky-headline' : 'modern',\n 'sky-section-heading' : 'default'\n }\"\n>\n <ng-content></ng-content>\n</div>\n","import {\n Component,\n Input,\n OnDestroy\n} from '@angular/core';\n\nimport {\n SkyMediaBreakpoints,\n SkyMediaQueryService\n} from '@skyux/core';\n\nimport {\n Subscription\n} from 'rxjs';\n\nconst FONTSIZECLASS_SMALL = '2x';\nconst FONTSIZECLASS_LARGE = '3x';\n\n/**\n * Specifies an icon to display on the action button.\n */\n@Component({\n selector: 'sky-action-button-icon',\n styleUrls: ['./action-button-icon.component.scss'],\n templateUrl: './action-button-icon.component.html'\n})\nexport class SkyActionButtonIconComponent implements OnDestroy {\n\n/**\n * Specifies an icon from the\n * [Font Awesome library](https://fontawesome.com/v4.7.0/).\n * For example, to display the `fa-filter` icon on the action button,\n * set `iconType` to `filter`. SKY UX supports version 4.7.0 of Font Awesome.\n * For more information about icons in SKY UX, see the\n * [icon component](https://developer.blackbaud.com/skyux-indicators/docs/icon).\n */\n @Input()\n public iconType: string;\n\n public fontSizeClass: string = FONTSIZECLASS_LARGE;\n\n private subscription: Subscription;\n\n constructor(private mediaQueryService: SkyMediaQueryService) {\n this.subscription = this.mediaQueryService.subscribe((args: SkyMediaBreakpoints) => {\n if (args === SkyMediaBreakpoints.xs) {\n this.fontSizeClass = FONTSIZECLASS_SMALL;\n } else {\n this.fontSizeClass = FONTSIZECLASS_LARGE;\n }\n });\n }\n\n public ngOnDestroy() {\n /* istanbul ignore else */\n /* sanity check */\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n}\n","<div\n aria-hidden=\"true\"\n class=\"sky-action-button-icon-container\"\n>\n <sky-icon\n class=\"sky-action-button-icon\"\n [icon]=\"iconType\"\n [size]=\"fontSizeClass\"\n ></sky-icon>\n</div>\n","import {\n CommonModule\n} from '@angular/common';\n\nimport {\n NgModule\n} from '@angular/core';\n\nimport {\n RouterModule\n} from '@angular/router';\n\nimport {\n SkyIconModule\n} from '@skyux/indicators';\n\nimport {\n SkyHrefModule\n} from '@skyux/router';\n\nimport {\n SkyThemeModule\n} from '@skyux/theme';\n\nimport {\n SkyActionButtonContainerComponent\n} from './action-button-container.component';\n\nimport {\n SkyActionButtonDetailsComponent\n} from './action-button-details.component';\n\nimport {\n SkyActionButtonHeaderComponent\n} from './action-button-header.component';\n\nimport {\n SkyActionButtonIconComponent\n} from './action-button-icon.component';\n\nimport {\n SkyActionButtonComponent\n} from './action-button.component';\n\n@NgModule({\n declarations: [\n SkyActionButtonComponent,\n SkyActionButtonContainerComponent,\n SkyActionButtonDetailsComponent,\n SkyActionButtonHeaderComponent,\n SkyActionButtonIconComponent\n ],\n imports: [\n CommonModule,\n RouterModule,\n SkyHrefModule,\n SkyIconModule,\n SkyThemeModule\n ],\n exports: [\n SkyActionButtonComponent,\n SkyActionButtonContainerComponent,\n SkyActionButtonDetailsComponent,\n SkyActionButtonHeaderComponent,\n SkyActionButtonIconComponent\n ]\n})\nexport class SkyActionButtonModule { }\n","import {\n ElementRef,\n Injectable,\n OnDestroy\n} from '@angular/core';\n\nimport {\n SkyAppWindowRef\n} from '@skyux/core';\n\nimport {\n fromEvent,\n Observable,\n Subject\n} from 'rxjs';\n\nimport {\n map,\n takeUntil\n} from 'rxjs/operators';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyBackToTopDomAdapterService implements OnDestroy {\n\n private ngUnsubscribe = new Subject<void>();\n\n constructor(\n private windowRef: SkyAppWindowRef\n ) { }\n\n public ngOnDestroy(): void {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n /**\n * This event returns a boolean on scroll indicating whether the provided element is in view.\n * @param elementRef The target element reference.\n */\n public elementInViewOnScroll(elementRef: ElementRef): Observable<boolean> {\n const parent = this.findScrollableParent(elementRef.nativeElement);\n\n return fromEvent(parent, 'scroll')\n .pipe(\n takeUntil(this.ngUnsubscribe),\n map(() => {\n const isInView = this.isElementScrolledInView(\n elementRef.nativeElement,\n parent\n );\n return isInView;\n })\n );\n }\n\n /**\n * Scrolls the window or scrollable parent to the provided element.\n * @param elementRef The target element reference.\n */\n public scrollToElement(elementRef: ElementRef): void {\n /* sanity check */\n /* istanbul ignore if */\n if (!elementRef || !elementRef.nativeElement) {\n return;\n }\n\n const windowObj = this.windowRef.nativeWindow;\n const parent = this.findScrollableParent(elementRef.nativeElement);\n\n if (parent === windowObj) {\n // Scroll to top of window, but account for the body margin that allows for the omnibar if it exists.\n const bodyMarginOffset = parseInt(getComputedStyle(document.body).marginTop, 10);\n const newOffsetTop = elementRef.nativeElement.offsetTop - bodyMarginOffset;\n this.windowRef.nativeWindow.scrollTo(\n elementRef.nativeElement.offsetLeft,\n newOffsetTop\n );\n } else {\n // Scroll to top of parent element.\n parent.scrollTop = parent.offsetTop - elementRef.nativeElement.offsetTop;\n }\n }\n\n public findScrollableParent(element: any): any {\n const regex = /(auto|scroll)/;\n const windowObj = this.windowRef.nativeWindow;\n const bodyObj = windowObj.document.body;\n\n let style = windowObj.getComputedStyle(element);\n let parent = element;\n\n do {\n parent = parent.parentNode;\n style = windowObj.getComputedStyle(parent);\n } while (\n !regex.test(style.overflow) &&\n !regex.test(style.overflowY) &&\n parent !== bodyObj\n );\n\n if (parent === bodyObj) {\n return windowObj;\n }\n\n return parent;\n }\n\n public isElementScrolledInView(\n element: any,\n parentElement: any\n ): boolean {\n const buffer = 25;\n const windowObj = this.windowRef.nativeWindow;\n const elementRect = element.getBoundingClientRect();\n\n /* istanbul ignore else */\n if (parentElement === windowObj) {\n return (elementRect.top > -buffer);\n } else {\n const parentRect = parentElement.getBoundingClientRect();\n return (elementRect.top > parentRect.top - buffer);\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component\n} from '@angular/core';\n\nimport {\n Observable,\n Subject\n} from 'rxjs';\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-back-to-top',\n templateUrl: './back-to-top.component.html',\n styleUrls: [\n './back-to-top.component.scss'\n ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SkyBackToTopComponent {\n\n public get scrollToTopClick(): Observable<void> {\n return this._scrollToTopClick.asObservable();\n }\n\n private _scrollToTopClick = new Subject<void>();\n\n public onScrollToTopClick(): void {\n this._scrollToTopClick.next();\n this._scrollToTopClick.complete();\n }\n\n}\n","<div\n class=\"sky-back-to-top sky-padding-squish-large\"\n>\n <button\n class=\"sky-btn sky-btn-link-inline\"\n type=\"button\"\n (click)=\"onScrollToTopClick()\"\n >\n {{ 'skyux_back_to_top' | skyLibResources }}\n </button>\n</div>\n","/**\n * Specifies the type of message to send to the back to top component.\n */\nexport enum SkyBackToTopMessageType {\n\n /**\n * Scrolls the element back to the top.\n */\n BackToTop = 0\n}\n","import {\n AfterViewInit,\n Directive,\n ElementRef,\n Input,\n OnDestroy\n} from '@angular/core';\n\nimport {\n SkyDockItem,\n SkyDockService\n} from '@skyux/core';\n\nimport {\n Subject\n} from 'rxjs';\n\nimport {\n takeUntil\n} from 'rxjs/operators';\n\nimport {\n SkyBackToTopDomAdapterService\n} from './back-to-top-adapter.service';\n\nimport {\n SkyBackToTopComponent\n} from './back-to-top.component';\n\nimport {\n SkyBackToTopMessage\n} from './models/back-to-top-message';\n\nimport {\n SkyBackToTopMessageType\n} from './models/back-to-top-message-type';\n\nimport {\n SkyBackToTopOptions\n} from './models/back-to-top-options';\n\n/**\n * Associates a button with an element on the page and displays that button\n * to return to the element after users scroll away.\n */\n@Directive({\n selector: '[skyBackToTop]',\n providers: [\n SkyBackToTopDomAdapterService\n ]\n})\nexport class SkyBackToTopDirective implements AfterViewInit, OnDestroy {\n\n /**\n * Specifies configuration options for the back to top component.\n */\n @Input()\n public set skyBackToTop(value: SkyBackToTopOptions) {\n this.buttonHidden = !!value?.buttonHidden;\n\n this.handleBackToTopButton(this.elementInView);\n }\n\n /**\n * Provides an observable to send commands to the back to top component.\n * The commands respect the `SkyBackToTopMessage` type.\n */\n @Input()\n public set skyBackToTopMessageStream(value: Subject<SkyBackToTopMessage>) {\n if (this._skyBackToTopMessageStream) {\n this._skyBackToTopMessageStream.unsubscribe();\n }\n this._skyBackToTopMessageStream = value;\n this._skyBackToTopMessageStream\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((message: SkyBackToTopMessage) => this.handleIncomingMessages(message));\n }\n\n private buttonHidden = false;\n private dockItem: SkyDockItem<SkyBackToTopComponent>;\n private elementInView: boolean;\n\n private ngUnsubscribe = new Subject<void>();\n private _skyBackToTopMessageStream: Subject<SkyBackToTopMessage>;\n\n constructor(\n private dockService: SkyDockService,\n private domAdapter: SkyBackToTopDomAdapterService,\n private element: ElementRef\n ) {}\n\n public ngAfterViewInit(): void {\n const scrollableParent = this.domAdapter.findScrollableParent(this.element.nativeElement);\n this.elementInView = this.domAdapter.isElementScrolledInView(this.element.nativeElement, scrollableParent);\n\n this.handleBackToTopButton(this.elementInView);\n this.setBackToTopListeners();\n }\n\n public ngOnDestroy(): void {\n if (this.dockItem) {\n this.dockItem.destroy();\n }\n }\n\n private handleBackToTopButton(elementInView: boolean): void {\n // Add back to top button if user scrolls down and button is not hidden.\n if (!this.dockItem && elementInView !== undefined && !elementInView && !this.buttonHidden) {\n this.addBackToTop();\n }\n // Remove back to top button if user scrolls back up.\n if (elementInView || this.buttonHidden) {\n this.destroyBackToTop();\n }\n }\n\n private addBackToTop(): void {\n this.dockItem = this.dockService.insertComponent(SkyBackToTopComponent);\n\n // Listen for clicks on the \"back to top\" button so we know when to scroll up.\n this.dockItem.componentInstance.scrollToTopClick\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe(() => {\n this.domAdapter.scrollToElement(this.element);\n });\n }\n\n private handleIncomingMessages(message: SkyBackToTopMessage): void {\n /* istanbul ignore else */\n if (message.type === SkyBackToTopMessageType.BackToTop) {\n this.domAdapter.scrollToElement(this.element);\n }\n }\n\n private setBackToTopListeners(): void {\n /* istanbul ignore else */\n if (this.element) {\n this.domAdapter.elementInViewOnScroll(this.element)\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((elementInView: boolean) => {\n this.elementInView = elementInView;\n\n this.handleBackToTopButton(elementInView);\n });\n }\n }\n\n private destroyBackToTop(): void {\n /* istanbul ignore else */\n if (this.dockItem) {\n this.dockItem.destroy();\n this.dockItem = undefined;\n }\n }\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 modules/shared/sky-layout' schematic.\n * To update this file, simply rerun the command.\n */\n\nimport { NgModule } from '@angular/core';\nimport {\n getLibStringForLocale,\n SkyAppLocaleInfo,\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesProvider,\n SKY_LIB_RESOURCES_PROVIDERS\n} from '@skyux/i18n';\n\nconst RESOURCES: { [locale: string]: SkyLibResources } = {\n 'EN-US': {\"skyux_back_to_top\":{\"message\":\"Back to top\"},\"skyux_card_checkbox_label\":{\"message\":\"Select card\"},\"skyux_definition_list_none_found\":{\"message\":\"None found\"},\"skyux_description_list_none_found\":{\"message\":\"None found\"},\"skyux_inline_delete_assistive_text\":{\"message\":\"Are you sure you want to delete this item?\"},\"skyux_inline_delete_cancel\":{\"message\":\"Cancel\"},\"skyux_inline_delete_confirm_deletion\":{\"message\":\"Confirm deletion\"},\"skyux_inline_delete_delete\":{\"message\":\"Delete\"},\"skyux_text_expand_close_text\":{\"message\":\"Close\"},\"skyux_text_expand_modal_title\":{\"message\":\"Expanded view\"},\"skyux_text_expand_see_less\":{\"message\":\"See less\"},\"skyux_text_expand_see_more\":{\"message\":\"See more\"}},\n};\n\nexport class SkyLayoutResourcesProvider implements SkyLibResourcesProvider {\n public getString(localeInfo: SkyAppLocaleInfo, name: string): string {\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 provide: SKY_LIB_RESOURCES_PROVIDERS,\n useClass: SkyLayoutResourcesProvider,\n multi: true\n }]\n})\nexport class SkyLayoutResourcesModule { }\n","import {\n NgModule\n} from '@angular/core';\n\nimport {\n CommonModule\n} from '@angular/common';\n\nimport {\n SkyDockModule\n} from '@skyux/core';\n\nimport {\n SkyI18nModule\n} from '@skyux/i18n';\n\nimport {\n SkyBackToTopDirective\n} from './back-to-top.directive';\n\nimport {\n SkyBackToTopComponent\n} from './back-to-top.component';\nimport { SkyLayoutResourcesModule } from '../shared/sky-layout-resources.module';\n\n@NgModule({\n declarations: [\n SkyBackToTopComponent,\n SkyBackToTopDirective\n ],\n imports: [\n CommonModule,\n SkyDockModule,\n SkyI18nModule,\n SkyLayoutResourcesModule\n ],\n exports: [\n SkyBackToTopComponent,\n SkyBackToTopDirective\n ],\n entryComponents: [\n SkyBackToTopComponent\n ]\n})\nexport class SkyBackToTopModule { }\n","import {\n Injectable,\n Renderer2,\n RendererFactory2\n} from '@angular/core';\n\nimport {\n SkyCoreAdapterService\n} from '@skyux/core';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyInlineDeleteAdapterService {\n\n private element: HTMLElement;\n private focussableElements: HTMLElement[];\n private parentEl: HTMLElement;\n private parentElUnlistenFn: Function;\n private renderer: Renderer2;\n\n constructor(\n private coreAdapterService: SkyCoreAdapterService,\n rendererFactory: RendererFactory2\n ) {\n this.renderer = rendererFactory.createRenderer(undefined, undefined);\n }\n\n public clearListeners(): void {\n /* istanbul ignore else */\n if (this.parentElUnlistenFn) {\n this.parentElUnlistenFn();\n }\n }\n\n public setEl(element: HTMLElement): void {\n this.element = element;\n this.parentEl = element.parentElement;\n\n /* istanbul ignore else */\n if (this.parentEl) {\n this.parentElUnlistenFn = this.renderer.listen(this.parentEl, 'focusin',\n (event: FocusEvent) => {\n const target: any = event.target;\n if (!this.element.contains(target) && this.parentEl !== target) {\n event.preventDefault();\n event.stopPropagation();\n event.stopImmediatePropagation();\n\n target.blur();\n this.focusNextElement(target, this.isShift(event), this.parentEl);\n }\n });\n }\n }\n\n private focusNextElement(targetElement: HTMLElement, shiftKey: boolean, busyEl: Element): void {\n const focussable = this.getFocussableElements();\n\n // If shift tab, go in the other direction\n const modifier = shiftKey ? -1 : 1;\n\n // Find the next navigable element that isn't waiting\n const startingIndex = focussable.indexOf(targetElement);\n let curIndex = startingIndex + modifier;\n while (focussable[curIndex] && this.isElementHiddenOrCovered(focussable[curIndex])) {\n curIndex += modifier;\n }\n\n if (focussable[curIndex] && !this.isElementHiddenOrCovered(focussable[curIndex])) {\n focussable[curIndex].focus();\n } else {\n\n // Try wrapping the navigation\n /* istanbul ignore next */\n curIndex = modifier > 0 ? 0 : focussable.length - 1;\n\n /* istanbul ignore next */\n while (\n curIndex !== startingIndex &&\n focussable[curIndex] &&\n this.isElementHiddenOrCovered(focussable[curIndex])\n ) {\n curIndex += modifier;\n }\n\n /* istanbul ignore else */\n /* sanity check */\n if (focussable[curIndex] && !this.isElementHiddenOrCovered(focussable[curIndex])) {\n focussable[curIndex].focus();\n } else {\n // No valid target, wipe focus\n // This should never happen in practice due to the multiple inline delete buttons\n if (document.activeElement && (document.activeElement as any).blur) {\n (document.activeElement as any).blur();\n }\n document.body.focus();\n }\n }\n\n // clear focussableElements list so that if things change between tabbing we know about it\n this.focussableElements = undefined;\n }\n\n private getFocussableElements(): HTMLElement[] {\n // Keep this cached so we can reduce querys\n if (this.focussableElements) {\n return this.focussableElements;\n }\n\n this.focussableElements = this.coreAdapterService.getFocusableChildren(document.body);\n\n return this.focussableElements;\n }\n\n private isElementHiddenOrCovered(element: any): boolean {\n // Check if the element is hidden by css, not within the inline delete, or a wait is covering it\n return this.isElementHidden(element) ||\n (this.parentEl.contains(element) && (!this.element.contains(element) ||\n this.parentEl.querySelector('.sky-wait-mask') !== null));\n }\n\n private isElementHidden(element: any): boolean {\n const style = window.getComputedStyle(element);\n return style.display === 'none' || style.visibility === 'hidden';\n }\n\n private isShift(event: Event): boolean {\n // Determine if shift+tab was used based on element order\n const elements = this.getFocussableElements().filter(elem => !this.isElementHidden(elem));\n\n const previousInd = elements.indexOf((event as any).relatedTarget);\n const currentInd = elements.indexOf(event.target as HTMLElement);\n\n /* istanbul ignore next */\n return previousInd === currentInd + 1\n || (previousInd === 0 && currentInd === elements.length - 1)\n || (previousInd > currentInd)\n || !(event as any).relatedTarget;\n }\n}\n","/**\n * Specifies the type of inline delete that is shown.\n * @internal\n */\nexport enum SkyInlineDeleteType {\n /**\n * The standard styling for inline deletes.\n */\n Standard = 'standard',\n /**\n * The styling for inline delete components which are used in card components.\n */\n Card = 'card'\n}\n","import {\n animate,\n AnimationEvent,\n group,\n query,\n style,\n transition,\n trigger\n} from '@angular/animations';\n\nimport {\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n ViewChild\n} from '@angular/core';\n\nimport {\n SkyCoreAdapterService\n} from '@skyux/core';\n\nimport {\n SkyInlineDeleteAdapterService\n} from './inline-delete-adapter.service';\n\nimport {\n SkyInlineDeleteType\n} from './inline-delete-type';\n\n/**\n * Auto-incrementing integer used to generate unique ids for inline delete components.\n */\nlet nextId = 0;\n\n@Component({\n selector: 'sky-inline-delete',\n styleUrls: ['./inline-delete.component.scss'],\n templateUrl: './inline-delete.component.html',\n animations: [\n trigger('inlineDeleteAnimation', [\n transition('* => shown', [\n style({\n opacity: 0\n }),\n query('.sky-inline-delete-content-animation-container',\n style({ transform: 'scale(0.0)' })),\n group([\n animate('300ms ease-in-out', style({ opacity: 1 })),\n query('.sky-inline-delete-content-animation-container', animate('300ms ease-in-out', style({\n transform: 'scale(1)'\n })))\n ])\n ]),\n transition(`shown <=> *`, [\n query('.sky-inline-delete-content-animation-container',\n style({ transform: 'scale(1)' })),\n group([\n animate('300ms ease-in-out', style({\n opacity: 0\n })),\n query('.sky-inline-delete-content-animation-container', animate('300ms ease-in-out', style({\n transform: 'scale(0.0)'\n })))\n ])\n ])\n ])\n ],\n providers: [\n SkyCoreAdapterService,\n SkyInlineDeleteAdapterService\n ]\n})\nexport class SkyInlineDeleteComponent implements OnDestroy, OnInit {\n\n /**\n * Indicates whether the deletion is pending.\n * @default \"false\"\n */\n @Input()\n public pending: boolean = false;\n\n /**\n * Fires when users click the cancel button.\n */\n @Output()\n public cancelTriggered = new EventEmitter<void>();\n\n /**\n * Fires when users click the delete button.\n */\n @Output()\n public deleteTriggered = new EventEmitter<void>();\n\n public animationState: string = 'shown';\n\n public assistiveTextId: string = `sky-inline-delete-assistive-text-${++nextId}`;\n\n public type: SkyInlineDeleteType = SkyInlineDeleteType.Standard;\n\n @ViewChild('delete', {\n read: ElementRef,\n static: false\n })\n private deleteButton: ElementRef;\n\n constructor(\n private adapterService: SkyInlineDeleteAdapterService,\n private changeDetector: ChangeDetectorRef,\n private elRef: ElementRef\n ) {\n }\n\n /**\n * Initialization lifecycle hook\n * @internal\n */\n public ngOnInit(): void {\n this.animationState = 'shown';\n }\n\n /**\n * Destruction lifecycle hook\n * @internal\n */\n public ngOnDestroy(): void {\n this.adapterService.clearListeners();\n this.cancelTriggered.complete();\n this.deleteTriggered.complete();\n }\n\n /**\n * @internal\n */\n public onCancelClick(): void {\n this.animationState = 'hidden';\n }\n\n /**\n * @internal\n */\n public onDeleteClick(): void {\n this.deleteTriggered.emit();\n }\n\n /**\n * Sets the inline delete to one of its predefined types.\n * @param type The inline delete type\n * @internal\n */\n public setType(type: SkyInlineDeleteType): void {\n this.type = type;\n this.changeDetector.detectChanges();\n }\n\n /**\n * Handles actions that should be taken after the inline delete animates\n * @param event The animation event\n * @internal\n */\n public onAnimationDone(event: AnimationEvent): void {\n if (event.toState === 'hidden') {\n this.cancelTriggered.emit();\n } else {\n this.deleteButton.nativeElement.focus();\n /* istanbul ignore else */\n if (this.elRef) {\n this.adapterService.setEl(this.elRef.nativeElement);\n }\n }\n }\n\n}\n","<div\n class=\"sky-inline-delete sky-inline-delete-{{type}}\"\n role=\"alertdialog\"\n [@inlineDeleteAnimation]=\"animationState\"\n (@inlineDeleteAnimation.done)=\"onAnimationDone($event)\"\n [attr.aria-describedby]=\"assistiveTextId\"\n [attr.aria-label]=\"'skyux_inline_delete_confirm_deletion' | skyLibResources\"\n>\n <span\n class=\"sky-inline-delete-assistive-text\"\n [id]=\"assistiveTextId\"\n >\n {{ 'skyux_inline_delete_assistive_text' | skyLibResources }}\n </span>\n <sky-wait\n class=\"sky-inline-delete-wait\"\n [isWaiting]=\"pending\"\n ></sky-wait>\n <div class=\"sky-inline-delete-content\">\n <div\n class=\"sky-inline-delete-content-animation-container\"\n >\n <button\n class=\"sky-btn sky-btn-danger sky-inline-delete-button\"\n type=\"button\"\n (click)=\"onDeleteClick()\"\n #delete\n >\n {{ 'skyux_inline_delete_delete' | skyLibResources }}\n </button>\n <button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n (click)=\"onCancelClick()\"\n >\n {{ 'skyux_inline_delete_cancel' | skyLibResources }}\n </button>\n </div>\n </div>\n</div>\n","import {\n NgModule\n} from '@angular/core';\n\nimport {\n CommonModule\n} from '@angular/common';\n\nimport {\n SkyI18nModule\n} from '@skyux/i18n';\n\nimport {\n SkyWaitModule\n} from '@skyux/indicators';\n\nimport { SkyLayoutResourcesModule } from '../shared/sky-layout-resources.module';\n\nimport {\n SkyInlineDeleteComponent\n} from './inline-delete.component';\n\n@NgModule({\n declarations: [\n SkyInlineDeleteComponent\n ],\n imports: [\n CommonModule,\n SkyI18nModule,\n SkyLayoutResourcesModule,\n SkyWaitModule\n ],\n exports: [\n SkyInlineDeleteComponent\n ]\n})\nexport class SkyInlineDeleteModule { }\n","import {\n Component\n} from '@angular/core';\n\n/**\n * Specifies an action that users can perform on the card.\n */\n@Component({\n selector: 'sky-card-actions',\n templateUrl: './card-actions.component.html',\n styleUrls: ['./card-actions.component.scss']\n})\nexport class SkyCardActionsComponent { }\n","<ng-content></ng-content>\n","import {\n Component\n} from '@angular/core';\n\n/**\n * Specifies the content to display in the body of the card.\n */\n@Component({\n selector: 'sky-card-content',\n templateUrl: './card-content.component.html'\n})\nexport class SkyCardContentComponent { }\n","<ng-content></ng-content>\n","import {\n Component\n} from '@angular/core';\n\n/**\n * Specifies a title to identify what the card represents.\n */\n@Component({\n selector: 'sky-card-title',\n templateUrl: './card-title.component.html'\n})\nexport class SkyCardTitleComponent { }\n","<ng-content></ng-content>\n","import {\n AfterContentInit,\n Component,\n ContentChildren,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n QueryList\n} from '@angular/core';\n\nimport {\n Subscription\n} from 'rxjs';\n\nimport {\n SkyCardTitleComponent\n} from './card-title.component';\n\nimport {\n SkyInlineDeleteComponent\n} from '../inline-delete/inline-delete.component';\n\nimport {\n SkyInlineDeleteType\n} from '../inline-delete/inline-delete-type';\n\n/**\n * Creates a a small container to highlight important information.\n */\n@Component({\n selector: 'sky-card',\n styleUrls: ['./card.component.scss'],\n templateUrl: './card.component.html'\n})\nexport class SkyCardComponent implements AfterContentInit, OnDestroy {\n/**\n * Specifies the size of the card. The valid options are `large` and `small`.\n * @default large\n */\n @Input()\n public size: string;\n\n/**\n * Indicates whether to display a checkbox to the right of the card title.\n * Users can select multiple checkboxes and perform actions on the selected cards.\n * @default false\n */\n @Input()\n public selectable: boolean;\n\n/**\n * Indicates whether the card is selected. This only applies to card where\n * `selectable` is set to `true`.\n * @default false\n */\n @Input()\n public selected: boolean;\n\n/**\n * Fires when users select or deselect the card.\n */\n @Output()\n public selectedChange = new EventEmitter<boolean>();\n\n @ContentChildren(SkyInlineDeleteComponent)\n public inlineDeleteComponent: QueryList<SkyInlineDeleteComponent>;\n\n @ContentChildren(SkyCardTitleComponent)\n public titleComponent: QueryList<SkyCardTitleComponent>;\n\n public showTitle: boolean = true;\n\n private subscription: Subscription;\n\n public ngAfterContentInit() {\n this.showTitle = this.titleComponent.length > 0;\n\n this.subscription = this.titleComponent.changes.subscribe(() => {\n this.showTitle = this.titleComponent.length > 0;\n });\n\n this.inlineDeleteComponent.forEach(item => {\n item.setType(SkyInlineDeleteType.Card);\n });\n\n this.inlineDeleteComponent.changes.subscribe(() => {\n this.inlineDeleteComponent.forEach(item => {\n item.setType(SkyInlineDeleteType.Card);\n });\n });\n }\n\n public contentClick() {\n if (this.selectable) {\n this.selected = !this.selected;\n this.selectedChange.emit(this.selected);\n }\n }\n\n public onCheckboxChange(newValue: boolean) {\n if (this.selectable && this.selected !== newValue) {\n this.selected = newValue;\n this.selectedChange.emit(this.selected);\n }\n }\n\n public ngOnDestroy() {\n /* istanbul ignore else */\n /* sanity check */\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n}\n","<section\n class=\"sky-card sky-shadow\"\n [ngClass]=\"\n {\n 'sky-card-small': size === 'small',\n 'sky-card-selectable': selectable,\n 'sky-card-selected': selectable &amp;&amp; selected\n }\"\n>\n <ng-content\n select=\"sky-inline-delete\"\n ></ng-content>\n <header>\n <div *ngIf=\"selectable || showTitle\"\n class=\"sky-card-header\"\n (click)=\"contentClick()\"\n >\n <div\n class=\"sky-card-heading-middle\"\n >\n <h1 *ngIf=\"showTitle\"\n class=\"sky-card-title sky-section-heading\"\n >\n <ng-content\n select=\"sky-card-title\"\n ></ng-content>\n </h1>\n </div>\n <div *ngIf=\"selectable\"\n class=\"sky-card-check\"\n >\n <sky-checkbox\n [label]=\"'skyux_card_checkbox_label' | skyLibResources\"\n [ngModel]=\"selected\"\n (click)=\"$event.stopPropagation()\"\n (ngModelChange)=\"onCheckboxChange($event)\"\n ></sky-checkbox>\n </div>\n </div>\n </header>\n <div\n class=\"sky-card-content sky-padding-even-default\"\n (click)=\"contentClick()\"\n >\n <ng-content\n select=\"sky-card-content\"\n ></ng-content>\n </div>\n <div\n class=\"sky-card-actions\"\n [hidden]=\"actionsEl.children.length === 0\"\n #actionsEl\n >\n <ng-content\n select=\"sky-card-actions\"\n ></ng-content>\n </div>\n</section>\n","import {\n CommonModule\n} from '@angular/common';\n\nimport {\n NgModule\n} from '@angular/core';\n\nimport {\n FormsModule\n} from '@angular/forms';\n\nimport {\n SkyCheckboxModule\n} from '@skyux/forms';\n\nimport {\n SkyI18nModule\n} from '@skyux/i18n';\n\nimport {\n SkyInlineDeleteModule\n} from '../inline-delete/inline-delete.module';\nimport { SkyLayoutResourcesModule } from '../shared/sky-layout-resources.module';\n\nimport {\n SkyCardActionsComponent\n} from './card-actions.component';\n\nimport {\n SkyCardContentComponent\n} from './card-content.component';\n\nimport {\n SkyCardTitleComponent\n} from './card-title.component';\n\nimport {\n SkyCardComponent\n} from './card.component';\n\n@NgModule({\n declarations: [\n SkyCardActionsComponent,\n SkyCardComponent,\n SkyCardContentComponent,\n SkyCardTitleComponent\n ],\n imports: [\n CommonModule,\n FormsModule,\n SkyCheckboxModule,\n SkyI18nModule,\n SkyLayoutResourcesModule,\n SkyInlineDeleteModule\n ],\n exports: [\n SkyCardActionsComponent,\n SkyCardComponent,\n SkyCardContentComponent,\n SkyCardTitleComponent\n ]\n})\nexport class SkyCardModule { }\n","import { Injectable } from '@angular/core';\n\nimport {\n BehaviorSubject\n} from 'rxjs';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyDefinitionListService {\n public labelWidth = new BehaviorSubject<string>('');\n\n public defaultValue = new BehaviorSubject<string>('');\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Input\n} from '@angular/core';\n\nimport { SkyDefinitionListService } from './definition-list.service';\n\n/**\n * Creates a definition list to display label-value pairs.\n */\n@Component({\n selector: 'sky-definition-list',\n templateUrl: './definition-list.component.html',\n styleUrls: ['./definition-list.component.scss'],\n providers: [SkyDefinitionListService],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SkyDefinitionListComponent {\n\n/**\n * Specifies the width of the label portion of the definition list.\n * @default 90px\n */\n @Input()\n public set labelWidth(value: string) {\n this.service.labelWidth.next(value);\n }\n\n/**\n * Specifies a default value to display when no value is provided\n * for a label-value pair.\n * @default 'None found'\n */\n @Input()\n public set defaultValue(value: string) {\n this.service.defaultValue.next(value);\n }\n\n constructor(\n public service: SkyDefinitionListService) { }\n}\n","<div class=\"sky-definition-list\">\n <ng-content select=\"sky-definition-list-heading\"></ng-content>\n <ng-content select=\"sky-definition-list-content\"></ng-content>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component\n} from '@angular/core';\n\n/**\n * Wraps the label-value pairs in the definition list.\n */\n@Component({\n selector: 'sky-definition-list-content',\n templateUrl: './definition-list-content.component.html',\n styleUrls: ['./definition-list-content.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SkyDefinitionListContentComponent { }\n","<div class=\"sky-definition-list-content\">\n <ng-content></ng-content>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component\n} from '@angular/core';\n\n/**\n * Specifies a title for the definition list.\n */\n@Component({\n selector: 'sky-definition-list-heading',\n templateUrl: './definition-list-heading.component.html',\n styleUrls: ['./definition-list-heading.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SkyDefinitionListHeadingComponent { }\n","<div class=\"sky-subsection-heading sky-definition-list-heading\">\n <ng-content></ng-content>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component\n} from '@angular/core';\n\nimport { SkyDefinitionListService } from './definition-list.service';\n\n/**\n * Specifies the label in a label-value pair.\n */\n@Component({\n selector: 'sky-definition-list-label',\n templateUrl: './definition-list-label.component.html',\n styleUrls: ['./definition-list-label.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SkyDefinitionListLabelComponent {\n public labelWidth: number;\n\n constructor(\n public service: SkyDefinitionListService) { }\n}\n","<div\n class=\"sky-field-label sky-definition-list-label\"\n [ngStyle]=\"{\n 'width': (service.labelWidth | async) || ''\n }\"\n>\n <ng-content></ng-content>\n</div>\n","import {\n Component\n} from '@angular/core';\n\nimport { SkyDefinitionListService } from './definition-list.service';\n\n/**\n * Specifies the value in a label-value pair.\n */\n@Component({\n selector: 'sky-definition-list-value',\n templateUrl: './definition-list-value.component.html',\n styleUrls: ['./definition-list-value.component.scss']\n})\nexport class SkyDefinitionListValueComponent {\n public defaultValue: string;\n\n constructor(public service: SkyDefinitionListService) { }\n}\n","<div class=\"sky-definition-list-value\">\n <span #valueEl>\n <ng-content></ng-content>\n </span>\n <span class=\"sky-deemphasized\" *ngIf=\"!valueEl.textContent.trim()\">\n {{ (service.defaultValue | async) || ('skyux_definition_list_none_found' | skyLibResources) }}\n </span>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport {\n SkyI18nModule\n} from '@skyux/i18n';\n\nimport { SkyLayoutResourcesModule } from '../shared/sky-layout-resources.module';\n\nimport { SkyDefinitionListComponent } from './definition-list.component';\nimport { SkyDefinitionListContentComponent } from './definition-list-content.component';\nimport { SkyDefinitionListHeadingComponent } from './definition-list-heading.component';\nimport { SkyDefinitionListLabelComponent } from './definition-list-label.component';\nimport { SkyDefinitionListValueComponent } from './definition-list-value.component';\n\n@NgModule({\n declarations: [\n SkyDefinitionListComponent,\n SkyDefinitionListContentComponent,\n SkyDefinitionListHeadingComponent,\n SkyDefinitionListLabelComponent,\n SkyDefinitionListValueComponent\n ],\n imports: [\n CommonModule,\n SkyI18nModule,\n SkyLayoutResourcesModule\n ],\n exports: [\n SkyDefinitionListComponent,\n SkyDefinitionListContentComponent,\n SkyDefinitionListHeadingComponent,\n SkyDefinitionListLabelComponent,\n SkyDefinitionListValueComponent\n ]\n})\nexport class SkyDefinitionListModule { }\n","import {\n ElementRef,\n Injectable,\n Renderer2,\n RendererFactory2\n} from '@angular/core';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyDescriptionListAdapterService {\n\n private renderer: Renderer2;\n\n constructor(\n rendererFactory: RendererFactory2\n ) {\n this.renderer = rendererFactory.createRenderer(undefined, undefined);\n }\n\n public getWidth(elementRef: ElementRef): number {\n return elementRef.nativeElement.clientWidth;\n }\n\n public setResponsiveClass(element: ElementRef): void {\n const nativeEl: any = element.nativeElement;\n const width = this.getWidth(element);\n const className = this.getResponsiveClassName(width);\n\n this.renderer.removeClass(nativeEl, 'sky-responsive-container-xs');\n this.renderer.removeClass(nativeEl, 'sky-responsive-container-sm');\n this.renderer.removeClass(nativeEl, 'sky-responsive-container-md');\n\n this.renderer.addClass(nativeEl, className);\n }\n\n private getResponsiveClassName(width: number): string {\n const xsBreakpointMaxPixels = 479;\n const smBreakpointMinPixels = 480;\n const smBreakpointMaxPixels = 767;\n\n if (width <= xsBreakpointMaxPixels) {\n return 'sky-responsive-container-xs';\n } else if (width >= smBreakpointMinPixels && width <= smBreakpointMaxPixels) {\n return 'sky-responsive-container-sm';\n } else {\n return 'sky-responsive-container-md';\n }\n }\n\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n TemplateRef,\n ViewChild\n} from '@angular/core';\n\n/**\n * Specifies the term in a term-description pair.\n */\n@Component({\n selector: 'sky-description-list-term',\n templateUrl: './description-list-term.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SkyDescriptionListTermComponent {\n\n @ViewChild('termTemplateRef', {\n read: TemplateRef,\n static: true\n })\n public templateRef: TemplateRef<any>;\n\n}\n","<ng-template\n #termTemplateRef\n>\n <ng-content></ng-content>\n</ng-template>\n","import {\n Injectable,\n OnDestroy\n} from '@angular/core';\n\nimport {\n BehaviorSubject,\n Observable\n} from 'rxjs';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyDescriptionListService implements OnDestroy {\n\n public get defaultDescription(): Observable<string> {\n return this._defaultDescription.asObservable();\n }\n\n private _defaultDescription = new BehaviorSubject<string>('');\n\n public ngOnDestroy(): void {\n this._defaultDescription.complete();\n }\n\n public updateDefaultDescription(value: string): void {\n this._defaultDescription.next(value);\n }\n\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n OnDestroy,\n OnInit,\n TemplateRef,\n ViewChild\n} from '@angular/core';\n\nimport {\n SkyThemeService\n} from '@skyux/theme';\n\nimport {\n takeUntil\n} from 'rxjs/operators';\n\nimport {\n Subject\n} from 'rxjs';\n\nimport {\n SkyDescriptionListService\n} from './description-list.service';\n\n/**\n * Specifies the description in a term-description pair.\n */\n@Component({\n selector: 'sky-description-list-description',\n templateUrl: './description-list-description.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SkyDescriptionListDescriptionComponent implements OnDestroy, OnInit {\n\n public defaultDescription: string;\n\n public themeName: string;\n\n @ViewChild('descriptionTemplateRef', {\n read: TemplateRef,\n static: true\n })\n public templateRef: TemplateRef<any>;\n\n private ngUnsubscribe = new Subject();\n\n constructor(\n public service: SkyDescriptionListService,\n private changeRef: ChangeDetectorRef,\n private themeSvc: SkyThemeService\n ) {}\n\n public ngOnInit(): void {\n /* istanbul ignore else */\n if (this.themeSvc) {\n this.themeSvc.settingsChange\n .pipe(\n takeUntil(this.ngUnsubscribe)\n )\n .subscribe((themeSettings) => {\n this.themeName = themeSettings.currentSettings.theme.name;\n this.changeRef.markForCheck();\n });\n }\n }\n\n public ngOnDestroy(): void {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n}\n","<ng-template\n #descriptionTemplateRef\n>\n <span #valueEl>\n <ng-content></ng-content>\n </span>\n <span *ngIf=\"!valueEl.textContent.trim()\"\n data-sky-id=\"sky-description-list-default-value\"\n [skyThemeClass]=\"{\n 'sky-font-deemphasized': 'modern',\n 'sky-deemphasized': 'default'\n }\"\n >\n {{ (service.defaultDescription | async) || ('skyux_description_list_none_found' | skyLibResources) }}\n </span>\n</ng-template>\n","import {\n Component,\n ContentChildren,\n QueryList\n} from '@angular/core';\n\nimport {\n SkyDescriptionListTermComponent\n} from './description-list-term.component';\n\nimport {\n SkyDescriptionListDescriptionComponent\n} from './description-list-description.component';\n\n/**\n * Wraps the term-description pairs in the description list.\n */\n@Component({\n selector: 'sky-description-list-content',\n templateUrl: './description-list-content.component.html'\n})\nexport class SkyDescriptionListContentComponent {\n\n @ContentChildren(SkyDescriptionListTermComponent)\n public termComponents: QueryList<SkyDescriptionListTermComponent>;\n\n @ContentChildren(SkyDescriptionListDescriptionComponent)\n public descriptionComponents: QueryList<SkyDescriptionListDescriptionComponent>;\n\n}\n","<ng-content></ng-content>\n","import {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n HostListener,\n Input,\n OnDestroy,\n QueryList,\n ViewChild\n} from '@angular/core';\n\nimport {\n MutationObserverService\n} from '@skyux/core';\n\nimport {\n takeUntil\n} from 'rxjs/operators';\n\nimport {\n Subject\n} from 'rxjs';\n\nimport {\n SkyDescriptionListModeType\n} from './types/description-list-mode-type';\n\nimport {\n SkyDescriptionListAdapterService\n} from './description-list-adapter-service';\n\nimport {\n SkyDescriptionListContentComponent\n} from './description-list-content.component';\n\nimport {\n SkyDescriptionListService\n} from './description-list.service';\n\n/**\n * Creates a description list to display term-description pairs.\n */\n@Component({\n selector: 'sky-description-list',\n templateUrl: './description-list.component.html',\n styleUrls: ['./description-list.component.scss'],\n providers: [\n SkyDescriptionListAdapterService,\n SkyDescriptionListService\n ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SkyDescriptionListComponent implements AfterContentInit, AfterViewInit, OnDestroy {\n/**\n * Specifies a default description to display when no description is provided\n * for a term-description pair.\n * @default 'None found'\n */\n @Input()\n public set defaultDescription(value: string) {\n this.descriptionListService.updateDefaultDescription(value);\n }\n\n /**\n * Specifies the width of term-description pairs when `mode` is set to `horizontal`. By default,\n * the width is responsive based on the width of the container element.\n */\n @Input()\n public listItemWidth: string;\n\n /**\n * Specifies how to display term-description pairs within the description list.\n * @default 'vertical'\n */\n @Input()\n public set mode(value: SkyDescriptionListModeType) {\n this._mode = value;\n }\n\n public get mode(): SkyDescriptionListModeType {\n return this._mode || 'vertical';\n }\n\n @ContentChildren(SkyDescriptionListContentComponent)\n public contentComponents: QueryList<SkyDescriptionListContentComponent>;\n\n private contentObserver: MutationObserver;\n\n @ViewChild('descriptionListElement', {\n read: ElementRef,\n static: true\n })\n private elementRef: ElementRef;\n\n private ngUnsubscribe = new Subject<void>();\n\n private _mode: SkyDescriptionListModeType;\n\n constructor(\n private adapterService: SkyDescriptionListAdapterService,\n private changeDetector: ChangeDetectorRef,\n private descriptionListService: SkyDescriptionListService,\n private mutationSvc: MutationObserverService\n ) { }\n\n public ngAfterContentInit(): void {\n\n // Wait for all content to render before detecting parent width.\n setTimeout(() => {\n this.updateResponsiveClass();\n });\n\n this.contentComponents.changes\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe(() => {\n this.changeDetector.markForCheck();\n });\n }\n\n public ngAfterViewInit(): void {\n this.contentObserver = this.mutationSvc.create(() => {\n this.changeDetector.markForCheck();\n });\n this.contentObserver.observe(this.elementRef.nativeElement, {\n childList: true,\n characterData: true,\n subtree: true\n });\n }\n\n public ngOnDestroy(): void {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n this.contentObserver.disconnect();\n }\n\n @HostListener('window:resize')\n public onWindowResize(): void {\n this.updateResponsiveClass();\n }\n\n private updateResponsiveClass(): void {\n this.adapterService.setResponsiveClass(this.elementRef);\n this.changeDetector.markForCheck();\n }\n}\n","<dl\n class=\"sky-description-list\"\n [ngClass]=\"{\n 'sky-description-list-long-description-mode' : mode == 'longDescription',\n 'sky-description-list-vertical-mode' : mode == 'vertical',\n 'sky-description-list-horizontal-mode' : mode == 'horizontal'\n }\"\n #descriptionListElement\n>\n <!--\n Wrapping div is for horizontal flexing. Also injecting children's templateRef directly\n to avoid adding non-semantic HTML tags to DOM\n -->\n <div *ngFor=\"let contentComponent of contentComponents\"\n class=\"sky-description-list-content\"\n [style.width]=\"mode === 'horizontal' ? listItemWidth : ''\"\n >\n <dt *ngFor=\"let termComponent of contentComponent?.termComponents\">\n <ng-container *ngTemplateOutlet=\"termComponent.templateRef\"></ng-container>\n </dt>\n <dd *ngFor=\"let descriptionComponent of contentComponent?.descriptionComponents\">\n <ng-container *ngTemplateOutlet=\"descriptionComponent.templateRef\"></ng-container>\n </dd>\n </div>\n</dl>\n","import {\n CommonModule\n} from '@angular/common';\n\nimport {\n NgModule\n} from '@angular/core';\n\nimport {\n SkyI18nModule\n} from '@skyux/i18n';\n\nimport {\n SkyThemeModule\n} from '@skyux/theme';\n\nimport { SkyLayoutResourcesModule } from '../shared/sky-layout-resources.module';\n\nimport {\n SkyDescriptionListComponent\n} from './description-list.component';\n\nimport {\n SkyDescriptionListContentComponent\n} from './description-list-content.component';\n\nimport {\n SkyDescriptionListTermComponent\n} from './description-list-term.component';\n\nimport {\n SkyDescriptionListDescriptionComponent\n} from './description-list-description.component';\n\n@NgModule({\n declarations: [\n SkyDescriptionListComponent,\n SkyDescriptionListContentComponent,\n SkyDescriptionListTermComponent,\n SkyDescriptionListDescriptionComponent\n ],\n imports: [\n CommonModule,\n SkyI18nModule,\n SkyLayoutResourcesModule,\n SkyThemeModule\n ],\n exports: [\n SkyDescriptionListComponent,\n SkyDescriptionListContentComponent,\n SkyDescriptionListTermComponent,\n SkyDescriptionListDescriptionComponent\n ]\n})\nexport class SkyDescriptionListModule { }\n","/**\n * @deprecated Use `SkyDescriptionListModeType` instead.\n * @internal\n * Specifies how to display the term-description pairs within a description list.\n */\nexport enum SkyDescriptionListMode {\n\n /**\n * Displays term-description pairs side by side in a horizontal list.\n * This mode provides a responsive layout.\n */\n horizontal = 'horizontal',\n\n /**\n * Displays terms and descriptions side by side with the term on the left and the description\n * on the right. This mode includes room for long descriptions and uses a responsive layout\n * that stacks term-description pairs vertically.\n */\n longDescription = 'longDescription',\n\n /**\n * Displays term-description pairs in a vertical list.\n */\n vertical = 'vertical'\n\n}\n","/**\n * @deprecated Use `SkyFluidGridGutterSizeType` instead.\n * @internal\n */\nexport enum SkyFluidGridGutterSize {\n /**\n * Specifies a small gutter.\n */\n Small,\n /**\n * Specifies a medium gutter.\n */\n Medium,\n /**\n * Specifies a large gutter.\n */\n Large\n}\n","import { Component, Input } from '@angular/core';\n\n/**\n * Displays a row within the `sky-fluid-grid` wrapper. Previously, you could display a row\n * without a wrapper, but we no longer officially support that option.\n */\n@Component({\n selector: 'sky-row',\n templateUrl: './row.component.html',\n styleUrls: ['./row.component.scss']\n})\nexport class SkyRowComponent {\n /**\n * Indicates whether to reverse the display order for columns in the row.\n * @default false\n */\n @Input()\n public reverseColumnOrder: boolean = false;\n}\n","<div class=\"sky-row\" \n [ngClass]=\"{ 'sky-row-reverse': reverseColumnOrder }\">\n <ng-content></ng-content>\n</div>\n","import {\n Component,\n HostBinding,\n Input,\n OnInit,\n SimpleChanges,\n OnChanges,\n ViewEncapsulation\n} from '@angular/core';\n\n@Component({\n selector: 'sky-column',\n templateUrl: './column.component.html',\n styleUrls: ['./column.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class SkyColumnComponent implements OnInit, OnChanges {\n\n/**\n * Specifies the number of columns (1-12) to use on extra-small screens\n * (less than 768px). If you do not specify a value, the fluid grid displays\n * the column at the full width of the screen.\n * @default 12\n */\n @Input()\n public screenXSmall: number;\n\n/**\n * Specifies the number of columns (1-12) to use on small screens\n * (768-991px). If you do not specify a value, the column inherits\n * the `screenXSmall` value.\n */\n @Input()\n public screenSmall: number;\n\n/**\n * Specifies the number of columns (1-12) to use on medium screens\n * (992-1199px). If you do not specify a value, the column inherits\n * the `screenSmall` value.\n */\n @Input()\n public screenMedium: number;\n\n/**\n * Specifies the number of columns (1-12) to use on large screens\n * (more than 1200px). If you do not specify a value, the column\n * inherits the `screenMedium` value.\n */\n @Input()\n public screenLarge: number;\n\n @HostBinding('class')\n public classnames: string;\n\n public ngOnChanges(changes: SimpleChanges) {\n /* istanbul ignore else */\n if (changes.screenXSmall || changes.screenSmall || changes.screenMedium || changes.screenLarge) {\n this.classnames = this.getClassNames();\n }\n }\n\n public getClassNames(): string {\n let classnames = [\n 'sky-column'\n ];\n\n if (this.screenXSmall) {\n classnames.push(`sky-column-xs-${this.screenXSmall}`);\n }\n\n if (this.screenSmall) {\n classnames.push(`sky-column-sm-${this.screenSmall}`);\n }\n\n if (this.screenMedium) {\n classnames.push(`sky-column-md-${this.screenMedium}`);\n }\n\n if (this.screenLarge) {\n classnames.push(`sky-column-lg-${this.screenLarge}`);\n }\n\n return classnames.join(' ');\n }\n\n public ngOnInit(): void {\n this.classnames = this.getClassNames();\n }\n}\n","<ng-content></ng-content>\n","import {\n Component,\n Input\n} from '@angular/core';\n\nimport {\n SkyFluidGridGutterSize\n} from './fluid-grid-gutter-size';\n\nimport {\n SkyFluidGridGutterSizeType\n} from './types/fluid-grid-gutter-size-type';\n\n/**\n * Wraps the fluid grid to ensure proper spacing. Without the wrapper, the\n * alignment, padding, and margins do not behave as expected.\n */\n@Component({\n selector: 'sky-fluid-grid',\n templateUrl: './fluid-grid.component.html',\n styleUrls: [\n './fluid-grid.component.scss'\n ]\n})\nexport class SkyFluidGridComponent {\n\n /**\n * Disables the outer left and right margin of the fluid grid container.\n * @default false\n */\n @Input()\n public set disableMargin(value: boolean) {\n this._disableMargin = value;\n }\n\n public get disableMargin(): boolean {\n return this._disableMargin || false;\n }\n\n /**\n * Specifies a `SkyFluidGridGutterSizeType` to define the size of the padding\n * between columns.\n * @default 'large'\n */\n @Input()\n public set gutterSize(value: SkyFluidGridGutterSizeType) {\n this._gutterSize = value;\n }\n\n public get gutterSize(): SkyFluidGridGutterSizeType {\n return this._gutterSize === undefined ? 'large' : this._gutterSize;\n }\n\n /**\n * @internal\n */\n public get gutterSizeResolved(): SkyFluidGridGutterSizeType {\n // Before this change, the template did a `==` comparison, implicitly converting numerical\n // string values to their numeric values before comparing them. Checking for the numerical\n // string value in addition to the values allowed by the type maintains this behavior.\n switch (this.gutterSize) {\n case 'medium':\n case SkyFluidGridGutterSize.Medium:\n case SkyFluidGridGutterSize.Medium.toString():\n return 'medium';\n case 'small':\n case SkyFluidGridGutterSize.Small:\n case SkyFluidGridGutterSize.Small.toString():\n return 'small';\n default:\n return 'large';\n }\n }\n\n private _disableMargin: boolean;\n\n private _gutterSize: SkyFluidGridGutterSizeType;\n\n}\n","<div\n class=\"sky-fluid-grid\"\n [ngClass]=\"{\n 'sky-fluid-grid-gutter-size-small' : gutterSizeResolved === 'small',\n 'sky-fluid-grid-gutter-size-medium' : gutterSizeResolved === 'medium',\n 'sky-fluid-grid-gutter-size-large' : gutterSizeResolved === 'large',\n 'sky-fluid-grid-no-margin' : disableMargin\n }\"\n>\n <ng-content></ng-content>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { SkyRowComponent } from './row.component';\nimport { SkyColumnComponent } from './column.component';\nimport { SkyFluidGridComponent } from './fluid-grid.component';\n\n@NgModule({\n imports: [\n CommonModule\n ],\n declarations: [\n SkyRowComponent,\n SkyColumnComponent,\n SkyFluidGridComponent\n ],\n exports: [\n SkyRowComponent,\n SkyColumnComponent,\n SkyFluidGridComponent\n ]\n})\nexport class SkyFluidGridModule { }\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n TemplateRef\n} from '@angular/core';\n\nimport {\n SkyFormatItem\n} from './format-item';\n\nconst tokenRegex = /(\\{\\d+\\})/;\n\n@Component({\n selector: 'sky-format',\n templateUrl: './format.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SkyFormatComponent {\n\n public itemsForDisplay: SkyFormatItem[];\n\n /**\n * The tokenized string that represents the template. Tokens use the `{n}` notation\n * where n is the ordinal of the item to replace the token.\n */\n @Input()\n public set text(value: string) {\n this._text = value;\n this.updateItemsForDisplay();\n }\n\n public get text(): string {\n return this._text;\n }\n\n /**\n * An array of `TemplateRef` objects to be placed in the template, where the `nth`\n * item is placed at the `{n}` location in the template.\n */\n @Input()\n public set args(value: TemplateRef<any>[]) {\n this._args = value;\n this.updateItemsForDisplay();\n }\n\n public get args(): TemplateRef<any>[] {\n return this._args;\n }\n\n private _text: string;\n\n private _args: TemplateRef<any>[];\n\n private updateItemsForDisplay(): void {\n this.itemsForDisplay = [];\n\n if (this.text && this.args) {\n const textParts = this.text.split(tokenRegex);\n\n for (const textPart of textParts) {\n // Disregard empty strings.\n if (textPart) {\n const item: SkyFormatItem = {};\n\n if (tokenRegex.test(textPart)) {\n const valueIndex = +textPart.substring(1, textPart.length - 1);\n\n item.templateRef = this.args[valueIndex];\n } else {\n item.text = textPart;\n }\n\n this.itemsForDisplay.push(item);\n }\n }\n }\n }\n\n}\n","<ng-container *ngFor=\"let item of itemsForDisplay\">\n <!--\n The following ng-container must be on one line so no extra whitespace is introduced.\n -->\n <ng-container *ngIf=\"item.text else item.templateRef\">{{ item.text }}</ng-container>\n</ng-container>\n","import {\n NgModule\n} from '@angular/core';\n\nimport {\n CommonModule\n} from '@angular/common';\n\nimport {\n SkyFormatComponent\n} from './format.component';\n\n@NgModule({\n declarations: [\n SkyFormatComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n SkyFormatComponent\n ]\n})\nexport class SkyFormatModule { }\n","import {\n Injectable\n} from '@angular/core';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyPageThemeAdapterService {\n\n private styleEl: HTMLStyleElement;\n\n public addTheme(): void {\n if (!this.styleEl) {\n this.styleEl = document.createElement('style');\n this.styleEl.appendChild(document.createTextNode('body { background-color: #fff; }'));\n\n document.head.appendChild(this.styleEl);\n }\n }\n\n public removeTheme(): void {\n if (this.styleEl) {\n document.head.removeChild(this.styleEl);\n this.styleEl = undefined;\n }\n }\n\n}\n","import {\n Component,\n OnDestroy,\n OnInit\n} from '@angular/core';\n\nimport {\n SkyPageThemeAdapterService\n} from './page-theme-adapter.service';\n\n/**\n * Resets the SPA's background to white and adds the `sky-theme-default` CSS class to the host\n * element to let consumers override CSS styling. Consumers can override any element by writing\n * CSS selectors like this: `:host-context(.sky-theme-default) .my-class {}`.\n */\n@Component({\n selector: 'sky-page',\n templateUrl: './page.component.html',\n providers: [SkyPageThemeAdapterService]\n})\nexport class SkyPageComponent implements OnInit, OnDestroy {\n\n constructor(private themeAdapter: SkyPageThemeAdapterService) { }\n\n public ngOnInit(): void {\n this.themeAdapter.addTheme();\n }\n\n public ngOnDestroy(): void {\n this.themeAdapter.removeTheme();\n }\n\n}\n","<div class=\"sky-theme-default\">\n <ng-content></ng-content>\n</div>\n","import {\n NgModule\n} from '@angular/core';\n\nimport {\n SkyPageComponent\n} from './page.component';\n\n@NgModule({\n declarations: [\n SkyPageComponent\n ],\n exports: [\n SkyPageComponent\n ]\n})\nexport class SkyPageModule { }\n","import { Component } from '@angular/core';\n\n/**\n * Displays messages that require immediate attention as [alerts](https://developer.blackbaud.com/skyux-indicators/docs/alert) within\n * the page summary.\n */\n@Component({\n selector: 'sky-page-summary-alert',\n templateUrl: './page-summary-alert.component.html',\n styleUrls: ['./page-summary-alert.component.scss']\n})\n/* istanbul ignore next */\n/* Code coverage having problems with no statements in classes */\nexport class SkyPageSummaryAlertComponent { }\n","<ng-content></ng-content>\n","import { Component } from '@angular/core';\n\n/**\n * Displays content in the arbitrary section of the page summary.\n */\n@Component({\n selector: 'sky-page-summary-content',\n templateUrl: './page-summary-content.component.html',\n styleUrls: ['./page-summary-content.component.scss']\n})\n/* istanbul ignore next */\n/* Code coverage having problems with no statements in classes */\nexport class SkyPageSummaryContentComponent { }\n","<div class=\"sky-page-summary-content\">\n <ng-content></ng-content>\n</div>\n","import { Component } from '@angular/core';\n\n/**\n * Displays an image in the page summary to identify a record\n * or help users complete a core task.\n */\n@Component({\n selector: 'sky-page-summary-image',\n templateUrl: './page-summary-image.component.html',\n styleUrls: ['./page-summary-image.component.scss']\n})\n/* istanbul ignore next */\n/* Code coverage having problems with no statements in classes */\nexport class SkyPageSummaryImageComponent { }\n","<div class=\"sky-page-summary-image\">\n <ng-content></ng-content>\n</div>\n","import { Component } from '@angular/core';\n\n/**\n * Highlights important information about a page in the key information section of the\n * page summary.\n */\n@Component({\n selector: 'sky-page-summary-key-info',\n templateUrl: './page-summary-key-info.component.html',\n styleUrls: ['./page-summary-key-info.component.scss']\n})\nexport class SkyPageSummaryKeyInfoComponent { }\n","<div class=\"sky-page-summary-key-info\">\n <ng-content></ng-content>\n</div>\n","import { Component } from '@angular/core';\n\n/**\n * Displays [labels](https://developer.blackbaud.com/skyux/components/label)\n * to highlight important status information about a page's content.\n */\n@Component({\n selector: 'sky-page-summary-status',\n templateUrl: './page-summary-status.component.html',\n styleUrls: ['./page-summary-status.component.scss']\n})\n/* istanbul ignore next */\n/* Code coverage having problems with no statements in classes */\nexport class SkyPageSummaryStatusComponent { }\n","<div class=\"sky-page-summary-status\">\n <ng-content></ng-content>\n</div>\n","import { Component } from '@angular/core';\n\n/**\n * Specifies a subtitle to identify the page content.\n */\n@Component({\n selector: 'sky-page-summary-subtitle',\n templateUrl: './page-summary-subtitle.component.html',\n styleUrls: ['./page-summary-subtitle.component.scss']\n})\n/* istanbul ignore next */\n/* Code coverage having problems with no statements in classes */\nexport class SkyPageSummarySubtitleComponent { }\n","<p class=\"sky-page-summary-subtitle sky-emphasized\">\n <ng-content></ng-content>\n</p>\n","import { Component } from '@angular/core';\n\n/**\n * Specifies a title to identify the page content.\n */\n@Component({\n selector: 'sky-page-summary-title',\n templateUrl: './page-summary-title.component.html',\n styleUrls: ['./page-summary-title.component.scss']\n})\n/* istanbul ignore next */\n/* Code coverage having problems with no statements in classes */\nexport class SkyPageSummaryTitleComponent { }\n","<h1 class=\"sky-page-summary-title sky-page-heading\">\n <ng-content></ng-content>\n</h1>\n","import { ElementRef, Injectable } from '@angular/core';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyPageSummaryAdapterService {\n public updateKeyInfoLocation(elRef: ElementRef, isXS: boolean) {\n let el = elRef.nativeElement;\n let keyInfoContainerEl = el.querySelector('.sky-page-summary-key-info-container');\n\n if (isXS) {\n el.querySelector('.sky-page-summary-key-info-xs').appendChild(keyInfoContainerEl);\n } else {\n el.querySelector('.sky-page-summary-key-info-sm').appendChild(keyInfoContainerEl);\n }\n }\n}\n","import {\n AfterViewInit,\n Component,\n ContentChildren,\n ElementRef,\n OnDestroy,\n QueryList\n} from '@angular/core';\n\nimport {\n SkyMediaBreakpoints,\n SkyMediaQueryService\n} from '@skyux/core';\n\nimport {\n Subscription\n} from 'rxjs';\n\nimport {\n SkyPageSummaryAdapterService\n} from './page-summary-adapter.service';\n\nimport {\n SkyPageSummaryKeyInfoComponent\n} from './page-summary-key-info.component';\n\n/**\n * Specifies the components to display in the page summary.\n */\n@Component({\n selector: 'sky-page-summary',\n templateUrl: './page-summary.component.html',\n styleUrls: ['./page-summary.component.scss'],\n providers: [SkyPageSummaryAdapterService]\n})\nexport class SkyPageSummaryComponent implements OnDestroy, AfterViewInit {\n public get hasKeyInfo(): boolean {\n return (this.keyInfoComponents.length > 0);\n }\n\n @ContentChildren(SkyPageSummaryKeyInfoComponent, { read: SkyPageSummaryKeyInfoComponent })\n private keyInfoComponents: QueryList<SkyPageSummaryKeyInfoComponent>;\n\n private breakpointSubscription: Subscription;\n\n constructor(\n private elRef: ElementRef,\n private adapter: SkyPageSummaryAdapterService,\n private mediaQueryService: SkyMediaQueryService\n ) { }\n\n public ngAfterViewInit() {\n this.breakpointSubscription = this.mediaQueryService.subscribe(\n (args: SkyMediaBreakpoints) => {\n this.adapter.updateKeyInfoLocation(this.elRef, args === SkyMediaBreakpoints.xs);\n }\n );\n }\n\n public ngOnDestroy() {\n /* istanbul ignore else */\n /* sanity check */\n if (this.breakpointSubscription) {\n this.breakpointSubscription.unsubscribe();\n }\n }\n}\n","<div\n class=\"sky-page-summary\"\n [ngClass]=\"{ 'sky-page-summary-with-key-info': hasKeyInfo }\"\n>\n <ng-content select=\"sky-page-summary-alert\"></ng-content>\n <div class=\"sky-page-summary-row\">\n <div class=\"sky-page-summary-left\">\n <ng-content select=\"sky-page-summary-image\"></ng-content>\n <div class=\"sky-page-summary-data\">\n <ng-content select=\"sky-page-summary-title\"></ng-content>\n <ng-content select=\"sky-page-summary-subtitle\"></ng-content>\n <ng-content select=\"sky-page-summary-status\"></ng-content>\n <div class=\"sky-page-summary-key-info-xs\"></div>\n <ng-content select=\"sky-page-summary-content\"></ng-content>\n </div>\n </div>\n <div class=\"sky-page-summary-key-info-sm\">\n <div class=\"sky-page-summary-key-info-container\">\n <ng-content select=\"sky-page-summary-key-info\"></ng-content>\n </div>\n </div>\n </div>\n</div>\n","import {\n CommonModule\n} from '@angular/common';\n\nimport {\n NgModule\n} from '@angular/core';\n\nimport {\n SkyPageSummaryAlertComponent\n} from './page-summary-alert.component';\n\nimport {\n SkyPageSummaryContentComponent\n} from './page-summary-content.component';\n\nimport {\n SkyPageSummaryImageComponent\n} from './page-summary-image.component';\n\nimport {\n SkyPageSummaryKeyInfoComponent\n} from './page-summary-key-info.component';\n\nimport {\n SkyPageSummaryStatusComponent\n} from './page-summary-status.component';\n\nimport {\n SkyPageSummarySubtitleComponent\n} from './page-summary-subtitle.component';\n\nimport {\n SkyPageSummaryTitleComponent\n} from './page-summary-title.component';\n\nimport {\nSkyPageSummaryComponent\n} from './page-summary.component';\n\n@NgModule({\n declarations: [\n SkyPageSummaryAlertComponent,\n SkyPageSummaryComponent,\n SkyPageSummaryContentComponent,\n SkyPageSummaryImageComponent,\n SkyPageSummaryKeyInfoComponent,\n SkyPageSummaryStatusComponent,\n SkyPageSummarySubtitleComponent,\n SkyPageSummaryTitleComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n SkyPageSummaryAlertComponent,\n SkyPageSummaryComponent,\n SkyPageSummaryContentComponent,\n SkyPageSummaryImageComponent,\n SkyPageSummaryKeyInfoComponent,\n SkyPageSummaryStatusComponent,\n SkyPageSummarySubtitleComponent,\n SkyPageSummaryTitleComponent\n ]\n})\nexport class SkyPageSummaryModule { }\n","import {\n ElementRef,\n Injectable,\n Renderer2,\n RendererFactory2\n} from '@angular/core';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyTextExpandAdapterService {\n\n private renderer: Renderer2;\n\n constructor(\n private rendererFactory: RendererFactory2\n ) {\n this.renderer = this.rendererFactory.createRenderer(undefined, undefined);\n }\n\n public getContainerHeight(containerEl: ElementRef) {\n return containerEl.nativeElement.offsetHeight;\n }\n\n public setContainerHeight(containerEl: ElementRef, height: string) {\n if (height === undefined) {\n this.renderer.removeStyle(containerEl.nativeElement, 'max-height');\n } else {\n this.renderer.setStyle(containerEl.nativeElement, 'max-height', height);\n }\n }\n\n public setText(textEl: ElementRef, text: string) {\n textEl.nativeElement.textContent = text;\n }\n}\n","/**\n * @internal\n */\nexport class SkyTextExpandModalContext {\n public header: string;\n public text: string;\n}\n","import {\n Component\n} from '@angular/core';\n\nimport {\n SkyModalInstance\n} from '@skyux/modals';\n\nimport {\n SkyTextExpandModalContext\n} from './text-expand-modal-context';\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-text-expand-modal',\n templateUrl: './text-expand-modal.component.html',\n styleUrls: ['./text-expand.component.scss']\n})\nexport class SkyTextExpandModalComponent {\n\n constructor(\n public context: SkyTextExpandModalContext,\n public instance: SkyModalInstance\n ) { }\n\n public close(): void {\n this.instance.close();\n }\n\n}\n","<sky-modal>\n <sky-modal-header>{{context.header}}</sky-modal-header>\n <sky-modal-content class=\"sky-text-expand-modal-content\">{{context.text}}</sky-modal-content>\n <sky-modal-footer>\n <button\n class=\"sky-btn sky-btn-link\"\n (click)=\"close()\">{{'skyux_text_expand_close_text' | skyLibResources}}</button>\n </sky-modal-footer>\n</sky-modal>\n","import {\n AfterContentInit,\n Component,\n ElementRef,\n Input,\n ViewChild\n} from '@angular/core';\n\nimport {\n SkyLibResourcesService\n} from '@skyux/i18n';\n\nimport {\n SkyModalService\n} from '@skyux/modals';\n\nimport {\n forkJoin as observableForkJoin\n} from 'rxjs';\n\nimport {\n take\n} from 'rxjs/operators';\n\nimport {\n SkyTextExpandAdapterService\n} from './text-expand-adapter.service';\n\nimport {\n SkyTextExpandModalComponent\n} from './text-expand-modal.component';\n\nimport {\n SkyTextExpandModalContext\n} from './text-expand-modal-context';\n\n/**\n * Auto-incrementing integer used to generate unique ids for text expand components.\n */\nlet nextId = 0;\n\n@Component({\n selector: 'sky-text-expand',\n templateUrl: './text-expand.component.html',\n styleUrls: ['./text-expand.component.scss'],\n providers: [\n SkyTextExpandAdapterService\n ]\n})\nexport class SkyTextExpandComponent implements AfterContentInit {\n\n /**\n * Specifies a title to display when the component expands the full text in a modal.\n * @default 'Expanded view'\n */\n @Input()\n public expandModalTitle: string;\n\n /**\n * Specifies the maximum number of text characters to display inline when users select the link\n * to expand the full text. If the text exceeds this limit, then the component expands\n * the full text in a modal instead.\n */\n @Input()\n public maxExpandedLength: number = 600;\n\n /**\n * Specifies the maximum number of newline characters to display inline when users select\n * the link to expand the full text. If the text exceeds this limit, then\n * the component expands the full text in a modal view instead.\n */\n @Input()\n public maxExpandedNewlines: number = 2;\n\n /**\n * Specifies the number of text characters to display before truncating the text.\n * To avoid truncating text in the middle of a word, the component looks for a space\n * in the 10 characters before the last character.\n * @default 200\n */\n @Input()\n public set maxLength(value: number) {\n this._maxLength = value;\n\n /* istanbul ignore else */\n if (this.textEl) {\n this.setup(this.expandedText);\n }\n }\n\n public get maxLength(): number {\n return this._maxLength;\n }\n\n /**\n * Specifies the text to truncate.\n */\n @Input()\n public set text(value: string) {\n /* istanbul ignore else */\n if (this.textEl) {\n this.setup(value);\n }\n }\n\n /**\n * Indicates whether to replace newline characters in truncated text with spaces.\n */\n @Input()\n public truncateNewlines: boolean = true;\n\n public buttonText: string;\n\n public contentSectionId: string = `sky-text-expand-content-${++nextId}`;\n\n public expandable: boolean;\n\n public isExpanded: boolean = false;\n\n public isModal: boolean;\n\n @ViewChild('container', {\n read: ElementRef,\n static: true\n })\n private containerEl: ElementRef;\n\n @ViewChild('text', {\n read: ElementRef,\n static: true\n })\n private textEl: ElementRef;\n\n private collapsedText: string;\n\n private expandedText: string;\n\n private newlineCount: number;\n\n private seeMoreText: string;\n\n private seeLessText: string;\n\n private textToShow: string;\n\n private _maxLength: number = 200;\n\n constructor(\n private resources: SkyLibResourcesService,\n private modalService: SkyModalService,\n private textExpandAdapter: SkyTextExpandAdapterService\n ) { }\n\n public textExpand(): void {\n if (this.isModal) {\n // Modal View\n /* istanbul ignore else */\n /* sanity check */\n if (!this.isExpanded) {\n this.modalService.open(\n SkyTextExpandModalComponent,\n [\n {\n provide: SkyTextExpandModalContext,\n useValue: {\n header: this.expandModalTitle,\n text: this.expandedText\n }\n }\n ]\n );\n }\n } else {\n // Normal View\n if (!this.isExpanded) {\n this.setContainerMaxHeight();\n setTimeout(() => {\n this.isExpanded = true;\n this\n .animateText(this.collapsedText, this.expandedText, true);\n }, 10);\n\n } else {\n this.setContainerMaxHeight();\n setTimeout(() => {\n this.isExpanded = false;\n this\n .animateText(this.expandedText, this.collapsedText, false);\n }, 10);\n }\n }\n }\n\n public animationEnd(): void {\n // Ensure the correct text is displayed\n this.textExpandAdapter.setText(this.textEl, this.textToShow);\n // Set height back to auto so the browser can change the height as needed with window changes\n this.textExpandAdapter.setContainerHeight(this.containerEl, undefined);\n }\n\n public ngAfterContentInit(): void {\n observableForkJoin([\n this.resources.getString('skyux_text_expand_see_more'),\n this.resources.getString('skyux_text_expand_see_less')\n ])\n .pipe(take(1))\n .subscribe(resources => {\n this.seeMoreText = resources[0];\n this.seeLessText = resources[1];\n this.setup(this.expandedText);\n\n /* istanbul ignore else */\n if (!this.expandModalTitle) {\n this.resources.getString('skyux_text_expand_modal_title')\n .pipe(take(1))\n .subscribe(resource => {\n this.expandModalTitle = resource;\n });\n }\n });\n }\n\n private setContainerMaxHeight(): void {\n // ensure everything is reset\n this.animationEnd();\n /* Before animation is kicked off, ensure that a maxHeight exists */\n /* Once we have support for angular v4 animations with parameters we can use that instead */\n let currentHeight = this.textExpandAdapter.getContainerHeight(this.containerEl);\n this.textExpandAdapter.setContainerHeight(this.containerEl, `${currentHeight}px`);\n }\n\n private setup(value: string): void {\n if (value) {\n this.newlineCount = this.getNewlineCount(value);\n this.collapsedText = this.getTruncatedText(value, this.maxLength);\n this.expandedText = value;\n if (this.collapsedText !== value) {\n this.buttonText = this.seeMoreText;\n this.isExpanded = false;\n this.expandable = true;\n this.isModal = this.newlineCount > this.maxExpandedNewlines\n || this.expandedText.length > this.maxExpandedLength;\n } else {\n this.expandable = false;\n }\n this.textToShow = this.collapsedText;\n } else {\n this.textToShow = '';\n this.expandable = false;\n }\n this.textExpandAdapter.setText(this.textEl, this.textToShow);\n }\n\n private getNewlineCount(value: string): number {\n let matches = value.match(/\\n/gi);\n\n if (matches) {\n return matches.length;\n }\n\n return 0;\n }\n\n private getTruncatedText(value: string, length: number): string {\n let i: number;\n if (this.truncateNewlines) {\n value = value.replace(/\\n+/gi, ' ');\n }\n // Jump ahead one character and see if it's a space, and if it isn't,\n // back up to the first space and break there so a word doesn't get cut\n // in half.\n if (length < value.length) {\n for (i = length; i > length - 10; i--) {\n if (/\\s/.test(value.charAt(i))) {\n length = i;\n break;\n }\n }\n }\n return value.substr(0, length);\n }\n\n private animateText(previousText: string, newText: string, expanding: boolean): void {\n\n let adapter = this.textExpandAdapter;\n let container = this.containerEl;\n // Reset max height\n adapter.setContainerHeight(container, undefined);\n // Measure the current height so we can animate from it.\n let currentHeight = adapter.getContainerHeight(container);\n this.textToShow = newText;\n adapter.setText(this.textEl, this.textToShow);\n this.buttonText = expanding ? this.seeLessText : this.seeMoreText;\n // Measure the new height so we can animate to it.\n let newHeight = adapter.getContainerHeight(container);\n /* istanbul ignore if */\n if (newHeight < currentHeight) {\n // The new text is smaller than the old text, so put the old text back before doing\n // the collapse animation to avoid showing a big chunk of whitespace.\n adapter.setText(this.textEl, previousText);\n }\n\n adapter.setContainerHeight(container, `${currentHeight}px`);\n // This timeout is necessary due to the browser needing to pick up the non-auto height being set\n // in order to do the transtion in height correctly. Without it the transition does not fire.\n setTimeout(() => {\n adapter.setContainerHeight(container, `${newHeight}px`);\n /* This resets values if the transition does not get kicked off */\n setTimeout(() => {\n this.animationEnd();\n }, 500);\n }, 10);\n }\n}\n","<div\n class=\"sky-text-expand-container\"\n (transitionend)=\"animationEnd()\"\n #container>\n <span class=\"sky-text-expand-text\" [id]=\"contentSectionId\" #text></span>\n <span class=\"sky-text-expand-ellipsis\" *ngIf=\"!isExpanded && expandable\">... </span>\n <button *ngIf=\"expandable\"\n type=\"button\"\n class=\"sky-btn sky-btn-link-inline sky-text-expand-see-more\"\n [attr.aria-expanded]=\"isModal ? undefined : isExpanded\"\n [attr.aria-controls]=\"isModal ? undefined : contentSectionId\"\n [attr.aria-haspopup]=\"isModal ? 'dialog' : undefined\"\n (click)=\"textExpand()\"\n >\n {{buttonText}}\n </button>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport {\n SkyI18nModule\n} from '@skyux/i18n';\n\nimport {\n SkyModalModule\n} from '@skyux/modals';\n\nimport { SkyLayoutResourcesModule } from '../shared/sky-layout-resources.module';\n\nimport { SkyTextExpandComponent } from './text-expand.component';\nimport { SkyTextExpandModalComponent } from './text-expand-modal.component';\n\n@NgModule({\n declarations: [\n SkyTextExpandComponent,\n SkyTextExpandModalComponent\n ],\n imports: [\n SkyI18nModule,\n SkyLayoutResourcesModule,\n SkyModalModule,\n CommonModule\n ],\n exports: [\n SkyTextExpandComponent\n ],\n entryComponents: [\n SkyTextExpandModalComponent\n ]\n})\nexport class SkyTextExpandModule { }\n","import {\n ElementRef,\n Injectable,\n Renderer2,\n RendererFactory2\n} from '@angular/core';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyTextExpandRepeaterAdapterService {\n\n private renderer: Renderer2;\n\n constructor(\n private rendererFactory: RendererFactory2\n ) {\n this.renderer = this.rendererFactory.createRenderer(undefined, undefined);\n }\n\n public getItems(elRef: ElementRef) {\n return elRef.nativeElement.querySelectorAll('.sky-text-expand-repeater-item');\n }\n\n public hideItem(item: HTMLElement) {\n this.renderer.setStyle(item, 'display', 'none');\n }\n\n public showItem(item: HTMLElement) {\n this.renderer.setStyle(item, 'display', 'list-item');\n }\n\n public getContainerHeight(containerEl: ElementRef) {\n return containerEl.nativeElement.offsetHeight;\n }\n\n public setContainerHeight(containerEl: ElementRef, height: string) {\n if (height === undefined) {\n this.renderer.removeStyle(containerEl.nativeElement, 'max-height');\n } else {\n this.renderer.setStyle(containerEl.nativeElement, 'max-height', height);\n }\n }\n}\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n ElementRef,\n Input,\n OnChanges,\n SimpleChanges,\n TemplateRef,\n ViewChild\n} from '@angular/core';\n\nimport {\n SkyLibResourcesService\n} from '@skyux/i18n';\n\nimport {\n forkJoin as observableForkJoin\n} from 'rxjs';\n\nimport {\n take\n} from 'rxjs/operators';\n\nimport {\n SkyTextExpandRepeaterListStyleType\n} from './types/text-expand-repeater-list-style-type';\n\nimport {\n SkyTextExpandRepeaterAdapterService\n} from './text-expand-repeater-adapter.service';\n\n/**\n * Auto-incrementing integer used to generate unique ids for text expand repeater components.\n */\nlet nextId = 0;\n\n@Component({\n selector: 'sky-text-expand-repeater',\n templateUrl: './text-expand-repeater.component.html',\n styleUrls: ['./text-expand-repeater.component.scss'],\n providers: [\n SkyTextExpandRepeaterAdapterService\n ]\n})\nexport class SkyTextExpandRepeaterComponent implements AfterViewInit, OnChanges {\n\n /**\n * Specifies the data to truncate.\n */\n @Input()\n public data: any[];\n\n /**\n * Specifies a template for items in the list.\n */\n @Input()\n public itemTemplate: TemplateRef<any>;\n\n /**\n * Specifies the style of bullet to use\n * @default 'unordered'\n */\n @Input()\n public listStyle: SkyTextExpandRepeaterListStyleType = 'unordered';\n\n /**\n * Specifies the number of items to display before truncating the list.\n */\n @Input()\n public maxItems: number;\n\n public buttonText: string;\n public contentItems: Array<any>;\n public expandable: boolean;\n public contentSectionId: string = `sky-text-expand-repeater-content-${++nextId}`;\n\n public isExpanded: boolean = false;\n\n private seeMoreText: string;\n private seeLessText: string;\n\n @ViewChild('container', {\n read: ElementRef,\n static: false\n })\n private containerEl: ElementRef;\n\n private items: Array<HTMLElement>;\n\n constructor(\n private resources: SkyLibResourcesService,\n private elRef: ElementRef,\n private textExpandRepeaterAdapter: SkyTextExpandRepeaterAdapterService,\n private changeDetector: ChangeDetectorRef\n ) { }\n\n public ngAfterViewInit() {\n if (this.contentItems) {\n this.items = this.textExpandRepeaterAdapter.getItems(this.elRef);\n for (let i = this.maxItems; i < this.contentItems.length; i++) {\n this.textExpandRepeaterAdapter.hideItem(this.items[i]);\n }\n }\n\n observableForkJoin([\n this.resources.getString('skyux_text_expand_see_more'),\n this.resources.getString('skyux_text_expand_see_less')\n ])\n .pipe(take(1))\n .subscribe(resources => {\n this.seeMoreText = resources[0];\n this.seeLessText = resources[1];\n /* sanity check */\n /* istanbul ignore else */\n if (!this.isExpanded) {\n this.buttonText = this.seeMoreText;\n } else {\n this.buttonText = this.seeLessText;\n }\n this.changeDetector.detectChanges();\n });\n }\n\n public ngOnChanges(changes: SimpleChanges): void {\n /* istanbul ignore else */\n if (changes.maxItems || changes.data) {\n this.setup(this.data);\n }\n }\n\n public animationEnd() {\n // Ensure the correct items are displayed\n if (!this.isExpanded) {\n for (let i = this.maxItems; i < this.contentItems.length; i++) {\n this.textExpandRepeaterAdapter.hideItem(this.items[i]);\n }\n }\n // Set height back to auto so the browser can change the height as needed with window changes\n this.textExpandRepeaterAdapter.setContainerHeight(this.containerEl, undefined);\n }\n\n public repeaterExpand() {\n if (!this.isExpanded) {\n this.setContainerMaxHeight();\n setTimeout(() => {\n this.isExpanded = true;\n this.animateRepeater(true);\n });\n\n } else {\n this.setContainerMaxHeight();\n setTimeout(() => {\n this.isExpanded = false;\n this.animateRepeater(false);\n });\n\n }\n }\n\n private setContainerMaxHeight() {\n // ensure everything is reset\n this.animationEnd();\n /* Before animation is kicked off, ensure that a maxHeight exists */\n /* Once we have support for angular v4 animations with parameters we can use that instead */\n let currentHeight = this.textExpandRepeaterAdapter.getContainerHeight(this.containerEl);\n this.textExpandRepeaterAdapter.setContainerHeight(this.containerEl, `${currentHeight}px`);\n }\n\n private animateRepeater(expanding: boolean) {\n let adapter = this.textExpandRepeaterAdapter;\n let container = this.containerEl;\n\n adapter.setContainerHeight(container, undefined);\n let currentHeight = adapter.getContainerHeight(container);\n for (let i = this.maxItems; i < this.contentItems.length; i++) {\n if (!expanding) {\n adapter.hideItem(this.items[i]);\n } else {\n adapter.showItem(this.items[i]);\n }\n }\n let newHeight = adapter.getContainerHeight(container);\n if (!expanding) {\n this.buttonText = this.seeMoreText;\n } else {\n this.buttonText = this.seeLessText;\n }\n if (newHeight < currentHeight) {\n // The new text is smaller than the old text, so put the old text back before doing\n // the collapse animation to avoid showing a big chunk of whitespace.\n for (let i = this.maxItems; i < this.contentItems.length; i++) {\n adapter.showItem(this.items[i]);\n }\n }\n\n adapter.setContainerHeight(container, `${currentHeight}px`);\n // This timeout is necessary due to the browser needing to pick up the non-auto height being set\n // in order to do the transtion in height correctly. Without it the transition does not fire.\n setTimeout(() => {\n adapter.setContainerHeight(container, `${newHeight}px`);\n /* This resets values if the transition does not get kicked off */\n setTimeout(() => {\n this.animationEnd();\n }, 500);\n }, 10);\n }\n\n private setup(value: Array<any>) {\n if (value) {\n let length = value.length;\n if (length > this.maxItems) {\n this.expandable = true;\n this.buttonText = this.seeMoreText;\n this.isExpanded = false;\n } else {\n this.expandable = false;\n }\n this.contentItems = value;\n } else {\n this.contentItems = undefined;\n this.expandable = false;\n }\n }\n}\n","<div class=\"sky-text-expand-repeater\">\n <ul *ngIf=\"listStyle !== 'ordered'\"\n class=\"sky-text-expand-repeater-container\"\n [id]=\"contentSectionId\"\n (transitionend)=\"animationEnd()\"\n [ngClass]=\"{\n 'sky-text-expand-repeater-list-style-none' : listStyle === 'unstyled'\n }\"\n #container\n >\n <ng-template\n [ngTemplateOutlet]=\"listItemTemplate\"\n ></ng-template>\n </ul>\n <ol *ngIf=\"listStyle === 'ordered'\"\n class=\"sky-text-expand-repeater-container\"\n [id]=\"contentSectionId\"\n (transitionend)=\"animationEnd()\"\n #container\n >\n <ng-template\n [ngTemplateOutlet]=\"listItemTemplate\"\n ></ng-template>\n </ol>\n <button *ngIf=\"expandable\"\n type=\"button\"\n class=\"sky-btn sky-btn-link-inline sky-text-expand-repeater-see-more\"\n [attr.aria-expanded]=\"isExpanded\"\n [attr.aria-controls]=\"contentSectionId\"\n (click)=\"repeaterExpand()\"\n [ngClass]=\"{\n 'sky-text-expand-repeater-see-more-list-style-none' : listStyle === 'unstyled'\n }\"\n >\n {{buttonText}}\n </button>\n</div>\n\n<ng-template\n let-item\n #defaultItemTemplate\n>\n {{ item }}\n</ng-template>\n\n<ng-template\n #listItemTemplate>\n <li *ngFor=\"let item of contentItems\" class=\"sky-text-expand-repeater-item\">\n <ng-template\n [ngTemplateOutlet]=\"itemTemplate || defaultItemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n </li>\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SkyI18nModule } from '@skyux/i18n';\n\nimport { SkyLayoutResourcesModule } from '../shared/sky-layout-resources.module';\n\nimport { SkyTextExpandRepeaterComponent } from './text-expand-repeater.component';\n\n@NgModule({\n declarations: [\n SkyTextExpandRepeaterComponent\n ],\n imports: [\n SkyI18nModule,\n SkyLayoutResourcesModule,\n CommonModule\n ],\n exports: [\n SkyTextExpandRepeaterComponent\n ]\n})\nexport class SkyTextExpandRepeaterModule { }\n","import {\n Component\n} from '@angular/core';\n\n/**\n * Specifies a section to group items within the toolbar. The section displays items in a separate horizontal row.\n */\n@Component({\n selector: 'sky-toolbar-section',\n styleUrls: ['./toolbar-section.component.scss'],\n templateUrl: './toolbar-section.component.html'\n})\nexport class SkyToolbarSectionComponent {\n\n}\n","<div class=\"sky-toolbar-section\">\n <div class=\"sky-toolbar-section-items\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"sky-toolbar-view-actions\"></ng-content>\n</div>\n","import {\n Component,\n AfterContentInit,\n ContentChildren,\n QueryList\n} from '@angular/core';\n\nimport {\n SkyToolbarSectionComponent\n} from './toolbar-section.component';\n\n/**\n * Displays actions for lists, records, and tiles.\n */\n@Component({\n selector: 'sky-toolbar',\n styleUrls: ['./toolbar.component.scss'],\n templateUrl: './toolbar.component.html'\n})\nexport class SkyToolbarComponent implements AfterContentInit {\n\n public hasSections: boolean = false;\n\n @ContentChildren(SkyToolbarSectionComponent, {descendants: true})\n private sectionComponents: QueryList<SkyToolbarSectionComponent>;\n\n public ngAfterContentInit() {\n this.hasSections = this.sectionComponents.length > 0;\n }\n}\n","<div\n class=\"sky-toolbar-container\"\n [ngClass]=\"{ 'sky-toolbar-sectioned': hasSections }\"\n>\n <ng-content select=\"sky-toolbar-section\"></ng-content>\n <div class=\"sky-toolbar-items\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"sky-toolbar-view-actions\"></ng-content>\n</div>\n","import {\n Component\n} from '@angular/core';\n\n/**\n * Specifies a container for an item in the toolbar.\n */\n@Component({\n selector: 'sky-toolbar-item',\n styleUrls: ['./toolbar-item.component.scss'],\n templateUrl: './toolbar-item.component.html'\n})\nexport class SkyToolbarItemComponent {\n\n}\n","<div class=\"sky-toolbar-item\">\n <ng-content></ng-content>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component\n} from '@angular/core';\n\n/**\n * Adds a section on the right side of the toolbar for items that substantially alter\n * the view of the content container. This includes simple filters and view switchers.\n */\n@Component({\n selector: 'sky-toolbar-view-actions',\n templateUrl: './toolbar-view-actions.component.html',\n styleUrls: ['./toolbar-view-actions.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SkyToolbarViewActionsComponent { }\n","<div\n class=\"sky-toolbar-view-actions\"\n>\n <ng-content></ng-content>\n</div>\n","import {\n NgModule\n} from '@angular/core';\n\nimport {\n CommonModule\n} from '@angular/common';\n\nimport {\n SkyToolbarComponent\n} from './toolbar.component';\n\nimport {\n SkyToolbarItemComponent\n} from './toolbar-item.component';\n\nimport {\n SkyToolbarSectionComponent\n} from './toolbar-section.component';\n\nimport {\n SkyToolbarViewActionsComponent\n} from './toolbar-view-actions.component';\n\n@NgModule({\n declarations: [\n SkyToolbarComponent,\n SkyToolbarItemComponent,\n SkyToolbarSectionComponent,\n SkyToolbarViewActionsComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n SkyToolbarComponent,\n SkyToolbarItemComponent,\n SkyToolbarSectionComponent,\n SkyToolbarViewActionsComponent\n ]\n})\nexport class SkyToolbarModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["Injectable","EventEmitter","Component","ViewEncapsulation","Input","Output","Subject","takeUntil","ElementRef","Optional","ContentChildren","ViewChild","HostListener","SkyMediaBreakpoints","CommonModule","RouterModule","SkyHrefModule","SkyIconModule","SkyThemeModule","NgModule","fromEvent","map","ChangeDetectionStrategy","SkyBackToTopMessageType","Directive","getLibStringForLocale","SkyI18nModule","SKY_LIB_RESOURCES_PROVIDERS","SkyDockModule","SkyInlineDeleteType","nextId","SkyCoreAdapterService","trigger","transition","style","query","group","animate","SkyWaitModule","FormsModule","SkyCheckboxModule","BehaviorSubject","TemplateRef","SkyDescriptionListMode","SkyFluidGridGutterSize","HostBinding","observableForkJoin","take","SkyModalModule"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAOA,IAAM,mBAAmB,GAAG,gCAAgC,CAAC;IAC7D,IAAM,mBAAmB,GAAG,gCAAgC,CAAC;IAC7D,IAAM,mBAAmB,GAAG,gCAAgC,CAAC;IAE7D,IAAM,aAAa,GAAG,GAAG,CAAC;IAC1B,IAAM,aAAa,GAAG,IAAI,CAAC;IAE3B;;;IAIA;QAIE,uCACE,eAAiC;YAEjC,IAAI,CAAC,QAAQ,GAAG,eAAe,CAAC,cAAc,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;SACtE;QAEM,sDAAc,GAAd,UAAe,OAAmB;YACvC,OAAO,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,qBAAqB,EAAE,CAAC,KAAK,CAAC;SACvE;QAEM,0DAAkB,GAAlB,UAAmB,OAAmB,EAAE,KAAa;YAC1D,IAAM,EAAE,GAAQ,OAAO,CAAC,aAAa,CAAC;YACtC,IAAM,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;YAErD,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,EAAE,mBAAmB,CAAC,CAAC;YACnD,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,EAAE,mBAAmB,CAAC,CAAC;YACnD,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,EAAE,mBAAmB,CAAC,CAAC;YAEnD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;SACvC;QAEO,8DAAsB,GAAtB,UAAuB,KAAa;YAC1C,IAAI,KAAK,GAAG,aAAa,EAAE;gBACzB,OAAO,mBAAmB,CAAC;aAC5B;iBAAM,IAAI,KAAK,GAAG,aAAa,IAAI,KAAK,GAAG,aAAa,EAAE;gBACzD,OAAO,mBAAmB,CAAC;aAC5B;iBAAM;gBACL,OAAO,mBAAmB,CAAC;aAC5B;SACF;;;qJAjCU,6BAA6B;yJAA7B,6BAA6B;sHAA7B,6BAA6B;sBADzCA,aAAU;;;ICLX;;;;QAGA;;;;YAkBS,gBAAW,GAAG,IAAIC,eAAY,EAAO,CAAC;SAS9C;QAPQ,gDAAa,GAAb;YACL,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;SACzB;QAEM,6CAAU,GAAV;YACL,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;SACzB;;;gJApBU,wBAAwB;yHAAxB,wBAAwB,iJCrBrC,s0EA+EA;sHD1Da,wBAAwB;sBANpCC,YAAS;uBAAC;wBACT,QAAQ,EAAE,mBAAmB;wBAC7B,SAAS,EAAE,CAAC,gCAAgC,CAAC;wBAC7C,WAAW,EAAE,gCAAgC;wBAC7C,aAAa,EAAEC,oBAAiB,CAAC,IAAI;qBACtC;kCAOQ,SAAS;0BADfC,QAAK;oBAOC,WAAW;0BADjBC,SAAM;;;IEcT;;;;;QAmDE,2CACU,0BAAyD,EACzD,SAA4B,EAC5B,kBAAyC,EACzC,SAAqB,EACrB,mBAA4C,EAC5C,MAAc,EACF,QAA0B;YANtC,+BAA0B,GAA1B,0BAA0B,CAA+B;YACzD,cAAS,GAAT,SAAS,CAAmB;YAC5B,uBAAkB,GAAlB,kBAAkB,CAAuB;YACzC,cAAS,GAAT,SAAS,CAAY;YACrB,wBAAmB,GAAnB,mBAAmB,CAAyB;YAC5C,WAAM,GAAN,MAAM,CAAQ;YACF,aAAQ,GAAR,QAAQ,CAAkB;YAnBxC,kBAAa,GAAG,IAAIC,YAAO,EAAE,CAAC;SAoBjC;QAxCL,sBACW,yDAAU;iBAIrB;gBACE,OAAO,IAAI,CAAC,WAAW,IAAI,QAAQ,CAAC;aACrC;;;;;iBAPD,UACsB,KAA6C;gBACjE,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;aAC1B;;;WAAA;QAmBD,sBAAY,wDAAS;iBAArB,UAAsB,KAAa;gBACjC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;gBACxB,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBAC7B,IAAI,CAAC,YAAY,EAAE,CAAC;aACrB;;;WAAA;QAgBM,oDAAQ,GAAR;YAAA,iBAiBN;;YAfC,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,IAAI,CAAC,QAAQ,CAAC,cAAc;qBACzB,IAAI,CACHC,mBAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAC9B;qBACA,SAAS,CAAC,UAAC,aAAa;oBACvB,KAAI,CAAC,SAAS,GAAG,aAAa,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC;oBAC1D,KAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;iBAC/B,CAAC,CAAC;aACN;;YAGD,UAAU,CAAC;gBACT,KAAI,CAAC,qBAAqB,EAAE,CAAC;aAC9B,CAAC,CAAC;SACJ;QAEM,8DAAkB,GAAlB;YAAA,iBAcN;;;YAXC,IAAI,IAAI,CAAC,aAAa,EAAE;gBACtB,IAAI,CAAC,aAAa,CAAC,OAAO;qBACvB,IAAI,CACHA,mBAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAC9B;qBACA,SAAS,CAAC;oBACT,KAAI,CAAC,YAAY,EAAE,CAAC;iBACrB,CAAC,CAAC;aACN;YAED,IAAI,CAAC,oBAAoB,EAAE,CAAC;SAC7B;QAEM,uDAAW,GAAX;YACL,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;YAC1B,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;YAE9B,IAAI,CAAC,uBAAuB,EAAE,CAAC;SAChC;QAGM,0DAAc,GAAd;YACL,IAAI,CAAC,qBAAqB,EAAE,CAAC;SAC9B;QAEO,gEAAoB,GAApB;YAAA,iBAsBP;;YApBC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;gBAC1B,IAAM,IAAE,GAAG,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC;;;;gBAK3C,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC;oBAC5B,KAAI,CAAC,gBAAgB,GAAG,KAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC;wBACtD,KAAI,CAAC,YAAY,EAAE,CAAC;qBACrB,CAAC,CAAC;oBAEH,KAAI,CAAC,gBAAgB,CAAC,OAAO,CAC3B,IAAE,EACF;wBACE,aAAa,EAAE,IAAI;wBACnB,OAAO,EAAE,IAAI;qBACd,CACF,CAAC;iBACH,CAAC,CAAC;aACJ;SACF;QAEO,mEAAuB,GAAvB;YACN,IAAI,IAAI,CAAC,gBAAgB,EAAE;gBACzB,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC;gBACnC,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;aACnC;SACF;QAEO,wDAAY,GAAZ;YAAA,iBAQP;YAPC,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAC;YAC7E,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE;;gBAEhC,UAAU,CAAC;oBACT,KAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,KAAI,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAC;iBAChF,CAAC,CAAC;aACJ;SACF;QAEO,iEAAqB,GAArB;YACN,IAAM,WAAW,GAAG,IAAI,CAAC,0BAA0B,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACnF,IAAI,CAAC,0BAA0B,CAAC,kBAAkB,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;SACpF;;;yJA3IU,iCAAiC;kIAAjC,iCAAiC,0JALjC;YACT,6BAA6B;SAC9B,wDAkBgB,wBAAwB,mHAIjCC,aAAU,sDC9EpB,6UAcA;sHD6Ca,iCAAiC;sBAT7CN,YAAS;uBAAC;wBACT,QAAQ,EAAE,6BAA6B;wBACvC,SAAS,EAAE,CAAC,0CAA0C,CAAC;wBACvD,WAAW,EAAE,0CAA0C;wBACvD,SAAS,EAAE;4BACT,6BAA6B;yBAC9B;wBACD,aAAa,EAAEC,oBAAiB,CAAC,IAAI;qBACtC;;;kCA8CIM,WAAQ;;6BAtCA,UAAU;0BADpBL,QAAK;oBAUE,aAAa;0BADpBM,kBAAe;2BAAC,wBAAwB;oBAOjC,YAAY;0BAJnBC,YAAS;2BAAC,WAAW,EAAE;4BACtB,IAAI,EAAEH,aAAU;4BAChB,MAAM,EAAE,IAAI;yBACb;oBAsEM,cAAc;0BADpBI,eAAY;2BAAC,eAAe;;;IEjJ/B;;;;QAOA;;;;uJAAa,+BAA+B;gIAA/B,+BAA+B,4ECX5C,6BACA;sHDUa,+BAA+B;sBAJ3CV,YAAS;uBAAC;wBACT,QAAQ,EAAE,2BAA2B;wBACrC,WAAW,EAAE,wCAAwC;qBACtD;;;IEND;;;;QAQA;;;;sJAAa,8BAA8B;+HAA9B,8BAA8B,2ECZ3C,2LASA;sHDGa,8BAA8B;sBAL1CA,YAAS;uBAAC;wBACT,QAAQ,EAAE,0BAA0B;wBACpC,SAAS,EAAE,CAAC,uCAAuC,CAAC;wBACpD,WAAW,EAAE,uCAAuC;qBACrD;;;IEID,IAAM,mBAAmB,GAAG,IAAI,CAAC;IACjC,IAAM,mBAAmB,GAAG,IAAI,CAAC;IAEjC;;;;QAyBE,sCAAoB,iBAAuC;YAA3D,iBAQC;YARmB,sBAAiB,GAAjB,iBAAiB,CAAsB;YAJpD,kBAAa,GAAW,mBAAmB,CAAC;YAKjD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,UAAC,IAAyB;gBAC7E,IAAI,IAAI,KAAKW,sBAAmB,CAAC,EAAE,EAAE;oBACnC,KAAI,CAAC,aAAa,GAAG,mBAAmB,CAAC;iBAC1C;qBAAM;oBACL,KAAI,CAAC,aAAa,GAAG,mBAAmB,CAAC;iBAC1C;aACF,CAAC,CAAC;SACJ;QAEM,kDAAW,GAAX;;;YAGL,IAAI,IAAI,CAAC,YAAY,EAAE;gBACrB,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;aACjC;SACF;;;oJAjCU,4BAA4B;6HAA5B,4BAA4B,2GC1BzC,mNAUA;sHDgBa,4BAA4B;sBALxCX,YAAS;uBAAC;wBACT,QAAQ,EAAE,wBAAwB;wBAClC,SAAS,EAAE,CAAC,qCAAqC,CAAC;wBAClD,WAAW,EAAE,qCAAqC;qBACnD;0HAYQ,QAAQ;0BADdE,QAAK;;;;QE+BR;;;;6IAAa,qBAAqB;8IAArB,qBAAqB,iBArB9B,wBAAwB;YACxB,iCAAiC;YACjC,+BAA+B;YAC/B,8BAA8B;YAC9B,4BAA4B,aAG5BU,eAAY;YACZC,eAAY;YACZC,gBAAa;YACbC,kBAAa;YACbC,mBAAc,aAGd,wBAAwB;YACxB,iCAAiC;YACjC,+BAA+B;YAC/B,8BAA8B;YAC9B,4BAA4B;8IAGnB,qBAAqB,YAfvB;gBACPJ,eAAY;gBACZC,eAAY;gBACZC,gBAAa;gBACbC,kBAAa;gBACbC,mBAAc;aACf;sHASU,qBAAqB;sBAvBjCC,WAAQ;uBAAC;wBACR,YAAY,EAAE;4BACZ,wBAAwB;4BACxB,iCAAiC;4BACjC,+BAA+B;4BAC/B,8BAA8B;4BAC9B,4BAA4B;yBAC7B;wBACD,OAAO,EAAE;4BACPL,eAAY;4BACZC,eAAY;4BACZC,gBAAa;4BACbC,kBAAa;4BACbC,mBAAc;yBACf;wBACD,OAAO,EAAE;4BACP,wBAAwB;4BACxB,iCAAiC;4BACjC,+BAA+B;4BAC/B,8BAA8B;4BAC9B,4BAA4B;yBAC7B;qBACF;;;IC7CD;;;IAIA;QAIE,uCACU,SAA0B;YAA1B,cAAS,GAAT,SAAS,CAAiB;YAH5B,kBAAa,GAAG,IAAIZ,YAAO,EAAQ,CAAC;SAIvC;QAEE,mDAAW,GAAX;YACL,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;YAC1B,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;SAC/B;;;;;QAMM,6DAAqB,GAArB,UAAsB,UAAsB;YAA5C,iBAcN;YAbC,IAAM,MAAM,GAAG,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;YAEnE,OAAOc,cAAS,CAAC,MAAM,EAAE,QAAQ,CAAC;iBAC/B,IAAI,CACHb,mBAAS,CAAC,IAAI,CAAC,aAAa,CAAC,EAC7Bc,aAAG,CAAC;gBACF,IAAM,QAAQ,GAAG,KAAI,CAAC,uBAAuB,CAC3C,UAAU,CAAC,aAAa,EACxB,MAAM,CACP,CAAC;gBACF,OAAO,QAAQ,CAAC;aACjB,CAAC,CACH,CAAC;SACL;;;;;QAMM,uDAAe,GAAf,UAAgB,UAAsB;;;YAG3C,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE;gBAC5C,OAAO;aACR;YAED,IAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;YAC9C,IAAM,MAAM,GAAG,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;YAEnE,IAAI,MAAM,KAAK,SAAS,EAAE;;gBAExB,IAAM,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;gBACjF,IAAM,YAAY,GAAG,UAAU,CAAC,aAAa,CAAC,SAAS,GAAG,gBAAgB,CAAC;gBAC3E,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,QAAQ,CAClC,UAAU,CAAC,aAAa,CAAC,UAAU,EACnC,YAAY,CACb,CAAC;aACH;iBAAM;;gBAEL,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,GAAG,UAAU,CAAC,aAAa,CAAC,SAAS,CAAC;aAC1E;SACF;QAEM,4DAAoB,GAApB,UAAqB,OAAY;YACtC,IAAM,KAAK,GAAG,eAAe,CAAC;YAC9B,IAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;YAC9C,IAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC;YAExC,IAAI,KAAK,GAAG,SAAS,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YAChD,IAAI,MAAM,GAAG,OAAO,CAAC;YAErB,GAAG;gBACD,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC;gBAC3B,KAAK,GAAG,SAAS,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;aAC5C,QACC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;gBAC3B,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;gBAC5B,MAAM,KAAK,OAAO,EAClB;YAEF,IAAI,MAAM,KAAK,OAAO,EAAE;gBACtB,OAAO,SAAS,CAAC;aAClB;YAED,OAAO,MAAM,CAAC;SACf;QAEM,+DAAuB,GAAvB,UACL,OAAY,EACZ,aAAkB;YAElB,IAAM,MAAM,GAAG,EAAE,CAAC;YAClB,IAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;YAC9C,IAAM,WAAW,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;;YAGpD,IAAI,aAAa,KAAK,SAAS,EAAE;gBAC/B,QAAQ,WAAW,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE;aACpC;iBAAM;gBACL,IAAM,UAAU,GAAG,aAAa,CAAC,qBAAqB,EAAE,CAAC;gBACzD,QAAQ,WAAW,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,GAAG,MAAM,EAAE;aACpD;SACF;;;qJApGU,6BAA6B;yJAA7B,6BAA6B;sHAA7B,6BAA6B;sBADzCrB,aAAU;;;ICdX;;;;QAGA;YAcU,sBAAiB,GAAG,IAAIM,YAAO,EAAQ,CAAC;SAOjD;QAXC,sBAAW,mDAAgB;iBAA3B;gBACE,OAAO,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;aAC9C;;;WAAA;QAIM,kDAAkB,GAAlB;YACL,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;YAC9B,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC;SACnC;;;6IAXU,qBAAqB;sHAArB,qBAAqB,kECrBlC,6PAWA;sHDUa,qBAAqB;sBARjCJ,YAAS;uBAAC;wBACT,QAAQ,EAAE,iBAAiB;wBAC3B,WAAW,EAAE,8BAA8B;wBAC3C,SAAS,EAAE;4BACT,8BAA8B;yBAC/B;wBACD,eAAe,EAAEoB,0BAAuB,CAAC,MAAM;qBAChD;;;IEpBD;;;AAGYC;IAAZ,WAAY,uBAAuB;;;;QAKjC,+EAAa,CAAA;IACf,CAAC,EANWA,+BAAuB,KAAvBA,+BAAuB;;ICsCnC;;;;;QA4CE,+BACU,WAA2B,EAC3B,UAAyC,EACzC,OAAmB;YAFnB,gBAAW,GAAX,WAAW,CAAgB;YAC3B,eAAU,GAAV,UAAU,CAA+B;YACzC,YAAO,GAAP,OAAO,CAAY;YAVrB,iBAAY,GAAG,KAAK,CAAC;YAIrB,kBAAa,GAAG,IAAIjB,YAAO,EAAQ,CAAC;SAOxC;QAjCJ,sBACW,+CAAY;;;;iBADvB,UACwB,KAA0B;gBAChD,IAAI,CAAC,YAAY,GAAG,CAAC,EAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,YAAY,CAAA,CAAC;gBAE1C,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;aAChD;;;WAAA;QAMD,sBACW,4DAAyB;;;;;iBADpC,UACqC,KAAmC;gBADxE,iBASC;gBAPC,IAAI,IAAI,CAAC,0BAA0B,EAAE;oBACnC,IAAI,CAAC,0BAA0B,CAAC,WAAW,EAAE,CAAC;iBAC/C;gBACD,IAAI,CAAC,0BAA0B,GAAG,KAAK,CAAC;gBACxC,IAAI,CAAC,0BAA0B;qBAC5B,IAAI,CAACC,mBAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;qBACnC,SAAS,CAAC,UAAC,OAA4B,IAAK,OAAA,KAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,GAAA,CAAC,CAAC;aACtF;;;WAAA;QAeM,+CAAe,GAAf;YACL,IAAM,gBAAgB,GAAG,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YAC1F,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;YAE3G,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC/C,IAAI,CAAC,qBAAqB,EAAE,CAAC;SAC9B;QAEM,2CAAW,GAAX;YACL,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;aACzB;SACF;QAEO,qDAAqB,GAArB,UAAsB,aAAsB;;YAElD,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,aAAa,KAAK,SAAS,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;gBACzF,IAAI,CAAC,YAAY,EAAE,CAAC;aACrB;;YAED,IAAI,aAAa,IAAI,IAAI,CAAC,YAAY,EAAE;gBACtC,IAAI,CAAC,gBAAgB,EAAE,CAAC;aACzB;SACF;QAEO,4CAAY,GAAZ;YAAA,iBASP;YARC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC;;YAGxE,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,gBAAgB;iBAC7C,IAAI,CAACA,mBAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;iBACnC,SAAS,CAAC;gBACT,KAAI,CAAC,UAAU,CAAC,eAAe,CAAC,KAAI,CAAC,OAAO,CAAC,CAAC;aAC/C,CAAC,CAAC;SACN;QAEO,sDAAsB,GAAtB,UAAuB,OAA4B;;YAEzD,IAAI,OAAO,CAAC,IAAI,KAAKgB,+BAAuB,CAAC,SAAS,EAAE;gBACtD,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aAC/C;SACF;QAEO,qDAAqB,GAArB;YAAA,iBAWP;;YATC,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC;qBAChD,IAAI,CAAChB,mBAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;qBACnC,SAAS,CAAC,UAAC,aAAsB;oBAChC,KAAI,CAAC,aAAa,GAAG,aAAa,CAAC;oBAEnC,KAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC;iBAC7C,CAAC,CAAC;aACJ;SACF;QAEO,gDAAgB,GAAhB;;YAEN,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACxB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;aAC3B;SACF;;;6IAtGU,qBAAqB;sHAArB,qBAAqB,2IAJrB;YACT,6BAA6B;SAC9B;sHAEU,qBAAqB;sBANjCiB,YAAS;uBAAC;wBACT,QAAQ,EAAE,gBAAgB;wBAC1B,SAAS,EAAE;4BACT,6BAA6B;yBAC9B;qBACF;iMAOY,YAAY;0BADtBpB,QAAK;oBAYK,yBAAyB;0BADnCA,QAAK;;;ICnER;;;;;;IAiBA,IAAM,SAAS,GAA0C;QACvD,OAAO,EAAE,EAAC,mBAAmB,EAAC,EAAC,SAAS,EAAC,aAAa,EAAC,EAAC,2BAA2B,EAAC,EAAC,SAAS,EAAC,aAAa,EAAC,EAAC,kCAAkC,EAAC,EAAC,SAAS,EAAC,YAAY,EAAC,EAAC,mCAAmC,EAAC,EAAC,SAAS,EAAC,YAAY,EAAC,EAAC,oCAAoC,EAAC,EAAC,SAAS,EAAC,4CAA4C,EAAC,EAAC,4BAA4B,EAAC,EAAC,SAAS,EAAC,QAAQ,EAAC,EAAC,sCAAsC,EAAC,EAAC,SAAS,EAAC,kBAAkB,EAAC,EAAC,4BAA4B,EAAC,EAAC,SAAS,EAAC,QAAQ,EAAC,EAAC,8BAA8B,EAAC,EAAC,SAAS,EAAC,OAAO,EAAC,EAAC,+BAA+B,EAAC,EAAC,SAAS,EAAC,eAAe,EAAC,EAAC,4BAA4B,EAAC,EAAC,SAAS,EAAC,UAAU,EAAC,EAAC,4BAA4B,EAAC,EAAC,SAAS,EAAC,UAAU,EAAC,EAAC;KACvsB,CAAC;IAEF;QAAA;SAIC;QAHQ,8CAAS,GAAT,UAAU,UAA4B,EAAE,IAAY;YACzD,OAAOqB,0BAAqB,CAAC,SAAS,EAAE,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;SAClE;yCACF;KAAA,IAAA;IAED;;;IAWA;QAAA;;;;gJAAa,wBAAwB;iJAAxB,wBAAwB,YAPzBC,kBAAa;iJAOZ,wBAAwB,aANxB,CAAC;gBACV,OAAO,EAAEC,gCAA2B;gBACpC,QAAQ,EAAE,0BAA0B;gBACpC,KAAK,EAAE,IAAI;aACZ,CAAC,YALQD,kBAAa;sHAOZ,wBAAwB;sBARpCP,WAAQ;uBAAC;wBACR,OAAO,EAAE,CAACO,kBAAa,CAAC;wBACxB,SAAS,EAAE,CAAC;gCACV,OAAO,EAAEC,gCAA2B;gCACpC,QAAQ,EAAE,0BAA0B;gCACpC,KAAK,EAAE,IAAI;6BACZ,CAAC;qBACH;;;;QCOD;;;;0IAAa,kBAAkB;2IAAlB,kBAAkB,iBAjB3B,qBAAqB;YACrB,qBAAqB,aAGrBb,eAAY;YACZc,gBAAa;YACbF,kBAAa;YACb,wBAAwB,aAGxB,qBAAqB;YACrB,qBAAqB;2IAMZ,kBAAkB,YAdpB;gBACPZ,eAAY;gBACZc,gBAAa;gBACbF,kBAAa;gBACb,wBAAwB;aACzB;sHASU,kBAAkB;sBAnB9BP,WAAQ;uBAAC;wBACR,YAAY,EAAE;4BACZ,qBAAqB;4BACrB,qBAAqB;yBACtB;wBACD,OAAO,EAAE;4BACPL,eAAY;4BACZc,gBAAa;4BACbF,kBAAa;4BACb,wBAAwB;yBACzB;wBACD,OAAO,EAAE;4BACP,qBAAqB;4BACrB,qBAAqB;yBACtB;wBACD,eAAe,EAAE;4BACf,qBAAqB;yBACtB;qBACF;;;ICjCD;;;IAIA;QAQE,uCACU,kBAAyC,EACjD,eAAiC;YADzB,uBAAkB,GAAlB,kBAAkB,CAAuB;YAGjD,IAAI,CAAC,QAAQ,GAAG,eAAe,CAAC,cAAc,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;SACtE;QAEM,sDAAc,GAAd;;YAEL,IAAI,IAAI,CAAC,kBAAkB,EAAE;gBAC3B,IAAI,CAAC,kBAAkB,EAAE,CAAC;aAC3B;SACF;QAEM,6CAAK,GAAL,UAAM,OAAoB;YAA1B,iBAmBN;YAlBC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;YACvB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC;;YAGtC,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EACrE,UAAC,KAAiB;oBAChB,IAAM,MAAM,GAAQ,KAAK,CAAC,MAAM,CAAC;oBACjC,IAAI,CAAC,KAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAI,CAAC,QAAQ,KAAK,MAAM,EAAE;wBAC9D,KAAK,CAAC,cAAc,EAAE,CAAC;wBACvB,KAAK,CAAC,eAAe,EAAE,CAAC;wBACxB,KAAK,CAAC,wBAAwB,EAAE,CAAC;wBAEjC,MAAM,CAAC,IAAI,EAAE,CAAC;wBACd,KAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,KAAI,CAAC,QAAQ,CAAC,CAAC;qBACnE;iBACF,CAAC,CAAC;aACN;SACF;QAEO,wDAAgB,GAAhB,UAAiB,aAA0B,EAAE,QAAiB,EAAE,MAAe;YACrF,IAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;;YAGhD,IAAM,QAAQ,GAAG,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;;YAGnC,IAAM,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YACxD,IAAI,QAAQ,GAAG,aAAa,GAAG,QAAQ,CAAC;YACxC,OAAO,UAAU,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,wBAAwB,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE;gBAClF,QAAQ,IAAI,QAAQ,CAAC;aACtB;YAED,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE;gBAChF,UAAU,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,CAAC;aAC9B;iBAAM;;;gBAIL,QAAQ,GAAG,QAAQ,GAAG,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;;gBAGpD,OACE,QAAQ,KAAK,aAAa;oBAC1B,UAAU,CAAC,QAAQ,CAAC;oBACpB,IAAI,CAAC,wBAAwB,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EACnD;oBACA,QAAQ,IAAI,QAAQ,CAAC;iBACtB;;;gBAID,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE;oBAChF,UAAU,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,CAAC;iBAC9B;qBAAM;;;oBAGL,IAAI,QAAQ,CAAC,aAAa,IAAK,QAAQ,CAAC,aAAqB,CAAC,IAAI,EAAE;wBACjE,QAAQ,CAAC,aAAqB,CAAC,IAAI,EAAE,CAAC;qBACxC;oBACD,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;iBACvB;aACF;;YAGD,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;SACrC;QAEO,6DAAqB,GAArB;;YAEN,IAAI,IAAI,CAAC,kBAAkB,EAAE;gBAC3B,OAAO,IAAI,CAAC,kBAAkB,CAAC;aAChC;YAED,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAEtF,OAAO,IAAI,CAAC,kBAAkB,CAAC;SAChC;QAEO,gEAAwB,GAAxB,UAAyB,OAAY;;YAE3C,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;iBACjC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;oBAClE,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;SAC9D;QAEO,uDAAe,GAAf,UAAgB,OAAY;YAClC,IAAM,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YAC/C,OAAO,KAAK,CAAC,OAAO,KAAK,MAAM,IAAI,KAAK,CAAC,UAAU,KAAK,QAAQ,CAAC;SAClE;QAEO,+CAAO,GAAP,UAAQ,KAAY;YAApB,iBAYP;;YAVC,IAAM,QAAQ,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC,MAAM,CAAC,UAAA,IAAI,IAAI,OAAA,CAAC,KAAI,CAAC,eAAe,CAAC,IAAI,CAAC,GAAA,CAAC,CAAC;YAE1F,IAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAE,KAAa,CAAC,aAAa,CAAC,CAAC;YACnE,IAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,MAAqB,CAAC,CAAC;;YAGjE,OAAO,WAAW,KAAK,UAAU,GAAG,CAAC;oBAC/B,WAAW,KAAK,CAAC,IAAI,UAAU,KAAK,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;oBACxD,WAAW,GAAG,UAAU,CAAC;mBAC1B,CAAE,KAAa,CAAC,aAAa,CAAC;SACpC;;;qJA9HU,6BAA6B;yJAA7B,6BAA6B;sHAA7B,6BAA6B;sBADzC1B,aAAU;;;ICbX;;;;AAIY6B;IAAZ,WAAY,mBAAmB;;;;QAI7B,4CAAqB,CAAA;;;;QAIrB,oCAAa,CAAA;IACf,CAAC,EATWA,2BAAmB,KAAnBA,2BAAmB;;IC8B/B;;;IAGA,IAAIC,QAAM,GAAG,CAAC,CAAC;;QAyEb,kCACU,cAA6C,EAC7C,cAAiC,EACjC,KAAiB;YAFjB,mBAAc,GAAd,cAAc,CAA+B;YAC7C,mBAAc,GAAd,cAAc,CAAmB;YACjC,UAAK,GAAL,KAAK,CAAY;;;;;YA7BpB,YAAO,GAAY,KAAK,CAAC;;;;YAMzB,oBAAe,GAAG,IAAI7B,eAAY,EAAQ,CAAC;;;;YAM3C,oBAAe,GAAG,IAAIA,eAAY,EAAQ,CAAC;YAE3C,mBAAc,GAAW,OAAO,CAAC;YAEjC,oBAAe,GAAW,sCAAoC,EAAE6B,QAAQ,CAAC;YAEzE,SAAI,GAAwBD,2BAAmB,CAAC,QAAQ,CAAC;SAa/D;;;;;QAMM,2CAAQ,GAAR;YACL,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;SAC/B;;;;;QAMM,8CAAW,GAAX;YACL,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC;YACrC,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;YAChC,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;SACjC;;;;QAKM,gDAAa,GAAb;YACL,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC;SAChC;;;;QAKM,gDAAa,GAAb;YACL,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;SAC7B;;;;;;QAOM,0CAAO,GAAP,UAAQ,IAAyB;YACtC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC;SACrC;;;;;;QAOM,kDAAe,GAAf,UAAgB,KAAqB;YAC1C,IAAI,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE;gBAC9B,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;aAC7B;iBAAM;gBACL,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;;gBAExC,IAAI,IAAI,CAAC,KAAK,EAAE;oBACd,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;iBACrD;aACF;SACF;;;gJAjGU,wBAAwB;yHAAxB,wBAAwB,iKALxB;YACTE,wBAAqB;YACrB,6BAA6B;SAC9B,6GA8BOvB,aAAU,wCCzGpB,qrCAwCA,m2BDGc;YACVwB,kBAAO,CAAC,uBAAuB,EAAE;gBAC/BC,qBAAU,CAAC,YAAY,EAAE;oBACvBC,gBAAK,CAAC;wBACJ,OAAO,EAAE,CAAC;qBACX,CAAC;oBACFC,gBAAK,CAAC,gDAAgD,EACpDD,gBAAK,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC,CAAC;oBACrCE,gBAAK,CAAC;wBACJC,kBAAO,CAAC,mBAAmB,EAAEH,gBAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;wBACnDC,gBAAK,CAAC,gDAAgD,EAAEE,kBAAO,CAAC,mBAAmB,EAAEH,gBAAK,CAAC;4BACzF,SAAS,EAAE,UAAU;yBACtB,CAAC,CAAC,CAAC;qBACL,CAAC;iBACH,CAAC;gBACFD,qBAAU,CAAC,aAAa,EAAE;oBACxBE,gBAAK,CAAC,gDAAgD,EACpDD,gBAAK,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;oBACnCE,gBAAK,CAAC;wBACJC,kBAAO,CAAC,mBAAmB,EAAEH,gBAAK,CAAC;4BACjC,OAAO,EAAE,CAAC;yBACX,CAAC,CAAC;wBACHC,gBAAK,CAAC,gDAAgD,EAAEE,kBAAO,CAAC,mBAAmB,EAAEH,gBAAK,CAAC;4BACzF,SAAS,EAAE,YAAY;yBACxB,CAAC,CAAC,CAAC;qBACL,CAAC;iBACH,CAAC;aACH,CAAC;SACH;sHAMU,wBAAwB;sBAtCpChC,YAAS;uBAAC;wBACT,QAAQ,EAAE,mBAAmB;wBAC7B,SAAS,EAAE,CAAC,gCAAgC,CAAC;wBAC7C,WAAW,EAAE,gCAAgC;wBAC7C,UAAU,EAAE;4BACV8B,kBAAO,CAAC,uBAAuB,EAAE;gCAC/BC,qBAAU,CAAC,YAAY,EAAE;oCACvBC,gBAAK,CAAC;wCACJ,OAAO,EAAE,CAAC;qCACX,CAAC;oCACFC,gBAAK,CAAC,gDAAgD,EACpDD,gBAAK,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC,CAAC;oCACrCE,gBAAK,CAAC;wCACJC,kBAAO,CAAC,mBAAmB,EAAEH,gBAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;wCACnDC,gBAAK,CAAC,gDAAgD,EAAEE,kBAAO,CAAC,mBAAmB,EAAEH,gBAAK,CAAC;4CACzF,SAAS,EAAE,UAAU;yCACtB,CAAC,CAAC,CAAC;qCACL,CAAC;iCACH,CAAC;gCACFD,qBAAU,CAAC,aAAa,EAAE;oCACxBE,gBAAK,CAAC,gDAAgD,EACpDD,gBAAK,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;oCACnCE,gBAAK,CAAC;wCACJC,kBAAO,CAAC,mBAAmB,EAAEH,gBAAK,CAAC;4CACjC,OAAO,EAAE,CAAC;yCACX,CAAC,CAAC;wCACHC,gBAAK,CAAC,gDAAgD,EAAEE,kBAAO,CAAC,mBAAmB,EAAEH,gBAAK,CAAC;4CACzF,SAAS,EAAE,YAAY;yCACxB,CAAC,CAAC,CAAC;qCACL,CAAC;iCACH,CAAC;6BACH,CAAC;yBACH;wBACD,SAAS,EAAE;4BACTH,wBAAqB;4BACrB,6BAA6B;yBAC9B;qBACF;oMAQQ,OAAO;0BADb3B,QAAK;oBAOC,eAAe;0BADrBC,SAAM;oBAOA,eAAe;0BADrBA,SAAM;oBAaC,YAAY;0BAJnBM,YAAS;2BAAC,QAAQ,EAAE;4BACnB,IAAI,EAAEH,aAAU;4BAChB,MAAM,EAAE,KAAK;yBACd;;;;QEvEH;;;;6IAAa,qBAAqB;8IAArB,qBAAqB,iBAZ9B,wBAAwB,aAGxBM,eAAY;YACZY,kBAAa;YACb,wBAAwB;YACxBY,kBAAa,aAGb,wBAAwB;8IAGf,qBAAqB,YAVvB;gBACPxB,eAAY;gBACZY,kBAAa;gBACb,wBAAwB;gBACxBY,kBAAa;aACd;sHAKU,qBAAqB;sBAdjCnB,WAAQ;uBAAC;wBACR,YAAY,EAAE;4BACZ,wBAAwB;yBACzB;wBACD,OAAO,EAAE;4BACPL,eAAY;4BACZY,kBAAa;4BACb,wBAAwB;4BACxBY,kBAAa;yBACd;wBACD,OAAO,EAAE;4BACP,wBAAwB;yBACzB;qBACF;;;IC/BD;;;;QAQA;;;;+IAAa,uBAAuB;wHAAvB,uBAAuB,mECZpC,6BACA;sHDWa,uBAAuB;sBALnCpC,YAAS;uBAAC;wBACT,QAAQ,EAAE,kBAAkB;wBAC5B,WAAW,EAAE,+BAA+B;wBAC5C,SAAS,EAAE,CAAC,+BAA+B,CAAC;qBAC7C;;;IEPD;;;;QAOA;;;;+IAAa,uBAAuB;wHAAvB,uBAAuB,mECXpC,6BACA;sHDUa,uBAAuB;sBAJnCA,YAAS;uBAAC;wBACT,QAAQ,EAAE,kBAAkB;wBAC5B,WAAW,EAAE,+BAA+B;qBAC7C;;;IEND;;;;QAOA;;;;6IAAa,qBAAqB;sHAArB,qBAAqB,iECXlC,6BACA;sHDUa,qBAAqB;sBAJjCA,YAAS;uBAAC;wBACT,QAAQ,EAAE,gBAAgB;wBAC1B,WAAW,EAAE,6BAA6B;qBAC3C;;;IEiBD;;;;QAGA;;;;YAiCS,mBAAc,GAAG,IAAID,eAAY,EAAW,CAAC;YAQ7C,cAAS,GAAY,IAAI,CAAC;SA2ClC;QAvCQ,6CAAkB,GAAlB;YAAA,iBAgBN;YAfC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC;YAEhD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC;gBACxD,KAAI,CAAC,SAAS,GAAG,KAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC;aACjD,CAAC,CAAC;YAEH,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,UAAA,IAAI;gBACrC,IAAI,CAAC,OAAO,CAAC4B,2BAAmB,CAAC,IAAI,CAAC,CAAC;aACxC,CAAC,CAAC;YAEH,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,SAAS,CAAC;gBAC3C,KAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,UAAA,IAAI;oBACrC,IAAI,CAAC,OAAO,CAACA,2BAAmB,CAAC,IAAI,CAAC,CAAC;iBACxC,CAAC,CAAC;aACJ,CAAC,CAAC;SACJ;QAEM,uCAAY,GAAZ;YACL,IAAI,IAAI,CAAC,UAAU,EAAE;gBACnB,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;gBAC/B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aACzC;SACF;QAEM,2CAAgB,GAAhB,UAAiB,QAAiB;YACvC,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE;gBACjD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;gBACzB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aACzC;SACF;QAEM,sCAAW,GAAX;;;YAGL,IAAI,IAAI,CAAC,YAAY,EAAE;gBACrB,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;aACjC;SACF;;;wIA9EU,gBAAgB;iHAAhB,gBAAgB,+MA8BV,wBAAwB,iDAGxB,qBAAqB,wCCpExC,46CA0DA;sHDvBa,gBAAgB;sBAL5B3B,YAAS;uBAAC;wBACT,QAAQ,EAAE,UAAU;wBACpB,SAAS,EAAE,CAAC,uBAAuB,CAAC;wBACpC,WAAW,EAAE,uBAAuB;qBACrC;kCAOQ,IAAI;0BADVE,QAAK;oBASC,UAAU;0BADhBA,QAAK;oBASC,QAAQ;0BADdA,QAAK;oBAOC,cAAc;0BADpBC,SAAM;oBAIA,qBAAqB;0BAD3BK,kBAAe;2BAAC,wBAAwB;oBAIlC,cAAc;0BADpBA,kBAAe;2BAAC,qBAAqB;;;;QELxC;;;;qIAAa,aAAa;sIAAb,aAAa,iBApBtB,uBAAuB;YACvB,gBAAgB;YAChB,uBAAuB;YACvB,qBAAqB,aAGrBI,eAAY;YACZyB,gBAAW;YACXC,sBAAiB;YACjBd,kBAAa;YACb,wBAAwB;YACxB,qBAAqB,aAGrB,uBAAuB;YACvB,gBAAgB;YAChB,uBAAuB;YACvB,qBAAqB;sIAGZ,aAAa,YAff;gBACPZ,eAAY;gBACZyB,gBAAW;gBACXC,sBAAiB;gBACjBd,kBAAa;gBACb,wBAAwB;gBACxB,qBAAqB;aACtB;sHAQU,aAAa;sBAtBzBP,WAAQ;uBAAC;wBACR,YAAY,EAAE;4BACZ,uBAAuB;4BACvB,gBAAgB;4BAChB,uBAAuB;4BACvB,qBAAqB;yBACtB;wBACD,OAAO,EAAE;4BACPL,eAAY;4BACZyB,gBAAW;4BACXC,sBAAiB;4BACjBd,kBAAa;4BACb,wBAAwB;4BACxB,qBAAqB;yBACtB;wBACD,OAAO,EAAE;4BACP,uBAAuB;4BACvB,gBAAgB;4BAChB,uBAAuB;4BACvB,qBAAqB;yBACtB;qBACF;;;ICxDD;;;IAIA;QADA;YAES,eAAU,GAAG,IAAIe,oBAAe,CAAS,EAAE,CAAC,CAAC;YAE7C,iBAAY,GAAG,IAAIA,oBAAe,CAAS,EAAE,CAAC,CAAC;SACvD;;;gJAJY,wBAAwB;oJAAxB,wBAAwB;sHAAxB,wBAAwB;sBADpCzC,aAAU;;;ICDX;;;;QA+BE,oCACS,OAAiC;YAAjC,YAAO,GAAP,OAAO,CAA0B;SAAK;QAhB/C,sBACW,kDAAU;;;;;iBADrB,UACsB,KAAa;gBACjC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACrC;;;WAAA;QAOD,sBACW,oDAAY;;;;;;iBADvB,UACwB,KAAa;gBACnC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACvC;;;WAAA;;;kJAnBU,0BAA0B;2HAA1B,0BAA0B,kHAH1B,CAAC,wBAAwB,CAAC,qCCfvC,uLAIA;sHDca,0BAA0B;sBAPtCE,YAAS;uBAAC;wBACT,QAAQ,EAAE,qBAAqB;wBAC/B,WAAW,EAAE,kCAAkC;wBAC/C,SAAS,EAAE,CAAC,kCAAkC,CAAC;wBAC/C,SAAS,EAAE,CAAC,wBAAwB,CAAC;wBACrC,eAAe,EAAEoB,0BAAuB,CAAC,MAAM;qBAChD;gHAQY,UAAU;0BADpBlB,QAAK;oBAWK,YAAY;0BADtBA,QAAK;;;IE7BR;;;;QASA;;;;yJAAa,iCAAiC;kIAAjC,iCAAiC,8ECd9C,oFAGA;sHDWa,iCAAiC;sBAN7CF,YAAS;uBAAC;wBACT,QAAQ,EAAE,6BAA6B;wBACvC,WAAW,EAAE,0CAA0C;wBACvD,SAAS,EAAE,CAAC,0CAA0C,CAAC;wBACvD,eAAe,EAAEoB,0BAAuB,CAAC,MAAM;qBAChD;;;IERD;;;;QASA;;;;yJAAa,iCAAiC;kIAAjC,iCAAiC,8ECd9C,2GAGA;sHDWa,iCAAiC;sBAN7CpB,YAAS;uBAAC;wBACT,QAAQ,EAAE,6BAA6B;wBACvC,WAAW,EAAE,0CAA0C;wBACvD,SAAS,EAAE,CAAC,0CAA0C,CAAC;wBACvD,eAAe,EAAEoB,0BAAuB,CAAC,MAAM;qBAChD;;;IEND;;;;QAYE,yCACS,OAAiC;YAAjC,YAAO,GAAP,OAAO,CAA0B;SAAK;;;uJAJpC,+BAA+B;gIAA/B,+BAA+B,4EChB5C,wLAQA;sHDQa,+BAA+B;sBAN3CpB,YAAS;uBAAC;wBACT,QAAQ,EAAE,2BAA2B;wBACrC,WAAW,EAAE,wCAAwC;wBACrD,SAAS,EAAE,CAAC,wCAAwC,CAAC;wBACrD,eAAe,EAAEoB,0BAAuB,CAAC,MAAM;qBAChD;;;IETD;;;;QAWE,yCAAmB,OAAiC;YAAjC,YAAO,GAAP,OAAO,CAA0B;SAAK;;;uJAH9C,+BAA+B;gIAA/B,+BAA+B,4ECd5C,4SAQA;sHDMa,+BAA+B;sBAL3CpB,YAAS;uBAAC;wBACT,QAAQ,EAAE,2BAA2B;wBACrC,WAAW,EAAE,wCAAwC;wBACrD,SAAS,EAAE,CAAC,wCAAwC,CAAC;qBACtD;;;;QEuBD;;;;+IAAa,uBAAuB;gJAAvB,uBAAuB,iBAnBhC,0BAA0B;YAC1B,iCAAiC;YACjC,iCAAiC;YACjC,+BAA+B;YAC/B,+BAA+B,aAG/BY,eAAY;YACZY,kBAAa;YACb,wBAAwB,aAGxB,0BAA0B;YAC1B,iCAAiC;YACjC,iCAAiC;YACjC,+BAA+B;YAC/B,+BAA+B;gJAGtB,uBAAuB,YAbzB;gBACPZ,eAAY;gBACZY,kBAAa;gBACb,wBAAwB;aACzB;sHASU,uBAAuB;sBArBnCP,WAAQ;uBAAC;wBACR,YAAY,EAAE;4BACZ,0BAA0B;4BAC1B,iCAAiC;4BACjC,iCAAiC;4BACjC,+BAA+B;4BAC/B,+BAA+B;yBAChC;wBACD,OAAO,EAAE;4BACPL,eAAY;4BACZY,kBAAa;4BACb,wBAAwB;yBACzB;wBACD,OAAO,EAAE;4BACP,0BAA0B;4BAC1B,iCAAiC;4BACjC,iCAAiC;4BACjC,+BAA+B;4BAC/B,+BAA+B;yBAChC;qBACF;;;IC5BD;;;IAIA;QAIE,0CACE,eAAiC;YAEjC,IAAI,CAAC,QAAQ,GAAG,eAAe,CAAC,cAAc,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;SACtE;QAEM,mDAAQ,GAAR,UAAS,UAAsB;YACpC,OAAO,UAAU,CAAC,aAAa,CAAC,WAAW,CAAC;SAC7C;QAEM,6DAAkB,GAAlB,UAAmB,OAAmB;YAC3C,IAAM,QAAQ,GAAQ,OAAO,CAAC,aAAa,CAAC;YAC5C,IAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACrC,IAAM,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;YAErD,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,QAAQ,EAAE,6BAA6B,CAAC,CAAC;YACnE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,QAAQ,EAAE,6BAA6B,CAAC,CAAC;YACnE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,QAAQ,EAAE,6BAA6B,CAAC,CAAC;YAEnE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;SAC7C;QAEO,iEAAsB,GAAtB,UAAuB,KAAa;YAC1C,IAAM,qBAAqB,GAAG,GAAG,CAAC;YAClC,IAAM,qBAAqB,GAAG,GAAG,CAAC;YAClC,IAAM,qBAAqB,GAAG,GAAG,CAAC;YAElC,IAAI,KAAK,IAAI,qBAAqB,EAAE;gBAClC,OAAO,6BAA6B,CAAC;aACtC;iBAAM,IAAI,KAAK,IAAI,qBAAqB,IAAI,KAAK,IAAI,qBAAqB,EAAE;gBAC3E,OAAO,6BAA6B,CAAC;aACtC;iBAAM;gBACL,OAAO,6BAA6B,CAAC;aACtC;SACF;;;wJAtCU,gCAAgC;4JAAhC,gCAAgC;sHAAhC,gCAAgC;sBAD5C1B,aAAU;;;ICHX;;;;QAQA;;;;uJAAa,+BAA+B;gIAA/B,+BAA+B,4JAGlC0C,cAAW,sDClBrB,oFAKA;sHDUa,+BAA+B;sBAL3CxC,YAAS;uBAAC;wBACT,QAAQ,EAAE,2BAA2B;wBACrC,WAAW,EAAE,wCAAwC;wBACrD,eAAe,EAAEoB,0BAAuB,CAAC,MAAM;qBAChD;kCAOQ,WAAW;0BAJjBX,YAAS;2BAAC,iBAAiB,EAAE;4BAC5B,IAAI,EAAE+B,cAAW;4BACjB,MAAM,EAAE,IAAI;yBACb;;;IEVH;;;IAIA;QADA;YAOU,wBAAmB,GAAG,IAAID,oBAAe,CAAS,EAAE,CAAC,CAAC;SAU/D;QAdC,sBAAW,yDAAkB;iBAA7B;gBACE,OAAO,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,CAAC;aAChD;;;WAAA;QAIM,+CAAW,GAAX;YACL,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,CAAC;SACrC;QAEM,4DAAwB,GAAxB,UAAyB,KAAa;YAC3C,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACtC;;;iJAdU,yBAAyB;qJAAzB,yBAAyB;sHAAzB,yBAAyB;sBADrCzC,aAAU;;;ICaX;;;;QAsBE,gDACS,OAAkC,EACjC,SAA4B,EAC5B,QAAyB;YAF1B,YAAO,GAAP,OAAO,CAA2B;YACjC,cAAS,GAAT,SAAS,CAAmB;YAC5B,aAAQ,GAAR,QAAQ,CAAiB;YAL3B,kBAAa,GAAG,IAAIM,YAAO,EAAE,CAAC;SAMlC;QAEG,yDAAQ,GAAR;YAAA,iBAYN;;YAVC,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,IAAI,CAAC,QAAQ,CAAC,cAAc;qBACzB,IAAI,CACHC,mBAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAC9B;qBACA,SAAS,CAAC,UAAC,aAAa;oBACvB,KAAI,CAAC,SAAS,GAAG,aAAa,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC;oBAC1D,KAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;iBAC/B,CAAC,CAAC;aACN;SACF;QAEM,4DAAW,GAAX;YACL,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;YAC1B,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;SAC/B;;;8JArCU,sCAAsC;uIAAtC,sCAAsC,0KAOzCmC,cAAW,sDCzCrB,8cAgBA;sHDkBa,sCAAsC;sBALlDxC,YAAS;uBAAC;wBACT,QAAQ,EAAE,kCAAkC;wBAC5C,WAAW,EAAE,+CAA+C;wBAC5D,eAAe,EAAEoB,0BAAuB,CAAC,MAAM;qBAChD;uMAWQ,WAAW;0BAJjBX,YAAS;2BAAC,wBAAwB,EAAE;4BACnC,IAAI,EAAE+B,cAAW;4BACjB,MAAM,EAAE,IAAI;yBACb;;;IE7BH;;;;QAOA;;;;0JAAa,kCAAkC;mIAAlC,kCAAkC,mGAE5B,+BAA+B,wDAG/B,sCAAsC,wCC1BzD,6BACA;sHDoBa,kCAAkC;sBAJ9CxC,YAAS;uBAAC;wBACT,QAAQ,EAAE,8BAA8B;wBACxC,WAAW,EAAE,2CAA2C;qBACzD;kCAIQ,cAAc;0BADpBQ,kBAAe;2BAAC,+BAA+B;oBAIzC,qBAAqB;0BAD3BA,kBAAe;2BAAC,sCAAsC;;;IEiBzD;;;;QA2DE,qCACU,cAAgD,EAChD,cAAiC,EACjC,sBAAiD,EACjD,WAAoC;YAHpC,mBAAc,GAAd,cAAc,CAAkC;YAChD,mBAAc,GAAd,cAAc,CAAmB;YACjC,2BAAsB,GAAtB,sBAAsB,CAA2B;YACjD,gBAAW,GAAX,WAAW,CAAyB;YARtC,kBAAa,GAAG,IAAIJ,YAAO,EAAQ,CAAC;SASvC;QA7CL,sBACW,2DAAkB;;;;;;iBAD7B,UAC8B,KAAa;gBACzC,IAAI,CAAC,sBAAsB,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;aAC7D;;;WAAA;QAaD,sBACW,6CAAI;iBAIf;gBACE,OAAO,IAAI,CAAC,KAAK,IAAI,UAAU,CAAC;aACjC;;;;;iBAPD,UACgB,KAAiC;gBAC/C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;aACpB;;;WAAA;QA4BM,wDAAkB,GAAlB;YAAA,iBAYN;;YATC,UAAU,CAAC;gBACT,KAAI,CAAC,qBAAqB,EAAE,CAAC;aAC9B,CAAC,CAAC;YAEH,IAAI,CAAC,iBAAiB,CAAC,OAAO;iBAC3B,IAAI,CAACC,mBAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;iBACnC,SAAS,CAAC;gBACT,KAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;aACpC,CAAC,CAAC;SACN;QAEM,qDAAe,GAAf;YAAA,iBASN;YARC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;gBAC7C,KAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;aACpC,CAAC,CAAC;YACH,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE;gBAC1D,SAAS,EAAE,IAAI;gBACf,aAAa,EAAE,IAAI;gBACnB,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;SACJ;QAEM,iDAAW,GAAX;YACL,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;YAC1B,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;YAC9B,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;SACnC;QAGM,oDAAc,GAAd;YACL,IAAI,CAAC,qBAAqB,EAAE,CAAC;SAC9B;QAEO,2DAAqB,GAArB;YACN,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACxD,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;SACpC;;;mJA5FU,2BAA2B;4HAA3B,2BAA2B,iNAN3B;YACT,gCAAgC;YAChC,yBAAyB;SAC1B,4DAkCgB,kCAAkC,8HAM3CC,aAAU,sDC7FpB,mgCAyBA;sHD+Ba,2BAA2B;sBAVvCN,YAAS;uBAAC;wBACT,QAAQ,EAAE,sBAAsB;wBAChC,WAAW,EAAE,mCAAmC;wBAChD,SAAS,EAAE,CAAC,mCAAmC,CAAC;wBAChD,SAAS,EAAE;4BACT,gCAAgC;4BAChC,yBAAyB;yBAC1B;wBACD,eAAe,EAAEoB,0BAAuB,CAAC,MAAM;qBAChD;yPAQY,kBAAkB;0BAD5BlB,QAAK;oBAUC,aAAa;0BADnBA,QAAK;oBAQK,IAAI;0BADdA,QAAK;oBAUC,iBAAiB;0BADvBM,kBAAe;2BAAC,kCAAkC;oBAS3C,UAAU;0BAJjBC,YAAS;2BAAC,wBAAwB,EAAE;4BACnC,IAAI,EAAEH,aAAU;4BAChB,MAAM,EAAE,IAAI;yBACb;oBA8CM,cAAc;0BADpBI,eAAY;2BAAC,eAAe;;;;QEtF/B;;;;gJAAa,wBAAwB;iJAAxB,wBAAwB,iBAlBjC,2BAA2B;YAC3B,kCAAkC;YAClC,+BAA+B;YAC/B,sCAAsC,aAGtCE,eAAY;YACZY,kBAAa;YACb,wBAAwB;YACxBR,mBAAc,aAGd,2BAA2B;YAC3B,kCAAkC;YAClC,+BAA+B;YAC/B,sCAAsC;iJAG7B,wBAAwB,YAb1B;gBACPJ,eAAY;gBACZY,kBAAa;gBACb,wBAAwB;gBACxBR,mBAAc;aACf;sHAQU,wBAAwB;sBApBpCC,WAAQ;uBAAC;wBACR,YAAY,EAAE;4BACZ,2BAA2B;4BAC3B,kCAAkC;4BAClC,+BAA+B;4BAC/B,sCAAsC;yBACvC;wBACD,OAAO,EAAE;4BACPL,eAAY;4BACZY,kBAAa;4BACb,wBAAwB;4BACxBR,mBAAc;yBACf;wBACD,OAAO,EAAE;4BACP,2BAA2B;4BAC3B,kCAAkC;4BAClC,+BAA+B;4BAC/B,sCAAsC;yBACvC;qBACF;;;ICrDD;;;;;AAKYyB;IAAZ,WAAY,sBAAsB;;;;;QAMhC,mDAAyB,CAAA;;;;;;QAOzB,6DAAmC,CAAA;;;;QAKnC,+CAAqB,CAAA;IAEvB,CAAC,EApBWA,8BAAsB,KAAtBA,8BAAsB;;ICLlC;;;;AAIYC;IAAZ,WAAY,sBAAsB;;;;QAIhC,qEAAK,CAAA;;;;QAIL,uEAAM,CAAA;;;;QAIN,qEAAK,CAAA;IACP,CAAC,EAbWA,8BAAsB,KAAtBA,8BAAsB;;ICFlC;;;;;QAIA;;;;;YAWS,uBAAkB,GAAY,KAAK,CAAC;SAC5C;;;uIAPY,eAAe;gHAAf,eAAe,gHCX5B,4HAIA;sHDOa,eAAe;sBAL3B1C,YAAS;uBAAC;wBACT,QAAQ,EAAE,SAAS;wBACnB,WAAW,EAAE,sBAAsB;wBACnC,SAAS,EAAE,CAAC,sBAAsB,CAAC;qBACpC;kCAOQ,kBAAkB;0BADxBE,QAAK;;;;QEAR;;QAsCS,wCAAW,GAAX,UAAY,OAAsB;;YAEvC,IAAI,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,WAAW,EAAE;gBAC9F,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;aACxC;SACF;QAEM,0CAAa,GAAb;YACL,IAAI,UAAU,GAAG;gBACf,YAAY;aACb,CAAC;YAEF,IAAI,IAAI,CAAC,YAAY,EAAE;gBACrB,UAAU,CAAC,IAAI,CAAC,mBAAiB,IAAI,CAAC,YAAc,CAAC,CAAC;aACvD;YAED,IAAI,IAAI,CAAC,WAAW,EAAE;gBACpB,UAAU,CAAC,IAAI,CAAC,mBAAiB,IAAI,CAAC,WAAa,CAAC,CAAC;aACtD;YAED,IAAI,IAAI,CAAC,YAAY,EAAE;gBACrB,UAAU,CAAC,IAAI,CAAC,mBAAiB,IAAI,CAAC,YAAc,CAAC,CAAC;aACvD;YAED,IAAI,IAAI,CAAC,WAAW,EAAE;gBACpB,UAAU,CAAC,IAAI,CAAC,mBAAiB,IAAI,CAAC,WAAa,CAAC,CAAC;aACtD;YAED,OAAO,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAC7B;QAEM,qCAAQ,GAAR;YACL,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;SACxC;;;0IAvEU,kBAAkB;mHAAlB,kBAAkB,wQChB/B,6BACA;sHDea,kBAAkB;sBAN9BF,YAAS;uBAAC;wBACT,QAAQ,EAAE,YAAY;wBACtB,WAAW,EAAE,yBAAyB;wBACtC,SAAS,EAAE,CAAC,yBAAyB,CAAC;wBACtC,aAAa,EAAEC,oBAAiB,CAAC,IAAI;qBACtC;kCAUQ,YAAY;0BADlBC,QAAK;oBASC,WAAW;0BADjBA,QAAK;oBASC,YAAY;0BADlBA,QAAK;oBASC,WAAW;0BADjBA,QAAK;oBAIC,UAAU;0BADhByC,cAAW;2BAAC,OAAO;;;IEtCtB;;;;;QAWA;;QAME,sBACW,gDAAa;iBAIxB;gBACE,OAAO,IAAI,CAAC,cAAc,IAAI,KAAK,CAAC;aACrC;;;;;iBAPD,UACyB,KAAc;gBACrC,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;aAC7B;;;WAAA;QAWD,sBACW,6CAAU;iBAIrB;gBACE,OAAO,IAAI,CAAC,WAAW,KAAK,SAAS,GAAG,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC;aACpE;;;;;;iBAPD,UACsB,KAAiC;gBACrD,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;aAC1B;;;WAAA;QASD,sBAAW,qDAAkB;;;;iBAA7B;;;;gBAIE,QAAQ,IAAI,CAAC,UAAU;oBACrB,KAAK,QAAQ,CAAC;oBACd,KAAKD,8BAAsB,CAAC,MAAM,CAAC;oBACnC,KAAKA,8BAAsB,CAAC,MAAM,CAAC,QAAQ,EAAE;wBAC3C,OAAO,QAAQ,CAAC;oBAClB,KAAK,OAAO,CAAC;oBACb,KAAKA,8BAAsB,CAAC,KAAK,CAAC;oBAClC,KAAKA,8BAAsB,CAAC,KAAK,CAAC,QAAQ,EAAE;wBAC1C,OAAO,OAAO,CAAC;oBACjB;wBACE,OAAO,OAAO,CAAC;iBAClB;aACF;;;WAAA;;;6IAhDU,qBAAqB;sHAArB,qBAAqB,uICxBlC,oXAWA;sHDaa,qBAAqB;sBAPjC1C,YAAS;uBAAC;wBACT,QAAQ,EAAE,gBAAgB;wBAC1B,WAAW,EAAE,6BAA6B;wBAC1C,SAAS,EAAE;4BACT,6BAA6B;yBAC9B;qBACF;kCAQY,aAAa;0BADvBE,QAAK;oBAeK,UAAU;0BADpBA,QAAK;;;;QEtBR;;;;0IAAa,kBAAkB;2IAAlB,kBAAkB,iBAV3B,eAAe;YACf,kBAAkB;YAClB,qBAAqB,aALrBU,eAAY,aAQZ,eAAe;YACf,kBAAkB;YAClB,qBAAqB;2IAGZ,kBAAkB,YAdpB;gBACPA,eAAY;aACb;sHAYU,kBAAkB;sBAf9BK,WAAQ;uBAAC;wBACR,OAAO,EAAE;4BACPL,eAAY;yBACb;wBACD,YAAY,EAAE;4BACZ,eAAe;4BACf,kBAAkB;4BAClB,qBAAqB;yBACtB;wBACD,OAAO,EAAE;4BACP,eAAe;4BACf,kBAAkB;4BAClB,qBAAqB;yBACtB;qBACF;;;ICrBD;;;;;;;;;;;;;;IAcA;IAEA,IAAI,aAAa,GAAG,UAAS,CAAC,EAAE,CAAC;QAC7B,aAAa,GAAG,MAAM,CAAC,cAAc;aAChC,EAAE,SAAS,EAAE,EAAE,EAAE,YAAY,KAAK,IAAI,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC;YAC5E,UAAU,CAAC,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC;gBAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;oBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtG,OAAO,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/B,CAAC,CAAC;aAEc,SAAS,CAAC,CAAC,EAAE,CAAC;QAC1B,IAAI,OAAO,CAAC,KAAK,UAAU,IAAI,CAAC,KAAK,IAAI;YACrC,MAAM,IAAI,SAAS,CAAC,sBAAsB,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,+BAA+B,CAAC,CAAC;QAC9F,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACpB,SAAS,EAAE,KAAK,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE;QACvC,CAAC,CAAC,SAAS,GAAG,CAAC,KAAK,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC;IAEM,IAAI,QAAQ,GAAG;QAClB,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,SAAS,QAAQ,CAAC,CAAC;YAC3C,KAAK,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBACjD,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBACjB,KAAK,IAAI,CAAC,IAAI,CAAC;oBAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;wBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;aAChF;YACD,OAAO,CAAC,CAAC;SACZ,CAAA;QACD,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC3C,CAAC,CAAA;aAEe,MAAM,CAAC,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,EAAE,CAAC;QACX,KAAK,IAAI,CAAC,IAAI,CAAC;YAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;gBAC/E,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAChB,IAAI,CAAC,IAAI,IAAI,IAAI,OAAO,MAAM,CAAC,qBAAqB,KAAK,UAAU;YAC/D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACpE,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC1E,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACzB;QACL,OAAO,CAAC,CAAC;IACb,CAAC;aAEe,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI;QACpD,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;QAC7H,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;YAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;;YAC1H,KAAK,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;gBAAE,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;oBAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QAClJ,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC;aAEe,OAAO,CAAC,UAAU,EAAE,SAAS;QACzC,OAAO,UAAU,MAAM,EAAE,GAAG,IAAI,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE,CAAA;IACzE,CAAC;aAEe,UAAU,CAAC,WAAW,EAAE,aAAa;QACjD,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;YAAE,OAAO,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACnI,CAAC;aAEe,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS;QACvD,SAAS,KAAK,CAAC,KAAK,IAAI,OAAO,KAAK,YAAY,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,UAAU,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;QAC5G,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,EAAE,UAAU,OAAO,EAAE,MAAM;YACrD,SAAS,SAAS,CAAC,KAAK,IAAI,IAAI;gBAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;aAAE;YAAC,OAAO,CAAC,EAAE;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC;aAAE,EAAE;YAC3F,SAAS,QAAQ,CAAC,KAAK,IAAI,IAAI;gBAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;aAAE;YAAC,OAAO,CAAC,EAAE;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC;aAAE,EAAE;YAC9F,SAAS,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,EAAE;YAC9G,IAAI,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;SACzE,CAAC,CAAC;IACP,CAAC;aAEe,WAAW,CAAC,OAAO,EAAE,IAAI;QACrC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,cAAa,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACjH,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,MAAM,KAAK,UAAU,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAa,OAAO,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACzJ,SAAS,IAAI,CAAC,CAAC,IAAI,OAAO,UAAU,CAAC,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;QAClE,SAAS,IAAI,CAAC,EAAE;YACZ,IAAI,CAAC;gBAAE,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;YAC9D,OAAO,CAAC;gBAAE,IAAI;oBACV,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI;wBAAE,OAAO,CAAC,CAAC;oBAC7J,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;wBAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;oBACxC,QAAQ,EAAE,CAAC,CAAC,CAAC;wBACT,KAAK,CAAC,CAAC;wBAAC,KAAK,CAAC;4BAAE,CAAC,GAAG,EAAE,CAAC;4BAAC,MAAM;wBAC9B,KAAK,CAAC;4BAAE,CAAC,CAAC,KAAK,EAAE,CAAC;4BAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;wBACxD,KAAK,CAAC;4BAAE,CAAC,CAAC,KAAK,EAAE,CAAC;4BAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;4BAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;4BAAC,SAAS;wBACjD,KAAK,CAAC;4BAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;4BAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;4BAAC,SAAS;wBACjD;4BACI,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;gCAAE,CAAC,GAAG,CAAC,CAAC;gCAAC,SAAS;6BAAE;4BAC5G,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;gCAAC,MAAM;6BAAE;4BACtF,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gCAAC,CAAC,GAAG,EAAE,CAAC;gCAAC,MAAM;6BAAE;4BACrE,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gCAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gCAAC,MAAM;6BAAE;4BACnE,IAAI,CAAC,CAAC,CAAC,CAAC;gCAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;4BACtB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;4BAAC,SAAS;qBAC9B;oBACD,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;iBAC9B;gBAAC,OAAO,CAAC,EAAE;oBAAE,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAAC,CAAC,GAAG,CAAC,CAAC;iBAAE;wBAAS;oBAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;iBAAE;YAC1D,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;YAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;SACpF;IACL,CAAC;IAEM,IAAI,eAAe,GAAG,MAAM,CAAC,MAAM,IAAI,UAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QAC9D,IAAI,EAAE,KAAK,SAAS;YAAE,EAAE,GAAG,CAAC,CAAC;QAC7B,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,cAAa,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC,KAAK,UAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QACtB,IAAI,EAAE,KAAK,SAAS;YAAE,EAAE,GAAG,CAAC,CAAC;QAC7B,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC,CAAC,CAAC;aAEa,YAAY,CAAC,CAAC,EAAE,CAAC;QAC7B,KAAK,IAAI,CAAC,IAAI,CAAC;YAAE,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;gBAAE,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAClH,CAAC;aAEe,QAAQ,CAAC,CAAC;QACtB,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QAC9E,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO;gBAC1C,IAAI,EAAE;oBACF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM;wBAAE,CAAC,GAAG,KAAK,CAAC,CAAC;oBACnC,OAAO,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBAC3C;aACJ,CAAC;QACF,MAAM,IAAI,SAAS,CAAC,CAAC,GAAG,yBAAyB,GAAG,iCAAiC,CAAC,CAAC;IAC3F,CAAC;aAEe,MAAM,CAAC,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC3D,IAAI,CAAC,CAAC;YAAE,OAAO,CAAC,CAAC;QACjB,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QACjC,IAAI;YACA,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI;gBAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;SAC9E;QACD,OAAO,KAAK,EAAE;YAAE,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;SAAE;gBAC/B;YACJ,IAAI;gBACA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;oBAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACpD;oBACO;gBAAE,IAAI,CAAC;oBAAE,MAAM,CAAC,CAAC,KAAK,CAAC;aAAE;SACpC;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IAED;aACgB,QAAQ;QACpB,KAAK,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE;YAC9C,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,OAAO,EAAE,CAAC;IACd,CAAC;IAED;aACgB,cAAc;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;YAAE,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACpF,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;YAC5C,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE;gBAC7D,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACpB,OAAO,CAAC,CAAC;IACb,CAAC;aAEe,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI;QACxC,IAAI,IAAI,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBACjF,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE;oBACpB,IAAI,CAAC,EAAE;wBAAE,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;oBACrD,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;iBACnB;aACJ;QACD,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC;aAEe,OAAO,CAAC,CAAC;QACrB,OAAO,IAAI,YAAY,OAAO,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC;aAEe,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS;QAC3D,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACvF,IAAI,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QAC9D,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QACtH,SAAS,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;YAAE,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;QAC1I,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI;YAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAAE;QAAC,OAAO,CAAC,EAAE;YAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SAAE,EAAE;QAClF,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,YAAY,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;QACxH,SAAS,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EAAE;QAClD,SAAS,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE;QAClD,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM;YAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;IACtF,CAAC;aAEe,gBAAgB,CAAC,CAAC;QAC9B,IAAI,CAAC,EAAE,CAAC,CAAC;QACT,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5I,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE;IACnJ,CAAC;aAEe,aAAa,CAAC,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACvF,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,QAAQ,KAAK,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACjN,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,OAAO,EAAE,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;QAChK,SAAS,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAS,CAAC,IAAI,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,EAAE;IAChI,CAAC;aAEe,oBAAoB,CAAC,MAAM,EAAE,GAAG;QAC5C,IAAI,MAAM,CAAC,cAAc,EAAE;YAAE,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;SAAE;aAAM;YAAE,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC;SAAE;QAC/G,OAAO,MAAM,CAAC;IAClB,CAAC;IAAA,CAAC;IAEF,IAAI,kBAAkB,GAAG,MAAM,CAAC,MAAM,IAAI,UAAS,CAAC,EAAE,CAAC;QACnD,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IACxE,CAAC,IAAI,UAAS,CAAC,EAAE,CAAC;QACd,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC,CAAC;aAEc,YAAY,CAAC,GAAG;QAC5B,IAAI,GAAG,IAAI,GAAG,CAAC,UAAU;YAAE,OAAO,GAAG,CAAC;QACtC,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,GAAG,IAAI,IAAI;YAAE,KAAK,IAAI,CAAC,IAAI,GAAG;gBAAE,IAAI,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;oBAAE,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;QACzI,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAChC,OAAO,MAAM,CAAC;IAClB,CAAC;aAEe,eAAe,CAAC,GAAG;QAC/B,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;IAC5D,CAAC;aAEe,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAC3D,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;QAC7F,IAAI,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,0EAA0E,CAAC,CAAC;QACnL,OAAO,IAAI,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAClG,CAAC;aAEe,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAClE,IAAI,IAAI,KAAK,GAAG;YAAE,MAAM,IAAI,SAAS,CAAC,gCAAgC,CAAC,CAAC;QACxE,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;QAC7F,IAAI,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,yEAAyE,CAAC,CAAC;QAClL,OAAO,CAAC,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;IAC9G;;ICnOA,IAAM,UAAU,GAAG,WAAW,CAAC;;QAO/B;;QAQE,sBACW,oCAAI;iBAKf;gBACE,OAAO,IAAI,CAAC,KAAK,CAAC;aACnB;;;;;iBARD,UACgB,KAAa;gBAC3B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;gBACnB,IAAI,CAAC,qBAAqB,EAAE,CAAC;aAC9B;;;WAAA;QAUD,sBACW,oCAAI;iBAKf;gBACE,OAAO,IAAI,CAAC,KAAK,CAAC;aACnB;;;;;iBARD,UACgB,KAAyB;gBACvC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;gBACnB,IAAI,CAAC,qBAAqB,EAAE,CAAC;aAC9B;;;WAAA;QAUO,kDAAqB,GAArB;;YACN,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;YAE1B,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE;gBAC1B,IAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;;oBAE9C,KAAuB,IAAA,cAAA,SAAA,SAAS,CAAA,oCAAA,2DAAE;wBAA7B,IAAM,QAAQ,sBAAA;;wBAEjB,IAAI,QAAQ,EAAE;4BACZ,IAAM,IAAI,GAAkB,EAAE,CAAC;4BAE/B,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;gCAC7B,IAAM,UAAU,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gCAE/D,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;6BAC1C;iCAAM;gCACL,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;6BACtB;4BAED,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;yBACjC;qBACF;;;;;;;;;aACF;SACF;;;0IA3DU,kBAAkB;mHAAlB,kBAAkB,qGClB/B,6QAMA;sHDYa,kBAAkB;sBAL9BZ,YAAS;uBAAC;wBACT,QAAQ,EAAE,YAAY;wBACtB,WAAW,EAAE,yBAAyB;wBACtC,eAAe,EAAEoB,0BAAuB,CAAC,MAAM;qBAChD;kCAUY,IAAI;0BADdlB,QAAK;oBAeK,IAAI;0BADdA,QAAK;;;;QEjBR;;;;uIAAa,eAAe;wIAAf,eAAe,iBATxB,kBAAkB,aAGlBU,eAAY,aAGZ,kBAAkB;wIAGT,eAAe,YAPjB;gBACPA,eAAY;aACb;sHAKU,eAAe;sBAX3BK,WAAQ;uBAAC;wBACR,YAAY,EAAE;4BACZ,kBAAkB;yBACnB;wBACD,OAAO,EAAE;4BACPL,eAAY;yBACb;wBACD,OAAO,EAAE;4BACP,kBAAkB;yBACnB;qBACF;;;IClBD;;;IAIA;QAAA;;QAIS,6CAAQ,GAAR;YACL,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;gBACjB,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBAC/C,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,kCAAkC,CAAC,CAAC,CAAC;gBAEtF,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aACzC;SACF;QAEM,gDAAW,GAAX;YACL,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACxC,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;aAC1B;SACF;;;kJAlBU,0BAA0B;sJAA1B,0BAA0B;sHAA1B,0BAA0B;sBADtCd,aAAU;;;ICGX;;;;;;QAYE,0BAAoB,YAAwC;YAAxC,iBAAY,GAAZ,YAAY,CAA4B;SAAK;QAE1D,mCAAQ,GAAR;YACL,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;SAC9B;QAEM,sCAAW,GAAX;YACL,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;SACjC;;;wIAVU,gBAAgB;iHAAhB,gBAAgB,mCAFhB,CAAC,0BAA0B,CAAC,qCClBzC,0EAGA;sHDiBa,gBAAgB;sBAL5BE,YAAS;uBAAC;wBACT,QAAQ,EAAE,UAAU;wBACpB,WAAW,EAAE,uBAAuB;wBACpC,SAAS,EAAE,CAAC,0BAA0B,CAAC;qBACxC;;;;QEHD;;;;qIAAa,aAAa;sIAAb,aAAa,iBANtB,gBAAgB,aAGhB,gBAAgB;sIAGP,aAAa;sHAAb,aAAa;sBARzBiB,WAAQ;uBAAC;wBACR,YAAY,EAAE;4BACZ,gBAAgB;yBACjB;wBACD,OAAO,EAAE;4BACP,gBAAgB;yBACjB;qBACF;;;ICbD;;;;IASA;IACA;;QACA;;;;oJAAa,4BAA4B;6HAA5B,4BAA4B,yECbzC,6BACA;sHDYa,4BAA4B;sBAPxCjB,YAAS;uBAAC;wBACT,QAAQ,EAAE,wBAAwB;wBAClC,WAAW,EAAE,qCAAqC;wBAClD,SAAS,EAAE,CAAC,qCAAqC,CAAC;qBACnD;;;IERD;;;IAQA;IACA;;QACA;;;;sJAAa,8BAA8B;+HAA9B,8BAA8B,2ECZ3C,iFAGA;sHDSa,8BAA8B;sBAP1CA,YAAS;uBAAC;wBACT,QAAQ,EAAE,0BAA0B;wBACpC,WAAW,EAAE,uCAAuC;wBACpD,SAAS,EAAE,CAAC,uCAAuC,CAAC;qBACrD;;;IEPD;;;;IASA;IACA;;QACA;;;;oJAAa,4BAA4B;6HAA5B,4BAA4B,yECbzC,+EAGA;sHDUa,4BAA4B;sBAPxCA,YAAS;uBAAC;wBACT,QAAQ,EAAE,wBAAwB;wBAClC,WAAW,EAAE,qCAAqC;wBAClD,SAAS,EAAE,CAAC,qCAAqC,CAAC;qBACnD;;;IERD;;;;;QASA;;;;sJAAa,8BAA8B;+HAA9B,8BAA8B,4ECX3C,kFAGA;sHDQa,8BAA8B;sBAL1CA,YAAS;uBAAC;wBACT,QAAQ,EAAE,2BAA2B;wBACrC,WAAW,EAAE,wCAAwC;wBACrD,SAAS,EAAE,CAAC,wCAAwC,CAAC;qBACtD;;;IERD;;;;IASA;IACA;;QACA;;;;qJAAa,6BAA6B;8HAA7B,6BAA6B,0ECb1C,gFAGA;sHDUa,6BAA6B;sBAPzCA,YAAS;uBAAC;wBACT,QAAQ,EAAE,yBAAyB;wBACnC,WAAW,EAAE,sCAAsC;wBACnD,SAAS,EAAE,CAAC,sCAAsC,CAAC;qBACpD;;;IERD;;;IAQA;IACA;;QACA;;;;uJAAa,+BAA+B;gIAA/B,+BAA+B,4ECZ5C,6FAGA;sHDSa,+BAA+B;sBAP3CA,YAAS;uBAAC;wBACT,QAAQ,EAAE,2BAA2B;wBACrC,WAAW,EAAE,wCAAwC;wBACrD,SAAS,EAAE,CAAC,wCAAwC,CAAC;qBACtD;;;IEPD;;;IAQA;IACA;;QACA;;;;oJAAa,4BAA4B;6HAA5B,4BAA4B,yECZzC,8FAGA;sHDSa,4BAA4B;sBAPxCA,YAAS;uBAAC;wBACT,QAAQ,EAAE,wBAAwB;wBAClC,WAAW,EAAE,qCAAqC;wBAClD,SAAS,EAAE,CAAC,qCAAqC,CAAC;qBACnD;;;IEPD;;;IAIA;QAAA;;QACS,4DAAqB,GAArB,UAAsB,KAAiB,EAAE,IAAa;YAC3D,IAAI,EAAE,GAAG,KAAK,CAAC,aAAa,CAAC;YAC7B,IAAI,kBAAkB,GAAG,EAAE,CAAC,aAAa,CAAC,sCAAsC,CAAC,CAAC;YAElF,IAAI,IAAI,EAAE;gBACR,EAAE,CAAC,aAAa,CAAC,+BAA+B,CAAC,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;aACnF;iBAAM;gBACL,EAAE,CAAC,aAAa,CAAC,+BAA+B,CAAC,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;aACnF;SACF;;;oJAVU,4BAA4B;wJAA5B,4BAA4B;sHAA5B,4BAA4B;sBADxCF,aAAU;;;ICqBX;;;;QAmBE,iCACU,KAAiB,EACjB,OAAqC,EACrC,iBAAuC;YAFvC,UAAK,GAAL,KAAK,CAAY;YACjB,YAAO,GAAP,OAAO,CAA8B;YACrC,sBAAiB,GAAjB,iBAAiB,CAAsB;SAC5C;QAbL,sBAAW,+CAAU;iBAArB;gBACE,QAAQ,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;aAC5C;;;WAAA;QAaM,iDAAe,GAAf;YAAA,iBAMN;YALC,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAC5D,UAAC,IAAyB;gBACxB,KAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,KAAI,CAAC,KAAK,EAAE,IAAI,KAAKa,sBAAmB,CAAC,EAAE,CAAC,CAAC;aACjF,CACF,CAAC;SACH;QAEM,6CAAW,GAAX;;;YAGL,IAAI,IAAI,CAAC,sBAAsB,EAAE;gBAC/B,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,CAAC;aAC3C;SACF;;;+IA9BU,uBAAuB;wHAAvB,uBAAuB,2CAFvB,CAAC,4BAA4B,CAAC,4DAOxB,8BAA8B,QAAU,8BAA8B,wCCxCzF,k8BAuBA;sHDYa,uBAAuB;sBANnCX,YAAS;uBAAC;wBACT,QAAQ,EAAE,kBAAkB;wBAC5B,WAAW,EAAE,+BAA+B;wBAC5C,SAAS,EAAE,CAAC,+BAA+B,CAAC;wBAC5C,SAAS,EAAE,CAAC,4BAA4B,CAAC;qBAC1C;sMAOS,iBAAiB;0BADxBQ,kBAAe;2BAAC,8BAA8B,EAAE,EAAE,IAAI,EAAE,8BAA8B,EAAE;;;;QEyB3F;;;;4IAAa,oBAAoB;6IAApB,oBAAoB,iBAvB7B,4BAA4B;YAC5B,uBAAuB;YACvB,8BAA8B;YAC9B,4BAA4B;YAC5B,8BAA8B;YAC9B,6BAA6B;YAC7B,+BAA+B;YAC/B,4BAA4B,aAG5BI,eAAY,aAGZ,4BAA4B;YAC5B,uBAAuB;YACvB,8BAA8B;YAC9B,4BAA4B;YAC5B,8BAA8B;YAC9B,6BAA6B;YAC7B,+BAA+B;YAC/B,4BAA4B;6IAGnB,oBAAoB,YAdtB;gBACPA,eAAY;aACb;sHAYU,oBAAoB;sBAzBhCK,WAAQ;uBAAC;wBACR,YAAY,EAAE;4BACZ,4BAA4B;4BAC5B,uBAAuB;4BACvB,8BAA8B;4BAC9B,4BAA4B;4BAC5B,8BAA8B;4BAC9B,6BAA6B;4BAC7B,+BAA+B;4BAC/B,4BAA4B;yBAC7B;wBACD,OAAO,EAAE;4BACPL,eAAY;yBACb;wBACD,OAAO,EAAE;4BACP,4BAA4B;4BAC5B,uBAAuB;4BACvB,8BAA8B;4BAC9B,4BAA4B;4BAC5B,8BAA8B;4BAC9B,6BAA6B;4BAC7B,+BAA+B;4BAC/B,4BAA4B;yBAC7B;qBACF;;;ICzDD;;;IAIA;QAIE,qCACU,eAAiC;YAAjC,oBAAe,GAAf,eAAe,CAAkB;YAEzC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;SAC3E;QAEM,wDAAkB,GAAlB,UAAmB,WAAuB;YAC/C,OAAO,WAAW,CAAC,aAAa,CAAC,YAAY,CAAC;SAC/C;QAEM,wDAAkB,GAAlB,UAAmB,WAAuB,EAAE,MAAc;YAC/D,IAAI,MAAM,KAAK,SAAS,EAAE;gBACxB,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,WAAW,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;aACpE;iBAAM;gBACL,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,aAAa,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;aACzE;SACF;QAEM,6CAAO,GAAP,UAAQ,MAAkB,EAAE,IAAY;YAC7C,MAAM,CAAC,aAAa,CAAC,WAAW,GAAG,IAAI,CAAC;SACzC;;;mJAxBU,2BAA2B;uJAA3B,2BAA2B;sHAA3B,2BAA2B;sBADvCd,aAAU;;;ICVX;;;IAGA;QAAA;SAGC;wCAAA;KAAA;;ICMD;;;IAQA;QAEE,qCACS,OAAkC,EAClC,QAA0B;YAD1B,YAAO,GAAP,OAAO,CAA2B;YAClC,aAAQ,GAAR,QAAQ,CAAkB;SAC9B;QAEE,2CAAK,GAAL;YACL,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;SACvB;;;mJATU,2BAA2B;4HAA3B,2BAA2B,wECpBxC,oXASA;sHDWa,2BAA2B;sBALvCE,YAAS;uBAAC;wBACT,QAAQ,EAAE,uBAAuB;wBACjC,WAAW,EAAE,oCAAoC;wBACjD,SAAS,EAAE,CAAC,8BAA8B,CAAC;qBAC5C;;;IEiBD;;;IAGA,IAAI4B,QAAM,GAAG,CAAC,CAAC;;QA4Gb,gCACU,SAAiC,EACjC,YAA6B,EAC7B,iBAA8C;YAF9C,cAAS,GAAT,SAAS,CAAwB;YACjC,iBAAY,GAAZ,YAAY,CAAiB;YAC7B,sBAAiB,GAAjB,iBAAiB,CAA6B;;;;;;YAtFjD,sBAAiB,GAAW,GAAG,CAAC;;;;;;YAQhC,wBAAmB,GAAW,CAAC,CAAC;;;;YAqChC,qBAAgB,GAAY,IAAI,CAAC;YAIjC,qBAAgB,GAAW,6BAA2B,EAAEA,QAAQ,CAAC;YAIjE,eAAU,GAAY,KAAK,CAAC;YA4B3B,eAAU,GAAW,GAAG,CAAC;SAM5B;QAvEL,sBACW,6CAAS;iBASpB;gBACE,OAAO,IAAI,CAAC,UAAU,CAAC;aACxB;;;;;;;iBAZD,UACqB,KAAa;gBAChC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;;gBAGxB,IAAI,IAAI,CAAC,MAAM,EAAE;oBACf,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;iBAC/B;aACF;;;WAAA;QASD,sBACW,wCAAI;;;;iBADf,UACgB,KAAa;;gBAE3B,IAAI,IAAI,CAAC,MAAM,EAAE;oBACf,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;iBACnB;aACF;;;WAAA;QAkDM,2CAAU,GAAV;YAAA,iBAsCN;YArCC,IAAI,IAAI,CAAC,OAAO,EAAE;;;;gBAIhB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;oBACpB,IAAI,CAAC,YAAY,CAAC,IAAI,CACpB,2BAA2B,EAC3B;wBACE;4BACE,OAAO,EAAE,yBAAyB;4BAClC,QAAQ,EAAE;gCACR,MAAM,EAAE,IAAI,CAAC,gBAAgB;gCAC7B,IAAI,EAAE,IAAI,CAAC,YAAY;6BACxB;yBACF;qBACF,CACF,CAAC;iBACH;aACF;iBAAM;;gBAEL,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;oBACpB,IAAI,CAAC,qBAAqB,EAAE,CAAC;oBAC7B,UAAU,CAAC;wBACT,KAAI,CAAC,UAAU,GAAG,IAAI,CAAC;wBACvB,KAAI;6BACD,WAAW,CAAC,KAAI,CAAC,aAAa,EAAE,KAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;qBAC7D,EAAE,EAAE,CAAC,CAAC;iBAER;qBAAM;oBACL,IAAI,CAAC,qBAAqB,EAAE,CAAC;oBAC7B,UAAU,CAAC;wBACT,KAAI,CAAC,UAAU,GAAG,KAAK,CAAC;wBACxB,KAAI;6BACD,WAAW,CAAC,KAAI,CAAC,YAAY,EAAE,KAAI,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;qBAC9D,EAAE,EAAE,CAAC,CAAC;iBACR;aACF;SACF;QAEM,6CAAY,GAAZ;;YAEL,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;;YAE7D,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;SACxE;QAEM,mDAAkB,GAAlB;YAAA,iBAoBN;YAnBCgB,aAAkB,CAAC;gBACjB,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,4BAA4B,CAAC;gBACtD,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,4BAA4B,CAAC;aACvD,CAAC;iBACC,IAAI,CAACC,cAAI,CAAC,CAAC,CAAC,CAAC;iBACb,SAAS,CAAC,UAAA,SAAS;gBAClB,KAAI,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBAChC,KAAI,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBAChC,KAAI,CAAC,KAAK,CAAC,KAAI,CAAC,YAAY,CAAC,CAAC;;gBAG9B,IAAI,CAAC,KAAI,CAAC,gBAAgB,EAAE;oBAC1B,KAAI,CAAC,SAAS,CAAC,SAAS,CAAC,+BAA+B,CAAC;yBACtD,IAAI,CAACA,cAAI,CAAC,CAAC,CAAC,CAAC;yBACb,SAAS,CAAC,UAAA,QAAQ;wBACjB,KAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC;qBAClC,CAAC,CAAC;iBACN;aACF,CAAC,CAAC;SACN;QAEO,sDAAqB,GAArB;;YAEN,IAAI,CAAC,YAAY,EAAE,CAAC;;;YAGpB,IAAI,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAChF,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,EAAK,aAAa,OAAI,CAAC,CAAC;SACnF;QAEO,sCAAK,GAAL,UAAM,KAAa;YACzB,IAAI,KAAK,EAAE;gBACT,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;gBAChD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;gBAClE,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;gBAC1B,IAAI,IAAI,CAAC,aAAa,KAAK,KAAK,EAAE;oBAChC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;oBACnC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;oBACxB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;oBACvB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,mBAAmB;2BACtD,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC;iBACxD;qBAAM;oBACL,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;iBACzB;gBACD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC;aACtC;iBAAM;gBACL,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;gBACrB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;aACzB;YACD,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;SAC9D;QAEO,gDAAe,GAAf,UAAgB,KAAa;YACnC,IAAI,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAElC,IAAI,OAAO,EAAE;gBACX,OAAO,OAAO,CAAC,MAAM,CAAC;aACvB;YAED,OAAO,CAAC,CAAC;SACV;QAEO,iDAAgB,GAAhB,UAAiB,KAAa,EAAE,MAAc;YACpD,IAAI,CAAS,CAAC;YACd,IAAI,IAAI,CAAC,gBAAgB,EAAE;gBACzB,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;aACrC;;;;YAID,IAAI,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE;gBACzB,KAAK,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,MAAM,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;oBACrC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;wBAC9B,MAAM,GAAG,CAAC,CAAC;wBACX,MAAM;qBACP;iBACF;aACF;YACD,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;SAChC;QAEO,4CAAW,GAAX,UAAY,YAAoB,EAAE,OAAe,EAAE,SAAkB;YAArE,iBA8BP;YA5BC,IAAI,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC;YACrC,IAAI,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC;;YAEjC,OAAO,CAAC,kBAAkB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;;YAEjD,IAAI,aAAa,GAAG,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;YAC1D,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC;YAC1B,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;YAC9C,IAAI,CAAC,UAAU,GAAG,SAAS,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;;YAElE,IAAI,SAAS,GAAG,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;;YAEtD,IAAI,SAAS,GAAG,aAAa,EAAE;;;gBAG7B,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;aAC5C;YAED,OAAO,CAAC,kBAAkB,CAAC,SAAS,EAAK,aAAa,OAAI,CAAC,CAAC;;;YAG5D,UAAU,CAAC;gBACT,OAAO,CAAC,kBAAkB,CAAC,SAAS,EAAK,SAAS,OAAI,CAAC,CAAC;;gBAExD,UAAU,CAAC;oBACT,KAAI,CAAC,YAAY,EAAE,CAAC;iBACrB,EAAE,GAAG,CAAC,CAAC;aACT,EAAE,EAAE,CAAC,CAAC;SACR;;;8IAvQU,sBAAsB;uHAAtB,sBAAsB,4PAJtB;YACT,2BAA2B;SAC5B,+GA2EOvC,aAAU,uGAMVA,aAAU,sDChIpB,upBAiBA;sHDgCa,sBAAsB;sBARlCN,YAAS;uBAAC;wBACT,QAAQ,EAAE,iBAAiB;wBAC3B,WAAW,EAAE,8BAA8B;wBAC3C,SAAS,EAAE,CAAC,8BAA8B,CAAC;wBAC3C,SAAS,EAAE;4BACT,2BAA2B;yBAC5B;qBACF;gNAQQ,gBAAgB;0BADtBE,QAAK;oBASC,iBAAiB;0BADvBA,QAAK;oBASC,mBAAmB;0BADzBA,QAAK;oBAUK,SAAS;0BADnBA,QAAK;oBAkBK,IAAI;0BADdA,QAAK;oBAYC,gBAAgB;0BADtBA,QAAK;oBAiBE,WAAW;0BAJlBO,YAAS;2BAAC,WAAW,EAAE;4BACtB,IAAI,EAAEH,aAAU;4BAChB,MAAM,EAAE,IAAI;yBACb;oBAOO,MAAM;0BAJbG,YAAS;2BAAC,MAAM,EAAE;4BACjB,IAAI,EAAEH,aAAU;4BAChB,MAAM,EAAE,IAAI;yBACb;;;;QEhGH;;;;2IAAa,mBAAmB;4IAAnB,mBAAmB,iBAhB5B,sBAAsB;YACtB,2BAA2B,aAG3BkB,kBAAa;YACb,wBAAwB;YACxBsB,mBAAc;YACdlC,eAAY,aAGZ,sBAAsB;4IAMb,mBAAmB,YAbrB;gBACPY,kBAAa;gBACb,wBAAwB;gBACxBsB,mBAAc;gBACdlC,eAAY;aACb;sHAQU,mBAAmB;sBAlB/BK,WAAQ;uBAAC;wBACR,YAAY,EAAE;4BACZ,sBAAsB;4BACtB,2BAA2B;yBAC5B;wBACD,OAAO,EAAE;4BACPO,kBAAa;4BACb,wBAAwB;4BACxBsB,mBAAc;4BACdlC,eAAY;yBACb;wBACD,OAAO,EAAE;4BACP,sBAAsB;yBACvB;wBACD,eAAe,EAAE;4BACf,2BAA2B;yBAC5B;qBACF;;;IC1BD;;;IAIA;QAIE,6CACU,eAAiC;YAAjC,oBAAe,GAAf,eAAe,CAAkB;YAEzC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;SAC3E;QAEM,sDAAQ,GAAR,UAAS,KAAiB;YAC/B,OAAO,KAAK,CAAC,aAAa,CAAC,gBAAgB,CAAC,gCAAgC,CAAC,CAAC;SAC/E;QAEM,sDAAQ,GAAR,UAAS,IAAiB;YAC/B,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;SACjD;QAEM,sDAAQ,GAAR,UAAS,IAAiB;YAC/B,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;SACtD;QAEM,gEAAkB,GAAlB,UAAmB,WAAuB;YAC/C,OAAO,WAAW,CAAC,aAAa,CAAC,YAAY,CAAC;SAC/C;QAEM,gEAAkB,GAAlB,UAAmB,WAAuB,EAAE,MAAc;YAC/D,IAAI,MAAM,KAAK,SAAS,EAAE;gBACxB,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,WAAW,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;aACpE;iBAAM;gBACL,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,aAAa,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;aACzE;SACF;;;2JAhCU,mCAAmC;+JAAnC,mCAAmC;sHAAnC,mCAAmC;sBAD/Cd,aAAU;;;ICsBX;;;IAGA,IAAI,MAAM,GAAG,CAAC,CAAC;;QAuDb,wCACU,SAAiC,EACjC,KAAiB,EACjB,yBAA8D,EAC9D,cAAiC;YAHjC,cAAS,GAAT,SAAS,CAAwB;YACjC,UAAK,GAAL,KAAK,CAAY;YACjB,8BAAyB,GAAzB,yBAAyB,CAAqC;YAC9D,mBAAc,GAAd,cAAc,CAAmB;;;;;YA9BjC,cAAS,GAAuC,WAAW,CAAC;YAW/D,qBAAgB,GAAW,sCAAoC,EAAE,MAAQ,CAAC;YAE1E,eAAU,GAAY,KAAK,CAAC;SAkB9B;QAEE,wDAAe,GAAf;YAAA,iBAyBN;YAxBC,IAAI,IAAI,CAAC,YAAY,EAAE;gBACrB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACjE,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBAC7D,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;iBACxD;aACF;YAED8C,aAAkB,CAAC;gBACjB,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,4BAA4B,CAAC;gBACtD,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,4BAA4B,CAAC;aACvD,CAAC;iBACC,IAAI,CAACC,cAAI,CAAC,CAAC,CAAC,CAAC;iBACb,SAAS,CAAC,UAAA,SAAS;gBAClB,KAAI,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBAChC,KAAI,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;;;gBAGhC,IAAI,CAAC,KAAI,CAAC,UAAU,EAAE;oBACpB,KAAI,CAAC,UAAU,GAAG,KAAI,CAAC,WAAW,CAAC;iBACpC;qBAAM;oBACL,KAAI,CAAC,UAAU,GAAG,KAAI,CAAC,WAAW,CAAC;iBACpC;gBACD,KAAI,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC;aACrC,CAAC,CAAC;SACN;QAEM,oDAAW,GAAX,UAAY,OAAsB;;YAEvC,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,EAAE;gBACpC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACvB;SACF;QAEM,qDAAY,GAAZ;;YAEL,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBACpB,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBAC7D,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;iBACxD;aACF;;YAED,IAAI,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;SAChF;QAEM,uDAAc,GAAd;YAAA,iBAgBN;YAfC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBACpB,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBAC7B,UAAU,CAAC;oBACT,KAAI,CAAC,UAAU,GAAG,IAAI,CAAC;oBACvB,KAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;iBAC5B,CAAC,CAAC;aAEJ;iBAAM;gBACL,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBAC7B,UAAU,CAAC;oBACT,KAAI,CAAC,UAAU,GAAG,KAAK,CAAC;oBACxB,KAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;iBAC7B,CAAC,CAAC;aAEJ;SACF;QAEO,8DAAqB,GAArB;;YAEN,IAAI,CAAC,YAAY,EAAE,CAAC;;;YAGpB,IAAI,aAAa,GAAG,IAAI,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACxF,IAAI,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,EAAK,aAAa,OAAI,CAAC,CAAC;SAC3F;QAEO,wDAAe,GAAf,UAAgB,SAAkB;YAAlC,iBAqCP;YApCC,IAAI,OAAO,GAAG,IAAI,CAAC,yBAAyB,CAAC;YAC7C,IAAI,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC;YAEjC,OAAO,CAAC,kBAAkB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YACjD,IAAI,aAAa,GAAG,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;YAC1D,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC7D,IAAI,CAAC,SAAS,EAAE;oBACd,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;iBACjC;qBAAM;oBACL,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;iBACjC;aACF;YACD,IAAI,SAAS,GAAG,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;YACtD,IAAI,CAAC,SAAS,EAAE;gBACd,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;aACpC;iBAAM;gBACL,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;aACpC;YACD,IAAI,SAAS,GAAG,aAAa,EAAE;;;gBAG7B,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBAC7D,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;iBACjC;aACF;YAED,OAAO,CAAC,kBAAkB,CAAC,SAAS,EAAK,aAAa,OAAI,CAAC,CAAC;;;YAG5D,UAAU,CAAC;gBACT,OAAO,CAAC,kBAAkB,CAAC,SAAS,EAAK,SAAS,OAAI,CAAC,CAAC;;gBAExD,UAAU,CAAC;oBACT,KAAI,CAAC,YAAY,EAAE,CAAC;iBACrB,EAAE,GAAG,CAAC,CAAC;aACT,EAAE,EAAE,CAAC,CAAC;SACR;QAEO,8CAAK,GAAL,UAAM,KAAiB;YAC7B,IAAI,KAAK,EAAE;gBACT,IAAI,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;gBAC1B,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE;oBAC1B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;oBACvB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;oBACnC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;iBACzB;qBAAM;oBACL,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;iBACzB;gBACD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;aAC3B;iBAAM;gBACL,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;gBAC9B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;aACzB;SACF;;;sJAlLU,8BAA8B;+HAA9B,8BAA8B,yJAJ9B;YACT,mCAAmC;SACpC,+GAwCOvC,aAAU,6DCnFpB,6gDAsDA;sHDTa,8BAA8B;sBAR1CN,YAAS;uBAAC;wBACT,QAAQ,EAAE,0BAA0B;wBACpC,WAAW,EAAE,uCAAuC;wBACpD,SAAS,EAAE,CAAC,uCAAuC,CAAC;wBACpD,SAAS,EAAE;4BACT,mCAAmC;yBACpC;qBACF;4PAOQ,IAAI;0BADVE,QAAK;oBAOC,YAAY;0BADlBA,QAAK;oBAQI,SAAS;0BADfA,QAAK;oBAOF,QAAQ;0BADdA,QAAK;oBAiBE,WAAW;0BAJlBO,YAAS;2BAAC,WAAW,EAAE;4BACtB,IAAI,EAAEH,aAAU;4BAChB,MAAM,EAAE,KAAK;yBACd;;;;QEhEH;;;;mJAAa,2BAA2B;oJAA3B,2BAA2B,iBAXpC,8BAA8B,aAG9BkB,kBAAa;YACb,wBAAwB;YACxBZ,eAAY,aAGZ,8BAA8B;oJAGrB,2BAA2B,YAT7B;gBACPY,kBAAa;gBACb,wBAAwB;gBACxBZ,eAAY;aACb;sHAKU,2BAA2B;sBAbvCK,WAAQ;uBAAC;wBACR,YAAY,EAAE;4BACZ,8BAA8B;yBAC/B;wBACD,OAAO,EAAE;4BACPO,kBAAa;4BACb,wBAAwB;4BACxBZ,eAAY;yBACb;wBACD,OAAO,EAAE;4BACP,8BAA8B;yBAC/B;qBACF;;;IChBD;;;;QAQA;;;;kJAAa,0BAA0B;2HAA1B,0BAA0B,sECZvC,sMAMA;sHDMa,0BAA0B;sBALtCZ,YAAS;uBAAC;wBACT,QAAQ,EAAE,qBAAqB;wBAC/B,SAAS,EAAE,CAAC,kCAAkC,CAAC;wBAC/C,WAAW,EAAE,kCAAkC;qBAChD;;;IEAD;;;;QAGA;YAOS,gBAAW,GAAY,KAAK,CAAC;SAQrC;QAHQ,gDAAkB,GAAlB;YACL,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC;SACtD;;;2IATU,mBAAmB;oHAAnB,mBAAmB,qFAIb,0BAA0B,2DCvB7C,2TAUA;sHDSa,mBAAmB;sBAL/BA,YAAS;uBAAC;wBACT,QAAQ,EAAE,aAAa;wBACvB,SAAS,EAAE,CAAC,0BAA0B,CAAC;wBACvC,WAAW,EAAE,0BAA0B;qBACxC;kCAMS,iBAAiB;0BADxBQ,kBAAe;2BAAC,0BAA0B,EAAE,EAAC,WAAW,EAAE,IAAI,EAAC;;;IEnBlE;;;;QAQA;;;;+IAAa,uBAAuB;wHAAvB,uBAAuB,mECZpC,yEAGA;sHDSa,uBAAuB;sBALnCR,YAAS;uBAAC;wBACT,QAAQ,EAAE,kBAAkB;wBAC5B,SAAS,EAAE,CAAC,+BAA+B,CAAC;wBAC5C,WAAW,EAAE,+BAA+B;qBAC7C;;;IEND;;;;;QAUA;;;;sJAAa,8BAA8B;+HAA9B,8BAA8B,2ECf3C,sFAKA;sHDUa,8BAA8B;sBAN1CA,YAAS;uBAAC;wBACT,QAAQ,EAAE,0BAA0B;wBACpC,WAAW,EAAE,uCAAuC;wBACpD,SAAS,EAAE,CAAC,uCAAuC,CAAC;wBACpD,eAAe,EAAEoB,0BAAuB,CAAC,MAAM;qBAChD;;;;QE2BD;;;;wIAAa,gBAAgB;yIAAhB,gBAAgB,iBAfzB,mBAAmB;YACnB,uBAAuB;YACvB,0BAA0B;YAC1B,8BAA8B,aAG9BR,eAAY,aAGZ,mBAAmB;YACnB,uBAAuB;YACvB,0BAA0B;YAC1B,8BAA8B;yIAGrB,gBAAgB,YAVlB;gBACPA,eAAY;aACb;sHAQU,gBAAgB;sBAjB5BK,WAAQ;uBAAC;wBACR,YAAY,EAAE;4BACZ,mBAAmB;4BACnB,uBAAuB;4BACvB,0BAA0B;4BAC1B,8BAA8B;yBAC/B;wBACD,OAAO,EAAE;4BACPL,eAAY;yBACb;wBACD,OAAO,EAAE;4BACP,mBAAmB;4BACnB,uBAAuB;4BACvB,0BAA0B;4BAC1B,8BAA8B;yBAC/B;qBACF;;;ICxCD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}